原生Claude格式
概述
兼容 Anthropic Claude Messages API 格式,可直接使用 Claude 官方 SDK 或按照 Claude API 请求格式进行调用。
调用接口时,请确保请求头中包含 anthropic-version 参数。
请求地址
POST /v1/messages
请求头
| 参数 | 是否必填 | 说明 |
|---|---|---|
| anthropic-version | 是 | Claude API 版本号,例如:2023-06-01 |
| x-api-key | 是 | API Key |
| Authorization | 是 | Bearer Token |
| Content-Type | 是 | application/json |
示例:
anthropic-version: 2023-06-01
x-api-key: your-api-key
Authorization: Bearer <token>
Content-Type: application/json
请求参数
model
模型名称。
类型: string
示例:
"claude-3-opus-20240229"
messages
对话消息列表。
类型: array
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| role | string | 是 | 消息角色:user、assistant |
| content | string | 是 | 消息内容 |
示例:
[
{
"role": "user",
"content": "你好"
}
]
system
系统提示词。
类型: string 或 array
用于定义模型行为和回复风格。
max_tokens
最大输出 Token 数量。
类型: integer
必填: 是
temperature
采样温度。
类型: number
范围: 0 ~ 1
数值越高,生成结果越随机。
top_p
核采样概率阈值。
类型: number
top_k
Top-K 采样参数。
类型: integer
stream
是否启用流式输出。
类型: boolean
stop_sequences
停止序列。
类型: array[string]
模型生成过程中遇到指定字符串后停止输出。
tools
工具定义列表。
类型: array
| 字段 | 类型 | 说明 |
|---|---|---|
| name | string | 工具名称 |
| description | string | 工具描述 |
| input_schema | object | JSON Schema 参数定义 |
tool_choice
工具调用策略。
| 字段 | 类型 | 说明 |
|---|---|---|
| type | enum | auto、any、tool |
| name | string | 指定工具名称 |
thinking
扩展推理配置。
| 字段 | 类型 | 说明 |
|---|---|---|
| type | enum | enabled、disabled |
| budget_tokens | integer | 推理 Token 预算 |
metadata
请求元数据。
| 字段 | 类型 | 说明 |
|---|---|---|
| user_id | string | 终端用户唯一标识 |
请求示例
{
"model": "claude-3-opus-20240229",
"messages": [
{
"role": "user",
"content": "介绍一下 MCP"
}
],
"max_tokens": 2048,
"temperature": 0.7,
"stream": false
}
响应参数
成功响应
HTTP Status:200 OK
| 字段 | 类型 | 说明 |
|---|---|---|
| id | string | 消息唯一标识 |
| type | string | 固定为 message |
| role | string | 固定为 assistant |
| content | array | 内容块列表 |
| model | string | 使用模型 |
| stop_reason | string | 停止原因 |
| usage | object | Token 使用统计 |
content
消息内容列表。
| 字段 | 类型 | 说明 |
|---|---|---|
| type | string | 内容类型 |
| text | string | 文本内容 |
支持的内容类型:
- text
- tool_use
- thinking
stop_reason
模型停止生成原因。
支持以下取值:
| 值 | 说明 |
|---|---|
| end_turn | 正常结束 |
| max_tokens | 达到 Token 上限 |
| stop_sequence | 命中停止序列 |
| tool_use | 触发工具调用 |
usage
Token 消耗统计。
| 字段 | 类型 | 说明 |
|---|---|---|
| input_tokens | integer | 输入 Token 数 |
| output_tokens | integer | 输出 Token 数 |
| cache_creation_input_tokens | integer | 写入缓存 Token 数 |
| cache_read_input_tokens | integer | 读取缓存 Token 数 |
响应示例
{
"id": "msg_123456",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "MCP(Model Context Protocol)是一种模型上下文协议..."
}
],
"model": "claude-3-opus-20240229",
"stop_reason": "end_turn",
"usage": {
"input_tokens": 120,
"output_tokens": 350
}
}