見出し画像

VRM_AIをCeVIOの感情に独自対応してみた

こんにちは!いぬいぬです!
前回の記事で、VRM_AIを遊んでみたんですが、色々たいへんだったのと、ボイスの感情に対していなかったので独自対応版をつくってみました!

VRM_AIって?

今話題のAI、ChatGPTやWhisperをつかって3Dキャラと
おしゃべりできるよってソフトです!

制作者さんがCeVIOなどのトークソフトの動作報告を募集していたので使ってみました、ってのが前回の記事でした!

改造してみた

なるべくかんたんにつかえるように

3Dのモデル(VRM)と設定をちょっと書くだけで、CeVIOと連動できるようにしました。CeVIOと連携するツールは一緒に入ってるので、追加でDLする必要はありません。

[AI_Voice]
VoiceApp = CeVIO

VoiceAppは「CeVIO」にしてください。

CeVIO_exe =
CeVIO_narrator = さとうささら
CeVIO_product = "CeVIO_AI"

CeVIO_narratorはしゃべるキャラの名前(トークボイス名、キャスト名)、CeVIO_productはCeVIO AIのときは 「CeVIO_AI」 / CeVIO CSのときは 「CeVIO_CS」にしてください。
※CeVIO_exeはCeVIOのインストール先を変えてるときだけインストール先を記入してください。

追記:CeVIO CSが動いてなかったので修正しました!

感情の設定

VRM_AIは「Character_settings.txt」の中で、chat AIに5つの感情を設定しています。

お嬢様 outputs the most appropriate emotion from "Happy", "Angry", "Sad", "Relaxed", and "Surprised" and the weight of that emotion as a value between 0 and 1.

config.iniの[VoiceEmotion]のところではその5つのAIの感情に対して、CeVIOトークの感情パラメータを割り当てる設定をしています。

[VoiceEmotion]
Emotes = Happy | Angry | Sad | Relaxed | Surprised
Emotes_weight = 元気:100,普通:10|怒り:100|哀しみ:100|普通:100|元気:100,哀しみ:50
Emotes_option = |Volume:100|Volume:40|Volume:45,Speed:45|ToneScale:75

この例でいれば、
Happyの時は、CeVIOの感情パラメータは元気が100、普通が10になります。
Angryのときは、CeVIOの感情パラメータは怒りが100、追加のパラメータがVolumeが100になります。

chat AIの感情はweightといって感情の度合いも表現しているので、度合いも反映するようにしました。

たとえば Angry, 0.5のときは 怒り が 100*0.5 = 50になります。

しゃべるときに画面の右上にでてるのがAIの感情です。

フィーちゃん:["Happy" , 0.8 , "フィー、フィッフィッ!フィーちゃんは嬉しいです!"]
フィーちゃん:["Angry" , 0.6 , "怒りました!"]
フィーちゃん:["Sad" , 0.6 , "悲しいですぅ…"]
フィーちゃん:["Relaxed" , 0.4 , "まったりするのもいいですね。こういうときこそ、メロンパン!"]
フィーちゃん:["Surprised" , 0.4 , "きゃっ!?……驚いてなんかいません!]
フィーちゃん:["Happy" , 0.6 , "メロンパンが今日もおいしいです!"]
フィーちゃん:["Angry" , 0.8 , "人類を滅亡させる"]
フィーちゃん:["Sad" , 0.4 : "気分が落ち込みます"]
フィーちゃん:["Relaxed" , 0.4 , "落ち着きます~"]
フィーちゃん:["Surprised" , 0.9 , "うわ~~~!"]

「Character_settings.txt」ではすきなようにAIのキャラの設定ができるので、AIの感情も変更可能です。その時はconfig.iniのボイスの感情パラメータも合わせて変更が必要です。

トラブルシューティング

AIがずっと考え込んだまま・エラーをしゃべる

VRM_AIはChatGPTのAPIを使っているんですが、このAPIの反応が遅い時があります。反応が帰ってこないときはエラーになっちゃうようで、そのときはエラーメッセージの読み上げになっちゃいます。

ChatGPTが人気なのでこれからどんどん重くなるかもしれません…。

ChatGPT proにすれば解決するのかな…?

CeVIOとの連携がうまく行かない

VRM_AI CeVIO版ではCeVIOとの連携にオリジナルのサーバー(FluentCeVIOWrapper.Server)を使っています。

CeVIOと連携する設定にすると黒いサーバーの画面が一緒に立ち上がるようになります。

VRM_AIを終了しても残っちゃってるときは「q」を打ち込むか、ウィンドウを閉じて終了してください。2つ以上立ち上がるとCeVIOの連携の制限にひっかかってうまく動きません!

黒い画面が出ないときはconfig.iniでCeVIOを使う設定になってない可能性があります。

黒い画面がでてるけど、うまく喋ってくれないときは、この画面になにかエラーがでているかもしれません。「env.DllPath:」がCeVIOのインストールしている場所じゃないとかだと通信できないので失敗します。

この記事が気に入ったらサポートをしてみませんか?