Connery 动作工具
使用此工具,您可以将单个 Connery 动作集成到您的 LangChain 代理中。
注意
如果您想在您的代理中使用多个 Connery 动作,请查看 Connery 工具包 文档。
什么是 Connery?
Connery 是一个面向 AI 的开源插件基础设施。
使用 Connery,您可以轻松地创建具有多个动作的自定义插件,并将其无缝集成到您的 LangChain 代理中。Connery 将负责运行时、授权、密钥管理、访问管理、审核日志和其他重要功能等关键方面。
此外,Connery 在我们社区的支持下,提供各种即用型开源插件,以方便使用。
详细了解 Connery
先决条件
要在您的 LangChain 代理中使用 Connery 动作,您需要进行一些准备工作
- 使用 快速入门 指南设置 Connery 运行器。
- 安装您要在代理中使用的所有带有动作的插件。
- 设置环境变量
CONNERY_RUNNER_URL
和CONNERY_RUNNER_API_KEY
,以便工具包可以与 Connery 运行器通信。
使用 Connery 动作工具的示例
设置
要使用 Connery 动作工具,您需要安装以下官方对等依赖项
- npm
- Yarn
- pnpm
npm install @langchain/community
yarn add @langchain/community
pnpm add @langchain/community
提示
请参阅 有关安装集成软件包的通用说明。
用法
在以下示例中,我们通过其 ID 从 Connery 运行器中获取操作,然后使用指定的参数调用它。
在这里,我们使用来自 Gmail 插件的 发送电子邮件 操作的 ID。
信息
您可以在 此处 查看此示例的 LangSmith 跟踪。
import { ConneryService } from "@langchain/community/tools/connery";
import { ChatOpenAI } from "@langchain/openai";
import { initializeAgentExecutorWithOptions } from "langchain/agents";
// Specify your Connery Runner credentials.
process.env.CONNERY_RUNNER_URL = "";
process.env.CONNERY_RUNNER_API_KEY = "";
// Specify OpenAI API key.
process.env.OPENAI_API_KEY = "";
// Specify your email address to receive the emails from examples below.
const recepientEmail = "[email protected]";
// Get the SendEmail action from the Connery Runner by ID.
const conneryService = new ConneryService();
const sendEmailAction = await conneryService.getAction(
"CABC80BB79C15067CA983495324AE709"
);
// Run the action manually.
const manualRunResult = await sendEmailAction.invoke({
recipient: recepientEmail,
subject: "Test email",
body: "This is a test email sent by Connery.",
});
console.log(manualRunResult);
// Run the action using the OpenAI Functions agent.
const llm = new ChatOpenAI({ temperature: 0 });
const agent = await initializeAgentExecutorWithOptions([sendEmailAction], llm, {
agentType: "openai-functions",
verbose: true,
});
const agentRunResult = await agent.invoke({
input: `Send an email to the ${recepientEmail} and say that I will be late for the meeting.`,
});
console.log(agentRunResult);
API 参考
- ConneryService 来自
@langchain/community/tools/connery
- ChatOpenAI 来自
@langchain/openai
- initializeAgentExecutorWithOptions 来自
langchain/agents
注意
Connery 动作是一个结构化工具,因此您只能在支持结构化工具的代理中使用它。