Zapier Natural Language Actions API(beta)とLangChainの統合をやってみた
はじめに
こんにちは、筧( @TakaakiKakei )です。
本ブログは下記ブログの続きです。
Zapier Natural Language Actions (NLA) API と LangChain の統合が発表されました。 これによって、Zapier プラットフォーム上の5,000以上のアプリと20,000以上のアクションを、自然言語で組み込めるようになります。
実際にやってみて理解を深めていきましょう。 なお、2023/03/17時点では、Zapier Natural Language Actions API は beta なので予めご了承ください。
やってみた
Zapier NLA API の準備
Zapier NLA API の利用には申請が必要です。 下記フォームから必要情報を入力して申請します。
申し込み後、承認されると下記ページの User の Information に API Key が表示されます。
下記コマンドで API Key が機能するか確認できます。 機能する場合、"success": true と表示されます。
$ curl -v \ -H "Content-Type: application/json" \ -H "x-api-key: <API_KEY>" \ 'https://nla.zapier.com/api/v1/check/' ..snip.. {"success": true, "email": "<メールアドレス>", "user_id": <ユーザーID>}
Zapier 側のセットアップ
GmailとSlackの連携準備をします。 Provider の Information にある、Open Action Setup Window をクリックします。 下図のアプリのアクションを事前設定します。
具体的にはそれぞれ下図のように設定します。
各フィールドを Have AI guess にしておくことがポイントです。 これによって、後で与える指示を元に、AI が値を設定してくれます。
ここでは、Gmail のメールを作成するアクションと、Slack のチャンネルにメッセージを投稿するアクションをセットアップしました。これで Zapier 側のセットアップは完了です。
Zapier NLA API と LangChain の統合
今回は実行環境として、Google Colaboratory を使います。 コードは以下のページを参考にします。
指示内容はagent.run内の通り、あるメールアドレスからの直近のメールを要約して、Slackの test-zapier チャンネルに投稿してという内容です。agent.runまで実行します。
あるメールアドレスからの直近のメールはこれです。
Slackの test-zapier チャンネルを確認します。
夕飯のために肉を買ってきてという要約が投稿されています!すごい!
おわりに
最後まで読んでいただきありがとうございます。
Zapier NLA API と LangChain の統合について理解が深まっていれば幸いです。
それではまた!