我试图遵循 Langchain 代理的快速入门教程:https://js.langchain.com/docs/modules/agents/quick_start
我遵循了该过程,但遇到了意想不到的错误。我不知道如何解决它,也没有找到任何现有的解决方案。请指教。
import { TavilySearchResults } from "@langchain/community/tools/tavily_search";
import { ChatOpenAI } from "@langchain/openai";
import { pull } from "langchain/hub";
import { createOpenAIFunctionsAgent } from "langchain/agents";
import { AgentExecutor } from "langchain/agents";
import {
ChatPromptTemplate,
PromptTemplate,
SystemMessagePromptTemplate,
AIMessagePromptTemplate,
HumanMessagePromptTemplate,
} from "@langchain/core/prompts";
import {
AIMessage,
HumanMessage,
SystemMessage,
} from "@langchain/core/messages";
const searchTool = new TavilySearchResults();
const toolResult = await searchTool.invoke("what is the weather in SF?");
console.log(toolResult);
const tools = [searchTool];
const llm = new ChatOpenAI({
modelName: "gpt-3.5-turbo",
temperature: 0,
});
const prompt = await pull<ChatPromptTemplate>(
"hwchase17/openai-functions-agent"
);
console.log("Prompt Results")
console.log(prompt)
const agent = await createOpenAIFunctionsAgent({
llm: llm,
tools: tools,
prompt: prompt,
});
const agentExecutor = new AgentExecutor({
agent,
tools,
});
const result1 = await agentExecutor.invoke({
input: "hello!",
});
console.log(result1);
Prompt Results
false
file:///Users/bytedance/Desktop/AI/ai-terminal/node_modules/langchain/dist/agents/openai_functions/index.js:218
if (!prompt.inputVariables.includes("agent_scratchpad")) {
^
TypeError: Cannot read properties of undefined (reading 'includes')
at createOpenAIFunctionsAgent (file:///Users/bytedance/Desktop/AI/ai-terminal/node_modules/langchain/dist/agents/openai_functions/index.js:218:32)
at file:///Users/bytedance/Desktop/AI/ai-terminal/test.js:43:21
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Node.js v20.10.0
我尝试调试但没有找到任何东西。
我认为您也应该按照下面的说明设置您的 API_KEY: