Amazon、SageMakerでリアルタイム音声ストリーミングを提供開始
- •Amazon SageMaker AIとvLLMが双方向ストリーミングを可能にし、低遅延のリアルタイム文字起こしを実現した。
- •HTTP/2とWebSocketのブリッジ機能により、音声全体の録音完了を待たずにストリーミング処理を可能にした。
- •開発者はDockerコンテナとvLLMのRealtime APIを使用して、Voxtral-Mini-4B-Realtime-2602モデルをデプロイできる。
Amazon SageMaker AIとvLLMが双方向ストリーミングに対応し、音声入力と文字起こし出力を同時に実行するリアルタイム音声アプリケーションを実現した。このインフラは、ポート8443における永続的なHTTP/2接続を使用し、クライアントからのリクエストをvLLMの内部WebSocket Realtime API(/v1/realtime)へブリッジすることで、従来の要求応答型推論における遅延問題を解消した。実装にあたっては、軽量な音声認識モデルであるVoxtral-Mini-4B-Realtime-2602をカスタムDockerコンテナ内で稼働させ、SageMaker AIのパスとvLLMのネイティブWebSocketプロトコルを変換するFastAPIブリッジを使用する。
技術構成として、コンテナに「com.amazonaws.sagemaker.capabilities.bidirectional-streaming=true」というラベルを付与することで全二重通信を有効化し、プロトコル変換を行うブリッジアプリ(app.py)とvLLM Realtime APIを連携させる。システムは16kHzモノラルPCM16にリサンプリングされた生の音声データをBase64エンコードされたチャンクとして処理する。この構造により、音声ファイル全体のアップロードを待たずに推論出力を開始でき、体感遅延を大幅に削減した。
開発者は、SageMaker AIの環境変数で「cudagraph_mode」を「PIECEWISE」に設定することで、CUDAグラフ最適化を通じた推論スループットの向上が可能である。デプロイされたエンドポイントは、ping/pongのキープアライブフレームでコンテナの健全性を監視し、Amazon CloudWatchを通じて観測性を確保する。また、aws-sdk-sagemaker-runtime-http2を用いたPythonクライアントにより、音声ファイルやライブマイク入力のストリーミングに対応し、リアルタイムキャプションや音声エージェントとのインタラクションを構築できる。詳細なソースコードやGradioベースのデモは公式リポジトリで公開されている。