Responses API(Python)导读

如果你的后端或 worker 主要跑在 Python,可以先把 Responses 作为主要入口跑顺。

Python 团队常见的情况,是先把老的 chat 路径封成一层,再不断往里补 tools、schema、 streaming 和重试逻辑。这样短期能跑,但长期维护会变复杂。用 Python SDK 的client.responses 起步,能更早把输出契约和流式行为统一下来。

最值得先记住的 3 个方法

NameTypeRequiredDescription
client.responses.create
functionRequired非流式请求。最适合后台任务、同步总结和结构化返回。
client.responses.stream
function流式请求。适合逐 token 输出、CLI 和 agent 交互。
client.responses.retrieve
function按 response ID 拉回结果,适合异步工作流和故障排查。

最小请求

create
response = client.responses.create(
    model="openai/gpt-4.1-mini",
    input="把今天的 incident report 总结成 3 条 bullet。",
)

print(response.output_text)

先看这几个参数

NameTypeRequiredDescription
model
stringRequired目标模型标识。建议先从稳定默认模型开始。
input
string | listRequired最小可用输入。多模态和分段 item 也走这个字段。
tools
list工具定义。要接 tools、search、schema 的时候,这条路径更合理。
stream
bool是否使用流式事件。只有真正需要实时消费时才打开。
previous_response_id
string多轮续写时引用上一条 response,不必每轮都手工重组上下文。
Python 团队的常见选择
如果你已经知道后面会接工具、结构化输出或长生命周期 agent,不要再把 chat 路径越封越厚。 直接从 Responses 起步,反而能减少未来重写成本。

最容易犯的错

text
1. 继续沿用只适用于 chat 的用法,忽略 Responses 的事件与 output 契约。
2. 流式输出只盯着文本,不理解 response.output_item / completed 事件。
3. 一上来就做复杂 agent loop,却没先跑通最小 create 请求。
4. 明明需要稳定机器消费输出,却还在手写脆弱解析。

下一步