LoginSignup
2
1
記事投稿キャンペーン 「2024年!初アウトプットをしよう」

ツンデレ女子のAIチャットボットを作ろう😤

Last updated at Posted at 2024-01-23

はじめに

AIチャットボットの超簡単な作り方を書いていきます。
基本は流れだけで、詳細は実際に参考にさせていただいた記事のリンクを貼らせていただいてます🙇‍♀️

ツンデレ女子である必要は一切ありません笑

システム構成

Slack上でボットにメンションすると OpenAI が返事を考えてくれます。
Webサーバーには Fly.io を使ってます。

systemConfiguration.drawio.png

サンプルコード

細かい設定はコードを見ていただければと。

作り方

Slack アプリを作成する

ngrok を使うので、Event Subscriptions の設定は bot 作成後に行います。

Bot Token Scopes は以下の二つでとりあえずは会話できるようになります。

  • app_mentions:read
  • chat:write

細かい点は違いますが、以下記事が分かりやすかったです:thumbsup:

Bolt を使って Slack bot を作成する

Bolt は Slack アプリ開発のための公式フレームワークです。
これ使うとめちゃめちゃ簡単にボットが作れます。

※ Soketモードのやり方が書いてありますが、ngrok を使うので設定不要です。

OpenAI API にリクエストする

openai ライブラリを使用します。

OpenAIに登録していない場合はまずは登録から。

ngrok でサービスを公開する

ngrok はローカル PC 上で稼働しているサービスを外部公開できるサービスとのことで、めっちゃ便利です。

作ったボットを起動させてサービスを公開します。

Slack アプリに URL を登録する

ngrok で公開時に表示された URL(Forwardingの箇所です) をSlack アプリの Event Subscriptions に登録します。

同じページの Subscribe to bot events に必要な権限を設定して、保存します。

まだローカルで起動しているだけですが、これで Slack 上でツンデレ女子と会話できるようになっているはずです🎉

WEB サーバーを作る

Fly.io で WEB サーバーを作ります。
公式ドキュメントの通りにやっていけばすぐにできます。

※無料枠で使いたい場合はメモリを 256MB に変更する必要があります。デフォルトでは1GBが設定されています。

Fly.io で作られた URL をSlack アプリに登録します。(ngrok の URL 設定した箇所を上書きます。)

これで全て完成です🎉

その他

自動デプロイ

GitHub Actions で Fly.io に自動デプロイする方法です。

最後に

こんなに簡単にできるとは...!って感じです。
ツンデレ女子以外にも猫ちゃんとか色々な子とおしゃべりできるので一人で楽しんじゃってます🤭

参考にさせていただた記事には感謝です:thumbsup:

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1