Amazon Connect Customerで、低レイテンシーでより自然なAI音声会話を実現するAgentic Voiceが利用できるようになりました
はじめに
Amazon Connect Customerで、低レイテンシーでより自然なAI音声会話を実現するAmazon Connect agentic voiceが利用できるようになりました。
今回のアップデートでは、50以上の言語、100以上の音声が提供されます。また、発話速度や音量、感情表現などの音声制御に加えて、自然な間を含む応答や、利用者の発話終了を判断し、自然なタイミングでAIが応答を始めるターンテイキングの改善も案内されています。
Amazon Connect agentic voiceは、既存のコンタクトフローとBotの設定に統合されています。
本記事では、作成済みのAmazon Connect AIエージェントにAmazon Connect agentic voiceを設定し、日本語で音声を確認します。
また、電話番号、住所、AWSサービス名の読み上げ結果についても紹介します。
なお、今回のアップデートには多言語対応も含まれていますが、本記事では日本語音声のみを確認します。
Amazon Connect agentic voiceの概要
Amazon Connect agentic voiceは、自然な音声合成とAdvanced Speech Recognition(高度な音声認識、以降Advanced ASR)を組み合わせた音声機能です。
主な機能は以下です。
| 機能 | 概要 |
|---|---|
| 多言語対応 | 50以上の言語やロケールに対応 |
| 音声の選択肢 | 100以上の音声を提供 |
| Advanced ASR | 低レイテンシーで自然なターンテイキングを実現 |
| 発話速度の制御 | 発話速度を指定可能 |
| 音量の制御 | 音量を指定可能 |
| 間の制御 | 発話中に任意の長さの間を挿入可能 |
| スペル読み | コードやIDなどを1文字ずつ読み上げ可能 |
| 感情表現 | 発話内容に応じた感情表現や、感情タグによる指定が可能 |
| 割り込み | AIの発話中に利用者が話し始めるbarge-inに対応 |
Advanced ASRは、固定された無音時間だけでなく、利用者の発話内容を評価しながら発話終了を予測します。
また、Amazon Connect agentic voiceでは、文章の内容から適切な発話速度や感情を自動的に推測します。特定の発話を細かく制御したい場合は、発話速度、音量、間、スペル読み、感情などを制御するタグも利用できます。
前提
今回は、Amazon Connect AIエージェントによるセルフサービス環境を利用します。
以下は作成済みとします。
- Amazon Connect Customerインスタンス
- 電話番号
- Amazon Connect AIエージェント
- AIエージェントのセルフサービス用Bot
- AIエージェントを呼び出すコンタクトフロー
AIエージェントには、クラスメソッド株式会社に関する問い合わせへ回答できるナレッジを設定しています。
コンタクトフローを設定する
フローの全体像
コンタクトフローは、Amazon Connect AIエージェントによるセルフサービス用フローを利用します。

今回利用したAIエージェントのセルフサービス用フロー
既存のフローを利用するため、主な設定箇所は以下の2点です。
- [音声の設定] ブロックで音声プロバイダーを変更する
- AIエージェントが利用するBotでAdvanced ASRを有効化する
音声プロバイダーを設定する
[音声の設定] ブロックを開くと、音声プロバイダーとして [Amazon エージェントボイス] を選択できました。

音声プロバイダーでAmazon エージェントボイスを選択
言語では、日本語を選択できました。

言語として日本語を選択
今回の環境では、日本語音声として以下の3種類を選択できました。
AikoRenYumiko

選択できた3種類の日本語音声
[音声サンプルを聞く] を選択すると、新しいタブで選択した音声のサンプルを再生できます。
コンタクトフローを発行する前に、それぞれの音声を比較できるため便利です。

選択した音声のサンプルを再生している画面
[音声の設定] ブロックでAmazon Connect agentic voiceを設定すると、AIエージェントの応答だけでなく、同じフロー内の [プロンプトの再生] ブロックでも設定した音声が利用されました。
そのため、AIエージェントの応答と、コンタクトフロー上の固定メッセージで同じ音声を利用できます。
設定後、コンタクトフローを保存して発行します。
BotでAdvanced ASRを有効化する
AIエージェントの音声認識にもAmazon Connect agentic voiceを利用する場合は、BotのSpeech modelを編集します。
今回設定した内容は以下です。
| 設定項目 | 設定値 |
|---|---|
| Model type | Speech-to-Text |
| Voice provider | Amazon Connect agentic voice |
| Speech model preference | Advanced |

