Skip to content

Chat Completions

POST /v1/chat/completions

适用模态:语言模型(chat)图文理解(vlm),二者共用本端点。

请求

字段类型必填说明
modelstring模型名(见模型列表,返回体含 modality 字段,支持 ?modality= 过滤)
messagesarray{role, content},content 支持 string 或 text/image_url 数组
streamboolean流式返回(SSE)
max_tokensint默认取模型上限
temperature / top_p / stop / seed透传
tools / tool_choiceOpenAI 兼容渠道原样透传;Anthropic 协议渠道返回 400 tools_unsupported_protocol

标准能力(n / logit_bias / logprobs 等)在 OpenAI 兼容渠道上同样透传,网关不设参数黑名单。

图文理解(VLM)

标注 modality=vlm 的模型接受 OpenAI 风格的图片内容块,图片支持 http(s) 链接或 data:image/*;base64 内联:

json
{
  "model": "qwen/qwen-vl",
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "描述这张图片" },
        { "type": "image_url", "image_url": { "url": "https://example.com/demo.png" } }
      ]
    }
  ]
}

计费与文本模型一致:按上游返回 usage 的 token 实结;请求前预扣时每张图按 1000 token 保守估算,多退少补。

网关不按模型拦截图片:content 里的图片块原样转给上游,不支持视觉的模型由上游返回错误。预扣仍按每张图 1000 token 估算,多退少补。

流式说明

SSE 格式与 OpenAI 一致(含 stream_options.include_usage,末位 chunk 携带 usage, 最后 data: [DONE])。

客户端中途断开:

  • 尚未收到上游响应头:不计费,退还预扣。
  • 已经开始收流:按已收到的 usage(若有)+ 已转发文本估算补齐输出 token 计费,明细打 estimated。上游请求随客户端 context 取消。