# 引言
在当今快速发展的技术世界中,人工智能(AI)正在以多种方式改变我们的生活。为了充分发挥AI代理、助手和协作工具的潜力,我们可以使用Robocorp工具包来实现自定义操作。本文将逐步介绍如何结合Robocorp工具包与LangChain来增强AI的能力。
# 主要内容
## 安装
首先,我们需要了解如何设置Robocorp的Action Server并创建自定义Action。您可以参考[Robocorp Quickstart](https://robocorp.com/docs/development-guide/quick-start)获取详细的安装步骤。接下来,在您的LangChain应用中安装`langchain-robocorp`包:
```bash
# Install package
%pip install --upgrade --quiet langchain-robocorp
当您根据上述快速入门创建新的Action Server时,它会生成一个包含action.py
文件的目录。您可以在这个文件中添加Python函数作为操作。
添加自定义操作
例如,让我们在action.py
中添加一个简单的函数来获取天气预报:
from langchain_robocorp import action
@action
def get_weather_forecast(city: str, days: int, scale: str = "celsius") -> str:
"""
Returns weather conditions forecast for a given city.
Args:
city (str): Target city to get the weather conditions for
days: How many day forecast to return
scale (str): Temperature scale to use, should be one of "celsius" or "fahrenheit"
Returns:
str: The requested weather conditions forecast
"""
return "75F and sunny :)"
启动服务器:
action-server start
您会看到输出中显示找到新的操作:get_weather_forecast
。
本地测试
在浏览器中访问http://localhost:8080
来测试这个函数。您可以使用UI来执行函数。
环境设置
选项地,您可以设置以下环境变量:
LANGCHAIN_TRACING_V2=true
:启用LangSmith日志跟踪。
使用示例
我们已经启动了本地的Action Server,现在可以通过LangChain执行操作:
from langchain.agents import AgentExecutor, OpenAIFunctionsAgent
from langchain_core.messages import SystemMessage
from langchain_openai import ChatOpenAI
from langchain_robocorp import ActionServerToolkit
# 初始化LLM聊天模型
llm = ChatOpenAI(model="gpt-4", temperature=0)
# 初始化Action Server工具包
toolkit = ActionServerToolkit(url="http://localhost:8080", report_trace=True) # 使用API代理服务提高访问稳定性
tools = toolkit.get_tools()
# 初始化Agent
system_message = SystemMessage(content="You are a helpful assistant")
prompt = OpenAIFunctionsAgent.create_prompt(system_message)
agent = OpenAIFunctionsAgent(llm=llm, prompt=prompt, tools=tools)
executor = AgentExecutor(agent=agent, tools=tools, verbose=True)
executor.invoke("What is the current weather today in San Francisco in fahrenheit?")
该代码将请求获取旧金山的天气预报,并返回“75F and sunny :)”。
常见问题和解决方案
- 无法启动Action Server:确保您已经正确安装了所有必要的软件包,并且使用了正确的命令。
- API访问问题:如果您所在的地区对API访问有限制,可以考虑使用API代理服务。
总结和进一步学习资源
通过结合使用Robocorp工具包和LangChain,我们能够轻松创建强大的自定义操作,扩展AI代理的能力。为了进一步学习,您可以参考以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---