要实现Minimax模型流式输出,需设置stream为true、正确解析SSE响应、使用SDK内置stream方法,并处理中断与错误。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在使用Minimax模型时希望实现流式输出(Stream),则需要通过调整API请求参数并正确处理服务端返回的逐块响应数据。以下是实现此功能的具体方法:
一、设置stream参数为true
Minimax API支持流式响应,前提是请求中明确指定stream字段为true。该参数会触发后端以SSE(Server-Sent Events)格式分块返回token,而非等待整个响应生成完毕后一次性返回。
1、在JSON请求体中添加"stream": true字段,确保其值为布尔类型true,而非字符串"true"。
2、将Content-Type头部设为application/json,并确保Accept头部包含text/event-stream。
3、发起POST请求至Minimax提供的聊天补全接口URL,例如https://api.minimax.chat/v1/chat/completions。
二、解析SSE格式响应流
启用stream后,服务端返回的是符合SSE规范的文本流,每条消息以data:开头,以双换行符分隔。客户端需逐行读取并剥离前缀,提取实际JSON内容。
1、监听HTTP响应的ReadableStream,按行分割接收到的数据块。
2、对每一行执行trim()操作,过滤掉空行及event:、id:、retry:等非data字段行。
3、识别以data:开头的行,截取冒号后的内容,并用JSON.parse()解析为对象。
4、检查解析后的对象是否包含choices数组且其中delta.content字段存在,提取该字段值即为当前流式片段。
三、使用SDK内置stream方法
Minimax官方Python SDK(minimax-python)和JavaScript SDK(minimax-js)已封装stream处理逻辑,可直接调用高阶方法获取迭代器或事件监听器,避免手动解析SSE。
1、在Python中导入minimax包,初始化Client后调用chat.completions.create(..., stream=True),返回一个同步迭代器。
2、使用for循环遍历该迭代器,每次yield出一个ChatCompletionChunk对象,从中访问.choices[0].delta.content。
3、在JavaScript中调用client.chat.completions.create({... , stream: true}),返回Promise
四、处理流式中断与错误边界
流式传输过程中可能出现网络中断、超时或服务端提前终止等情况,需设置重试机制与异常捕获逻辑,保障用户体验连续性。
1、为HTTP请求配置timeout参数,例如Python requests库中设置timeout=(10, 60),分别控制连接与读取超时。
2、监听流式响应中的done字段或finish_reason字段,当其值为stop或length时,判定流已正常结束。
3、捕获ConnectionError、Timeout及解析异常,在catch块中记录错误日志,并向用户展示当前响应已中断,请稍后重试提示。


















