TL;DR / Hızlı Cevap
Claude Sonnet 4.6, Anthropic'in en yeni orta seviye modelidir; öncü düzeyde kodlama performansını, 1M jeton bağlam penceresini (beta) sadece milyon giriş/çıkış jetonu başına 3$/15$ gibi bir fiyata birleştirir. API'yi kullanmaya başlamak için: 1) console.anthropic.com adresinden bir API anahtarı alın, 2) SDK'yı yükleyin (pip install anthropic), 3) claude-sonnet-4-6 model kimliğini kullanın ve 4) En iyi sonuçlar için uyarlanabilir düşünmeye (thinking: {type: "adaptive"}) geçin. İlk test edenler, Sonnet 4.5'e kıyasla %70 ve hatta Opus 4.5'e kıyasla %59 oranında tercih ettiler.
Giriş
Anthropic, Claude Sonnet 4.6'yı piyasaya sürdü ve bu, orta seviye yapay zeka model kategorisini anında yeniden şekillendiriyor. Bu, aşamalı bir güncelleme değil; ilk kullanıcıların ifadesine göre, önceki premium seviye Opus 4.5'i bire bir testlerde %59 oranında yenen bir model, hem de Sonnet'in fiyat etiketini koruyarak.

Başlıca değişiklikler: beta sürümüne geçen 1M jeton bağlam penceresi, eski ikili genişletilmiş düşünme yaklaşımının yerini alan yeni bir uyarlanabilir düşünme modu ve web araması, kod yürütme, bellek ve araç aramayı içeren bir dizi aracın genel kullanıma sunulması. Ajan tabanlı uygulamalar geliştiren geliştiriciler için Sonnet 4.6, daha önce pahalı öncü modellere ayrılmış yetenekleri yaklaşık üçte bir maliyetle sunuyor.
Kodlama iyileştirmeleri somut. Kullanıcılar, kod üretiminde daha iyi talimat takibi, değişiklik yapmadan önce daha akıllı bağlam anlama ve otomatik mantık konsolidasyonu yoluyla azaltılmış kod tekrarı bildiriyorlar. Bilgisayar kullanımı, karmaşık sigorta iş akışlarında %94 doğruluğa ulaşıyor. SWE-bench Doğrulanmış puanı %79,6 olarak kaydedildi.
Bu kılavuz, Claude Sonnet 4.6 API'si ile bugün geliştirme yapmaya başlamak için ihtiyacınız olan her şeyi kapsar: kimlik doğrulama, Python ve JavaScript'teki pratik kod örnekleri, yeni uyarlanabilir düşünme parametresi, 1M bağlam penceresinin nasıl açılacağı ve entegrasyonunuzu Apidog'un görsel API istemcisiyle nasıl test edeceğiniz.
Claude Sonnet 4.6'daki Yenilikler Neler?
Uyarlanabilir Düşünme Modu
Eski thinking: {type: "enabled", budget_tokens: N} deseni Sonnet 4.6'da kullanımdan kaldırılmıştır. Bunun yerine uyarlanabilir düşünme: thinking: {type: "adaptive"} kullanılır. Claude artık bir görevin ne kadar muhakeme gerektirdiğine dinamik olarak karar verir.
Maliyet ve performansı ayarlamak için uyarlanabilir düşünmeyi effort parametresiyle (şu anda genel kullanıma açık) eşleştirin:
effort: "high"(varsayılan) — Claude neredeyse her zaman düşünür, karmaşık problemler için en iyisidireffort: "medium"— çoğu Sonnet 4.6 kullanım durumu için önerilir, hız ve kaliteyi dengelereffort: "low"— minimum düşünme, basit görevler için en hızlı yanıtlar
Geliştirilmiş Kodlama Performansı
Sonnet 4.6, kod üretimine üç somut iyileştirme getiriyor:
- Daha iyi talimat takibi — belirtimlere daha hassas şekilde uyan kod üretir
- Bağlam anlama — değişiklik yapmadan önce mevcut kodu okur ve anlar, regresyonları azaltır
- Mantık konsolidasyonu — yinelenen kalıpları tanımlar ve paylaşılan soyutlamalar önerir
Kodlama kıyaslamalarını yürüten ilk test kullanıcıları, Sonnet 4.6 çıktılarının Sonnet 4.5'e göre %70 ve Opus 4.5'e göre %59 oranında tercih edildiğini bildirdiler.
Bilgisayar Kullanım İyileştirmeleri
Bilgisayar kullanım doğruluğu OSWorld-Verified'da (Opus 4.6'nın %0,2'si içinde) %72,5'e ulaşarak Sonnet 4.5'ten önemli ölçüde artış gösterdi. Model, kullanıcı arayüzü navigasyonu, elektronik tablo manipülasyonu ve çok adımlı form doldurma gerektiren sigorta iş akışlarında %94 doğruluk gösteriyor. Ayrıca, otomatikleştirilmiş görevler sırasında komut enjeksiyon saldırılarına karşı daha dirençlidir.

