logo
Development
検索
音声エージェントのベストプラクティス

音声エージェントのベストプラクティス

本記事では、音声エージェントの選定、チューニング、公開における一般的な手法をまとめ、「はっきり聞き取り、正確に答え、自然に話す」音声 Agent をより早く手に入れられるようお手伝いします。各パラメータの意味と取り得る値の範囲は設定ガイドを参照してください。

エンジンモードの選び方

まず要件に応じてモードを位置付け、その後モデルを選びます。

  • 最低遅延、自然な口語を追求Real-time model(REALTIME):遅延が最も低く、雑談練習や音声ナビゲーションなど、反応速度に敏感でトークが比較的オープンなシーンに適しています。
  • 強力なテキスト能力、ツール呼び出し、厳密なトークが必要ASR-LLM-TTS:遅延は最も高いですが、テキスト大規模モデルの制御性が最も高く、ナレッジベース、データベース、ツールを安定して接続でき、音声カスタマーサポート、業務手続きなどのシーンに適しています。声色は独立した TTS で決まるため、ブランド音声を統一しやすくなります。
  • モデルが音声入力をネイティブにサポートしており、フローを簡素化したいLLM+TTS:遅延は中程度で、独立した ASR を 1 段省き、大規模モデルが直接音声を「聞き取る」ため、フローがより短くなります。

VAD と割り込みのチューニング

VAD は「Agent がいつあなたが話し終えたと判断するか」を決定し、体験に直接影響します。シーンに応じて取捨選択します。

  • 音声カスタマーサポート / ホットライン(速く、割り込み可能にしたい)音声割り込みの感度を適度に高くし、ユーザーがいつでも口を挟めるようにします。区切りの間はやや小さくして、応答待ちを短縮できます。代償として、騒がしい環境では誤って割り込まれやすくなります。
  • 深い問答 / 読み上げナレーション(安定させ、誤割り込みを減らしたい)音声割り込みの感度を低くし、区切りの間を適度に大きくして、ユーザーが考えて間を置いたときに話をさえぎられるのを防ぎます。
  • 騒がしい環境:Real-time model のプリセットモード音量アクティベーションしきい値を高くし、背景ノイズによる誤トリガーを減らします。
  • プリセットモード vs セマンティックモード(Real-time model のみ):安定して予測可能な区切りを求めるならプリセットモードを、Agent に意味に基づいてユーザーが話し終えたかを判断させたいならセマンティックモードを使い、応答速度と組み合わせてリズムを微調整します。

まずデフォルト値(区切りの間 500 ms、音声割り込み 0.5)で体験し、その後、実際の録音に合わせて 1 段ずつ微調整し、一度に 1 つのパラメータだけを変更することをお勧めします。

アイデンティティプロンプトの書き方

音声シーンではユーザーは「読む」のではなく「聞く」ため、プロンプトは簡潔で口語的にするのが望ましいです。

  • 役割と境界を明確にする:誰であるか、何ができるか、何を話さないか。
  • 短文での回答を求め、長い段落、箇条書き、表など、読み上げに適さない構造を避ける。
  • 口語的な表現を取り決める:数字、金額、時刻はできるだけ自然な口語で読み上げ、硬い専門用語を減らす。
  • 言語と語調を指定する:例「簡体字中国語で、丁寧かつ簡潔に回答する」。

TTS テキストクリーニング

大規模モデルのテキスト応答にはしばしば記号が含まれ、そのまま合成すると「読み上げ」られてしまいます。削除置換の 2 項目でクリーニングします。

  • 削除:括弧 ()、角括弧 []、書名号 《》、アスタリスク *、ハッシュ # などの Markdown・組版記号。「アスタリスク」「ハッシュ」と読み上げられるのを防ぎます。
  • スペースに置換:間を置く必要はあるが読み上げるべきでない記号に使用し、区切りの自然さを改善します。
  • ペアの括弧は 1 つのまとまりとして入力し(() など)、複数の記号は半角カンマで区切ります。

アイデンティティプロンプトでモデルに「Markdown を出力しない」よう求めることと併用すると、二重の効果でより良くなります。

ウェルカムガイドとバーチャルヒューマンイメージ

  • ウェルカムメッセージは短く、要点を突き、一言でアイデンティティと用途を説明します。例「こんにちは、こちらは XX カスタマーサポートです。どのようなご用件でしょうか?」
  • 発話 / 待機イメージの動画は必ず先頭フレームと末尾フレームがつながっているようにします。そうでないとループ時に明らかなコマ飛びが発生します。発話イメージは「発話中」に、待機イメージは「傾聴中」に対応します。
  • 多言語業務では、言語ごとにウェルカムメッセージとイメージを個別に設定することを忘れないでください。

通話制御の戦略

各対話に「セーフティネット」を設定し、空回りとリソース占有を防ぎます。

  • 無言制御:適切な沈黙タイムアウト(デフォルト 10 秒)を設定し、自然な無言プロンプトを添えます。例「まだいらっしゃいますか?続けてもよろしいですか?」でユーザーを引き戻します。
  • 自動切断最大通話時間(デフォルト 600 秒)と最大沈黙回数(デフォルト 5 回)でセーフティネットを張り、無制限の通話や、長時間応答のない回線占有を防ぎます。切断プロンプトは 20 tokens 以内に制限し、簡潔な別れの挨拶で十分です。

背景音使用時の注意

  • 背景音量は人声を覆い隠すべきではありません(デフォルト 30、範囲 1~50)。高すぎると認識精度と通話の明瞭さが低下します。
  • カスタム背景音は mp3 かつ ≤ 1 MB である必要があります。

音声認識品質

  • 特定領域を対象とする場合は、ASR 書き起こし指示を活用して専門用語、ブランド名、業界用語をヒントとして与えると、認識精度が大幅に改善します。
  • ユーザー言語が固定されている場合は、音声言語をできるだけ「自動認識」ではなく指定すると、安定性が向上します。
  • プラットフォームには音声品質検証が内蔵されています。短すぎる(1 秒未満)音声を自動的に破棄し、よくある認識の「幻聴」フレーズ(「ご視聴ありがとうございました」「チャンネル登録をお願いします」などの無意味な結果)をフィルタリングして、誤トリガーを減らします。このような結果が無視されるのは正常な現象であり、追加の設定は不要です。

公開とインテグレーション

  • Web 埋め込み:音声エージェントを音声対話コンポーネントとして Web サイトに埋め込みます。iframe インテグレーションを参照してください。
  • 電話接続:Twilio 番号への着信をバインドするか、サードパーティ SIP システム経由で着信を転送します。電話システム接続操作マニュアルを参照してください。

課金と同時接続

  • 音声通話は音声使用量に応じてポイントを差し引きます。ポイントを使い切ると着信が拒否されるため、余裕を確保してください。
  • 同時通話数の上限に注意してください。上限を超えた新規着信は拒否されます。公開前に、想定する通話量に応じて同時接続の必要量を評価してください。
  • 通話記録はログ / 対話記録で確認でき、セッションのソース、着信番号、複数ターンの問答、実行タイムラインを含むため、振り返りと最適化に便利です。