开发者文档 / AI 模型调用
AI 模型调用
通过统一的 OpenAI 兼容接口调用灵途支持的文本与视觉模型,支持普通 JSON 和 SSE 流式响应。
POST
/v1/relay/chat/completions- 鉴权:
- 请求头 x-api-key: <YOUR_API_KEY>;密钥仅保存在服务端。
- 成功判断:
- 非流式响应读取 choices;流式响应拼接 choices[0].delta.content,收到 data: [DONE] 后结束;同时检查 HTTP 状态。
请求字段
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | 要调用的模型标识,必须是当前账号可用的受支持模型 |
messages | RelayChatMessage[] | 是 | OpenAI 兼容的对话消息,支持文本及受支持的 image_url 内容 |
stream | boolean | 否 | 为 true 时返回 SSE 增量内容;默认为 false |
max_tokens | integer | 否 | 最大输出 token 数 |
thinking.type | enabled | disabled | 否 | 在模型支持时启用或关闭思考模式 |
密钥只能保存在服务端,不要把 x-api-key 写入浏览器代码、日志或公开文件。
stream=true 时逐条解析 data: 行,拼接 choices[0].delta.content;收到 data: [DONE] 后结束。
算力消耗取决于所选模型、输入内容、输出长度以及是否包含图片等多模态内容。
image_url 必须是模型服务可访问的 URL,并根据业务需要选择合适的 detail。
成功响应
{
"id": "chatcmpl_2066122904659169280",
"model": "deepseek-v4-flash-vision-exp",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "请求已完成。"
},
"finish_reason": "stop"
}
]
}响应与错误
主要响应字段来自接口规范;完整层级、联合类型和校验规则见 JSON Schema。必填指字段所在对象中的约束。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
id | string | 否 | — |
model | string | 否 | — |
choices | object[] | 是 | — |
choices[].index | integer | 是 | — |
choices[].message | object | 是 | — |
choices[].message.role | string | 是 | 固定值:assistant |
choices[].message.content | string | 是 | — |
choices[].finish_reason | string | null | 否 | — |
choices[].delta | object | 是 | — |
choices[].delta.content | string | 否 | — |
HTTP 400请求参数或请求体无效,请修正后重试。HTTP 401API 密钥缺失或无效,请检查 x-api-key。HTTP 403API 密钥没有此接口的调用权限。HTTP 429请求过于频繁,请采用指数退避重试。HTTP 500服务端发生错误;对于暂时性故障采用指数退避重试。
参数、权限或授权错误需先修正。创建发布或生成任务超时后先查询已有任务,避免重复创建;不要因轮询中断而重复提交。
最后更新 · 2026-09-29