必须启用stream=True或手动配置SSE流式请求以实时获取混元API逐段文本,否则30秒超时返回空白;OpenAI SDK需≥1.45.0、base_url设为腾讯混元地址、调用时显式传stream=True;requests方式须设Accept: text/event-stream、Content-Type: application/json及请求体"stream": true;响应需iter_lines()逐行解析data:内容并累加delta.content,遇[DONE]或连续3次解析失败须终止。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在调用腾讯混元API时实时获取模型逐段生成的文本,避免长响应卡在30秒网关超时后返回空白页,必须显式启用流式输出机制。
OpenAI SDK方式开启stream=True
第一步:安装最新版OpenAI Python SDK(≥1.45.0),旧版本不支持混元的SSE流式解析逻辑。
第二步:初始化客户端时,将base_url设为混元兼容接口地址https://api.tencentcloud.com/hunyuan/v1,api_key填入你在腾讯云控制台生成的OpenAI风格API KEY。
第三步:调用client.chat.completions.create()时,传入stream=True参数——【这是唯一触发流式响应的开关,漏设将返回完整JSON而非SSE事件流】。
这一步操作起来很简单,直接把stream=True加进参数字典就行;但若忘记设置,后续所有拼接逻辑都会失效,因为返回的是单次JSON,不是多行data:事件。
原生requests方式手动启用SSE流
方法一:构造HTTP请求头,必须包含Accept: text/event-stream和Content-Type: application/json,否则服务端默认走非流式路径。
方法二:POST请求体中显式写入"stream": true字段,注意布尔值不能加引号,写成"stream": "true"会导致400错误。
方法三:在URL末尾追加?stream=true(仅部分混元v1兼容端点支持,不稳定,不推荐)。
流式响应结果拼接
① 接收响应后,用response.iter_lines()逐行读取原始字节流。
② 过滤掉空行和以event:开头的元数据行,只处理data: {…}格式的有效行。
③ 对每行data:后的内容调用json.loads(),提取choices[0].delta.content字段并累加到字符串变量中。
④ 遇到data: [DONE]或解析失败时终止循环——【连续3次解析出空content或JSONDecodeError,必须主动退出,否则可能无限等待】。
这一步不能依赖自动重试,流式通道一旦中断就不会恢复,强行继续读会卡死连接。


















