普通文本对话(SSE流式输出)
本页介绍 OpenAI Responses API 的流式文本对话调用方式。开启 stream=True 后,模型会边生成边返回内容,适合聊天窗口、命令行工具、AI 助手和需要实时反馈的场景。
接口地址
https://api.maomaotoken.com/v1/responses调用方式
使用 OpenAI 官方 SDK 调用 client.responses.create(...),并将 stream 设置为 True。
SDK 调用示例
"""
MaomaoToken GPT-5 系列及其他模型流式调用示例
功能:
使用 OpenAI SDK 调用 MaomaoToken 的 GPT-5 系列及其他模型,
通过 responses.create 接口进行流式文本对话。
"""
from openai import OpenAI
# ==================== 步骤 1:初始化客户端 ====================
client = OpenAI(
api_key="sk-**********************************",
base_url="https://api.maomaotoken.com/v1",
)
# ==================== 步骤 2:创建流式对话请求 ====================
response = client.responses.create(
model="gpt-5.2",
input="你好!",
stream=True,
# 最大输出 Token 数,可按需开启
# max_output_tokens=128000,
# 温度参数,控制输出随机性
# temperature=1,
# top_p 参数,控制采样范围
# top_p=1,
# 推理配置,仅适用于支持 reasoning 的模型
reasoning={
"effort": "none"
},
)
# ==================== 步骤 3:处理流式响应 ====================
try:
for event in response:
if event.type == "response.output_text.delta":
print(event.delta, end="", flush=True)
except KeyboardInterrupt:
print("\n\n用户中断了请求")
except Exception as e:
print(f"\n\n发生错误: {e}")
print()说明
这里的 gpt-5.2 是示例模型名称。实际使用时,请替换为 MaomaoToken 控制台中可用的模型名称。
返回示例
流式输出时,终端会实时显示模型生成的内容:
你好!我能帮你做什么?如果你愿意,可以告诉我你想聊的话题,或你需要解决的问题,比如学习、写作、编程、翻译、计划、求职等。
事件说明
Responses API 的流式返回由多个事件组成。普通文本增量通常通过下面这个事件类型返回:
response.output_text.delta在代码中可以这样判断并读取增量文本:
for event in response:
if event.type == "response.output_text.delta":
print(event.delta, end="", flush=True)常用参数
| 参数 | 说明 |
|---|---|
model | 要调用的模型名称。 |
input | 用户输入内容,可以是字符串,也可以是结构化输入。 |
stream | 是否启用流式输出,流式模式设置为 True。 |
max_output_tokens | 控制最大输出长度。 |
temperature | 控制输出随机性,值越高越发散。 |
top_p | 控制采样范围,通常和 temperature 二选一调整。 |
reasoning | 推理配置,适用于支持 reasoning 的模型。 |
注意事项
- 流式响应使用 SSE,也就是 Server-Sent Events 协议。
stream=True用于启用实时流式输出。- 请将示例中的
sk-**********************************替换为你的真实 API Key。 - API Key 请妥善保管,不要泄露,不要提交到公开仓库。
- 网络不稳定时,流式输出可能中断,建议在业务代码中增加异常处理。
- 如果某些模型使用简单字符串
input跑不通,可以改为结构化数组格式。