文件
連線設定

Anthropic SDK

Markdown

Claude與其他模型的 Messages 格式:Anthropic 官方 SDK,以及所有以其為基礎的工具。

完整指南

安裝

pip install anthropic

連線設定

基礎位址為https://api.ailoot.ai 不含 /v1:SDK 會自行補上/v1/messages。環境變數:ANTHROPIC_BASE_URL與ANTHROPIC_API_KEY。

import anthropic
import os

client = anthropic.Anthropic(max_retries=0, 
    base_url="https://api.ailoot.ai",   # 不加 /v1:SDK 會自行加上 /v1/messages
    api_key=os.environ["AILOOT_API_KEY"],
)

msg = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "用兩句話解釋 API 是什麼。"}],
)
print(msg.content[0].text)

串流回應

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)

串流程式碼的使用方式與原始 API 相同,但付費文字會在費用計算完成後,以單一區塊傳回,而非逐字傳回。服務訊息: ping會在較長的回應中由 SDK 自動略過。

思考 (延伸思考)

msg = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=16000,
    messages=[{"role": "user", "content": "證明質數有無限多個"}],
)

不僅限於 Claude

透過/v1/messages也可使用其他模型:GPT、DeepSeek、Qwen、Kimi、GLM、MiniMax、Grok、Gemini,共 776 個識別碼。對只支援 Anthropic 格式的用戶端而言,這很方便。

msg = client.messages.create(
    model="deepseek-v4-pro",
    max_tokens=2048,
    messages=[{"role": "user", "content": "用 Go 撰寫合併排序函式"}],
)
還有疑問嗎?請提供 Request ID與問題描述,我們會協助釐清。聯絡支援