翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
SynthesizeSpeech と StartSpeechSynthesisStream の比較
SynthesizeSpeech はリクエスト/レスポンスオペレーションです。完全なテキストを 1 回のリクエストで指定し、合成された完全な音声を 1 回のレスポンスで受信します。すべてのエンジン (標準、ニューラル、ロングフォーム、生成)、スピーチマークを含むすべての出力形式をサポートし、リクエストごとに合計 6,000 文字 (そのうち 3,000 文字まで請求可能) のテキスト制限があります。レスポンスは、最初のバイトが利用可能になるとすぐにオーディオをストリーミングします。このオペレーションは、すべてのテキストを事前に利用できる場合に使用します。
StartSpeechSynthesisStream は双方向ストリーミングオペレーションです。HTTP/2 接続が開き、テキストを段階的に送信し、合成時に音声を受信します。テキストは継続的にストリーミングされるため、リクエストごとのテキスト制限はありません。これには生成エンジンが必要で、スピーチマークはサポートされていません。このオペレーションは、テキストが段階的に到着し、すべての入力が利用可能になる前に音声出力を開始する場合に使用します。一般的なシナリオは次のとおりです。
-
会話 AI と音声アシスタント。大規模言語モデルは、小さなチャンク (トークン) でレスポンステキストを生成します。各テキストチャンクが到着したら Amazon Polly に転送し、モデルの生成中にユーザーが音声を聞くようにします。
-
リアルタイム翻訳。翻訳システムは、セグメントごとに翻訳されたテキストセグメントを生成します。完全な翻訳が完了するまで待たずに、各セグメントを合成用にストリーミングします。
-
SynthesizeSpeech の制限を超えるロングフォームコンテンツ。6,000 文字を超えるテキストは、複数のリクエストに分割したり、チャンク境界を管理したりすることなく、継続的にストリーミングできます。
| 側面 | SynthesizeSpeech | StartSpeechSynthesisStream |
|---|---|---|
プロトコル |
リクエスト-レスポンス |
双方向イベントストリーム (HTTP/2) |
テキスト配信 |
リクエスト本文の全文 |
TextEvent メッセージによる入力テキストのストリーミング |
音声配信 |
HTTP レスポンス本文を介した音声レスポンスのストリーミング |
AudioEvent メッセージによる音声レスポンスのストリーミング |
エンジンのサポート |
標準、ニューラル、ロングフォーム、生成 |
生成のみ |
SSML サポート |
はい (すべてのエンジン。サポートされているタグはエンジンによって異なります) |
はい (生成エンジンタグのみ) |
レキシコン |
はい |
はい |
スピーチマーク |
はい |
いいえ |
テキスト制限 |
リクエストあたり合計 6,000 文字 (3,000 請求) |
TextEvent あたり合計 6,000 文字 (3,000 請求) |
AWS CLI サポート |
はい |
いいえ (双方向ストリーミングには SDK が必要です) |