所有 OpenAI 格式 LLM 模型均支持 Claude 官方格式
YutoAPI 的 OpenAI 格式 LLM 模型也可以通过 Anthropic Messages 端点调用。也就是说,如果你的应用、SDK 或代理层已经按 Claude 官方消息结构组织请求,可以把请求切到 YutoAPI 的 POST /v1/messages,并继续使用平台提供的 Base URL 与 API Key。
适用场景
- 你原来使用 Claude / Anthropic Messages API,希望迁移到 YutoAPI。
- 你的工具链只支持 Anthropic 风格的
messages请求体。 - 你希望在同一个 YutoAPI 账号下同时使用 OpenAI 兼容端点和 Claude 官方格式端点。
调用方式
- 先在控制台获取 Base URL 与 API Key,参考 获取 Base URL 和 API Key。
- 将请求地址设置为
{BaseURL}/v1/messages。 - 请求头使用
Authorization: Bearer YOUR_API_KEY。 - 请求体按 Anthropic Messages 格式传入
model、max_tokens、messages等字段。
最小请求示例:
bash
curl --location --request POST '{BaseURL}/v1/messages' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "claude-3-5-sonnet-20240620",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "用三句话解释 YutoAPI 的 Anthropic Messages 端点怎么接入。"
}
]
}
]
}'如果你的 Anthropic SDK 或网关要求官方版本头,可以保留:
text
anthropic-version: 2023-06-01平台鉴权仍以 YutoAPI 的 Authorization: Bearer YOUR_API_KEY 为准。
和 OpenAI Chat Completions 的区别
| 项目 | OpenAI 兼容格式 | Claude 官方格式 |
|---|---|---|
| 端点 | /v1/chat/completions | /v1/messages |
| 消息正文 | messages[].content 通常是字符串或多模态数组 | messages[].content 使用 Anthropic 内容块数组 |
| 最大输出 | 常见字段为 max_tokens | 使用 max_tokens |
| 模型字段 | model | model |
如果你已经接入 OpenAI 兼容格式,不需要强制迁移;只有在 SDK、上游工具或业务代码依赖 Anthropic Messages 结构时,才建议使用 /v1/messages。
JavaScript 示例
js
const response = await fetch(`${baseUrl}/v1/messages`, {
method: "POST",
headers: {
Authorization: `Bearer ${apiKey}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
model: "claude-3-5-sonnet-20240620",
max_tokens: 1024,
messages: [
{
role: "user",
content: [
{
type: "text",
text: "请用要点说明这个端点的接入流程。"
}
]
}
]
})
});
const data = await response.json();
console.log(data);注意事项
- 不要把 API Key 写进前端公开代码、GitHub、日志或截图。
model需要填写当前账号可用的模型名称;可先通过 列出模型 查询。- 多模态图片请求也使用
/v1/messages,图片参数示例可参考 Messages(识图)。 - 端点参数参考见 Messages(官方 Anthropic 格式)。