ARC-AGI-2 Atılımı
En çarpıcı kıyaslama sayısı: ARC-AGI-2 performansı %13,6'dan %58,3'e sıçradı — 4,3 kat iyileşme. Bu, modelin kalıplarını görmediği görevlerde yeni problem çözmeyi ölçer ve ezberlemek yerine gerçek muhakeme iyileşmeleri önerir.
API Özellikleri ve Fiyatlandırma
| Özellik | Değer |
|---|---|
| API model Kimliği | claude-sonnet-4-6 |
| AWS Bedrock Kimliği | anthropic.claude-sonnet-4-6 |
| GCP Vertex AI Kimliği | claude-sonnet-4-6 |
| Bağlam penceresi | 200K jeton (başlıklı 1M beta) |
| Maksimum çıktı jetonları | 64K |
| Giriş fiyatlandırması | Milyon jeton başına $3 |
| Çıkış fiyatlandırması | Milyon jeton başına $15 |
| İstek önbellekleme tasarrufu | %90'a kadar |
| Toplu API tasarrufu | %50'ye kadar |
| Bilgi kesim tarihi (güvenilir) | Ağustos 2025 |
| Eğitim verisi kesim tarihi | Ocak 2026 |
| Genişletilmiş düşünme | Evet |
| Uyarlanabilir düşünme | Evet |
| Öncelikli Katman | Evet |
Maliyet azaltma seçenekleri:
- İstek önbellekleme: Sistem isteminizin statik kısımlarını önbelleğe alın ve %90'a kadar tasarruf edin
- Toplu API: İstekleri %50 indirimle eşzamansız olarak işleyin
- Uzun bağlam fiyatlandırması: 200K jetonu aşan istekler ayrı bir uzun bağlam oranı kullanır
Üretim bütçeleri için: effort: "medium" ile uyarlanabilir düşünme modunda bir milyon jetonluk bir konuşma, giriş jetonlarında yaklaşık 3 dolara mal olur. Çoğu tek API çağrısı bir sentin çok altında kalır.
Claude Sonnet 4.6 API'si ile Başlangıç
Adım 1: API Anahtarınızı Alın
- platform.anthropic.com adresine giriş yapın
- Ayarlarda API Anahtarları'na gidin
- Anahtar Oluştur'a tıklayın ve değeri hemen kopyalayın (yalnızca bir kez gösterilir)

