Pular para o conteúdo
Português

Integração com o SDK da Anthropic (Python / TypeScript)

Use o SDK oficial da Anthropic para chamar a 1折AI: preencha base_url com https://1zheai.com; suporte nativo a cache, streaming, chamadas de ferramentas e thinking.

O SDK oficial da Anthropic usa o caminho nativo /v1/messages, e todos os parâmetros do Claude podem ser usados diretamente. As únicas alterações são em base_url e api_key.

Python
pip install anthropic
Python
import os
import anthropic
client = anthropic.Anthropic(
base_url="https://1zheai.com",
api_key=os.environ["ONEZHE_API_KEY"],
)
message = client.messages.create(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "用一句话介绍你自己"}],
)
print(message.model)
print(message.content[0].text)
print(message.usage)

Preencha base_url com a URL raiz; não adicione /v1.

Python
with client.messages.stream(
model="claude-sonnet-5-5",
max_tokens=1024,
messages=[{"role": "user", "content": "写一首四行的诗"}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)

Coloque o conteúdo longo e fixo em system e adicione cache_control:

Python
message = client.messages.create(
model="claude-sonnet-5-5",
max_tokens=1024,
system=[
{
"type": "text",
"text": LONG_PROJECT_CONTEXT, # 每次都一样的长文本
"cache_control": {"type": "ephemeral"},
}
],
messages=[{"role": "user", "content": "根据上面的说明回答:..."}],
)
print(message.usage.cache_creation_input_tokens, message.usage.cache_read_input_tokens)

Na segunda chamada, se cache_read_input_tokens for maior que 0, houve acerto (cache hit). Para detalhes, consulte Prompt Caching.

O SDK oficial lê ANTHROPIC_BASE_URL e ANTHROPIC_API_KEY; também é possível não passar parâmetros ao construir o cliente:

bash
export ANTHROPIC_BASE_URL="https://1zheai.com"
export ANTHROPIC_API_KEY="sk-你的Key"

Em seguida, construa o cliente sem passar parâmetros:

python
client = anthropic.Anthropic() # 自动读取上面两个变量

Se o Claude Code nesta máquina também ler essas duas variáveis, elas passarão juntas a apontar para a 1折AI — geralmente é exatamente o que você deseja.

404?

Você escreveu /v1 a mais em base_url. O SDK da Anthropic monta /v1/messages automaticamente.

401?

Verifique a chave da API (API key); além disso, se o ambiente também contiver ANTHROPIC_AUTH_TOKEN (por exemplo, um valor antigo configurado anteriormente para o Claude Code), o SDK também o lerá — remova o valor antigo e tente novamente.

Quando precisar consultar system, blocos de conteúdo e motivos de parada, consulte Detalhes da interface Messages. Programas completos devem ler o texto de acordo com o tipo de bloco de conteúdo, sem assumir que o primeiro bloco é sempre text.