带有 Zapier NLA 集成的 Agent
此模块已弃用,不再受支持。以下文档在版本 0.2.0 或更高版本中将无法使用。
完整文档请访问:https://nla.zapier.com/start/
Zapier 自然语言操作 通过自然语言 API 接口为您提供对 Zapier 平台上 5000 多个应用程序和 20000 多个操作的访问权限。
NLA 支持 Gmail、Salesforce、Trello、Slack、Asana、HubSpot、Google Sheets、Microsoft Teams 等数千个应用程序:https://zapier.com/apps
Zapier NLA 处理所有底层 API 身份验证以及从自然语言到底层 API 调用到返回简化输出以供 LLMs 使用的转换。关键在于您或您的用户通过类似于 OAuth 的设置窗口公开一组操作,然后您可以通过 REST API 查询和执行这些操作。
NLA 为签署 NLA API 请求提供 API 密钥和 OAuth 两种方式。
服务器端 (API 密钥):用于快速入门、测试和生产场景,在这些场景中 LangChain 将仅使用开发人员 Zapier 帐户中公开的操作(并将使用开发人员在 Zapier.com 上连接的帐户)
面向用户的 (OAuth):用于生产场景,在这些场景中,您正在部署面向最终用户的应用程序,并且 LangChain 需要访问最终用户公开的操作以及他们在 Zapier.com 上连接的帐户。
通过环境变量 (ZAPIER_NLA_OAUTH_ACCESS_TOKEN
或 ZAPIER_NLA_API_KEY
) 附加 NLA 凭据,或者参考 ZapierNLAWrapper
的 API 参考中的参数参数。
查看身份验证文档 以了解更多详细信息。
以下示例演示了如何将 Zapier 集成用作 Agent
- npm
- Yarn
- pnpm
npm install @langchain/openai @langchain/core
yarn add @langchain/openai @langchain/core
pnpm add @langchain/openai @langchain/core
import { OpenAI } from "@langchain/openai";
import { ZapierNLAWrapper } from "langchain/tools";
import {
initializeAgentExecutorWithOptions,
ZapierToolKit,
} from "langchain/agents";
const model = new OpenAI({ temperature: 0 });
const zapier = new ZapierNLAWrapper();
const toolkit = await ZapierToolKit.fromZapierNLAWrapper(zapier);
const executor = await initializeAgentExecutorWithOptions(
toolkit.tools,
model,
{
agentType: "zero-shot-react-description",
verbose: true,
}
);
console.log("Loaded agent.");
const input = `Summarize the last email I received regarding Silicon Valley Bank. Send the summary to the #test-zapier Slack channel.`;
console.log(`Executing with input "${input}"...`);
const result = await executor.invoke({ input });
console.log(`Got output ${result.output}`);