3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon Connect音声プロンプトにおけるSSML音声調整パラメータをコンタクト属性で管理する

Last updated at Posted at 2025-07-15

はじめに

Amazon Connectで音声プロンプトを再生する際、「話すスピード」「ポーズの長さ」「声の高さ」などの声色を、顧客層に応じて柔軟に調整したいケースがあります。

このような調整は、プロンプトの再生ブロック中にSSMLにて声色の設定タグを記入することで実現できます。
ただし、各プロンプトの再生ブロックに声色の設定タグを直接記述すると、元々の目的の「客層に応じて柔軟に調整する」できないため、再現性が低くなりメンテナンスも煩雑になってしまいます。

そこで本記事では、SSMLタグ中の声色の設定タグの値をコンタクト属性を用いて柔軟に管理する方法を紹介します。

ねらい

コンタクト属性を用いることで、以下のメリットが得られます

  1. 再利用しやすい
    複数のプロンプトブロックで同じコンタクト属性を参照できるため、調整箇所を1か所に集約できます
  2. メンテナンス性の向上
    声色の変更が必要な場合も、コンタクト属性を変更するだけで済み、フロー本体を修正する必要がありません

手順・方法

コンタクトフローの作成

Amazon ConnectでサポートされているSSMLタグについては公式ドキュメントを参照してください。
今回は例として音量、話す速度、ピッチを制御するprosodyタグを使用します。

※本記事では、ニューラル音声に対応している「Kazuha」ボイスを使用しています。

SSMLタグのパラメーターをコンタクト属性で管理・制御するために、以下のような構成のコンタクトフローを作成します。

ssml-test-sample-flow.png

コンタクト属性の設定

  1. ブロックライブラリの「設定」セクションから「コンタクト属性の設定」ブロックを選択します
  2. 属性の設定は「最新のコンタクト」で設定します
  3. 名前空間を「ユーザー定義済み」、以下のキーと値を手動で設定します
    • 宛先キー:talkSpeed
    • 値:200%

ssmltest1.png

プロンプトの設定

  1. ブロックライブラリの「インタラクション」セクションから「プロンプトの再生」ブロックを選択します
  2. 「テキスト読み上げまたはチャットテキスト」の「手動で設定」を選択します
  3. 「次として解釈」セクションではSSMLを選択します
  4. 今回は以下のようなSSML構文を使用します
<speak>
    <prosody rate="$.Attributes.talkSpeed">
        SSMLの動作テストです。
    </prosody>
</speak>

以上でコンタクトフローの設定は完了です。

動作確認

以下の手順で、SSMLタグ内のパラメーターをコンタクト属性で動的に制御する動作確認を行います。

  1. 手順・方法で作成したコンタクトフローを特定の電話番号に紐付け
  2. 対象番号に実際に発信し、音声出力を確認
  3. CloudWatch Logsから、PlayPromptブロックのパラメーターログを取得・確認

結果

CloudWatch Logsから、PlayPromptブロックのParameters要素を確認すると、prosodyタグ内のrate属性に、コンタクト属性$.Attributes.talkSpeedの値である200%が反映されていました。音声も実際に、通常の2倍のスピードで再生されていることが確認できました。

ssml-test-flow-cloudwatch.png

(付録) コンタクト属性で管理できる他のSSMLタグ

  • breakタグ

    • テキストに一時停止を追加するタグです
    • <break time="x ms"/>のように記述することで、ミリ秒単位で一時停止の時間をコントロールできます
    • 設定例
      以下は、breakタグの停止時間をコンタクト属性で制御している例です
      スクリーンショット 2025-06-03 171602.png
    • 動作ログ
      設定した属性が反映され、想定どおりのパラメーターが挿入されていることがログからも確認できます
      スクリーンショット 2025-06-03 172156.png
  • 他にもサポートされているSSMLタグはありますが、日本語では使用不可能なものや文法的に使用する意味がないものが現時点では多い印象です

まとめ

Amazon Connectのプロンプトの再生ブロック中の声色を設定しているタグパラメーターをコンタクト属性で一元管理できることが確認できました。
この方法により、プロンプトの再利用性が向上し、運用時の変更対応も容易になります。特に prosodybreakタグのように調整頻度が高いタグのパラメータ値は属性化と相性が良いため、Amazon Connectの音声体験を向上させたい場合はぜひ導入を検討してみてください。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?