First reported by TechRadar
ChatGPT’s ‘smartest voice model ever’ is rolling out to everyone today — and GPT-Live-1 gives you more natural conversations without interruptions
OpenAI GPT-Live-1全双工语音模型:架构解耦、委派推理与AI语音交互的范式革命
20h agoen
From the article
一、引言 2026年7月8日,OpenAI在发布GPT-5.6 Sol的前一天,悄然推出了新一代语音模型GPT-Live。这并非一次常规的产品更新——它标志着AI语音交互从"回合制"迈入"全双工"时代。 GPT-Live基于全双工(Full-Duplex)架构构建,能够同时听和说。在对话中,它可以用"嗯嗯"或"是啊"表示正在专心听,进行快速来回交流,也可以在用户需要思考时保持安静。更重要的是,它将连续交互与深度推理解耦——GPT-Live前台维持语音对话流,同时将复杂推理任务委派给GPT-5.5后台执行。 每周超过1.5亿人通过语音功能与ChatGPT交互,GPT-Live的发布意味着语音已经从一个"附加功能"升级为AI的核心交互入口。 二、语音模型的演进之路 2.1 第一代:级联式语音系统(Cascaded Pipeline) 最初的ChatGPT Voice采用三个模型串联的方式工作: 语音转文本(STT)模型 :将用户语音转录为文本 大语言模型(LLM) :生成文本回复 文本转语音(TTS)模型 :将回复文本转换为语音 这种架构虽然首次实现了与前沿AI模型的语音对话,但代价巨大:信息在模型之间传递时可能丢失(语调、情绪、背景噪音),响应缓慢而生硬,且无法处理笑声、歌声或情感表达。 2.2 第二代:轮次式语音模型(Turn-Based Voice) ChatGPT Advanced Voice Mode将音频处理整合到单个模型中,降低了延迟,使对话更流畅。但它仍然通过离散的轮次运作——模型必须等用户停止说话后才能回应。由于轮次检测基于静默,即使短暂的停顿或背景噪音也可能被误认为一轮结束,导致模型在不自然的时机插话。 2.3 第三代:GPT-Live全双工架构 GPT-Live通过两项关键架构变化解决了前两代的根本性限制。 三、GPT-Live的核心架构创新 3.1 连续交互(Continuous Interaction) GPT-Live不再处理一连串彼此独立的消息,而是在生成输出的同时连续处理输入。模型每秒可以做出多次交互决策:是说话、继续倾听、暂停、打断,还是调用工具。 // Go实现:全双工语音模型的交互决策引擎 package fullduplex import ( "context" "fmt" "sync" "time" ) // InteractionDecision 表示模型每秒做出的交互决策 type InteractionDecision int const ( Speak InteractionDecision = iota Listen Pause Interrupt InvokeTool ) // AudioStream 表示音频输入/输出流 type AudioStream struct { Data [] float32 SampleRate int IsSpeech bool Intent string } // FullDuplexEngine 全双工引擎 - 同时处理输入和输出 type FullDuplexEngine struct { inputStream chan AudioStream outputStream chan AudioStream decisions chan InteractionDecision mu sync . RWMutex isSpeaking bool isListening bool } // NewFullDuplexEngine 创建全双工引擎实例 func NewFullDuplexEngine () * FullDuplexEngine { return & FullDuplexEngine { inputStream : make( chan AudioStream , 100 ), outputStream : make( chan AudioStream , 100 ), decisions : make( chan InteractionDecision , 10 ), } } // ProcessStream 每秒多次处理音频流,做出交互决策 func ( e * FullDuplexEngine ) ProcessStream ( ctx context . Context ) { // 决策频率:每秒约10次 ticker := time . NewTicker ( 100 * time . Millisecond ) defer ticker . Stop () for { select { case <- ctx . Done (): return case <- ticker . C : decision := e . makeDecision () e . decisions <- decision e . executeDecision ( decision ) case input := <- e . inputStream : e . handleInput ( input ) } } } // makeDecision 每秒多次做出交互决策 // 核心逻辑:基于当前输入流状态、输出流状态和对话上下文综合判断 func ( e * FullDuplexEngine ) makeDecision () InteractionDecision { e . mu . RLock () defer e . mu . RUnlock () // 1. 检查是否有用户输入 if len( e . inputStream ) > 0 { select { case latest := <- e . inputStream : if latest . IsSpeech { // 用户正在说话 if e . isSpeaking { // 检测到用户有紧急打断意图 if e . detectUrgency ( latest ) { return Interrupt } // 正常对话中,继续倾听 return Listen } // 模型没有说话,倾听用户 return Listen } default : // 无新输入 } } // 2. 检查是否需要输出(模型有回复准备) if len( e . outputStream ) > 0 && ! e . isSpeaking { return Speak } // 3. 检测到沉默(用户思考中) if e . detectSilence () { return Pause } // 4. 检查是否需要调用工具(如搜索、推理) if e . needToolInvocation () { return InvokeTool } return Listen } // detectUrgency 检测用户是否有紧急打断意图 // 基于语音的音调、语速和关键词分析 func ( e * FullDuplexEngine ) detectUrgency ( stream AudioStream ) bool { // 分析:语速加快、音调升高 => 打断意图 // 分析:出现"等等""停""听我说"等关键词 => 打断意图 return false } // detectSilence 检测沉默 func ( e * FullDuplexEngine ) detectSilence () bool { // 基于连续静音帧的检测 return false } // needToolInvocation 判断是否需要调用后台工具 func ( e * FullDuplexEngine ) needToolInvocation () bool { // 当用户问题需要搜索、推理或复杂计算时返回true return false } func ( e * FullDuplexEngine ) executeDecision ( decision InteractionDecision ) { switch decision { case Speak : e . isSpeaking = true e . isListening = false fmt . Println ( "[决策] 说话" ) case Listen : e . isListening = true if e . isSpeaking { e . isSpeaking = false fmt . Println ( "[决策] 停止说话,倾听用户" ) } else { fmt . Println ( "[决策] 继续倾听" ) } case Pause : e . isSpeaking = false fmt . Println ( "[决策] 保持安静" ) case Interrupt : e . isSpeaking = false e . isListening = true fmt . Println ( "[决策] 被打断,切换到倾听模式" ) case InvokeTool : fmt . Println ( "[决策] 调用后台工具" ) } } func ( e * FullDuplexEngine ) handleInput ( input AudioStream ) { // 处理音频输入流 if input . IsSpeech { fmt . Printf ( "[输入] 检测到语音: %s\n" , input . Intent ) } } // Backchannel 生成回馈信号("嗯嗯""是啊""明白了") func ( e * FullDuplexEngine ) Backchannel () { if e . isListening && ! e . isSpeaking { fmt . Println ( "[回馈] 嗯嗯" ) } } func main () { ctx := context . Background () engine := NewFullDuplexEngine () // 启动全双工处理 go engine . ProcessStream ( ctx ) // 模拟用户输入 engine . inputStream <- AudioStream { IsSpeech : true , Intent : "帮我查一下今天的天气" , } time . Sleep ( 500 * time . Millisecond ) engine . Backchannel () // 模拟复杂任务:需要委派推理 engine . inputStream <- AudioStream { IsSpeech : true , Intent : "用Python写一个排序算法" , } } 3.2 委派推理模式(Delegated Reasoning) 这是GPT-Live最具影响力的设计决策。语音模型本身 不是前沿推理模型 ——当用户提出需要网页搜索、深度推理或多步骤工作的请求时,GPT-Live将任务委派给GPT-5.5后台执行,同时保持对话流畅。
Continue reading on happyrock.cloudYou might also wanna read
OpenAI发布GPT-Live语音模型,让ChatGPT更像真人对话
PANews·13h ago
OpenAI发布GPT-Live语音模型,让ChatGPT更像真人对话
36氪·14h ago
OpenAI представила GPT-Live с архитектурой full-duplex
mlllm.io·20h ago
OpenAI周四将发布GPT-5.6 Sol人工智能模型
PANews·1d ago
OpenAI launches GPT-Live, a full-duplex voice model for more natural conversations
OpenAI has launched GPT-Live, a next-generation voice model built on a full-duplex architecture that enables simultaneous listening and spea

OpenAI launches GPT-Live voice models with real-time simultaneous listening and speaking
storyboard18.com·9h ago

Comments
Sign in to join the conversation.
No comments yet. Be the first.