Aller au contenu
Français

Intégration du SDK Anthropic (Python / TypeScript)

Appeler 1折AI avec le SDK officiel Anthropic : base_url sur https://1zheai.com, prise en charge native du cache, du streaming, des appels d'outils et du thinking.

Le SDK officiel Anthropic utilise le protocole natif /v1/messages ; tous les paramètres de Claude peuvent être utilisés directement. Les seuls éléments à modifier sont base_url et 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)

Renseignez l’adresse de base dans base_url, sans ajouter /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)

Placez le contenu long et fixe dans system et ajoutez 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)

Lors du deuxième appel, si cache_read_input_tokens est supérieur à 0, c’est un cache hit. Pour les détails, voir Prompt Caching.

Le SDK officiel lit ANTHROPIC_BASE_URL et ANTHROPIC_API_KEY ; vous pouvez omettre les paramètres lors de la construction du client :

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

Puis construire le client sans passer de paramètres :

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

Si Claude Code lit également ces deux variables sur cette machine, elles basculeront toutes deux vers 1折AI, ce qui est généralement ce que vous souhaitez.

404?

Vous avez ajouté /v1 dans base_url. Le SDK Anthropic assemble lui-même /v1/messages.

401?

Vérifiez la clé API (API key) ; de plus, si l’environnement contient également ANTHROPIC_AUTH_TOKEN (par exemple une ancienne valeur définie pour Claude Code), le SDK la lira aussi — supprimez l’ancienne valeur et réessayez.

Pour consulter system, les blocs de contenu et la raison d’arrêt, voir Détail de l’interface Messages. Un programme complet doit lire le texte en fonction du type de bloc de contenu, sans supposer que le premier bloc est toujours text.