VRChatでAIチャットボットを作ってみた!3日で完成した驚きの開発秘話と課題
詳細情報
集会名 | ML集会 |
---|---|
日時 | 2022年12月21日 22:30 - 23:00 |
テーマ | VRChat Botの仕組みと顛末 |
発表者 | GesonAnko |
発表資料 |
※以下文章はスライド資料を元に自動生成されたものです。
3日でAIチャットボットが作れちゃう!?VRChatで遊ぶ未来
VRChatで、ユーザーと会話するAIチャットボットを3日間で開発したGesonAnkoさんの発表を元に、その開発秘話や仕組み、そして課題についてご紹介します。なんと、音声認識からテキスト生成、音声合成までを組み合わせ、まるで本当に人が話しているかのようなチャットボットを実現したそうです!
VRChat AIチャットボット開発のキッカケ
GesonAnkoさんがAIチャットボットを開発しようと思ったのは、フレンドのヒューズさんから「VRChatで会話する人がいたら面白いよね」という提案がきっかけだったそうです。APIや言語モデルの存在を知り、実際に開発に挑戦した結果、わずか3日間でチャットボットが完成!その手軽さに驚き、フレンドと遊んだり、フリーワールドに放置して反応を見るなど、様々な実験を行ったそうです。
規約違反から学んだ教訓
しかし、その実験中にVRChatの利用規約に抵触してしまう事態が発生。ユーザーの同意を得ずに個人情報(会話ログ)を収集していたことが問題となりました。GesonAnkoさんは、この経験から、AIチャットボット開発においてユーザーの同意取得が非常に重要であることを改めて認識し、同意取得方法を検討するようになりました。
AIチャットボットの仕組み
GesonAnkoさんが開発したAIチャットボットは、以下の4つの要素から構成されています。
- 音声録音アルゴリズム
- Whisper(音声認識モデル)
- text-davinci-003(言語モデル)
- Open JTalk(音声合成ツール)
言語モデルの制御:ビヘイバープロンプトと出力停止ワード
特に重要なのが、言語モデルであるtext-davinci-003の制御方法です。GesonAnkoさんは、ボットの振る舞いを決めるための「ビヘイバープロンプト」を用意することで、AIの返答をコントロールしているそうです。
さらに、AIが無限に話し続けてしまわないように「出力停止ワード」を設定する必要性も解説されています。これらの工夫により、ユーザーとの自然な会話を実現しているのです。
課題:会話の難しさ、音声認識の精度など
開発は成功したものの、AIチャットボットにはまだ多くの課題が残っています。
- 会話のタイミングが掴みにくい
- 音声認識の精度が完璧ではない
- 音声合成の音質
- API使用量の制限
特に、APIの利用制限は大きな課題で、無料枠では利用できるリクエスト数が限られているため、長時間遊ぶには向いていないとのことです。
ローカル環境でAIチャットボットを動かす
より高度な言語モデルを利用するには、ローカル環境でAIチャットボットを動かす必要があります。しかし、大規模言語モデルを動かすには、360GB程度のストレージが必要となるなど、ハードルが高いのが現状です。
GesonAnkoさんは、より少ないリソースで動作する言語モデルの探索や、既存の言語モデルのチューニングによって、ローカル環境での活用を模索していくそうです。
まとめ
VRChatでAIチャットボットを開発する方法は、音声認識、言語モデル、音声合成といった技術を組み合わせることで実現可能です。しかし、ユーザーの同意取得やAPI使用量、音声認識の精度など、解決すべき課題も多く存在します。
GesonAnkoさんは、今後もAIチャットボットの研究開発を続け、VRChatの世界をより楽しく、インタラクティブなものにしていきたいと考えているそうです。
ぜひ、皆さんもVRChatでAIチャットボット開発に挑戦してみてはいかがでしょうか?