AI駆動音声チャット
Eng | 繁中 | 日本語 | 한국어 | 简中 |
AI搭載音声チャット
主な機能
- OpenAI、ローカルまたはリモートのテキスト生成WebUIをAIサービスとして使用するオプション
- AI生成メッセージを音声に変換するための組み込みTTSエンジン
- 話すときにキャラクターの顔を自動的にアニメーションするための組み込みリップシンク
- あなたの声をテキストに変換し、AIに送信するための組み込み音声認識
- 各キャラクターが独自の声を持てるように、900以上の英語の声が含まれる
制限事項
- 音声エンジンはWindows専用。他のプラットフォームでは音声認識を使用して話すことはできますが、応答はテキストのみになります。
AIサービス
キャラクターに知性を与えるために使用するAIサービスのさまざまなオプションがあります。それぞれのオプションについての利点と欠点を以下で説明します。
OpenAI (ChatGPT)
これは現在、最も知的なオプションです。
利点:
- スマート
- 速い
- コスト効率が良い(他のリモートオプションと比較)
欠点:
- 検閲されている
設定: DanceXRでOpenAIサービスを使用するには、OpenAI APIキーが必要です。
- OpenAIアカウントに登録してログインする。
- ページの右上隅にあるプロフィールアイコンをクリックする。
- 「APIキーを表示」を選択してAPIページを開く。
- 「新しいシークレットキーを作成」をクリックし、表示されたときにキーをコピーする。このキーはここで一度だけ表示されることに注意してください。後で完全なキーを取得することはできないので、失わないでください。
- DanceXRを開き、チャットメニューから設定アイコンをクリックする。
- AIサービスに移動し、「OpenAI APIキー」ボックスにキーを貼り付ける。
- その後、「AIサービス」ドロップダウンで「OpenAI(ChatGPT)」を選択すれば、準備が整います。
- チャット設定では、使用したいモデルを選択できます。
ローカルでLLMを実行(LM Studio, OobaBooga, Ollama)
コンピュータが十分に強力であれば、ローカルでLLMを実行することもできます。例えば、最新のLlama3 8bはロールプレイングに十分です。OobaBooga、LM Studio、およびOllamaをテストしましたが、DanceXRとよく機能します。
AIの分野は非常に速く発展しており、新しいツールやモデルが常に登場しています。ここでの推奨は、執筆時点での知識に基づいており、あなたが読むときには古くなっているかもしれません。独自のオプションを探索してみてください。DanceXRはOpenAI API仕様をサポートする任意のLLMツールで機能するはずです。
利点:
- プライバシー、何も送信されず、すべてがローカルで発生する。
- 実行するモデルを選ぶことができ、検閲されていないものも含まれる。
- 無料
欠点:
- オンラインモデルほどスマートではない
- やや設定が必要
- LLMをローカルで実行するのは非常にリソースを消費する可能性があり、DanceXRとLLMを同じマシンで実行しようとする場合。
設定: 現在、LM Studioはコマンドラインツールを操作したくない場合は良い選択です。 LM Studioに関しては、こちらの手順に従ってください:
- https://lmstudio.ai/ からLM Studioをダウンロードしてインストールする。
- LM Studio内でLLMモデルを選択してダウンロードします。現時点ではLlama3 8bの使用をお勧めします。
- チャットタブに切り替えて、ダウンロードしたモデルをロードします。
- 「ローカルサーバータブ」に移動し、「サーバーを開始」をクリックします。ポート番号に注意してください(既定は1234)。
OobaBoogaについては、こちらの手順に従ってください:
- https://github.com/oobabooga/text-generation-webui をダウンロードしてインストールします。
- WebUIがDanceXRと機能するようにAPIを有効にする必要があります。これを行うには、CMD_FLAGS.txtファイルを開いて「–listen –api」を追加し、その後再起動します。
- 実行中になったら、モデルタブに移動し、まだ持っていない場合はモデルをダウンロードします。
- 次の2つのモデルのうちの1つを使用することをお勧めします: https://huggingface.co/TheBloke/Luna-AI-Llama2-Uncensored-GPTQ (7b, 実行が簡単) https://huggingface.co/TheBloke/Nous-Hermes-Llama2-GPTQ (13b, スマート)
- モデルリストを更新してロードします。デフォルトのポート番号は5000です。
Ollamaの設定: Ollamaは、最小限の設定でローカルAIモデルを実行する簡単な方法を提供します。
- https://ollama.ai/ からOllamaをダウンロードしてインストールします。
- Ollamaアプリを開いて、お好きなモデルをダウンロードします。
- DanceXRで「AIサービス」から「Ollama」を選択します。
- 「モデル名」ボックスにモデル名を入力します。例えば、「llama2-7b-chat」。
- これでOllamaをAIバックエンドとして使用できるようになります。
DanceXRの設定:
- DanceXRで「AIサービス」から「ローカルWebUI」を選択します。
- サーバーのURLとポート番号を入力します。例えば「http://127.0.0.1:1234」(LM Studio)または「http://127.0.0.1:5000」(OobaBooga)。
WebUIを実行するためのRemote Serviceの使用
AIモデルを実行するためにGPUをレンタルできるサービスがあります。Runpodはその一つです。彼らはWebUIのテンプレートを持っており、ローカルで実行するよりも設定が簡単です。
利点:
- 速くて簡単
- 実行したいモデルを自由に選択できます。ローカルGPUで実行できないモデルでも。
欠点:
- OpenAIよりも少し高価
- 毎回実行するたびにモデルをダウンロードする必要があります。しかし、数分で済むはずです。
設定:
- 「コミュニティクラウド」からGPUを選択し、「デプロイ」をクリックします。3080tiは13bモデルを実行するのに十分です。コストは1時間26セントです。
- テンプレートドロップダウンから「RunPod TheBloke LLMs」を選択します。
- 実行中になったら、接続をクリックするとWebUIとAPIのリンクが表示されるので、APIのURLをコピーしてDanceXRの「Remote WebUI URL」ボックスに貼り付けます。
- WebUIリンクをクリックして、モデルタブに移動し、モデルをダウンロードします。
- 次の2つのモデルのうちの1つを使用することをお勧めします: https://huggingface.co/TheBloke/Luna-AI-Llama2-Uncensored-GPTQ (7b, 実行が簡単) https://huggingface.co/TheBloke/Nous-Hermes-Llama2-GPTQ (13b, スマート)
- モデルリストを更新してロードします。
ローカルモデルのための改善されたプロンプト
DanceXRは、特に小さなローカルモデルを使用する際に会話の質を向上させるための改善されたプロンプト技術を含んでいます。これにより、より良い応答と魅力的な対話を確保します。
チャットコントロール
テンプレート
テンプレートは、AIモデルが各キャラクターのチャットメッセージを生成するためのものです。複雑に思えるかもしれませんが、実際には非常に簡単です。チャット/テンプレートフォルダーを開いて、デフォルトテンプレートを開くことで、その動作を確認できます。
基本的に、誰かに特定のことをしてもらうために平易なテキストで伝えているようなものです。デフォルトテンプレートを修正して別の名前で保存すると、それがチャットの内容にどのように影響するかを確認できます。例えば、チャットのシナリオを設定するために環境の説明を追加できます。
DanceXRでは、チャット設定 -> テンプレートに移動して、作成したテンプレートを選択します。
キャラクター
キャラクターは、アクターモデルの名前から導き出されます。例えば「Koharu Bouquet Cattleya Hair B Side Ponytail」の場合、「Koharu」はキャラクター名として解釈され、残りの「Bouquet Cattleya Hair B Side Ponytail」は彼女の衣装の説明として使用されます。
言語モデルは、キャラクターがよく知られている場合、そのキャラクターに関する知識を持っているため、特にOpenAIを使用する場合は、彼らが誰で、どのように振る舞うかを知っていることがあります。
キャラクター設定ではキャラクターの説明や性格を入力でき、それがチャットでの振る舞いに大きく影響します。例えば、誇り高く傲慢なキャラクターを「従順で喜んで応じる」と説明するだけで、従順なキャラクターに変更することができます。
「プレイヤー」も技術的にはキャラクターであり、自分自身の名前、説明、性格を変更して好きなキャラクターになることができます。
ペルソナ
キャラクター設定にはペルソナのドロップダウンがあります。これにより、TavernAIのようなAIロールプレイプログラムからダウンロードしたキャラクターを使用できます。これらは通常PNG形式で提供されます。
オンラインのキャラクターエディターを使用して、pngキャラクターをjson形式に変換します:https://zoltanai.github.io/character-editor/
次に、そのjsonを「chat/personas」フォルダーに配置すると、キャラクター設定のペルソナドロップダウンに表示されます。それを行うと、ペルソナの説明がキャラクターの説明を上書きします。
チャット履歴
チャット履歴は、新しいコンテンツを生成するたびにAIに送信され、コンテキストを維持します。別のシナリオやトピックに切り替えたい場合は、最初に履歴をクリアして、AIが以前のチャットコンテキストに影響されないようにします。これを使用して、環境を操作し、チャットを促進することもできます。たとえば、メッセージ内で何かが起こったことを説明すると、AIはそのコンテキストを続けます。
プロンプトの制限に達すると、最古のメッセージが無視され、コンテキストに含まれないことに注意してください。そのため、AIは履歴の中で非常に古い事柄を忘れる可能性があります。
チャットインターフェースでは、チャットメッセージの横にあるアイコンをクリックしてチャット履歴を操作できます。オプションには以下が含まれます:
- 再生成: すべてのメッセージを削除し、AIにこのメッセージを再生成させる
- 書き換え: メッセージを占有し、自分で書き換える。これを行う場合、名前とコロンをメッセージの前に保持する必要があります。そうしないと、システムはこのメッセージの送信者が誰かわからなくなります。
- 再生: このメッセージからチャット履歴を再生する
- エントリ削除: このメッセージを削除する
- 上を削除: このメッセージの上のすべてのメッセージを削除する
- 下を削除: このメッセージの下のすべてのメッセージを削除する
温度
この値は、AIモデルがチャットメッセージを生成する際の自由度を制御します。画像生成と同様に、同じ入力で、生成時に多少異なることがあります。温度は、どれだけ変化できるかを制御します。
プレゼンペナルティと頻度ペナルティ
これらの値を上げることで、AIが重複したコンテンツを生成する可能性を減少させます。
最大生成トークンと最大プロンプト長
LLMにはトークン制限があり、制限を超えるコンテンツは正しく生成されません。
自動生成とプレイヤーのための生成
「自動生成次」をオンにすると、タイマーが切れたときにAIが自動的に次のメッセージを生成します。
「プレイヤーのための生成」をオンにすると、AIがプレイヤーのためにメッセージを生成します。
テキストから音声へ
追加の声
DanceXRはPiperというTTSエンジンを使用しています。ここでは、DanceXRで使用するための追加の音声モデルを聴いてダウンロードできます。
https://rhasspy.github.io/piper-samples/
ダウンロードしたら、それらをchat\voices\piperフォルダーに置いてください。onnxとonnx.jsonの両方のファイルが必要であることに注意してください。
音声マネージャー
組み込みの音声モデルには900以上の異なる声が含まれています。デフォルトでは、最初の20の声だけが有効になっています。900はユーザーが選ぶには多すぎるためです。他の声を有効にするには、チャット設定から「音声」->「音声マネージャー」に移動し、リストからいずれかの声を選択して聴き、「選択」をチェックして音声リストに追加できるようにします。
システム、プレイヤー、各キャラクターに異なる声を選ぶことができます。
言語のマッチングとフォールバック
AIモデルは異なる言語のメッセージを生成できますが、音声モデルはできません。DanceXRはメッセージの言語を判断し、選択した音声言語と一致しない場合、音声設定で「フォールバック」を有効にすると、音声リスト内で言語に一致する異なる音声を選択できます。
1.5.1アップデートで導入された新しい設定では、デフォルトの「自動」モードに加え、チャット言語の選択が可能です。この自動モードは、テキストコンテンツ自体から言語を判断しようとします。ただし、チャット言語設定で言語のいずれかを選択すると、それがチャットメッセージと言語の両方に使用されます。
プロンプトメッセージは、生成する際にGPTモデルが使用する言語を決定する際に、より高い影響を持つことに注意してください。英語以外の言語を選択する場合は、自分が選んでいる言語にネイティブテキストでプロンプトテンプレートも更新することをお勧めします。
音声からテキストへ
組み込みのWhisperモデルは、あなたの声をテキストに変換し、次にAIに送信します。手動と自動の2つのモードがあります。
手動モード
手動モードは、マイクボタンをクリックすると録音を開始し、完了したら再度クリックして音声を処理し、結果をAIに送信することを意味します。
自動モード
自動モードは、チャットがアイドル状態(キャラクターが話していない)になると自動的に録音を開始し、リアルタイムで音声を処理し、あなたが話し終わったら送信します。ただし時々スマートではありません。
低スペックのデバイスの場合、音声をテキストに処理するのには時間がかかる場合があります。したがって、自動モードはAndroidやQuestには推奨されません。
キーバインディング
入力設定で、マイクの状態を切り替えるボタンを割り当てることができ、UIに入らずに録音を制御できます。デフォルトでは、右手のコントローラーメニューボタンに割り当てられています。
設定とキャラクター設定のリセット
すべてはあなたのコンテンツライブラリのチャットフォルダーに保存されます。気軽にチャットフォルダーを削除してすべてをデフォルトにリセットしてください。