返回模型调用 API 参考
POST/v1/chat/completions

DeepSeek:思考聊天与流式返回

以当前公开目录中的 DeepSeek V4.1 Flash 或 V4 Pro 作为 Chat 示例,读取思考与最终答案。

API Key application/json

功能与适用场景

适合推理、代码分析和方案比较。thinking 开关是该模型的扩展,不应推断所有 Chat 模型都接受。

支持模型与组合

示例 deepseek-v4.1-flash;deepseek-v4-pro 也在当前公开目录中。模型列表中可能有其他版本或日期别名,先核对准确 ID,不把旧 deepseek-v3-1-250821 当作当前默认。思考字段是否可用仍取决于该模型和上游渠道,不能从名称推断。

第一步:设置鉴权

使用青云TOP API 的 API Key:Authorization: Bearer YOUR_API_KEY。替换占位符,保留 Bearer 后的空格。无需厂商 API Key。

第二步:调用模型

POST https://top.qingyuntop.ai/v1/chat/completions

请求为 application/json。

Chat Completions 兼容协议

调用与返回说明

适合已经依赖 Chat Completions 的客户端和模型。新建 OpenAI 集成时优先确认模型支持 Responses API,再决定是否使用此兼容协议。

请求时注意

  • model 和 messages 是基本必填项;tools、tool_choice、response_format 等能力参数按场景发送,不是所有模型都支持。
  • 模型 ID 以 GET /v1/models 的返回为准。示例中的固定模型名只是格式示例,不代表当前账号一定可用。
  • 对于新推理模型,优先使用 max_completion_tokens;max_tokens 是旧字段,且可能与推理模型不兼容。

返回时注意

  • 非流式文本读取 choices[0].message.content,并检查 choices[0].finish_reason。
  • 流式读取 choices[].delta.content,收到 finish_reason 后结束;如需用量,在请求中确认服务支持 stream_options.include_usage。
  • Chat Completions 的工具调用位于 choices[].message.tool_calls,不能与 Responses 的 output[].type=function_call 混读。
Request

请求

/v1/chat/completions

Body

必填
Bodyapplication/json
Bodyobject
modelstring必填

必填,顶层,无默认值。填写当前账号可用的准确模型 ID;模型列表见模型选择页。

max_tokensinteger

旧版输出长度字段;新推理模型使用 max_completion_tokens。不要同时提交两个长度字段。

messagesarray必填

必填,顶层,无默认值。按时间顺序传入完整对话;至少一条 user 消息。Chat 接口不自动保存历史。

元素object

数组元素。

rolestring必填

消息角色;可选:system / user / assistant / tool / developer

contentstring | array<object>必填

消息内容 必填的用户内容;纯文本可用字符串。多模态内容按顺序放 type=text 和 type=image_url 等块,不把 PDF 或 MP4 标成图片。;分支:string / array<object>

temperaturenumber

选填,0–2,传统聊天模型默认 1。仅对支持采样控制的模型设置;推理模型的默认值与支持范围不同。不要为最新模型机械添加此字段。;默认:1;范围:0–2

示例1
streamboolean

选填,顶层,默认 false。true 返回 SSE 事件,不能直接当作一个 JSON 解析。;默认:false

示例false
stream_optionsobject

条件选填,仅 stream=true 时使用。include_usage=true 请求流末尾汇总用量,断线时可能收不到。

include_usageboolean

如果设置为 true,在流式消息最后的 data: [DONE] 之前将会传输一个额外的块。此块上的 usage 字段显示整个请求的 token 使用统计信息,而 choices 字段将始终是一个空数组。所有其他块也将包含一个 usage 字段,但其值为 null。

thinkingobject

DeepSeek 使用 {"type":"enabled"} 开启思考;此扩展不属于所有 Chat 模型共有参数。Claude 推荐原生 thinking,OpenAI 使用 reasoning_effort。

typestring

enabled:默认强制开启,强制开启深度思考能力。 disabled:强制关闭深度思考能力。 auto:模型自行判断是否进行深度思考。

top_pnumber

选填,0–1,传统聊天模型默认 1。通常只调整 temperature 或 top_p 之一。;默认:1;范围:0–1

示例1
ninteger

选填,正整数,默认 1。示例 n=2 仅演示 gpt-4o 多候选;各候选都会消耗用量,不是重复发送两条请求。;默认:1;范围:1–∞

示例1
stopstring | array<string>

选填,字符串或字符串数组,无默认值。仅在支持该功能的模型使用;推理系列可能不支持。;分支:string / array<string>

