nexusflow
在线
POST/v1/chat/completions

Chat Completions API

创建对话补全响应。接口完全兼容 OpenAI Chat Completions 格式,可直接使用 OpenAI 官方 SDK(Python / Node.js)接入,只需修改 base_urlapi_key。支持流式输出、多轮对话、Function Calling、视觉理解等能力。

请求端点

POSThttps://nexusflow.hk/v1/chat/completions

请求头

Header必选说明
AuthorizationBearer <API_KEY>*API 密钥。在控制台创建后以 sk-air- 开头。
Content-Typeapplication/json*请求体格式,固定为 JSON。

请求参数

参数类型必选说明
modelstring*模型 ID。例如 qwen3.5-plus、deepseek-v4-flash 等。查看列表 →
messagesarray*对话消息数组。每条消息包含 role(system / user / assistant / tool)和 content 字段。content 可以是字符串或内容数组;多模态内容是否可用取决于模型能力。
streamboolean-是否启用流式输出。启用后以 SSE(Server-Sent Events)格式逐 token 返回。默认:false
temperaturenumber-采样温度,范围 [0, 2)。值越高输出越随机,值越低越确定。建议与 top_p 二选一调节。默认:1.0
top_pnumber-核采样概率阈值,范围 (0, 1]。模型仅从累计概率达到 top_p 的 token 集合中采样。默认:1.0
max_tokensinteger-生成的最大 token 数。不同模型有不同上限,未设置时使用模型默认值。
toolsarray-可用工具/函数定义列表,用于 Function Calling。每个工具包含 type 和 function 字段。
tool_choicestring | object-工具调用策略。稳定支持 "auto"、"none",或 {"type":"function","function":{"name":"..."}} 指定函数。思考模式模型不建议强制指定工具。默认:"auto"
stopstring | string[]-停止词或停止词数组(最多 4 个)。模型生成到停止词时立即结束输出。
frequency_penaltynumber-频率惩罚,范围 [-2.0, 2.0]。正值根据 token 在已生成文本中出现的频率进行惩罚,降低重复。默认:0
presence_penaltynumber-存在惩罚,范围 [-2.0, 2.0]。正值根据 token 是否已出现过进行惩罚,提升话题多样性。默认:0
enable_thinkingboolean-是否开启思考模式。仅混合思考模型支持 true/false 开关;仅思考模型即使传 false 也会继续思考。
stream_optionsobject-流式请求附加选项。设置 {"include_usage": true} 可在最后一个 SSE chunk 中返回 token 用量。
response_formatobject-响应格式控制。支持 {"type":"text"}(默认)和 {"type":"json_object"}(JSON 模式)。

代码示例

curl -X POST https://nexusflow.hk/v1/chat/completions \
  -H "Authorization: Bearer sk-air-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.5-plus",
    "messages": [
      {"role": "system", "content": "你是一个有帮助的助手。"},
      {"role": "user", "content": "什么是机器学习?"}
    ],
    "temperature": 0.7,
    "max_tokens": 1000
  }'

响应格式(非流式)

非流式请求返回完整的 JSON 对象,object 字段值为 "chat.completion"

响应示例

{
  "id": "chatcmpl-abc123xyz789",
  "object": "chat.completion",
  "created": 1709123456,
  "model": "qwen3.5-plus",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "机器学习是人工智能的一个分支..."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 28,
    "completion_tokens": 256,
    "total_tokens": 284
  }
}

响应字段

字段类型说明
idstring本次请求的唯一标识符,如 chatcmpl-abc123xyz789。
objectstring固定为 "chat.completion"。
createdinteger创建时间,Unix 时间戳(秒)。
modelstring实际使用的模型名称。
choicesarray生成结果数组(通常包含 1 个元素)。
choices[].indexinteger结果在数组中的索引位置。
choices[].message.rolestring消息角色,固定为 "assistant"。
choices[].message.contentstring | null生成的文本内容。当模型调用工具时可能为 null。
choices[].message.reasoning_contentstring推理模型(如 QwQ)返回的思维链内容。非推理模型不返回此字段。
choices[].message.tool_callsarray工具调用请求数组。仅在模型决定调用工具时返回。
choices[].finish_reasonstring停止原因:stop(自然结束)、length(达到 max_tokens)、tool_calls(调用工具)。
usage.prompt_tokensinteger输入消耗的 token 数。
usage.completion_tokensinteger输出消耗的 token 数。
usage.total_tokensinteger总 token 消耗(prompt_tokens + completion_tokens)。

流式响应格式(SSE)

stream: true 时,响应以 Server-Sent Events (SSE) 格式逐步返回。每条事件以 data: 开头,最后以 data: [DONE] 标记结束。每个 chunk 的 object 字段值为 "chat.completion.chunk"

SSE 数据格式

data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1709123456,"model":"qwen3.5-plus","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}

data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1709123456,"model":"qwen3.5-plus","choices":[{"index":0,"delta":{"content":"机器"},"finish_reason":null}]}

data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1709123456,"model":"qwen3.5-plus","choices":[{"index":0,"delta":{"content":"学习"},"finish_reason":null}]}

data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","created":1709123456,"model":"qwen3.5-plus","choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{"prompt_tokens":28,"completion_tokens":256,"total_tokens":284}}

data: [DONE]

Chunk 字段说明

字段类型说明
idstring与完整响应相同的请求 ID。
objectstring固定为 "chat.completion.chunk"。
choices[].delta.rolestring仅在首个 chunk 中出现,值为 "assistant"。
choices[].delta.contentstring本次 chunk 的增量文本内容。
choices[].delta.reasoning_contentstring本次 chunk 的增量思维链内容(推理模型)。
choices[].delta.tool_callsarray工具调用的增量数据(流式 Function Calling)。
choices[].finish_reasonstring | null仅在最后一个 chunk 中非 null,表示停止原因。
usageobject仅当 stream_options.include_usage 为 true 时,在最终 chunk 中返回 token 用量。
提示:使用 OpenAI SDK 时无需手动解析 SSE,SDK 会自动处理流式响应并提供迭代器接口。仅在使用 cURL 或原生 HTTP 客户端时需要自行解析 SSE 数据。

与百炼官方 Chat API 的关系

NexusFlow 的 /v1/chat/completions 与阿里云百炼 OpenAI 兼容端点完全协议透传: 请求体原样转发上游,响应原样回传。toolstool_choiceresponse_formatenable_thinkingthinking_budgetenable_searchsearch_optionsseedtop_klogprobsstream_options 等百炼扩展字段都可直接使用, 具体支持范围以模型为准。官方参考: 千问 API 参考

注意事项

  • 不同模型的 max_tokens 上限不同,请参考 模型列表 了解各模型限制。
  • temperaturetop_p 建议只调节其中一个,同时设置可能产生不可预期的结果。
  • 流式输出时,只有最后一个 chunk 的 finish_reason 为非 null 值,代表生成结束。
  • 图像理解功能建议使用 Qwen-VL 系列等多模态模型。content 需传入数组格式包含 image_url 类型。
  • Function Calling 推荐使用 Qwen、DeepSeek、GLM 等支持工具调用的模型系列。
  • 思考模式(enable_thinking)必须按模型 ID 使用;支持矩阵见 参数矩阵
  • 请求体与上游百炼协议透传,文档之外的百炼扩展字段(如 thinking_budgetenable_searchsearch_options)可直接使用,具体支持以模型为准。
  • 完整参数说明与模型兼容矩阵见 参数矩阵
模型列表
查看所有可用模型与能力
错误码
错误码说明与排查指南
限流说明
请求频率限制与配额