AI News
低遅延なVoice AIを実現するOpenAIのWebRTCアーキテクチャ:9億人のユーザーを支える技術
📝 概要
音声AIにおいて、自然な対話体験を損なわないためには、会話のスピードに合わせたリアルタイムな応答が不可欠です。ネットワークの遅延は、不自然な間や割り込みの遅れとして即座にユーザーに感知されてしまうため、OpenAIでは週9億人以上のユーザーに対応すべく、WebRTCスタックの再構築を行いました。従来のSFUモデルではなく、独自の「シン・リレー(thin relay)」と「ステートフル・トランシーバー(stateful transceiver)」を組み合わせたアーキテクチャを採用することで、グローバル規模での低遅延と安定性を両立させています。
📋 詳細レポート
自然な会話を支えるWebRTCの採用と課題
OpenAIが提供するChatGPTの音声モードやRealtime APIにおいて、最も重要なのは音声が途切れない連続的なストリームとして届くことです。ユーザーが話し終えるのを待つのではなく、発話中に並行して文字起こし、推論、音声生成を行うことで、従来の「プッシュ・ツー・トーク」形式ではない、自然な双方向対話が可能になります。この基盤として同社は、ブラウザやモバイルアプリで標準化されているWebRTCを採用しました。しかし、OpenAIの巨大なインフラにおいて、標準的なWebRTCの実装をそのままスケールさせるには、ポート管理やセッションの所有権、グローバルルーティングにおける遅延といった課題が存在していました。
WebRTCスタックを構成する主要技術要素
OpenAIは、WebRTCの複雑な処理(接続確立、暗号化、品質制御など)を標準プロトコルに任せることで、モデルとの接続インフラに注力しています。
- ICE (Interactive Connectivity Establishment): NAT通過を行い、クライアントとサーバー間の接続を確立する仕組み。
- DTLS / SRTP: メディア転送のセキュリティを担保するための暗号化プロトコル。
- RTCP (Real-time Transport Control Protocol): ネットワーク状況に応じた輻輳制御や品質管理を行う。
- コーデック交渉: 通信環境に合わせて最適な音声圧縮・展開方式を選択するプロセス。
1対1の対話に特化した「トランシーバー」モデルの採用
一般的なWebRTCの構成では、複数人での会議を想定したSFU(Selective Forwarding Unit)が用いられます。しかし、AIとの対話は基本的に1対1(1人のユーザーと1つのモデル)であるため、OpenAIは「トランシーバー」モデルを選択しました。エッジサービスがクライアントとのWebRTC接続を終端(ターミネート)し、メディアデータをよりシンプルな内部プロトコルに変換して推論バックエンドに送る仕組みです。これにより、インフラ内部でのパケットルーティングを最適化しつつ、クライアント側には標準的なWebRTCの挙動を維持させています。
リアルタイムAIがもたらすユーザー体験の変革と今後の展望
この新しいアーキテクチャにより、ユーザーはセッション開始と同時に話し始めることができ、ジッター(揺らぎ)やパケットロスが最小限に抑えられた環境でAIと対話できるようになりました。WebRTCの生みの親の一人であるJustin Uberti氏や、Pionの開発者であるSean DuBois氏といった専門家が主導するこの取り組みは、WebRTCとリアルタイムAIの距離をさらに縮めることを目指しています。今後は、エージェントによるインタラクティブなワークフローや、より複雑な音声処理を必要とするモデルにおいて、この低遅延なインフラが重要な役割を果たすと考えられます。