Connery 工具包
使用此工具包,您可以将 Connery 动作集成到您的 LangChain 代理中。
注意
如果您想在代理中仅使用一个特定的 Connery 动作,请查看Connery 动作工具文档。
什么是 Connery?
Connery 是一个用于 AI 的开源插件基础设施。
使用 Connery,您可以轻松地创建具有操作集的自定义插件,并将其无缝集成到您的 LangChain 代理中。Connery 将负责运行时、授权、机密管理、访问管理、审核日志和其他重要功能等关键方面。
此外,Connery 在我们社区的支持下,提供各种现成的开源插件,以方便您使用。
了解有关 Connery 的更多信息
先决条件
要在您的 LangChain 代理中使用 Connery 动作,您需要进行一些准备工作
- 使用快速入门指南设置 Connery 运行器。
- 安装代理中要使用的所有插件和动作。
- 设置环境变量
CONNERY_RUNNER_URL
和CONNERY_RUNNER_API_KEY
,以便工具包可以与 Connery Runner 通信。
使用 Connery 工具包的示例
安装
要使用 Connery 工具包,您需要安装以下官方对等依赖项
- npm
- Yarn
- pnpm
npm install @langchain/openai @langchain/community
yarn add @langchain/openai @langchain/community
pnpm add @langchain/openai @langchain/community
提示
有关安装集成包的一般说明,请参阅此部分。
使用
在以下示例中,我们创建了一个代理,该代理使用两个 Connery 动作来总结公共网页,并通过电子邮件发送摘要
- 来自Summarization插件的总结公共网页操作。
- 来自Gmail插件的发送电子邮件操作。
信息
您可以在此处查看此示例的 LangSmith 跟踪。
import { ConneryService } from "@langchain/community/tools/connery";
import { ConneryToolkit } from "@langchain/community/agents/toolkits/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]";
// Create a Connery Toolkit with all the available actions from the Connery Runner.
const conneryService = new ConneryService();
const conneryToolkit = await ConneryToolkit.createInstance(conneryService);
// Use OpenAI Functions agent to execute the prompt using actions from the Connery Toolkit.
const llm = new ChatOpenAI({ temperature: 0 });
const agent = await initializeAgentExecutorWithOptions(
conneryToolkit.tools,
llm,
{
agentType: "openai-functions",
verbose: true,
}
);
const result = await agent.invoke({
input:
`Make a short summary of the webpage http://www.paulgraham.com/vb.html in three sentences ` +
`and send it to ${recepientEmail}. Include the link to the webpage into the body of the email.`,
});
console.log(result.output);
API 参考
- ConneryService 来自
@langchain/community/tools/connery
- ConneryToolkit 来自
@langchain/community/agents/toolkits/connery
- ChatOpenAI 来自
@langchain/openai
- initializeAgentExecutorWithOptions 来自
langchain/agents
注意
Connery 动作是一种结构化工具,因此您只能在支持结构化工具的代理中使用它。