DeepSeek Anthropic Messages 兼容调用

本文说明腾讯 TokenHub DeepSeek 模型在 AI Gateway 中的 Anthropic Messages 兼容调用方式。该方式适合已经使用 Anthropic SDK、Claude Code 或 Messages 协议的业务。

如果是新接入业务,且需要 DeepSeek 思考模式、JSON 模式或 Function Calling,建议优先使用 OpenAI Chat Completions。

一、请求地址

POST https://cn-shanghai-alicloud-aimesh.api.clickzetta.com/gateway/v1/messages

请求头:

x-api-key: <API_KEY> Content-Type: application/json anthropic-version: 2023-06-01

说明:

  • x-api-key
    x-api-key
    使用 AI Gateway API Key。
  • TokenHub 官方说明中,
    anthropic-version
    anthropic-version
    头会被忽略;为了兼容 Anthropic SDK 和常见客户端,建议仍保留该 Header。

二、基础调用

curl -X POST "https://cn-shanghai-alicloud-aimesh.api.clickzetta.com/gateway/v1/messages" \ -H "x-api-key: $API_KEY" \ -H "Content-Type: application/json" \ -H "anthropic-version: 2023-06-01" \ -d '{ "model": "deepseek-v4-pro", "max_tokens": 1000, "system": "你是一个专业、准确、简洁的企业 AI 助手。", "messages": [ { "role": "user", "content": "请解释 OpenAI Chat Completions 和 Anthropic Messages 的区别。" } ], "stream": false }'

三、Python SDK

import anthropic client = anthropic.Anthropic( api_key="<your-api-key>", base_url="https://cn-shanghai-alicloud-aimesh.api.clickzetta.com/gateway/v1", ) message = client.messages.create( model="deepseek-v4-pro", max_tokens=1000, system="你是一个专业、准确、简洁的企业 AI 助手。", messages=[ {"role": "user", "content": "请介绍 AI Gateway 的模型路由能力。"} ], ) print(message.content[0].text)

四、流式输出

curl -N -X POST "$AI_GATEWAY_BASE_URL/messages" \ -H "x-api-key: $API_KEY" \ -H "Content-Type: application/json" \ -H "anthropic-version: 2023-06-01" \ -d '{ "model": "deepseek-v4-pro", "max_tokens": 1000, "system": [ { "type": "text", "text": "You are a helpful assistant." } ], "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Hi, how are you?" } ] } ], "stream": true }'

Python 流式示例:

import anthropic client = anthropic.Anthropic( api_key="<your-api-key>", base_url="https://cn-shanghai-alicloud-aimesh.api.clickzetta.com/gateway/v1", ) with client.messages.stream( model="deepseek-v4-pro", max_tokens=1000, system="You are a helpful assistant.", messages=[{"role": "user", "content": "Hi, how are you?"}], ) as stream: for text in stream.text_stream: print(text, end="", flush=True)

五、请求字段

字段支持情况说明
model
model
支持模型名称,例如
deepseek-v4-flash
deepseek-v4-flash
deepseek-v4-pro
deepseek-v4-pro
messages
messages
支持对话消息数组。
max_tokens
max_tokens
完全支持最大输出 Token 数。
system
system
完全支持系统指令。
stream
stream
完全支持流式响应。
temperature
temperature
完全支持温度参数,常见范围
0.0
0.0
2.0
2.0
top_p
top_p
完全支持Top-p 采样。
stop_sequences
stop_sequences
完全支持停止序列。
thinking
thinking
忽略TokenHub Anthropic 协议中不处理此字段。
top_k
top_k
忽略不处理此字段。
metadata
metadata
忽略不处理此字段。
service_tier
service_tier
忽略不处理此字段。

六、消息字段支持

消息内容支持情况说明
content
content
为字符串
完全支持适合纯文本输入。
content
content
为数组,
type="text"
type="text"
完全支持适合 Anthropic 标准多段文本结构。
content
content
为数组,
type="image"
type="image"
部分模型支持当前 DeepSeek 文本模型不建议使用图片输入。
content
content
为数组,
type="document"
type="document"
不支持不建议使用。
content
content
为数组,
type="search_result"
type="search_result"
不支持不建议使用。
cache_control
cache_control
忽略传入不会生效。

七、工具调用

Anthropic Messages 的工具定义与 OpenAI Chat Completions 不同,使用

input_schema
input_schema

{ "model": "deepseek-v4-pro", "max_tokens": 1000, "messages": [ { "role": "user", "content": "查询订单 202606150001 的物流状态。" } ], "tools": [ { "name": "get_order_status", "description": "根据订单号查询物流状态", "input_schema": { "type": "object", "properties": { "order_id": { "type": "string", "description": "订单号" } }, "required": ["order_id"] } } ], "tool_choice": { "type": "auto" } }

TokenHub Anthropic 协议中:

  • tools[].name
    tools[].name
    tools[].input_schema
    tools[].input_schema
    tools[].description
    tools[].description
    完全支持。
  • tool_choice
    tool_choice
    的字符串格式和对象格式均支持。
  • disable_parallel_tool_use
    disable_parallel_tool_use
    会被忽略。
  • cache_control
    cache_control
    相关字段会被忽略。

八、与 OpenAI Chat Completions 的差异

项目OpenAI Chat CompletionsAnthropic Messages
Endpoint
/gateway/v1/chat/completions
/gateway/v1/chat/completions
/gateway/v1/messages
/gateway/v1/messages
鉴权 Header
Authorization: Bearer <API_KEY>
Authorization: Bearer <API_KEY>
x-api-key: <API_KEY>
x-api-key: <API_KEY>
系统指令
messages
messages
中的
role: system
role: system
顶层
system
system
字段
最大输出
max_tokens
max_tokens
max_tokens
max_tokens
停止序列
stop
stop
stop_sequences
stop_sequences
工具参数 Schema
tools[].function.parameters
tools[].function.parameters
tools[].input_schema
tools[].input_schema
思考模式OpenAI 协议可通过
thinking
thinking
控制
Anthropic 协议中
thinking
thinking
会被忽略

九、使用建议

  • 新接入业务优先使用 OpenAI Chat Completions。
  • 已经使用 Anthropic SDK、Claude Code 或 Messages 协议的业务,可以使用 Anthropic Messages 兼容接口降低迁移成本。
  • 如果需要 DeepSeek
    thinking
    thinking
    控制,优先使用 OpenAI Chat Completions。
  • 如果模型详情页没有展示 Messages 示例,请优先使用 Chat Completions。
联系我们
预约咨询
微信咨询
电话咨询
邮件咨询