文本对话 · API
glm-5.3-flash
本平台 OpenAI 风格 JSON(重排为平台扩展)
调用示例
正式 Base URL 为 https://www.unicompapi.com/v1;设置 UNICOMP_BASE_URL 与 UNICOMP_API_KEY 后替换素材与 Base64 占位内容。新请求使用 REQUEST_KEY,响应 X-Unicomp-Request-Id 保存为 REQUEST_ID;两者用于查询同一原单。
POST /v1/chat/completions
# 仅用于新请求;未知结果时查询原单,不重新执行本段
# 需要 Python 3;保存打印的 REQUEST_KEY
REQUEST_KEY="$(python3 -c 'import uuid; print(uuid.uuid4())')"
[ -n "$REQUEST_KEY" ] || exit 1 # UUID生成失败时停止
printf 'REQUEST_KEY=%s\n' "$REQUEST_KEY"
curl "$UNICOMP_BASE_URL/chat/completions" \
-H "Authorization: Bearer $UNICOMP_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $REQUEST_KEY" \
--data '{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "请描述这张图片"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,<完整图片Base64>"
}
}
]
}
],
"max_tokens": 4096,
"stream": false
}'字段与限制
| 字段 | 类型 | 范围 / 默认值 |
|---|---|---|
model | string | 精确使用 glm-5.3-flash |
messages | array | role/content消息数组;图片输入按本页示例 |
max_tokens | number | 正整数,当前最大 131072 |
stream | boolean | 普通图片及文字可用true;视频按对应组合选择 |
- max_tokens 与 max_completion_tokens 二选一,均为1–131072的整数;不能同时传入。max_completion_tokens限制完成Token总量,含返回用量中的思考Token;若限制不足以形成正文,请核查原请求结果,不自动重试。两者均未指定时平台采用本型号默认预算。
- messages为文字对话;支持stream:true时返回SSE,须收到完整finish、usage及[DONE]才确认结束。中断或未知结果应核查原请求,不能自动重新POST。
- 当前上下文 1048576 Token;输入与输出须符合本型号Token容量;请求大小限制见容量说明。响应最多32MiB,最长等待30分钟。连接中断时查询原请求,不重复提交。
- 本型号默认回复预算 4096 Token;这是平台默认值,不是模型的最大输出能力。
- 图片请求允许完整历史最多 200 条消息,每次最多 2 张PNG/JPEG dataURI图片;原图≤20MiB、边长≤8192、像素≤16777216。总输入≤20MiB;不接受远程URL。普通图片示例不混用tools;图片与工具组合仅使用本页明确列出的组合示例。
- 当前图片输入已开放SSE;须完整消费结束用量及[DONE]。
- 续轮须保留原assistant正文及存在时完整reasoning_content,并使用原Key;使用原图片素材,保持总量符合限制。
- 图片输入先按估算预留,按原请求的实际Token用量结算;估算不是模型输入上限。若返回402 VISION_BALANCE_REQUIRED,原回复和用量已保留,补足余额后使用原Key向 /v1/requests/<原请求号>/settle 发送无请求体、无查询参数的POST,取回原结果,不重新生成。请求号读取 X-Unicomp-Request-Id。
流式文字
选择已开放的纯文字组合,再添加stream:true,图片输入不使用此示例;SDK关闭自动重试,逐个消费SSE。以下为格式示意,不是实际调用结果。
{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": "你好,请用一句话介绍自己。"
}
],
"max_tokens": 4096,
"stream": true
}data: {"choices":[{"index":0,"delta":{"content":"你好"},"finish_reason":null}]}
data: {"choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{"prompt_tokens":8,"completion_tokens":2,"total_tokens":10}}
data: [DONE]请求组合示例
示例随当前型号配置生成;请替换素材与历史消息占位内容。选择相应组合展开查看,不要混用不同组合参数。
图片理解:最多2张 · 可流式
{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "比较图片内容"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,<本人完整图片Base64>"
}
},
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,<本人完整图片Base64>"
}
}
]
}
],
"max_tokens": 4096,
"stream": true
}- 图片数量、轮次和流式设置按本页示例;不接受远程URL或工具混用。
图片完整历史续轮
{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "比较图片内容"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,<本人完整图片Base64>"
}
},
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,<本人完整图片Base64>"
}
}
]
},
{
"role": "assistant",
"content": "<原assistant正文>",
"reasoning_content": "<仅原响应存在时完整保留,否则省略此字段>"
},
{
"role": "user",
"content": "请继续解释差异"
}
],
"max_tokens": 4096,
"stream": true
}- 将占位内容替换为原响应,使用同一Key并保留完整历史。
参数组合:tools + thinking · 流式
{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": "你好,请用一句话介绍自己。"
}
],
"max_tokens": 4096,
"stream": true,
"thinking": {
"type": "enabled"
},
"reasoning_effort": "low",
"tool_stream": true,
"tool_choice": "auto",
"tools": [
{
"type": "function",
"function": {
"name": "get_demo_value",
"description": "由客户端读取演示值",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string"
}
},
"required": [
"city"
]
}
}
}
]
}- 使用示例中的参数组合。JSON Schema按本页支持的关键词填写;客户端校验JSON正文,reasoning_content单独读取。
工具结果显式续轮
{
"model": "glm-5.3-flash",
"messages": [
{
"role": "user",
"content": "你好,请用一句话介绍自己。"
},
{
"role": "assistant",
"content": null,
"tool_calls": [
{
"id": "<原tool_call_id>",
"type": "function",
"function": {
"name": "get_demo_value",
"arguments": "{\"city\":\"北京\"}"
}
}
],
"reasoning_content": "<原响应存在时原样保留,否则省略>"
},
{
"role": "tool",
"tool_call_id": "<原tool_call_id>",
"content": "{\"value\":1}"
}
],
"max_tokens": 4096,
"stream": true,
"thinking": {
"type": "enabled"
},
"reasoning_effort": "low",
"tool_stream": true,
"tool_choice": "auto",
"tools": [
{
"type": "function",
"function": {
"name": "get_demo_value",
"description": "由客户端读取演示值",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string"
}
},
"required": [
"city"
]
}
}
}
]
}支持的能力
使用下方调用示例选择参数组合;请求结果和费用可在用量记录中查看。
调用参数和限制见本页示例。
| 能力 | 状态 | 使用方法 |
|---|---|---|
| 函数工具 | 支持 | 发送tools定义;收到tool_calls后由客户端执行工具,并返回匹配tool_call_id的tool消息。 |
| 思考 | 支持 | 按示例设置思考参数;续轮保留原响应中的reasoning_content。 |
| JSON Object | 暂不提供 | 发送response_format.type="json_object",并在提示词中说明JSON要求。 |
| JSON Schema | 暂不提供 | 发送response_format.type="json_schema"及本页示例支持的Schema;JSON正文与思考内容分别读取。 |
| 完整历史 | 支持 | 在messages中保留完整对话;工具续轮同时保留assistant.tool_calls及对应tool消息。 |
| 流式回复 | 支持 | 设置stream=true;收到完整结束事件后读取用量。连接中断时查询原请求,避免重复提交。 |
| 图片理解 | 支持 | 最多2张PNG/JPEG;可保留历史续轮;支持流式。详细大小限制见图片示例。 |
| 视频理解 | 暂不提供 | 此接口不接受视频、音频或文件消息。 |
| 长度与输出预算 | 支持 | 上下文1,048,576 Token;输出最多131,072 Token;默认4096。 |
当前价格
接口金额使用整数微元:1元 = 1,000,000微元。按报价和实际用量结算。
| 规格 | 计价项 | 人民币单价 |
|---|---|---|
| 基础档位 | 百万输入 token | ¥1.392/百万输入 token |
| 基础档位 | 百万缓存输入 token | ¥0.4002/百万缓存输入 token |
| 基础档位 | 百万输出 token | ¥4.872/百万输出 token |
响应与结果
非流式响应choices[].message.content和usage;文字stream:true返回text/event-stream delta、finish与[DONE]。OCR只支持非流式。
保存Idempotency-Key和X-Unicomp-Request-Id。使用请求号查询状态与费用,客户端禁自动重试未知请求;401核Key,400核字段,402核余额,409核幂等或报价变化,503检查型号或服务状态。