Anahtarınızı bir ortam değişkeni olarak saklayın—asla kod içine sabit olarak yazmayın:
export ANTHROPIC_API_KEY="sk-ant-..."
Adım 2: SDK'yı Kurun
Python:
pip install anthropic
JavaScript/Node.js:
npm install @anthropic-ai/sdk
Adım 3: İlk İsteğinizi Yapın
import anthropic
client = anthropic.Anthropic() # ANTHROPIC_API_KEY'i ortamdan okur
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[
{"role": "user", "content": "JavaScript'te async/await ile promise'ler arasındaki farkı açıklayın."}
]
)
print(response.content[0].text)
Bu, minimum uygulanabilir çağrıdır. Yanıt nesnesi, kullanım istatistiklerini (giriş jetonları, çıkış jetonları), durdurma nedenini ve model sürümünü içerir.
Python Kodu Örnekleri
Temel Metin Üretimi
import anthropic
client = anthropic.Anthropic()
def ask_claude(question: str, system: str = None) -> str:
"""Claude Sonnet 4.6 metin üretimi için basit sarmalayıcı."""
messages = [{"role": "user", "content": question}]
kwargs = {
"model": "claude-sonnet-4-6",
"max_tokens": 2048,
"messages": messages,
}
if system:
kwargs["system"] = system
response = client.messages.create(**kwargs)
return response.content[0].text
# Örnek kullanım
answer = ask_claude(
"Bu Python fonksiyonunu performans sorunları açısından inceleyin:\n\ndef find_duplicates(lst):\n return [x for x in lst if lst.count(x) > 1]",
system="Kıdemli bir Python mühendisisiniz. Spesifik olun ve düzeltilmiş kodu sağlayın."
)
print(answer)
Akış Yanıtları
Uzun çıktılar veya gerçek zamanlı kullanıcı deneyimi için akışı kullanın:
import anthropic
client = anthropic.Anthropic()
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=4096,
messages=[{
"role": "user",
"content": "Kullanıcı kimlik doğrulaması için JWT ile FastAPI'de eksiksiz bir REST API işleyici yazın."
}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
# Akış tamamlandıktan sonra kullanım istatistikleriyle son mesajı alın
message = stream.get_final_message()
print(f"\n\nKullanılan jetonlar: {message.usage.input_tokens} giriş, {message.usage.output_tokens} çıkış")
Araç Çağırma / Fonksiyon Kullanımı
import anthropic
import json
client = anthropic.Anthropic()
# Araçları tanımlayın
tools = [
{
"name": "get_repository_info",
"description": "Bir GitHub deposu hakkında yıldızları, çatalları ve son commit'leri içeren bilgileri getirir.",
"input_schema": {
"type": "object",
"properties": {
"owner": {
"type": "string",
"description": "Depo sahibi veya organizasyon adı"
},
"repo": {
"type": "string",
"description": "Depo adı"
}
},
"required": ["owner", "repo"]
}
}
]
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
tools=tools,
messages=[{
"role": "user",
"content": "Anthropics/anthropic-sdk-python deposu hakkında bana ne söyleyebilirsiniz?"
}]
)
# Araç kullanım yanıtını işleyin
for block in response.content:
if block.type == "tool_use":
print(f"Çağrılan araç: {block.name}")
print(f"Argümanlar: {json.dumps(block.input, indent=2)}")
# Üretimde, gerçek uygulamanızı buraya çağırın
# result = get_repository_info(block.input["owner"], block.input["repo"])
Görüntü ve Resim Analizi
import anthropic
import base64
from pathlib import Path
client = anthropic.Anthropic()
def analyze_image(image_path: str, question: str) -> str:
"""Claude Sonnet 4.6 ile bir görüntüyü analiz edin."""
image_data = base64.standard_b64encode(Path(image_path).read_bytes()).decode("utf-8")
# Uzantıdan medya türünü algıla
ext = Path(image_path).suffix.lower()
media_type_map = {
".jpg": "image/jpeg",
".jpeg": "image/jpeg",
".png": "image/png",
".gif": "image/gif",
".webp": "image/webp"
}
media_type = media_type_map.get(ext, "image/jpeg")
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": media_type,
"data": image_data,
},
},
{
"type": "text",
"text": question
}
],
}]
)
return response.content[0].text
# Örnek: erişilebilirlik sorunları için bir kullanıcı arayüzü ekran görüntüsünü analiz et
result = analyze_image(
"screenshot.png",
"Bu kullanıcı arayüzü tasarımındaki erişilebilirlik sorunlarını belirleyin. Kontrast oranlarını, eksik alt metin göstergelerini ve klavye navigasyon endişelerini kontrol edin."
)
print(result)
JavaScript/Node.js Örnekleri
Temel Kurulum ve İstek
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY, // varsayılan, netlik için açıkça gösterilmiştir
});
async function askClaude(userMessage, systemPrompt = null) {
const params = {
model: "claude-sonnet-4-6",
max_tokens: 2048,
messages: [{ role: "user", content: userMessage }],
};
if (systemPrompt) {
params.system = systemPrompt;
}
const response = await client.messages.create(params);
return response.content[0].text;
}
// Kullanım
const answer = await askClaude(
"Bu Express rotasını async/await kullanacak şekilde yeniden düzenleyin:\n\napp.get('/users', (req, res) => {\n User.find({}, (err, users) => {\n if (err) return res.status(500).send(err);\n res.json(users);\n });\n});",
"Kıdemli bir Node.js geliştiricisiniz. Yalnızca yeniden düzenlenmiş kodu kısa bir açıklamayla döndürün."
);
console.log(answer);
TypeScript ile Akış
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
async function streamCodeReview(codeSnippet: string): Promise<void> {
const stream = await client.messages.stream({
model: "claude-sonnet-4-6",
max_tokens: 4096,
messages: [
{
role: "user",
content: `Bu TypeScript fonksiyonunun kapsamlı bir kod incelemesini yapın:\n\n\`\`\`typescript\n${codeSnippet}\n\`\`\`\n\nOdaklanılacaklar: tür güvenliği, uç durumlar, performans ve güvenlik.`,
},
],
});
// Metni geldikçe akışla aktar
stream.on("text", (text) => {
process.stdout.write(text);
});
// Son istatistikleri al
const finalMessage = await stream.finalMessage();
console.log(
`\n\n---\nToplam jetonlar: ${finalMessage.usage.input_tokens + finalMessage.usage.output_tokens}`
);
}
Çok Turlu Sohbet
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
class ConversationManager {
constructor(systemPrompt = null) {
this.messages = [];
this.systemPrompt = systemPrompt;
}
async chat(userMessage) {
this.messages.push({ role: "user", content: userMessage });
const params = {
model: "claude-sonnet-4-6",
max_tokens: 2048,
messages: this.messages,
};
if (this.systemPrompt) {
params.system = this.systemPrompt;
}
const response = await client.messages.create(params);
const assistantMessage = response.content[0].text;
// Sohbet geçmişini koru
this.messages.push({ role: "assistant", content: assistantMessage });
return assistantMessage;
}
}
// Örnek: çok turlu hata ayıklama oturumu
const debugSession = new ConversationManager(
"Uzman bir hata ayıklayıcısınız. Açıklayıcı sorular sorun ve sorunları adım adım inceleyin."
);
console.log(await debugSession.chat("API'm sürekli 401 hatası döndürüyor."));
console.log(await debugSession.chat("Authorization başlığını dahil ediyorum."));
console.log(
await debugSession.chat("Belirteç, oturum açtıktan sonra localStorage'dan geliyor.")
);
Uyarlanabilir Düşünme: Yeni Genişletilmiş Düşünme
Uyarlanabilir düşünme, Sonnet 4.6'da eski genişletilmiş düşünme modelinin yerini almıştır. Temel fark: düşünme için sabit bir jeton bütçesi belirlemek yerine, bir effort seviyesi belirlersiniz ve Claude, problemin gerçekten ne kadar muhakeme gerektirdiğine karar verir.
Uyarlanabilir Düşünme Nasıl Kullanılır?
import anthropic
client = anthropic.Anthropic()
# Önerilen: çoğu kullanım durumu için orta eforla uyarlanabilir düşünme
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=16000,
thinking={"type": "adaptive"},
effort="medium", # seçenekler: "low", "medium", "high" (varsayılan: high)
messages=[{
"role": "user",
"content": """
Milyonlarca kullanıcıdan gelen olayları izlemesi gereken,
son 24 saatlik veriler üzerinde gerçek zamanlı sorguları destekleyen,
geçmiş verileri maliyet etkin bir şekilde arşivleyen ve
kurumsal müşteriler için kiracı izolasyonunu yöneten bir SaaS analitik platformu için bir veritabanı şeması tasarlayın.
"""
}]
)
# Düşünme blokları metin yanıtından önce görünür
for block in response.content:
if block.type == "thinking":
print(f"[Claude'un muhakemesi - {len(block.thinking)} karakter]")
elif block.type == "text":
print(block.text)
Uygulamada Efor Seviyeleri
| Efor | En İyi İçin | Göreceli Maliyet | Göreceli Hız |
|---|---|---|---|
low |
Sınıflandırma, basit Soru-Cevap, biçimlendirme | 1x | En Hızlı |
medium |
Kod üretimi, analiz, çoğu görev | 1.5-2x | Hızlı |
high |
Mimari kararlar, karmaşık hata ayıklama, matematik | 3-5x | Orta |
Taşıma notu:thinking: {type: "enabled", budget_tokens: N}effortthinking: {type: "adaptive"}1M Jeton Bağlam Penceresi
1M jeton bağlam penceresi, Claude'a tüm kod tabanlarını, kapsamlı belge setlerini veya aylarca süren konuşma geçmişini beslemenize olanak tanır. Bu yaklaşık 750.000 kelimeye veya tek bir istekte 5-10 tam kod tabanına eşdeğerdir.
1M Bağlam Nasıl Etkinleştirilir?
İsteğinizde context-1m-2025-08-07 beta başlığını geçirin:
import anthropic
client = anthropic.Anthropic()
# Tüm büyük bir kod tabanını oku
with open("large_codebase.txt", "r") as f:
codebase_content = f.read()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["context-1m-2025-08-07"],
messages=[{
"role": "user",
"content": f"""
İşte tüm arka uç kod tabanımız:\n\n{codebase_content}\n\n
N+1 sorunlarına neden olabilecek tüm veritabanı sorgularını bulun ve düzeltmeler önerin.
"""
}]
)
print(response.content[0].text)
// JavaScript karşılığı
const response = await client.beta.messages.create({
model: "claude-sonnet-4-6",
max_tokens: 4096,
betas: ["context-1m-2025-08-07"],
messages: [
{
role: "user",
content: `Bu kod tabanının tamamını güvenlik açıkları açısından inceleyin:\n\n${codebaseContent}`,
},
],
});
1M Jeton Neleri Sağlar?
- Tam kod tabanı analizi: Tüm deponuzu gönderin ve Claude'dan hataları bulmasını, yeniden düzenlemeler önermesini veya testler üretmesini isteyin
- Uzun belge işleme: Tam yasal sözleşmeleri, finansal raporları veya araştırma makalelerini analiz edin
- Genişletilmiş ajan oturumları: Bağlamı kaybetmeden uzun çok adımlı görevlerin tüm geçmişini tutun
- Dosyalar arası bağımlılık izleme: Büyük bir projede bir fonksiyonun veya sınıfın tüm kullanımlarını bulun
Fiyatlandırma notu: 200K jetonu aşan istekler uzun bağlam fiyatlandırması kullanır. Yüksek hacimli kullanım için buna göre plan yapın.
Web Araması ve Dinamik Filtreleme
Web arama ve web getirme araçları artık Sonnet 4.6'da genel beta sürümünde dinamik filtrelemeyi destekliyor. Claude, bağlam penceresine girmeden önce arama sonuçlarını filtrelemek için kod yazar ve yürütür; böylece yalnızca ilgili bilgileri tutar ve jeton kullanımını önemli ölçüde azaltır.
Kod yürütme, web arama veya web getirme araçlarıyla birlikte kullanıldığında ücretsizdir (ayrı bir faturalandırma yoktur).
Dinamik Web Arama Kurulumu
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["code-execution-web-tools-2026-02-09"],
tools=[
{
"type": "web_search_20260209", # Dinamik filtreleme için bu sürümü kullanın
"name": "web_search",
}
],
messages=[{
"role": "user",
"content": "Son 30 gün içinde yayınlanan Apache Log4j için en son CVE'leri bulun ve şiddet seviyelerini özetleyin."
}]
)
for block in response.content:
if hasattr(block, "text"):
print(block.text)
Dinamik Filtreleme ile Web Getirme
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
betas=["code-execution-web-tools-2026-02-09"],
tools=[
{
"type": "web_fetch_20260209", # Dinamik filtreleme ile yeni sürüm
"name": "web_fetch",
}
],
messages=[{
"role": "user",
"content": "Anthropic fiyatlandırma sayfasını getirin ve sadece Claude Sonnet fiyatlandırma satırlarını çıkarın."
}]
)
print(response.content[-1].text)
Dinamik filtreleme neden önemli: Filtreleme olmadan, tam bir web sayfasını getirmek, yalnızca 2K jetonluk ilgili içeriğe ihtiyacınız olan bir sayfa için 100K jeton tüketebilir. Dinamik filtreleme, Claude'un sayfayı kodda ayrıştırmasına ve yalnızca ihtiyaç duyulanları döndürmesine olanak tanır, bu da içerik açısından yoğun sayfalarda maliyetleri %90'dan fazla azaltır.
Bağlam Sıkıştırma API'si
Bağlam sıkıştırma, bağlamın pencere sınırını aşacak şekilde biriktiği uzun süreli ajan oturumlarını yönetir. API, sınıra yaklaşıldığında konuşmanın eski kısımlarını sunucu tarafında otomatik olarak özetleyerek etkili bir şekilde sınırsız konuşma uzunluğu sağlar.
import anthropic
client = anthropic.Anthropic()
# Beta başlığı aracılığıyla bağlam sıkıştırmayı etkinleştir
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["interleaved-thinking-2025-05-14"], # Betada sıkıştırmayı etkinleştirir
system="Uzun süreli bir yazılım geliştirme ajanı olarak görev yapıyorsunuz. Bu oturum sırasında yapılan kod tabanı değişiklikleri hakkında bağlamı koruyun.",
messages=[
{"role": "user", "content": "Kimlik doğrulama modülümüz için bir yeniden düzenleme oturumu başlatın."},
# ... gerçek bir oturumda buraya daha birçok dönüş gelirdi
]
)
# compaction_details alanı, özetlemenin ne zaman gerçekleştiğini gösterir
if hasattr(response, "usage") and hasattr(response.usage, "cache_read_input_tokens"):
print(f"Önbellekleme yoluyla kaydedilen bağlam jetonları: {response.usage.cache_read_input_tokens}")
Sıkıştırma ne zaman kullanılır: Birkaç dakikadan uzun süren ve geçmişi biriktiren herhangi bir ajan iş akışı—CI/CD ajanları, uzun kodlama oturumları, müşteri destek konuları veya çok adımlı araştırma görevleri.
Claude Sonnet 4.6'yı Apidog ile Test Etme
SDK kodu yazmadan önce, Claude Sonnet 4.6 API'sini görsel olarak keşfetmek için Apidog'u kullanın. Apidog, başlıkları yapılandırmanıza, istek gövdeleri oluşturmanıza ve başlangıç şablonuna gerek kalmadan akış yanıtlarını incelemenize olanak tanıyarak geliştirmeyi hızlandırır.

