Chat Completions
兼容 OpenAI 的 Chat Completions,支持流式输出、图像、工具调用和推理强度控制。
POST /v1/chat/completions
curl https://api.unquant.io/v1/chat/completions \
-H "Authorization: Bearer $UNQUANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"glm-5.3-flash",
"messages":[{"role":"user","content":"Hello!"}]}'请求字段
modelstringRequiredglm-5.3-flash 或 qwen-3.8-flash-next。
messagesarrayRequired角色为 system、user、assistant 和 tool。内容为字符串或包含 text 和 image_url 的数组。
streamboolean以服务端推送事件方式流式返回回复。
stream_optionsobject{"include_usage": true} 会在末尾追加包含 token 计数的数据块。
max_tokensinteger回复长度上限。
max_completion_tokensinteger与 max_tokens 相同。
temperaturenumber采样随机性。
top_pnumber核采样。
top_kinteger从概率最高的 k 个 token 中采样。
min_pnumbertoken 的最小相对概率。
seedinteger可复现采样的随机种子。
stopstring or array停止序列。
frequency_penaltynumber按 token 出现频率施加惩罚。
presence_penaltynumber对已出现过的 token 施加惩罚。
repetition_penaltynumber乘性重复惩罚。
toolsarray模型可调用的函数,采用 OpenAI 格式。
tool_choicestring or objectauto、none、required 或指定函数名。
parallel_tool_callsboolean允许在单轮中调用多个工具。
response_formatobjectJSON 格式输出。
logprobsboolean返回 token 对数概率。
top_logprobsinteger每个 token 返回的备选数量。
ninteger必须为 1:每次请求返回一个补全。
reasoning_effortstring两个模型均支持 none、low 或 high;GLM-5.3-Flash 额外支持 max。
chat_template_kwargsobject模板开关,例如 {"enable_thinking": false}。
其他字段将被忽略。
响应
response.choices[0].message.content用量计数仅供自行监控,不作为计费依据。
流式输出
设置 "stream": true 后,回复以 OpenAI 数据块格式的服务端推送事件方式返回,以 data: [DONE] 结束。从 choices[0].delta.content 中读取文本。
图像
两个模型均接受以 image_url 部分传入的 base64 数据 URL(data:image/png;base64,...,支持 JPEG 和 WebP)。通过 URL 引用的图像链接不会被主动拉取,会返回 400。
{"role": "user", "content": [
{"type": "text", "text": "Describe this image."},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
]}工具调用
按 OpenAI API 格式传入 tools。当模型调用工具时,回复的 finish_reason: "tool_calls",并包含 message.tool_calls;执行工具后,附上包含工具结果和对应 tool_call_id 的 tool 消息,再次发起请求。
推理
两个模型均在回答前先进行推理,均支持 reasoning_effort:none 直接回答,low 轻度推理,high 处理较难问题;GLM-5.3-Flash 额外支持 max,默认为 high。推理过程单独返回在 reasoning_content 中,不与 content 混合。"thinking": {"type": "disabled"} 和 "chat_template_kwargs": {"enable_thinking": false} 也可关闭推理。
并发
套餐决定所有密钥可同时运行的请求数量。超出限制的请求立即返回 429 且不进入队列,正在运行的请求不受影响。