Skip to content

Chat Completions V2

接口:

text
POST /v2/chat/completions

/v2/chat/completions/v1/chat/completions 使用相同的请求字段、SDK 调用方式、鉴权和限流。客户端可见行为有两点差异:V2 的 SSE 流严格遵循 stream_options,并且 V2 非流式响应可返回 message.reasoning_content

何时使用 V2

  • 你的客户端希望 SSE 流严格遵循客户端传入的 stream_options.include_usage
  • 在 V1 流式下遇到 usage 行为与 OpenAI 官方 SDK 预期不一致,希望使用更贴近官方的流式 profile。
  • 你的非流式客户端需要读取上游返回的 choices[].message.reasoning_content

注意:流式请求下 V1 与 V2 的 usage 行为不同——V1 总会输出 usage,V2 仅在 stream_options.include_usage=true 时输出。从 V1 切到 V2 时请显式设置该字段,否则将丢失 usage。

请求字段

字段与 Chat Completions 完全相同。流式相关字段:

字段类型必填说明
streambooleantrue 时返回 SSE
stream_options.include_usagebooleanV2 严格遵循:仅 true 时才在流中输出 usage

响应

非流式响应整体保持 OpenAI chat.completion 结构。与 V1 不同,当上游返回 reasoning 且请求满足 thinking/reasoning 输出条件时,V2 会在 choices[].message.reasoning_content 暴露该内容;V1 非流式会隐藏它。

流式返回 chat.completion.chunk SSE,末帧为:

text
data: [DONE]

鉴权与限流

V2 与 V1 共用同一套 API Key 鉴权(Authorization: Bearer <key>)、RPM/TPM 限额和模型策略,无需单独开通。

示例

bash
curl -N https://llm.xiaoyue9527.xyz/v2/chat/completions \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer sk-gtw-REPLACE_ME' \
  --data-raw '{
    "model": "qwen3.6-plus",
    "messages": [{"role": "user", "content": "解释什么是 RESTful API"}],
    "max_tokens": 2048,
    "stream": true,
    "stream_options": {"include_usage": true}
  }'

OpenAI-compatible API documentation.