BotでAmazon Connect agentic voiceとAdvancedを選択
今回確認した画面では、Model typeとしてSpeech-to-Textが表示され、Speech-to-Speechは選択肢にありませんでした。
Speech model preferenceでAdvancedを選択すると、Amazon Connect agentic voiceの高度な音声認識モデルが有効になります。
公式ドキュメントでは、従来よりも低いレイテンシーと認識精度の向上が案内されています。
設定を保存した後、Botをビルドします。
試してみる
以下の内容を電話で問い合わせました。
クラスメソッド株式会社の住所を教えてください。
お問い合わせ窓口の電話番号を教えてください。
ありがとうございます。解決しました。
実際の音声デモは以下です。
今回の検証では、従来利用していたAmazon Pollyの音声と比べて、Amazon Connect agentic voiceの方が自然で、人間らしい音声に感じました。
| 確認項目 | 結果 |
|---|---|
| 音声の自然さ | 従来利用していたAmazon Pollyの音声よりも、自然で人間らしい音声に感じた |
| レイテンシー | 体感では、従来よりも応答が速くなったように感じた |
| 電話番号 | 実際に回答されたお問い合わせ窓口の電話番号を、電話番号として自然に読み上げた |
| 住所 | 住所に含まれる1-1-1を「1年1月1日」と読み上げる場合があった |
音声の自然さとレイテンシーは、実際の電話を聞いた際の主観による評価です。音声品質や応答時間を定量的に計測したものではありません。
音声の自然さ
従来利用していたAmazon Pollyの音声と比べて、イントネーションや文章中の間が自然になったと感じました。
特に、AIエージェントが生成した文章をそのまま読み上げた場合でも、機械的に文章を連結している印象が少なく、会話として聞き取りやすかったです。
レイテンシー
利用者の質問が終わってからAIエージェントの応答が始まるまでの時間も、従来より短くなったように感じました。
Advanced ASRは、固定された無音時間だけでなく、利用者の発話内容を評価しながら発話終了を予測します。デフォルトでは、発話終了の確信度と無音時間のうち、先に条件を満たしたタイミングで利用者のターンを終了します。
一方で、今回はレイテンシーを計測して比較したわけではありません。
実際の応答時間は、AIエージェントが利用するモデル、ツール、外部APIなどの処理時間にも左右されます。
電話番号の読み上げ
実際にAIエージェントが回答したお問い合わせ窓口の電話番号は、電話番号として自然に読み上げられました。
従来利用していた環境では、ハイフンで区切られた数字を大きな数値として読み上げることがありました。今回のデモでは、各桁を電話番号として読み上げることを確認できました。
公式ドキュメントでは、Amazon Connect agentic voiceは、電話番号、メールアドレス、日付、時刻などの一般的な形式を、自然な音声に自動変換すると説明されています。
ただし、すべての電話番号や表記方法で同じ結果になることまでは確認していません。
住所の読み上げ
住所については、番地の読み上げが安定しない場合がありました。
AIエージェントが生成したテキストは以下です。
日比谷本社オフィスは、東京都港区西新橋1-1-1 日比谷フォートタワー26階にございます。
このうち、1-1-1を「1年1月1日」と読み上げる場合がありました。
一方で、「1の1の1」と読み上げる場合もあり、今回の検証では結果が安定しませんでした。
ハイフンで区切られた数字を、番地ではなく日付として解釈した可能性がありますが、内部の判定方法は公開ドキュメントからは確認できませんでした。
住所、日付、電話番号など、複数の意味に解釈できる文字列を扱う場合は、実際の電話で読み上げ結果を確認する必要があります。
AWSサービス名も別途確認した
今回の音声デモとは別に、AWSサービス名の読み上げも確認しました。
確認結果は以下です。
| 入力したテキスト | 実際の読み上げ |
|---|---|
EC2 |
「イーシーツー」ではなく「イーシーに」 |
S3 |
「エススリー」ではなく「エスさん」 |
EC2とS3の数字部分が、日本語の数字として読み上げられました。
今回確認した範囲では、一般的に利用されるAWSサービス名の読み方にはなりませんでした。
電話番号は自然に読み上げられましたが、英字と数字を組み合わせたサービス名については、意図した読み方にならない場合がありました。
AIエージェントが生成する回答に製品名、サービス名、略称、型番などが含まれる場合は、利用する音声と言語の組み合わせで読み上げ結果を確認した方がよさそうです。
音声制御タグにも対応している
Amazon Connect agentic voiceでは、発話テキストに音声制御タグを含めることで、発話速度、音量、間、スペル読み、感情表現を調整できます。
音声制御タグは [プロンプトの再生] ブロックだけでなく、Amazon Connect AIエージェントが生成する応答でも利用できます。
公式ドキュメントには、音声として読み上げるテキストを生成する場合に、音声向けの出力ルールをAIエージェントのシステムプロンプトへ追加する例が掲載されています。
なお、本記事では音声制御タグの動作確認までは行っていません。以下は、公式ドキュメントで確認できる機能の概要です。
| タグ | 用途 |
|---|---|
<speed ratio="X"/> |
発話速度を指定 |
<volume ratio="X"/> |
音量を指定 |
<break time="X"/> |
発話中に間を挿入 |
<spell>...</spell> |
文字列を1文字ずつ読み上げ |
<emotion value="X"/> |
感情表現を指定 |
[laughter] |
笑い声を挿入 |
AIエージェントの応答で利用する場合
AIエージェントの応答で利用する場合は、システムプロンプトで必要なタグを出力するよう指示します。
例えば、確認コードを1文字ずつ読み上げる場合は、AIエージェントに以下のようなテキストを生成させます。
確認コードは、<spell>TKT4829XB</spell>です。
発話中に明示的な間を入れる場合は、<break>タグを利用できます。
確認結果をご案内します。<break time="500ms"/>ご契約は有効です。
発話速度は、0.6から1.5の範囲で指定できます。
<speed ratio="0.85"/>重要なご案内です。
音量は、0.5から2.0の範囲で指定できます。
<volume ratio="0.8"/>電話番号をもう一度ご案内します。
[プロンプトの再生] ブロックで利用する場合
[プロンプトの再生] ブロックでText-to-Speechを利用する場合は、読み上げるテキストにタグを直接記述します。
例えば、メニュー項目の間に500ミリ秒の間を入れる場合は、以下のように指定します。
請求に関するお問い合わせは1を押してください。<break time="500ms"/>技術的なお問い合わせは2を押してください。
AIエージェントの応答では生成AIにタグを出力させますが、[プロンプトの再生] ブロックでは固定されたテキストにタグを記述します。
固定メッセージであればタグの形式を管理しやすいため、必ず一定の速度や間で読み上げたい案内に利用しやすそうです。
利用時の注意点
音声制御タグは、Amazon PollyのSpeech Synthesis Markup Language(SSML)と同じ形式ではありません。
公式ドキュメントでは、<speak>...</speak>のようなサポートされていないSSMLのラッパーは不要であり、含めないように案内されています。
また、タグの閉じ忘れなど、正しくない形式のタグが含まれている場合は、タグの文字列自体が読み上げられる可能性があります。
AIエージェントに音声制御タグを生成させる場合は、利用するタグを必要最小限に絞り、実際の電話で出力を確認する必要があります。
AIエージェントのプロンプトも音声向けに調整できる
AIエージェントがMarkdown、JSON、記号などを含む応答を生成すると、それらが不自然に読み上げられる可能性があります。
公式ドキュメントでは、以下のような点をAIエージェントのシステムプロンプトで指定する例が紹介されています。
- 完全な文章と通常の句読点を使用する
- Markdownや箇条書きを出力しない
- JSONや絵文字を出力しない
- アスタリスクやハッシュ記号を出力しない
- 応答を簡潔にする
- コードやIDを1文字ずつ読み上げる場合は
<spell>タグを使用する - 内部の推論やメタ情報を出力しない
今回の検証内容を踏まえると、例えば以下のような指示を追加できます。
## 音声出力ルール
すべての応答は音声で読み上げられます。
- 日本語の自然な話し言葉で回答してください。
- 完全な文章で回答し、文末には句点、疑問符、感嘆符のいずれかを付けてください。
- 応答は簡潔にし、長い説明を一度に行わないでください。
- Markdown、箇条書き、見出し、JSON、絵文字を出力しないでください。
- アスタリスク、ハッシュ記号などの特殊な記号を使用しないでください。
- コードやIDを1文字ずつ読み上げる場合は、対象をspellタグで囲んでください。
- 内部の推論、処理内容、メタ情報を出力しないでください。
Amazon Connect agentic voiceは、多くの場合、特別なタグを使わずに通常の文章を自然な音声へ変換します。
そのため、すべての応答に音声制御タグを追加するのではなく、最初は自然な文章を出力するルールから始め、読み上げを明示的に制御したい箇所だけタグを利用するのがよさそうです。
多言語対応について
Amazon Connect agentic voiceは、50以上の言語やロケールに対応しています。
公式ドキュメントでは、多言語対応のpolyglot voiceも紹介されています。
polyglot voiceを利用する場合は、利用者の入力言語を判定し、同じ言語で応答するようAIエージェントのシステムプロンプトに指示できます。
また、利用者が会話の途中で言語を切り替えた場合、AIエージェントの応答言語も切り替えるプロンプト例が掲載されています。
まとめ
Amazon Connect agentic voiceを日本語のAIエージェントで試しました。
従来のAmazon Pollyと比べて、音声の自然さや会話のテンポは好感触でした。一方で、住所やAWSサービス名は意図しない読み方になる場合があります。
導入時は、業務で扱う住所、電話番号、製品名などを実際の通話で確認するのがよさそうです。








