Google 路线工具
Google 路线工具允许您的代理使用 Google 路线 API 来查找两个或多个目的地之间的路线。您可以通过步行、交通、汽车、摩托车和自行车获取路线。
设置
您需要从 Google 这里 获取 API 密钥,并 启用路线 API。然后,将您的 API 密钥设置为 process.env.GOOGLE_ROUTES_API_KEY
或将其作为 apiKey
构造函数参数传递。
使用
提示
- npm
- Yarn
- pnpm
npm install @langchain/openai @langchain/community
yarn add @langchain/openai @langchain/community
pnpm add @langchain/openai @langchain/community
import { GoogleRoutesAPI } from "@langchain/community/tools/google_routes";
import { ChatPromptTemplate } from "@langchain/core/prompts";
import { ChatOpenAI } from "@langchain/openai";
import { AgentExecutor, createToolCallingAgent } from "langchain/agents";
export async function run() {
const tools = [new GoogleRoutesAPI()];
const llm = new ChatOpenAI({
model: "gpt-3.5-turbo-0125",
});
const prompt = ChatPromptTemplate.fromMessages([
["system", "You are a helpful assistant"],
["placeholder", "{chat_history}"],
["human", "{input}"],
["placeholder", "{agent_scratchpad}"],
]);
const agent = await createToolCallingAgent({
llm,
tools,
prompt,
});
const agentExecutor = new AgentExecutor({
agent,
tools,
});
const result = await agentExecutor.invoke({
input: "How to go from the Eiffel Tower to the Louvre Museum by transit?",
});
console.log(result);
/* {
input: 'How to go from the Eiffel Tower to the Louvre Museum by transit?',
output: 'To travel from the Eiffel Tower to the Louvre Museum by transit, here is the route information:\n' +
'\n' +
'- Departure: Eiffel Tower\n' +
'- Arrival: Louvre Museum\n' +
'- Distance: 4.1 km\n' +
'- Duration: 18 minutes\n' +
'- Transit Fare: €2.15\n' +
'\n' +
'Travel Instructions:\n' +
"1. Walk to Pont d'Iéna\n" +
'2. Take bus 72 towards Gare de Lyon - Maison de La RATP\n' +
'3. Walk to your destination\n' +
'\n' +
'Departure Time: 22:03\n' +
'Arrival Time: 22:15\n' +
'\n' +
'Please follow these instructions to reach the Louvre Museum from the Eiffel Tower.'
} */
}
API 参考
- GoogleRoutesAPI 来自
@langchain/community/tools/google_routes
- ChatPromptTemplate 来自
@langchain/core/prompts
- ChatOpenAI 来自
@langchain/openai
- AgentExecutor 来自
langchain/agents
- createToolCallingAgent 来自
langchain/agents