跳至主要内容

Connery 动作工具

使用此工具,您可以将单个 Connery 动作集成到您的 LangChain 代理中。

注意

如果您想在您的代理中使用多个 Connery 动作,请查看 Connery 工具包 文档。

什么是 Connery?

Connery 是一个面向 AI 的开源插件基础设施。

使用 Connery,您可以轻松地创建具有多个动作的自定义插件,并将其无缝集成到您的 LangChain 代理中。Connery 将负责运行时、授权、密钥管理、访问管理、审核日志和其他重要功能等关键方面。

此外,Connery 在我们社区的支持下,提供各种即用型开源插件,以方便使用。

详细了解 Connery

先决条件

要在您的 LangChain 代理中使用 Connery 动作,您需要进行一些准备工作

  1. 使用 快速入门 指南设置 Connery 运行器。
  2. 安装您要在代理中使用的所有带有动作的插件。
  3. 设置环境变量 CONNERY_RUNNER_URLCONNERY_RUNNER_API_KEY,以便工具包可以与 Connery 运行器通信。

使用 Connery 动作工具的示例

设置

要使用 Connery 动作工具,您需要安装以下官方对等依赖项

npm install @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 参考

注意

Connery 动作是一个结构化工具,因此您只能在支持结构化工具的代理中使用它。


此页面是否有帮助?


您也可以在 GitHub 上留下详细的反馈 在 GitHub 上.