Apidog'da Anthropic API'sini Kurma
- Apidog'u açın ve yeni bir HTTP isteği oluşturun
- Metodu
POSTve URL'yihttps://api.anthropic.com/v1/messagesolarak ayarlayın - Bu başlıkları ekleyin:
| Başlık | Değer |
|---|---|
x-api-key |
{{ANTHROPIC_API_KEY}} |
anthropic-version |
2023-06-01 |
Content-Type |
application/json |
- İstek gövdesini JSON olarak ayarlayın:
{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Claude Sonnet 4.6'daki temel iyileştirmeler nelerdir?"
}
]
}
Uyarlanabilir Düşünmeyi Test Etme
Apidog'da uyarlanabilir düşünme modunu test etmek için, istek gövdesine thinking ve effort alanlarını ekleyin:
{
"model": "claude-sonnet-4-6",
"max_tokens": 8192,
"thinking": {
"type": "adaptive"
},
"effort": "medium",
"messages": [
{
"role": "user",
"content": "Günde 10M istek sunan bir genel API için bir oran sınırlama stratejisi tasarlayın."
}
]
}
Apidog'da Beta Özelliklerini Test Etme
Beta özellikleri (1M bağlam, dinamik web araması, bağlam sıkıştırma) için beta başlığını ekleyin:
| Başlık | Değer |
|---|---|
anthropic-beta |
context-1m-2025-08-07 |
Veya web arama dinamik filtreleme için:
| Başlık | Değer |
|---|---|
anthropic-beta |
code-execution-web-tools-2026-02-09 |
Apidog, bu yapılandırmaları ön ayar olarak kaydetmenize ve ekibinizle paylaşmanıza olanak tanır, böylece herkes tutarlı API test ortamlarına sahip olur.
Genel Kullanıma Sunulan Yeni Araçlar
Daha önce beta aşamasında olan bazı araçlar artık Sonnet 4.6'da genel kullanıma sunulmuştur, yani özel beta başlıklarına gerek yoktur:
Kod Yürütme Aracı
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
tools=[{"type": "code_execution_20250522", "name": "code_execution"}],
messages=[{
"role": "user",
"content": "10.000 doların %5 yıllık faiz oranıyla 10 yıl boyunca aylık bileşik faizini hesaplayın. Yıl bazında dökümünü gösterin."
}]
)
for block in response.content:
if block.type == "tool_result":
print("Yürütme çıktısı:", block.content)
elif hasattr(block, "text"):
print(block.text)
Bellek Aracı
Bellek aracı, Claude'un konuşma oturumları boyunca bilgiyi kalıcı hale getirmesini sağlar; bu, durum bilgisini koruyan asistanlar oluşturmak için kullanışlıdır:
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
tools=[{"type": "memory_20250416", "name": "memory"}],
messages=[{
"role": "user",
"content": "API temel URL'mizin https://api.company.com/v2 olduğunu ve tüm uç noktalarda Bearer token kimlik doğrulaması gerektirdiğimizi unutmayın."
}]
)
Programatik Araç Çağırma
Programatik araç çağırma, Claude'un doğrudan yapılandırılmış API çağrıları oluşturmasını sağlar:
import anthropic
client = anthropic.Anthropic()
# Claude artık araçları insan müdahalesi olmadan programatik olarak çağırabilir
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
tools=[
{
"name": "execute_sql",
"description": "Bir SQL sorgusunu yürütür ve sonuçları döndürür",
"input_schema": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "Yürütülecek SQL sorgusu"},
"database": {"type": "string", "description": "Veritabanı adı"}
},
"required": ["query", "database"]
}
}
],
messages=[{
"role": "user",
"content": "Ocak 2026'da kaydolmuş ve henüz bir satın alma yapmamış tüm kullanıcıları bulun."
}]
)
Sonnet 4.6 vs Önceki Modeller
| Claude Sonnet 4.6 | Claude Sonnet 4.5 | Claude Opus 4.5 | |
|---|---|---|---|
| API Kimliği | claude-sonnet-4-6 |
claude-sonnet-4-5-20250929 |
claude-opus-4-5-20251101 |
| Giriş fiyatı | $3/M Jeton | $3/M Jeton | $5/M Jeton |
| Çıkış fiyatı | $15/M Jeton | $15/M Jeton | $25/M Jeton |
| Bağlam penceresi | 200K / 1M (beta) | 200K / 1M (beta) | 200K |
| Maksimum çıktı | 64K | 64K | 64K |
| Uyarlanabilir düşünme | Evet | Hayır | Hayır |
| Genişletilmiş düşünme | Evet (kullanımdan kaldırıldı) | Evet | Evet |
| SWE-bench puanı | %79.6 | ~%72 | ~%76 |
| OSWorld (bilgisayar kullanımı) | %72.5 | ~%65 | ~%72.7 |
| Web arama filtreleme | Evet (beta) | Hayır | Hayır |
| Genel kullanıma açık araçlar | Kod yürütme, web getirme, bellek, araç araması | Daha az GA | Tam süit |
| Kullanıcılar tarafından Sonnet 4.5'e tercih edilme | %70 | — | — |
| Kullanıcılar tarafından Opus 4.5'e tercih edilme | %59 | — | — |
Sonuç: Eğer Sonnet 4.5 kullanıyorsanız, Sonnet 4.6'ya yükseltmek tartışmasızdır—aynı fiyata, anlamlı derecede daha iyi kodlama performansı ve uyarlanabilir düşünme. Eğer Opus 4.5 kullanıyorsanız, Sonnet 4.6 artık çoğu kullanım durumunda Opus 4.5'i %60 daha az maliyetle yakalıyor veya geçiyor.
En İyi Uygulamalar ve İpuçları
1. Varsayılan Olarak Orta Eforla Uyarlanabilir Düşünmeyi Kullanın
Çoğu Sonnet 4.6 kullanım durumu için effort: "medium" en iyi maliyet-performans dengesini sağlar. effort: "high" değerini mimari tasarım, çok adımlı muhakeme zincirleri veya matematiksel kanıtlar gibi gerçekten karmaşık görevler için ayırın.
# Sonnet 4.6 için iyi varsayılan desen
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
thinking={"type": "adaptive"},
effort="medium", # Çoğu görev için ideal nokta
messages=[...]
)
2. 1K Jeton Üzerindeki Çıktılar İçin Akışı Kullanın
Büyük yanıtlar, HTTP zaman aşımlarını önlemek ve kullanıcılara daha hızlı algılanan yanıt süreleri sunmak için akıştan yararlanır:
# Uzun olması beklenen herhangi bir yanıt için
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=8192,
messages=[...]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
3. Tekrarlanan Sistem İstekleri İçin İstek Önbelleğini Etkinleştirin
Aynı sistem istemini birçok çağrıda kullanıyorsanız, %90'a kadar tasarruf etmek için onu önbelleğe alın:
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
system=[
{
"type": "text",
"text": "Uzun sistem isteminiz buraya...",
"cache_control": {"type": "ephemeral"} # Bu bloğu önbelleğe al
}
],
messages=[{"role": "user", "content": user_input}]
)
4. Oran Sınırlarını Zarif Bir Şekilde Yönetin
Sonnet 4.6'nın cömert oran sınırları vardır, ancak üretim sistemleri üstel geri çekilmeyi uygulamalıdır:
import anthropic
import time
def create_with_retry(client, max_retries=3, **kwargs):
for attempt in range(max_retries):
try:
return client.messages.create(**kwargs)
except anthropic.RateLimitError:
if attempt == max_retries - 1:
raise
wait_time = (2 ** attempt) + 1 # 2s, 3s, 5s
time.sleep(wait_time)
5. Sonnet 4.6'da Ön Doldurmadan Uzaklaşın
Yardımcı mesajları önceden doldurma (son dönüş ön doldurma), Claude 4.6 modellerinde desteklenmez. Bunun yerine yapılandırılmış çıktıları kullanın:
# Eski yaklaşım (Claude 4.6'da bozulur):
# messages = [
# {"role": "user", "content": "Bana JSON ver..."},
# {"role": "assistant", "content": "{"} # Ön doldurma
# ]
# Yeni yaklaşım: yapılandırılmış çıktıları kullan
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
output_config={
"format": {
"type": "json_schema",
"schema": {
"type": "object",
"properties": {
"name": {"type": "string"},
"score": {"type": "number"}
}
}
}
},
messages=[{"role": "user", "content": "Örnek bir kullanıcı nesnesi oluştur."}]
)
6. Veri Yerleşimi İçin AWS veya GCP Belirtin
Uyumluluk gereksinimleriniz yalnızca ABD'de çıkarım yapılmasını gerektiriyorsa, inference_geo parametresini kullanın:
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
inference_geo="us", # Çıkarımın ABD veri merkezlerinde çalışmasını sağlar
messages=[...]
)
Yalnızca ABD'de yapılan çıkarım, Sonnet 4.6'da standart ücretin 1,1 katı olarak fiyatlandırılır.
Claude Sonnet 4.6 ile geliştirme yapmaya hazır mısınız? API çağrılarınızı görsel olarak test etmek, istek yapılandırmaları üzerinde ekibinizle işbirliği yapmak ve otomatik olarak SDK kodu oluşturmak için Apidog'u ücretsiz indirin—kredi kartı gerekmez.
