一架梯子,一头程序猿,仰望星空!
LangChain教程(JS版本) > 内容正文

基于OpenAI functions


集成OpenAI 函数调用

某些OpenAI模型(如gpt-3.5-turbo-0613和gpt-4-0613)已经过微调,可检测到何时应调用函数,并回复应传递给函数的输入。在API调用中,您可以描述函数,并使模型智能地选择输出一个包含调用这些函数的参数的JSON对象。OpenAI function API的目标是比通用文本补全或聊天API更可靠地返回有效和有用的函数调用。

OpenAI函数代理是为这些模型设计的。

提示:openai的函数调用功能,就是通过分析用户的输入文本,自动确定需要调用什么函数,以及自动确认函数的参数,通过这个能力,我们可以把我们定义好的函数描述传给AI,让AI根据用户输入的内容自动确定调用那个函数。

此代理还支持具有更复杂输入模式的“StructuredTool”。

import { initializeAgentExecutorWithOptions } from "langchain/agents";
import { ChatOpenAI } from "langchain/chat_models/openai";
import { SerpAPI } from "langchain/tools";
import { Calculator } from "langchain/tools/calculator";

const tools = [new Calculator(), new SerpAPI()];
const chat = new ChatOpenAI({ modelName: "gpt-4", temperature: 0 });

const executor = await initializeAgentExecutorWithOptions(tools, chat, {
  agentType: "openai-functions",
  verbose: true,
});

const result = await executor.run("What is the weather in New York?");
console.log(result);

/*
  纽约的当前天气为72°F,风速为1 mph,来自SSW的风。湿度为89%,紫外线指数为11中的0。云量为79%,没有下雨。
*/


关联主题