Anthropic API兼容

通过兼容 Anthropic 格式的 Messages API 调用模型。
POST/anthropic/v1/messages

授权

接口支持以下两种认证方式,请选择其中一种添加到请求头中:

  1. 方式一:x-api-key认证,格式:
    x-api-key: $UNISOUND_API_KEY
  2. 方式二: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.3maxlow、high、max—
glm-5.2、deepseek-v4-promaxhigh、maxlow、medium 映射为 high;xhigh 映射为 max
deepseek-v4.1-flashhighlow、high、maxminimal 映射为 low;medium 映射为 high;xhigh 映射为 high;ultra 映射为 max
doubao-seed-2.1-pro、doubao-seed-2.1-turbohighnone、minimal、low、medium、high、xhigh、maxnone 映射为 minimal;minimal 映射为关闭思考;xhigh、max 映射为 high
hy4-previewhighnone、high—
hy3highnone、low、high—
mimo-v2.6-pro、mimo-v2.6-flash—none 及其它档位none:关闭思考;其它档位均开启思考且行为一致,现阶段不区分推理强度
qwen3.8-max、qwen3.8-flashxhighxhigh、medium、lowmax、high 映射为 xhigh
u2-med、u2-radimedhighnone、low、medium、highminimal 映射为 low;xhigh、max 映射为 high
u2、u2-flashhighnone、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。