OpenAI GPT-Live: 工程化實時語音 AI 系統

OpenAI 開發了 GPT-Live,這是一個第三代語音系統,旨在消除傳統回合制語音 AI 的遲緩感。透過將回合檢測器替換為可以同時進行聽與說的全雙工語音模型,GPT-Live 實現了亞秒級的響應速度和更自然的對話節奏。

從回合制轉向串流架構

GPT-Live 捨棄了級聯系統——即語音轉文字、LLM 和文字轉語音按順序運行——以及先前仍依賴回合檢測器來觸發推理的語音對語音模型。

在新架構中,語音模型直接控制對話。音訊持續地流入和流出模型,而更深層的推理和工具使用則異步處理。這確保了主要的媒體迴圈保持不中斷,將「說話」與「思考」解耦。

為持續推理和低延遲進行工程化設計

為了維持無縫的媒體迴圈並防止出現可聽見的偽影,OpenAI 實施了幾項系統性優化:

專用媒體路徑與語言切換

OpenAI 將媒體流與應用程序和業務邏輯分離。音訊在專用的快速路徑上移動,而委派和工具使用則發生在異步 RPC 邊界之後。為了提高幀交付的平滑度,媒體前端和推理邏輯使用 Go 語言重寫,取代了先前的 Python asyncio 實現。這一改變使得 p95 延遲與先前系統的 p50 持平。

傳輸與協議優化

WebRTC 作為傳輸基礎,允許系統處理丟包和時鐘漂移。為了進一步降低啟動延遲,OpenAI 引入了兩項關鍵創新:

  • WARP:一套旨在縮減傳輸握手並減少網絡往返次數的開放規範。
  • Instant Connect:一種預先協商 SDP 參數的機制,允許會話開始時僅需一個 UDP 數據包。

有狀態推理與上下文管理

為了支持長時數對話而不中斷,OpenAI 開發了一種無縫切換機制。當模型實例需要被替換或上下文需要壓縮(以符合模型限制)時,系統會並行預熱一個替換實例,並使用必要的上下文進行預填充,只有在新的實例準備就緒時才進行切換。這防止了 KV cache 重建導致的可聽見延遲。

異步委派至前沿模型

GPT-Live 與 GPT-5.5 等前沿模型集成,用於複雜推理和搜索,而不會阻塞實時語音路徑。

優化委派迴圈

為了確保委派結果返回得足夠快以具備實用性,OpenAI 優化了整個迴圈——路由、提示詞處理、推理和工具調用。這包括在語音會話開始時立即為前沿模型創建一個推理會話,並使用穩定的會話親和性和提示詞緩存來最小化延遲,並預填充其對話上下文。

從持續語音中推導離散回合

由於周圍系統(如 UI 和安全基礎設施)需要離散的消息,應用程序服務器使用部分轉錄文本和時序信號來推斷說話者回合。系統為 UI 維持一個推測性視圖,並為分析保留一個權威性記錄,從而使語音路徑保持持續,同時提供穩定的交換記錄。

生產環境測試與擴展

OpenAI 使用「靜默測試」驗證了 GPT-Live,將一部分生產環境中的 ChatGPT Voice 會話路由至新系統的唯讀模式。這一過程揭示了幾個關鍵洞察:

  • 容量規劃:容量是由並發會話數和保持每一幀都在計劃內的處理能力決定的,而不僅僅是 GPU 吞吐量。
  • 地理分佈:端到端響應速度高度依賴於將會話路由至區域容量,以最小化基於距離的延遲。
  • 生命週期故障:長時數會話和重新連接操作暴露了內存壓力和狀態恢復問題,這些問題在短時長度的負載測試中並不明顯。

這一架構現在為 ChatGPT Voice 功能提供支持,包括桌面應用程序中的電腦控制和智能體協調,並將作為即將推出的 GPT-Live API 的基礎。

Sources