حِزم SDK الأصلية
Anthropic SDK
استخدم TokenLab مع Anthropic SDK للتوافق الأصلي مع Claude Messages API
نظرة عامة
يدعم TokenLab مسار Anthropic الأصلي Messages API، لذا يمكنك استخدام Anthropic SDK الرسمي مباشرةً مع نماذج Claude.
بالنسبة إلى Anthropic SDK، استخدم https://api.tokenlab.sh كعنوان URL الأساسي، من دون إضافة /v1 بنفسك.
النوع: SDK أصلي
المسار الرئيسي: Anthropic-native
مستوى الدعم: مسار أصلي قوي
من بين مسارات SDK الموثقة، يُعد هذا أحد أكثر مسارات TokenLab دعماً للميزات الأصلية لـ Claude.
التثبيت
pip install anthropicتهيئة العميل
from anthropic import Anthropic
client = Anthropic(
api_key="sk-your-tokenlab-key",
base_url="https://api.tokenlab.sh",
)الاستخدام الأساسي
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[
{"role": "user", "content": "Reply with: Connected to TokenLab."}
]
)
print(message.content[0].text)البث
with client.messages.stream(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Write a short poem about coding."}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)الرؤية
import base64
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "What's in this image?"},
{
"type": "image",
"source": {
"type": "url",
"url": "https://example.com/image.jpg"
}
}
]
}]
)
with open("image.png", "rb") as f:
image_data = base64.b64encode(f.read()).decode()
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Describe this image"},
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/png",
"data": image_data
}
}
]
}]
)استخدام الأدوات
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
tools=[{
"name": "get_weather",
"description": "Get the weather for a location",
"input_schema": {
"type": "object",
"properties": {
"location": {"type": "string"}
},
"required": ["location"]
}
}],
messages=[{"role": "user", "content": "What's the weather in Tokyo?"}]
)
for block in message.content:
if block.type == "tool_use":
print(block.name)
print(block.input)التفكير الموسّع
message = client.messages.create(
model="claude-opus-5",
max_tokens=16000,
thinking={
"type": "enabled",
"budget_tokens": 10000
},
messages=[{"role": "user", "content": "Solve this complex problem step by step."}]
)
for block in message.content:
if block.type == "thinking":
print(block.thinking)
elif block.type == "text":
print(block.text)نماذج Claude الموصى بها
| النموذج | الأفضل لـ |
|---|---|
claude-opus-4-6 | الاستدلال العميق، والتحليل المطوّل |
claude-sonnet-4-6 | البرمجة، ومهام المساعد العامة |
claude-haiku-4-5 | استجابات سريعة وخفيفة |