跳转到主要内容

我们非常高兴能与Zapier合作,并将其新的Zapier-NLA API集成到LangChain中,您现在可以将其用于您的代理和链。通过这种集成,您可以通过自然语言API接口访问Zapier平台上的5k+应用程序和20k+操作。这是非常强大的,并为您的LangChain代理提供了看似无限的可能性。向Mike Knoop和Zapier团队的其他成员大声疾呼,感谢他们帮助实现了这一集成。您可以在上面共享的链接中请求访问。你将建造什么?

Zapier NLA

NLA支持Gmail、Salesforce、Trello、Slack、Asana、HubSpot、Google Sheets、Microsoft Teams等应用程序,以及成千上万的应用程序:https://zapier.com/apps

Zapier NLA处理所有底层API身份验证和自然语言翻译->底层API调用->返回LLM的简化输出。关键思想是通过类似oauth的设置窗口公开一组操作,然后可以通过REST API查询和执行这些操作。

NLA提供API密钥和OAuth,用于对NLA API请求进行签名。

  • 服务器端(API密钥):用于快速入门、测试和生产场景,其中LangChain将仅使用开发人员的Zapier帐户中公开的操作(并将使用开发人员在Zapier.com上的连接帐户)
  • 面向用户(Oauth):对于生产场景,您正在部署面向最终用户的应用程序,并且LangChain需要访问Zapier.com上最终用户公开的操作和连接的帐户

查看完整文档或联系nla@zapier.com用于面向用户的oauth开发人员支持。

LangChain集成

我们已经在python (docs)和 typescript (docs)中将Zapier NLA集成到LangChain工具和工具包中。这给了你的特工和铁链超能力。

要使用,只需检索NLA API密钥(参见上文),设置ZAPIER_NLA_API_Key环境变量,然后创建Toolkit和代理:

llm = OpenAI(temperature=0)
zapier = ZapierNLAWrapper()
toolkit = ZapierToolkit.from_zapier_nla_wrapper(zapier)
agent = initialize_agent(toolkit.get_tools(), llm, agent="zero-shot-react-description", verbose=True)

‌真的那么简单!ZapierToolkit会自动将所有已启用的Zapier操作注册为具有正确名称和描述的工具。

您也可以使用ZapierNLARunAction工具手动将单个操作注册为工具。

要了解这一点,请查看下面的示例。这个代理现在可以访问我的电子邮件和slack,并且能够做出一些惊人的壮举。在这个例子中,它总结了我从某家银行收到的最新电子邮件,并将其发送到一个空闲频道。

接下来的步骤

我们希望尽可能实现无缝集成,所以如果您对任何问题有任何反馈,请告诉我们!

文章链接