Responses API 流式请求示例
以下示例展示如何使用Response API的/v1/responses 接口进行流式响应,实现实时内容生成效果。
快速开始
只需要替换<API-KEY> 为你的实际API密钥即可运行。
流式响应格式
Response API的流式响应使用Server-Sent Events (SSE)格式,每个事件包含两行:event: 和 data:
主要事件类型
1. 响应创建事件
2. 输出项添加事件
3. 文本增量事件(核心事件)
4. 文本输出完成事件
5. 响应完成事件
重要参数说明
请求参数
- model: 使用的模型名称,如 “gpt-5-2025-08-07”
- input: 输入消息数组,每个消息包含角色和内容
- stream: 设置为
true启用流式输出 - max_output_tokens: 限制输出的最大token数量
关键事件字段
- sequence_number: 事件序列号,按时间顺序递增
- delta: 文本增量内容(在
response.output_text.delta事件中) - item_id: 输出项唯一标识符
- output_index: 输出项在响应中的索引位置
SSE格式特点
- 无[DONE]标记: Response API不使用
[DONE]标记,而是通过response.completed事件表示结束 - event + data格式: 每个事件都有明确的事件类型和对应的数据
- sequence_number: 所有事件都有序列号,确保正确的处理顺序
流式输出的优势
- 实时反馈: 通过
response.output_text.delta事件实时获取文本增量 - 更好的用户体验: 避免长时间等待,提供打字效果
- 详细状态: 可以跟踪响应的完整生命周期
- 结构化信息: 每个事件包含丰富的元数据信息
处理流式数据的注意事项
- 正确解析SSE格式: 需要同时处理
event:和data:行 - 事件类型识别: 根据不同的事件类型执行相应的处理逻辑
- 序列号处理: 可以使用
sequence_number确保事件顺序 - 文本累积: 通过
response.output_text.delta事件的delta字段累积完整文本 - 完成检测: 通过
response.completed事件确认响应结束
实际应用场景
- 智能对话: 实现类似ChatGPT的实时对话效果
- 内容创作: 实时显示文章、诗歌、代码生成过程
- 思维过程展示: 如果启用reasoning模式,可以实时查看AI的思考过程
- 多步骤任务: 跟踪复杂任务的执行状态和进度

