如何选择接口
图灵平台提供三条对话型核心接口。如果你只想看代码,选第一条即可。如果你要榨干某个厂商的特定能力,可能需要走原生协议。
快速决策树
三接口对照
| Chat Completions | Messages (Anthropic) | Responses (OpenAI) | |
|---|---|---|---|
| URL | /v1/chat/completions | /v1/messages | /v1/responses |
| 协议基础 | OpenAI Chat | Anthropic 原生 | OpenAI 新一代 |
| 请求字段 | messages | messages + max_tokens 必填 | input(不是 messages) |
| 响应结构 | choices[].message | content[] block 数组 | output[] 多态数组 |
| 跨厂商 | ✅ 主力(OpenAI/Claude/Gemini/Qwen/DeepSeek...) | ❌ 仅 Claude | ❌ 仅 GPT-5 / o 系列 |
| Prompt 缓存(Claude 精细) | ⚠ 可用但简化 | ✅ 原生 cache_control | — |
| Extended Thinking(Claude) | ⚠ 通过 extra_body | ✅ 原生 thinking 字段 | — |
| Reasoning(GPT-5/o) | ⚠ 通过 extra_body reasoning_effort | — | ✅ 原生 reasoning 字段 |
| 有状态思考(GPT-5.x) | ❌ | — | ✅ tags: ["stateful"] |
| MCP 工具连接器 | ❌ | ❌ | ✅ |
| 流式事件类型 | 粗(choices[0].delta) | 细(content_block_delta / text_delta / ...) | 最细(response.output_text.delta 等) |
| Turing 扩展 | ✅ turing_options | ✅ turing_options | ✅ turing_options + tags |
| 推荐场景 | 99% 情况 | Claude 深度定制 | GPT-5/o 深度推理 |
结论
- 绝大多数情况选 Chat Completions:跨厂商、生态最大、换模型只改一个字符串
- 只在明确需要 Claude 原生 block 结构 / 更精细缓存时走 Messages
- 只在明确要用 GPT-5/o 系列的 reasoning+有状态+MCP 组合时走 Responses