max_completion_tokensinteger

选填,顶层,无统一默认值。正整数,限制输出与内部推理合计 token;示例用 2048,推理任务可适当提高,不超过模型上限。

presence_penaltynumber

选填字段;是否可用取决于当前模型和协议。;默认:0;范围:-2–2

示例0
frequency_penaltynumber

选填字段;是否可用取决于当前模型和协议。;默认:0;范围:-2–2

示例0
logit_biasobject

选填字段;是否可用取决于当前模型和协议。

userstring

选填字段;是否可用取决于当前模型和协议。

toolsarray<object>

选填,顶层工具声明数组。函数使用 type=function、function.name 与 function.parameters;只声明你能执行的工具。

元素object

数组元素。

typestring
functionobject

函数工具必填;name 为唯一函数名,description 解释用途,parameters 为 JSON Schema。严格模式 strict=true;不要把模型生成的参数直接作为任意代码执行。

namestring
descriptionstring
parametersobject

JSON Schema 格式的参数定义

tool_choicestring | object

选填,无工具时默认 none,有工具时通常为 auto。支持 none / auto / required 或指定函数对象;模型支持范围可能不同。;分支:string / object

response_formatobject

选填,顶层。结构化输出使用 type=json_schema 与 json_schema 对象;json_object 只约束 JSON 格式,不保证字段。

typestring

可选:text / json_object / json_schema

json_schemaobject

JSON Schema 定义 使用 JSON Schema 时必填。包含 name、strict=true、schema;所有 properties 列入 required,对每个对象设置 additionalProperties=false。可空字段用 null 联合类型。

seedinteger

选填字段;是否可用取决于当前模型和协议。

reasoning_effortstring

选填,顶层。示例 medium;o3/o4-mini 使用 low / medium / high。其他模型不要照抄全集枚举;未设置时采用模型默认。;可选:low / medium / high

modalitiesarray<string>

选填字段;是否可用取决于当前模型和协议。

元素string

数组元素。;可选:text / audio

audioobject

选填字段;是否可用取决于当前模型和协议。

voicestring
formatstring

路径、查询与 Header 参数

参数位置类型必填说明示例
Content-TypeHeaderstring是-application/json
AcceptHeaderstring是-application/json
AuthorizationHeaderstring是必填。使用青云TOP API 的 API Key,保留 Bearer 后的空格。Bearer YOUR_API_KEY
X-Forwarded-HostHeaderstring否-localhost:5173
Response

返回响应 200

HTTP 响应
响应 200json
响应 200object
idstring必填
objectstring必填
createdinteger必填
choicesarray<object>必填
元素object
indexinteger
messageobject
rolestring必填
contentstring必填
finish_reasonstring
usageobject必填
prompt_tokensinteger必填
completion_tokensinteger必填
total_tokensinteger必填
Chat Completions 兼容协议

调用与返回说明

适合已经依赖 Chat Completions 的客户端和模型。新建 OpenAI 集成时优先确认模型支持 Responses API,再决定是否使用此兼容协议。

请求时注意

  • model 和 messages 是基本必填项;tools、tool_choice、response_format 等能力参数按场景发送,不是所有模型都支持。
  • 模型 ID 以 GET /v1/models 的返回为准。示例中的固定模型名只是格式示例,不代表当前账号一定可用。
  • 对于新推理模型,优先使用 max_completion_tokens;max_tokens 是旧字段,且可能与推理模型不兼容。

返回时注意

  • 非流式文本读取 choices[0].message.content,并检查 choices[0].finish_reason。
  • 流式读取 choices[].delta.content,收到 finish_reason 后结束;如需用量,在请求中确认服务支持 stream_options.include_usage。
  • Chat Completions 的工具调用位于 choices[].message.tool_calls,不能与 Responses 的 output[].type=function_call 混读。

常见错误与参考

思考模式下不要依赖 temperature 改变采样效果。后续工具调用需遵循该模型的历史要求,不能任意丢弃 reasoning_content。

401:检查本站 API Key 和 Bearer 格式;403:确认此 Key 可用该模型;429:遵循 Retry-After 退避。超时或 5xx 时保留请求标识和脱敏错误,避免盲目重发;其他通用排查见聊天接入总览。

DeepSeek Chat API。

流式事件示例

下面只展示事件形状。生产客户端应按事件类型处理增量、完成、失败和未完成事件,并设置读取超时。

data: {"id":"chatcmpl_example","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"你好"},"finish_reason":null}]}

data: {"id":"chatcmpl_example","object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}

data: [DONE]