OpenAI 发布了一项针对长时间运行、大量工具调用场景的重要更新:Responses API 现已支持 WebSocket 模式。

此功能专为需要频繁进行模型-工具交互的工作流设计,例如代码自动化或需要反复调用工具的智能体编排任务。
核心改进:从对话到关系
核心改进在于连接方式的转变。在传统的 HTTP 模式下,每次交互都需要重新发送完整的上下文,如同每次通话都需重新自我介绍。而 WebSocket 模式则能保持持久连接,只需发送新的输入内容和 previous_response_id,从而大幅减少了重复传输的开销。
建立连接的方式如下:
from websocket import create_connection
import json
import os
ws = create_connection(
"wss://api.openai.com/v1/responses",
header=[
f"Authorization: Bearer {os.environ['OPENAI_API_KEY']}",
],
)
# 发送初始请求
ws.send(
json.dumps({
"type": "response.create",
"model": "gpt-5.2",
"store": False,
"input": [{
"type": "message",
"role": "user",
"content": [{"type": "input_text", "text": "分析这个代码文件"}],
}],
"tools": [{"type": "code_interpreter"}],
})
)
后续交互仅需发送增量数据:
# 继续对话,只发送新内容
ws.send(
json.dumps({
"type": "response.create",
"model": "gpt-5.2",
"store": False,
"previous_response_id": "resp_123",
"input": [
{
"type": "function_call_output",
"call_id": "call_456",
"output": "发现3个性能瓶颈",
},
{
"type": "message",
"role": "user",
"content": [{"type": "input_text", "text": "给出优化方案"}],
},
],
"tools": [],
})
)
性能提升数据
性能提升数据非常直观:对于涉及 20 次以上工具调用的复杂任务,端到端执行速度可提升 20% 至 40%。这种提升源于连接级的内存缓存机制,服务器会在内存中保留最近一次响应的状态,避免了重复的状态重建工作。
此模式特别适合需要多轮工具调用的场景,例如代码重构流程:分析代码 → 发现问题 → 生成修复方案 → 应用修改 → 验证结果。每一步都只需发送增量数据。
技术细节和限制
在技术细节上,WebSocket 模式兼容零数据保留(ZDR)和 store=false 设置,这对隐私敏感的应用至关重要。连接限制为 60 分钟,超时后需要重新建立连接:
# 处理连接超时
try:
response = ws.recv()
except Exception as e:
if "connection_limit_reached" in str(e):
# 重新建立连接
ws = create_connection(
"wss://api.openai.com/v1/responses",
header=[f"Authorization: Bearer {os.environ['OPENAI_API_KEY']}"]
)
若需并行处理,目前尚不支持多路复用,需要建立多个连接。这意味着如果有多个独立的智能体任务,每个任务都需要单独的 WebSocket 连接。
行业影响
值得注意的是,此次更新还提及了与 Open Responses 规范的关系。Open Responses 是一个开源项目,旨在为不同 LLM 提供商建立统一的 API 标准,并已获得 Vercel、Hugging Face、Databricks 等公司的支持。
从社区反馈来看,开发者对此功能感到兴奋,尤其是那些正在构建复杂智能体系统的开发者。不过,也有人指出这可能会增加供应商锁定的风险,因为状态管理增加了迁移成本。
对于大多数简单的对话场景,此功能可能并非必需。但如果你正在构建需要大量工具调用的智能体,例如代码审查助手、数据分析流水线或复杂的业务流程自动化,那么这项更新值得关注。
参考资料:
* OpenAI WebSocket Mode 官方文档:https://developers.openai.com/api/docs/guides/websocket-mode
* Open Responses 规范:https://www.openresponses.org/
关注“鲸栖”小程序,掌握最新AI资讯
本文来自网络搜集,不代表鲸林向海立场,如有侵权,联系删除。转载请注明出处:https://www.itsolotime.com/archives/22670
