技術記事書きました
このボットの実行には以下のトークンが必要です.
- Discord botのToken
- OpenAIのAPIキー
Secrets.toml
にトークンをセットしてください。
DISCORD_TOKEN="xxxxxxx"
CHATGPT_TOKEN="xxxxxxx"
OpenAI API keysへアクセスしてCreate new secret key
をクリックしてAPIキー発行します。
Usage limitsで使用量の上限を設定しておくことを推奨します。
- Discord Developer Portalへアクセスし、
New Application
をクリックし、アプリケーションを作成します - 作成したアプリケーションからBotのページに移動して、
Add Bot
をクリックし、Botを作成します。 - TOKENの下にある
Copy
をクリックして、Tokenを取得します
- 初期設定では
PUBLIC BOT
がONになっているので、OFFにします MESSAGE CONTENT INTENT
をONにして、メッセージを取得できるようにします
- OAuth2 > URL URL Generator へアクセスします
- SCOPESの
Bot
にチェックを入れます - BOT PERMISSIONSの
Send Messages
,Read Message History
にチェックを入れます
- ページの一番下にある、GENERATED URLをコピーしてブラウザに貼り付けます
- 案内に従いBotをサーバーへ導入します
-
shuttleのインストール
cargo binstall cargo-shuttle
-
shuttleへログイン
cargo shuttle login
-
shuttleのapi keyの取得 ログインしたのちapi keyが付与されたのコマンドをコピーして実行し、認証を行います
cargo shuttle login --api-key <your_api_key>
-
プロジェクト作成を行います
Cargo.toml
のname
の項目を任意の文字列に書き換えます。 shuttleで既に使われているnameと重複した場合、a project with the same name already exists
と表示されます。chatgpt-bot-for-discord/Cargo.toml
Lines 1 to 2 in 83ca21a
デフォルトでは30分アクセスがないとスリープモードになるため、
--idle-minutes 0
のオプションをつけますcargo shuttle project new --idle-minutes 0
cargo shuttle run
cargo shuttle deploy
以下のような表示がされたらデプロイ成功です👏
Service Name: <project name>
Deployment ID: xxxxxxxxx-1234-6789-1234-xxxxxxxxxx
Status: running
Last Updated: 2023-03-11T10:08:18Z
URI: <app_url>
cargo shuttle stop
本プログラムに起因するトラブル・損害・損失につきましても、 当方は一切責任を負いません。