Anthropic API兼容
授权
接口支持以下两种认证方式,请选择其中一种添加到请求头中:
- 方式一:x-api-key认证,格式:x-api-key: $UNISOUND_API_KEY
- 方式二:Authorization: Bearer认证,格式:Authorization: Bearer $UNISOUND_API_KEY
$UNISOUND_API_KEY 用于验证账户信息,可在按量计费&资源包>API Key 管理中查看。
请求体application/json
modelstring必填
模型编码,可选值:
Unisound 系列:u2-flash、u2、u2-med、u2-radimed
DeepSeek 系列:deepseek-v4-flash-0731、deepseek-v4-pro、deepseek-v4.1-flash
豆包(Doubao)系列:doubao-seed-2.1-pro、doubao-seed-2.1-turbo
腾讯混元(Hy)系列:hy4-preview、hy3
小米 MiMo 系列:mimo-v2.6-pro、mimo-v2.6-flash
Kimi 系列:kimi-k2.5、kimi-k2.6、kimi-k3
GLM 系列:glm-5.3、glm-5.2、glm-5.1、glm-5
MiniMax 系列:MiniMax-M3、MiniMax-M2.5
Qwen(通义千问)系列:qwen3.8-flash、qwen3.7-plus、qwen3.7-max、qwen3.8-max、qwen3.6-plus、qwen3.6-flash、qwen3.6-35b-a3b
max_tokensinteger必填
生成 Token 的最大数量。max_tokens 不限制思考过程的长度;开启深度思考时,思考部分的 Token 数由 thinking.budget_tokens 单独控制。
systemstring | array选填
系统提示词,用于设定模型的角色或行为。
system 通过顶层参数传入,messages 数组中不接受 system 角色。
传入字符串等价于单个 type="text" 的内容块。
typestring必填
固定为 text。
textstring必填
系统提示词文本。
messagesarray必填
消息数组,按 user / assistant 交替轮次排列。
messages 数组中不接受 system 角色。
rolestring必填
消息角色,可选值:user、assistant。
contentstring | array必填
消息内容。可以是纯文本字符串,也可以是结构化内容数组(含文本、图片等多模态内容块)。
content 为字符串时,等价于单个 type="text" 的内容块。
文本信息object
typestring必填
固定为 text。
textstring必填
文本内容。
图片信息object
(需使用视觉模型)
typestring必填
固定为 image。
sourceobject必填
图片数据来源。
typestring必填
取值:
url:公网图片地址。base64:Base64 编码。
urlstring选填
图片的公网地址。当 type 为 url 时必填。
media_typestring选填
图片的 MIME 类型,如 image/jpeg。当 type 为 base64 时必填。
datastring选填
Base64 编码的图片数据。当 type 为 base64 时必填。
工具调用信息object
(assistant 角色,模型返回的工具调用指令)
typestring必填
固定为 tool_use。
idstring必填
工具调用的唯一标识,用于在后续 tool_result 中关联结果。
namestring必填
被调用的工具名称。
inputobject必填
工具调用的入参,结构由 tools 中对应工具的 input_schema 决定。工具调用内容本身会参与缓存前缀。
工具结果信息object
(user 角色,工具执行结果回传给模型)
typestring必填
固定为 tool_result。
tool_use_idstring必填
对应 tool_use 信息中的 id。
contentstring必填
工具执行返回的内容。
streamboolean选填默认值: false
是否启用流式输出,默认为 false。
temperaturenumber选填
控制生成文本的多样性,取值范围 [0, 2)。值越大,生成结果越随机。
该范围与 Anthropic 官方的 [0.0, 1.0] 不同,从 Anthropic 迁移时请确认该参数取值。
top_pnumber选填
核采样概率阈值。与 temperature 建议二选一。
取值 (0, 1.0]。
默认值由模型决定。
repetition_penaltynumber选填
连续序列重复度惩罚。网关扩展字段,校验后透传上游。
取值范围:(0, 2.0]。
默认值:1.0 表示不惩罚。
presence_penaltynumber选填
控制内容重复度。网关扩展字段,校验后透传上游。
取值范围:[-2.0, 2.0]。
默认值由模型决定。
frequency_penaltynumber选填
控制 Token 频率惩罚。网关扩展字段。
取值范围:[-2.0, 2.0]。
默认值由模型决定。
top_kinteger选填
生成过程中采样候选集的大小。
stop_sequencesarray选填
停止序列;命中后停止生成,且不包含命中的序列本身。
stop_reason 仍为 end_turn。thinkingobject选填
深度思考配置。开启后,模型会在生成回复前先进行推理,以提升回答准确度。开启后,响应会包含 thinking 类型的内容块。
u2、kimi-k3、glm-5.3、MiniMax-M2.5 默认开启思考,不支持关闭。MiniMax-M3 支持关闭思考(thinking.type=disabled),与 MiniMax-M2.5 不同。u2-radimed 默认关闭思考,不支持开启。doubao-seed-2.1-pro、doubao-seed-2.1-turbo、deepseek-v4.1-flash、hy4-preview、hy3、mimo-v2.6-pro、mimo-v2.6-flash 默认开启思考,可通过 thinking.type=disabled 关闭。
typestring必填
可选值:enabled(开启思考模式)、disabled(关闭思考模式)。
budget_tokensinteger选填
思考过程可使用的最大 Token 数,与 max_tokens 互不重叠:本参数限制思考,max_tokens 限制最终回复。当 type 为 enabled 时生效。该参数即将废弃,新接入建议使用 output_config.effort 控制思考强度。
toolsarray选填
工具定义数组,用于 Function Call 场景。
namestring必填
工具名称。
descriptionstring选填
工具的功能描述。
input_schemaobject必填
工具输入参数的 JSON Schema 定义。
tool_choiceobject选填
工具选择策略。
typestring必填
可选值:auto(模型自行决定是否调用工具,默认)、any(强制模型调用任意一个工具)、none(禁止模型调用工具)、tool(强制模型调用指定工具)。
namestring选填
当 type 为 tool 时,指定要调用的工具名称。
output_configobject选填
输出参数设置。
effortstring选填
控制模型的推理力度,不同模型支持的可选值和默认值不同。
| 模型 | 默认值 | 支持的档位 | 其余档位的映射 |
|---|---|---|---|
glm-5.3 | max | low、high、max | — |
glm-5.2、deepseek-v4-pro | max | high、max | low、medium 映射为 high;xhigh 映射为 max |
deepseek-v4.1-flash | high | low、high、max | minimal 映射为 low;medium 映射为 high;xhigh 映射为 high;ultra 映射为 max |
doubao-seed-2.1-pro、doubao-seed-2.1-turbo | high | none、minimal、low、medium、high、xhigh、max | none 映射为 minimal;minimal 映射为关闭思考;xhigh、max 映射为 high |
hy4-preview | high | none、high | — |
hy3 | high | none、low、high | — |
mimo-v2.6-pro、mimo-v2.6-flash | — | none 及其它档位 | none:关闭思考;其它档位均开启思考且行为一致,现阶段不区分推理强度 |
qwen3.8-max、qwen3.8-flash | xhigh | xhigh、medium、low | max、high 映射为 xhigh |
u2-med、u2-radimed | high | none、low、medium、high | minimal 映射为 low;xhigh、max 映射为 high |
u2、u2-flash | high | none、minimal、low、medium、high、xhigh、max | — |
kimi-k3、glm-5.3、glm-5.3-flash 始终开启思考,thinking.type 仅支持 enabled,传入 disabled 会导致 API 请求失败。
设置上述可选值及映射值以外的值将会报错。
formatobject选填
结构化输出配置。开启后,模型将输出 JSON 字符串。
严格结构化输出:适用于 DeepSeek 系列、GLM 系列模型。模型严格按照传入的 JSON Schema 进行强约束输出,确保字段类型与层级完全一致。
普通结构化输出:适用于上述以外的其他模型。Schema 的具体字段约束默认不生效,API 会自动将其转换为普通 JSON 模式(仅保证输出为合法的 JSON 字符串)。须同时满足:1、显式传入 output_config;2、system 或 messages 的内容中须包含不区分大小写的 JSON 关键词。
typestring必填
固定为 json_schema。
schemaobject必填
JSON Schema 对象;须包含 type、properties、required、additionalProperties(须设为 false)等字段。
非流式响应
idstring
消息的唯一标识。
typestring
固定为 message。
rolestring
固定为 assistant。
modelstring
使用的模型名称。
contentarray
内容数组。
文本信息object
typestring
固定为 text。
textstring
模型生成的文本回复。
output_config 时,该字段为 JSON 字符串,客户端需自行解析。思考信息object
(开启深度思考时返回)
typestring
固定为 thinking。
thinkingstring
模型在生成最终回复前的思考过程。
signaturestring
当前固定为空字符串。
工具调用信息object
(Function Call 场景)
typestring
固定为 tool_use。
idstring
工具调用的唯一标识,用于在后续 tool_result 中关联结果。
namestring
被调用的工具名称。
inputobject
工具调用的入参。
stop_reasonstring
停止原因。可选值:
end_turn(正常结束)max_tokens(达到 Token 上限)tool_use(工具调用)
usageobject
Token 用量统计。
message_start 事件的 usage 仅包含 input_tokens 和 output_tokens;完整 4 个字段在 message_delta 事件中返回。input_tokensinteger
输入 Token 数量。
output_tokensinteger
输出 Token 数量。
cache_creation_input_tokensinteger
缓存创建消耗的输入 Token 数量。
cache_read_input_tokensinteger
缓存读取消耗的输入 Token 数量。
流式响应
message_start
流的第一个事件,标记消息开始。
typestring
固定为 message_start。
messageobject
初始消息对象,content 为空数组,usage 仅含 input_tokens 和 output_tokens。
content_block_start
每个内容块开始时发送,标记新内容块的索引和类型。
typestring
固定为 content_block_start。
indexinteger
内容块索引,从 0 开始,对应该消息 content 数组中的位置。
content_blockobject
内容块的初始对象。type 取值为 text、thinking 或 tool_use。tool_use 类型在此事件中 input 为空对象,完整入参由后续 content_block_delta 增量拼接。
content_block_delta
内容块的增量更新事件。同一内容块会发送多个该事件。
typestring
固定为 content_block_delta。
indexinteger
所属内容块索引。
deltaobject
增量对象,type 取值:
text_delta:文本增量,含text字段。thinking_delta:思考增量,含thinking字段。signature_delta:签名增量,含signature字段(当前固定为空字符串)。input_json_delta:工具调用入参增量,含partial_json字段。
content_block_stop
内容块结束事件。
typestring
固定为 content_block_stop。
indexinteger
结束的内容块索引。
message_delta
消息级更新事件,在所有内容块结束后发送,包含停止原因和完整的 Token 用量统计。
typestring
固定为 message_delta。
deltaobject
包含 stop_reason 和 stop_sequence,取值参见上方非流式响应表格。
usageobject
完整的 Token 用量统计,包含 input_tokens、output_tokens、cache_creation_input_tokens、cache_read_input_tokens。
message_stop
流的最后一个事件,标记消息结束。
typestring
固定为 message_stop。