【要約】子どもとAIが一緒にへんてこなお話を作る「AIおはなし機」をAmiVoice + GPT-4oで作った話 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
開発者は、育児中の親が子どもと対話できる音声UIの構築を目指した。しかし、ターゲットとなる4〜6歳の子どもの音声には、以下の技術的課題が存在する。
- ・高周波な声質や不安定な発音。
- ・「えっと」などのフィラーの多用と文法の崩れ。
- ・家庭内の換気扇や調理音といった環境ノイズ。
- ・静かな環境を前提とした従来の音声認識モデルの限界。
// Approach
開発者は、音声認識の精度向上のみに依存せず、LLMによる後処理で意味を補完する設計を採用した。具体的な手法は以下の通りである。
- ・AmiVoiceのフィラー除去をOFFにし、GPTに文脈判断を委ねる。
- ・漢字変換に依存しないよう、AmiVoiceの「spoken(読み)」情報をキーワード抽出に利用する。
- ・会話履歴を「ナレーター形式」で蓄積し、ストーリーの継続性を維持する。
- ・TTSの読み間違いを防ぐため、事前にGPTでテキストをひらがな化する。
- ・WebSocketを用いて、音声を実時間に近いペースで分割送信する。
// Result
4歳児による実機検証において、ストーリーの継続と高いエンゲージメントを確認した。
- ・2択の誘導設計により、子どもの発話の停滞を解消。
- ・多少の誤認識があっても、GPTが自然な文脈で補完可能であることを実証。
- ・家庭内ノイズ下でも、実用的な認識精度を確保。
- ・今後の課題として、日本語ウェイクワードの実装や話者分離の必要性が明確になった。
Senior Engineer Insight
> 認識精度100%を追求せず、LLMの文脈理解で「意味の欠落」を埋める設計は、極めて合理的だ。エッジ環境での音声UI開発において、認識エラーを許容するアーキテクチャは、開発コストとユーザー体験のバランスを取る上で必須の視点である。実戦投入時には、話者分離によるノイズ除去と、低遅延なストリーミング制御がスケーラビリティの鍵となるだろう。