通用模型
OpenAI Responses
兼容 OpenAI Responses API;支持文本、多模态输入与流式事件;成功响应为 Responses 原始协议,不使用 choices。
- 路由:
POST /v1/responses - 额外支持:
POST /v1/responses/compact - 成功响应为 Responses 原始协议,不包
code/data,也不使用 Chat Completions 的choices
请求示例
curl https://api.magickapi.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-5",
"input": [
{
"role": "user",
"content": [
{
"type": "input_text",
"text": "这张图片里有什么?"
},
{
"type": "input_image",
"image_url": "https://openai-documentation.vercel.app/images/cat_and_otter.png"
}
]
}
]
}'成功响应示例
{
"id": "resp_123",
"object": "response",
"created_at": 1712345678,
"status": "completed",
"model": "gpt-5",
"output": [
{
"id": "msg_123",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "output_text",
"text": "图中有一只猫和一只水獭。",
"annotations": []
}
]
}
],
"parallel_tool_calls": true,
"tools": [],
"usage": {
"input_tokens": 156,
"output_tokens": 45,
"total_tokens": 201
}
}流式说明
传入 "stream": true 时,返回 Responses 原生事件流,例如:
data: {"type":"response.output_text.delta","delta":"图中"}
data: {"type":"response.output_text.delta","delta":"有一只猫"}
data: {"type":"response.completed","response":{"id":"resp_123","status":"completed"}}
data: [DONE]错误响应示例
{
"error": {
"message": "Invalid request",
"type": "invalid_request_error",
"param": null,
"code": "invalid_request"
}
}常用参数
model
- 类型:
string - 必填:是
input
-
类型:
array | string -
必填:是
与 OpenAI Responses 协议一致,可混合
input_text、input_image、input_file等内容。
instructions
- 类型:
string
previous_response_id
- 类型:
string
tools
-
类型:
array当前项目会透传 Responses 工具字段。
function工具可直接使用;web_search_preview、file_search等内建工具是否可用,取决于具体上游模型和渠道能力。
tool_choice
- 类型:
string | object
stream
- 类型:
boolean
stream_options
- 类型:
object
/v1/responses/compact
该路由适合需要压缩上下文或续接对话的客户端。当前项目只接受这几个核心字段:
modelinputinstructionsprevious_response_id
最后更新于