Anthropic SDK nas suas próprias GPUs.
A sua chave de API da Anthropic fica em api_key; a chave do warden vai em um cabeçalho próprio.
Em texto: O Anthropic SDK envia as solicitações ao LM Warden com base_url apontando para o warden e X-LMWarden-Key contendo uma chave do warden. O LM Warden verifica a chave, implementa o protocolo Anthropic Messages, coloca a solicitação na fila pela prioridade da chave e a entrega ao roteador de réplicas, que mantém cada sessão na réplica que já tem o cache dela, uma cópia do modelo por GPU. Um caminho separado vai para api.anthropic.com: as regras enviam outros modelos Claude para lá, com a sua própria chave de API.
- Protocolo
- Anthropic Messages
- Suporte
- Suporte total
Os modelos Claude que as suas regras definem rodam aqui; todos os outros modelos e caminhos /v1 vão para a Anthropic com o seu próprio login. No modo apenas local, não é preciso ter conta da Anthropic: a chave do warden é o api_key e o modelo é o nome de um modelo servido.
Requisitos
- O roteamento precisa estar ligado, com pelo menos uma regra ativada.
- A chave precisa ter permissão para repassar à Anthropic (May relay).
Configuração
No console, o Connect grava estes arquivos com o endereço do seu warden, a sua chave e o modelo que você escolheu. Aqui eles aparecem com espaços reservados.
Router: mantenha a sua chave da Anthropic
base_url é este warden; a sua chave de API da Anthropic fica em api_key e a chave do warden vai nos cabeçalhos padrão.
import anthropic
# api_key is your own Anthropic key (ANTHROPIC_API_KEY), used for pass-through.
client = anthropic.Anthropic(
base_url="https://your-warden",
default_headers={"X-LMWarden-Key": "vw_YOUR_KEY"},
)
message = client.messages.create(
model="claude-haiku-4-5", # a model your rules serve here; others go to Anthropic
max_tokens=256,
messages=[{"role": "user", "content": "Reply with the single word OK."}],
)
print(message.content[0].text)import Anthropic from "@anthropic-ai/sdk";
// apiKey is your own Anthropic key (ANTHROPIC_API_KEY), used for pass-through.
const client = new Anthropic({
baseURL: "https://your-warden",
defaultHeaders: { "X-LMWarden-Key": "vw_YOUR_KEY" },
});
const message = await client.messages.create({
model: "claude-haiku-4-5", // a model your rules serve here; others go to Anthropic
max_tokens: 256,
messages: [{ role: "user", content: "Reply with the single word OK." }],
});
console.log(message.content);curl https://your-warden/v1/messages \
-H "X-LMWarden-Key: vw_YOUR_KEY" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "claude-haiku-4-5", "max_tokens": 256, "messages": [{"role": "user", "content": "Reply with the single word OK."}]}'Só local
A chave do warden é o api_key e o modelo é o nome de um modelo servido.
import anthropic
client = anthropic.Anthropic(base_url="https://your-warden", api_key="vw_YOUR_KEY")
message = client.messages.create(
model="your-served-model-name",
max_tokens=256,
messages=[{"role": "user", "content": "Reply with the single word OK."}],
)
print(message.content[0].text)import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({ baseURL: "https://your-warden", apiKey: "vw_YOUR_KEY" });
const message = await client.messages.create({
model: "your-served-model-name",
max_tokens: 256,
messages: [{ role: "user", content: "Reply with the single word OK." }],
});
console.log(message.content);curl https://your-warden/v1/messages \
-H "x-api-key: vw_YOUR_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model": "your-served-model-name", "max_tokens": 256, "messages": [{"role": "user", "content": "Reply with the single word OK."}]}'Documentação oficial: https://platform.claude.com/docs/en/api/sdks/python (lida em 2026-10-04).