Responses API

Responses API 适用于基于 OpenAI Response Item 格式构建的应用和编程工具。

POST https://getrouter.ai/v1/responses

基础请求

curl https://getrouter.ai/v1/responses \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_ID",
    "instructions": "用一个简短段落回答。",
    "input": "反向代理有什么作用?"
  }'

响应包含由 Response Items 组成的 output 数组。SDK 可能提供聚合文本的 output_text 便捷属性。

Python

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://getrouter.ai/v1",
)

response = client.responses.create(
    model="MODEL_ID",
    instructions="用一个简短段落回答。",
    input="反向代理有什么作用?",
)

print(response.output_text)

Node.js / TypeScript

import OpenAI from 'openai'

const client = new OpenAI({
  apiKey: 'YOUR_API_KEY',
  baseURL: 'https://getrouter.ai/v1',
})

const response = await client.responses.create({
  model: 'MODEL_ID',
  instructions: '用一个简短段落回答。',
  input: '反向代理有什么作用?',
})

console.log(response.output_text)

常用请求字段

字段说明
model必填的模型 ID
input字符串或 Input Item 数组
instructionsResponse 的高层指令
stream设置为 true 时返回流式事件
max_output_tokens最大输出 Token 数
tools兼容模型的工具定义
tool_choice工具选择行为
reasoning兼容模型的推理配置
previous_response_id从之前的 Response 继续
truncationautodisabled

连续响应

支持连续响应的工作流可以传入之前的 Response ID:

{
  "model": "MODEL_ID",
  "previous_response_id": "RESPONSE_ID",
  "input": "现在给出一个具体例子。"
}

有状态连续响应的支持情况可能取决于模型和上游服务。

压缩上下文

GetRouter 提供 Responses 压缩接口:

POST https://getrouter.ai/v1/responses/compact

该接口接受 model,以及 inputinstructionsprevious_response_id。仅在客户端实现了 Responses Compaction 工作流时使用。

curl https://getrouter.ai/v1/responses/compact \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_ID",
    "input": "CONVERSATION_INPUT"
  }'

流式输出

stream 设置为 true 接收 Responses API 事件。这些事件不同于 Chat Completions Chunk,详情请查看流式输出

兼容性说明

  • 请选择支持 Responses 接口的模型。
  • Chat Completions 可用的模型不一定支持 Responses。
  • Codex 等工具可能依赖 Responses 专用事件和 Tool 格式,应按照对应的集成指南配置。

下一步