langchain
Version:
Typescript bindings for langchain
17 lines (16 loc) • 653 B
JavaScript
import { convertToOpenAIFunction, convertToOpenAITool, } from "@langchain/core/utils/function_calling";
import { isZodSchema } from "@langchain/core/utils/types";
import { zodToJsonSchema } from "zod-to-json-schema";
export { convertToOpenAIFunction as formatToOpenAIFunction, convertToOpenAITool as formatToOpenAITool, };
export function formatToOpenAIAssistantTool(tool) {
return {
type: "function",
function: {
name: tool.name,
description: tool.description,
parameters: isZodSchema(tool.schema)
? zodToJsonSchema(tool.schema)
: tool.schema,
},
};
}