Anthropic SDK
UberLLM 提供了与 Anthropic 兼容的 Messages API,地址为 /v1/messages。通过设置其 base URL,将官方 anthropic SDK 指向 UberLLM,您就可以通过 Anthropic wire format 调用目录中的任何模型,而不仅仅是 Anthropic 模型。UberLLM 在其自己的网关中,可以在 Anthropic 和 OpenAI 格式之间进行转换,包括 streaming。
- Base URL:
https://api.uberllm.dev - Endpoint:
POST /v1/messages - Auth: 您的
ull_key
Anthropic SDK 在 x-api-key header 中发送 key;UberLLM 也接受 Authorization: Bearer ull_...。两者都行。
Python
import os
from anthropic import Anthropic
client = Anthropic(
base_url="https://api.uberllm.dev",
api_key=os.environ["UBERLLM_API_KEY"],
)
msg = client.messages.create(
model="deepseek/deepseek-v4-flash",
max_tokens=256,
messages=[{"role": "user", "content": "Say hello in one sentence."}],
)
print(msg.content[0].text)
Streaming
with client.messages.stream(
model="deepseek/deepseek-v4-flash",
max_tokens=256,
messages=[{"role": "user", "content": "Count to five."}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
TypeScript / JavaScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://api.uberllm.dev",
apiKey: process.env.UBERLLM_API_KEY,
});
const msg = await client.messages.create({
model: "deepseek/deepseek-v4-flash",
max_tokens: 256,
messages: [{ role: "user", content: "Say hello in one sentence." }],
});
console.log(msg.content[0].type === "text" ? msg.content[0].text : "");
curl
curl -N https://api.uberllm.dev/v1/messages \
-H "x-api-key: $UBERLLM_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek/deepseek-v4-flash",
"max_tokens": 256,
"stream": true,
"messages": [{"role": "user", "content": "Say hello."}]
}'
注意事项
- Anthropic Messages API 需要
max_tokens— 请务必包含它。 - 模型只在您要求时才进行思考,就像 Anthropic 的 API 一样:发送
"thinking": {"type": "enabled", "budget_tokens": 2000}(或"adaptive")。如果没有它,像 DeepSeek 这样的推理模型会直接、更快地回答,并且思考不会消耗少量max_tokens。少数模型无法关闭思考功能;它们无论如何都会思考。 - 系统提示使用顶层
system字段,就像原生的 Anthropic API 一样;UberLLM 会将其正确映射到目标模型。 - Anthropic 模型与其他模型一样计费:按照提供商的收费标准,不额外收取 UberLLM 费用。请参阅 定价。
- 如果您的框架只支持 OpenAI,请改用 OpenAI SDK。两种接口都连接到相同的模型,并使用相同的计费方式。