GPT-4とSlackやTwitterを連携したAIチャットボットを爆速で作る方法🚀 (基本編)
miiboを利用すると、GPT-4を利用したAIチャットボットを爆速で構築することができます。
作成したAIチャットボットはZapier等のiPaaS(Integration Platform As A Service)を組み合わせると、様々なサービスと連携することができます。
例
・AIチャットボットが応答できなかった質問をSlackにPOSTする
・AIチャットボットとブレストした内容をNotionで記事化しておいてもらう
・AIチャットボットにツイートをしてもらう
・AIチャットボットが受け付けたお問い合わせを整理して保存もらう
AIチャットボットと外部サービスの組み合わせ次第で、業務効率を大きく向上させるAIアシスタントを構築できます。
※ 本記事は、miiboを開発している株式会社miiboのmaKunugiが執筆しています。
GPT-4を仲介したサービス連携の恩恵
GPT-4は人間の言葉を理解し、適切な言葉による応答を行うだけでなく、様々な外部サービスを呼び出す仲介役としても機能します。
まるで人間に話しかけるかのようにAIに話しかけ、その先に接続された様々な外部サービスと自然に連携ができます。人間とソフトウェアの距離を明らかに縮めたと言えます。
本記事で紹介する内容
例として、
GPT-4で作ったAIチャットボットとSlack通知を組み合わせる
方法をご紹介します。
自動応答のお問い合わせのAIを作り、ユーザーから投げられた内容をSlackにも通知するというユースケースです。
1.iPaaS(Zapier)に登録する
AIを様々なサービスに連携する場合、iPaaS(Integration Platform As A Service)を利用するのが良いです。
iPaaSは様々ありますが、今回はZapierを使います。
サービス連携のTriggerには、「Webhook」機能を利用します。
ZapierのWebhook機能は有料アカウントしか利用できないため、実際にお試しになる方は有料アカウントを契約しましょう。
Starterプランから利用ができます。
2. miiboでAIを作る
zapierのアカウントを用意できたら、miiboでGPT-4ベースのチャットボットを作ってみましょう。
下記は専門知識を与え、独自のお問い合わせに答えるAIを作る例について紹介した記事です。まずは、ぜひこの記事を参考にしてAIを作成してみてください。
miiboでAIを新規作成する際、プロンプトテンプレートにある「お問い合わせ対応AI」を利用すると、手軽に上記のようなAIが作れます。
3. AIチャットボットと外部サービスを連携する
AIチャットボットを用意できたらZapierと接続して、AIチャットボットから外部サービスを操れるようにしていきます。
本記事では、まずシンプルな例として、お問い合わせ用のAIチャットボットとSlackを連携させる例をご紹介します。
連携例:
1. AIチャットボットがユーザーの質問に応答する
2. 事前情報がなくAIが応答できない場合は「今は判断ができない」旨を応答する
3. 応答ができなかった質問をSlackに投稿して、人力対応できるようにする
※後日、さらに踏み込んだ応用編の記事も公開予定です。
連携手順
AIをZapierと接続するため、miiboのwebhook機能を用いましょう。
miiboコンソール -> 「左メニュー」-> 「高度な設定」->「Webhooks」
Webhooksの仕様は下記です。
Webhookの設定例
名前: 任意
メソッド:POST
URL: 一旦dummy (後ほどZapierで取得)
トリガーの種類: エージェントが応答を返した
トリガーの条件:「下記の値のいずれかが含まれたら」
応答の内容: 「今の私には判断できない」
※ 「今の私には判断できない」は、応答ができない場合にこの表現で応答を返されるよう、プロンプトで制御している前提です。この方法はこちらのnoteで詳細に解説しています。
作成したら、「公開状況」トグルをクリックし、公開状態をONにしましょう。
Webhookを有効にできたら、Zapierで連携を作っていきましょう。
Create Zapをクリックしましょう。
TriggerにはWebhookを選択します。
Eventに「Catch Hook」を設定。
Triggerの「Child Key」は空欄でContinue。
Webhook URLが表示されます。
一旦ここでURLをコピーし、miiboに戻ります。
Zapier上では進まず、このままの状態にしてください。
このURLを先程のmiiboのWebhookの設定に適用します。
dummyにしていたURLを書き換えましょう。
WebhookのURLを修正したら、会話のテストでWebhookを発火させましょう。条件にあった応答が変えるようにAIに話しかけます。
今回は、「今の私には判断ができない」という応答で発火するようにしています。
Zapierに戻ります。
Test Triggerを押すと、miiboのWebhookから送信されたパラメータが表示されます。様々なパラメータが利用できるので、詳しくはWebhookの仕様をご参照ください。
Continueを押して進みます。
次にActionを設定しましょう。今回はSlackで通知を行います。
Eventは「Send Channel Message」を選択します。
Slack Accountにログインをしましょう。
Actionを設定します。下記の例では、指定したチャンネルに送信するテキストを設定しています。
※上記の例では、メールアドレスを取得できていますが、これはmiiboの設定でEmailを事前に取得できるよう設定する必要があります。また別記事でも紹介をします。
Test Actionが正常にできたら、「Publish」しましょう。
AIに話しかけ、応答ができないときにSlack通知が飛べば成功です!
以上の手順で、AIチャットボットと外部サービス(Slack)を連携させることができました。ZapierはSlack以外にもTwitterやDropBoxなど様々なサービスを利用可能です。
この方法を応用して、AIと様々なサービス連携をお試しください。
さらに柔軟な連携をするために
今回紹介した手順は、特定の条件下で発火するシンプルな外部連携です。
これだけでも色々な連携はできますが、人力で設定した条件下で発動するのみで、まだまだGPTの柔軟性を引き出せていません。
GPTの柔軟性の良さを最大限に引き出せるのが、OpenAI APIが提供する「Function Calling」という機能です。Function Callingを利用すると、今までは実現ができなかった、よりフレキシブルなサービス連携が可能になります。
例えば
・AIとブレストした内容をNotionで記事化しておいてもらう
・AIチャットボットが受け付けたお問い合わせを整理してもらう
上記のようなことが、AIとの会話によって実現できます。
miiboではノーコードでFunction Callingを活用した連携をノーコードで構築できます。Webhookの設定でトリガーの種類に「AIによってFunctionが呼ばれた(Function Calling)」を指定することで設定が可能です。
このFunction Callingこそが、GPTの真骨頂とも呼べる機能です。
次回はこの続編として、Function Callingを活用した柔軟なサービス連携の方法について紹介をしていこうと思います。近日中に公開しますので、ぜひSNSやnoteをフォロー頂き、お待ちいただけると幸いです。
本記事をお読みいただきありがとうございました!
この記事が気に入ったらサポートをしてみませんか?