前回、VRoidのキャラに喋ってもらう仕組みを作った。

23/05/29 UE5.0でVoiceVoxで音声合成してVRoidのキャラに喋ってもらう

これは裏でLangChainを実行していて、AIと会話する事ができる。

だが、せっかくAIが音声で喋ってくれるなら、こちらも音声で喋ってお互いに声で会話できるようにしたいところだ。

そうなると、当然Whisperによる音声認識を使おうという話になる。(他にもAzureの音声認識APIを使うみたいな手もあるけど)

先に結果を見せると、今回の成果物はこんな感じだ。Whisperを使った音声認識で、人間とAIが音声で会話出来ている。↓

https://twitter.com/umiyuki_ai/status/1665213233320566785

最初、これは一瞬で実装できると思ってた。なぜならマケプレに無料の”Runtime Speech Recognizer”というWhisper.cppを使って音声認識できるUEプラグインがあるからだ。

Runtime Speech Recognizer

ちなみに、空き家総研さんの”Whisper-based Real-time Speech Recognition”というプラグインもあるが、値段が15394円するので選択肢から外れた。

Whisper-based Real-time Speech Recognition

それで、Runtime Speech Recognizerプラグインを実際に試したところ、認識速度が遅すぎた。というのは、Whisper.cppベースなため、CPU演算になってしまうので、どうしても処理に時間がかかる。

WhisperのLargeモデルはもちろん、Mediumでも遅すぎるし、Smallでもまだ実用的な速度ではない。どうやら、Tinyモデルの使用を想定しているようだ。

しかし、Tinyだと日本語の音声認識は実用性が無い。せめてSmall、なるべくMedium、できればLargeが必要だ。