このコードは、Discordで動作するチャットボット「ステラちゃん」を実装したC#プログラムです。
- Discord.Net
- Newtonsoft.Json
- OpenAI_API
TOKEN_DISCORD
: Discord Botのトークンを設定します。TOKEN_OPENAI
: OpenAI APIのトークンを設定します。
- Discordサーバー上でチャットを受け付けます。
- 受け取ったメッセージをOpenAI APIを利用して返答を生成します。
- チャットボットの設定や振る舞いを制御するためのスラッシュコマンドを実装しています。
Program
クラスがメインの実装クラスです。MainAsync()
メソッドで、Discordへの接続やイベントの設定を行っています。Log()
メソッドは、ログメッセージをコンソールに出力します。CommandRecieved()
メソッドは、メッセージ受信時にトリガーされ、OpenAI APIに入力を送信して応答を取得します。SetUpChatGPT()
メソッドは、OpenAI APIの初期設定を行います。SendChatGptSystemPrompt()
およびSendChatGptPrompt()
メソッドは、それぞれSystemメッセージおよびUserメッセージをOpenAI APIに送信し、応答を取得します。Client_Ready()
メソッドは、Discordクライアントの準備が整った際に実行され、スラッシュコマンドの設定を行います。SlashCommandHandler()
メソッドは、スラッシュコマンドが実行された際にトリガーされ、それに対応する処理を行います。DisconnectService()
メソッドは、プログラム終了時にDiscordから切断し、イベントハンドラーを解除します。
/reset
: AIの状態をリセットします。/system
: System側のプロンプトを追加します。