Claude Sonnet 5: Mit Adaptive Thinking und dem Effort-Parameter die Token-Kosten optimieren

Claude Sonnet 5, das sich 2026 als neuer Standard auf dem Markt für KI-Frontier-Modelle etabliert hat, ist gegenüber der Vorgängergeneration (Claude Sonnet 4.6) ein Drop-in-Upgrade mit identischer API-Request-/Response-Struktur — bei der Steuerung des Denkprozesses (Thinking) unterscheidet es sich jedoch grundlegend. Das bis Claude Sonnet 4.6 verwendete manuelle Extended Thinking (thinking: { type: "enabled", budget_tokens: N }) wurde in Sonnet 5 vollständig entfernt und liefert nun einen 400-Fehler. Stattdessen steuert man Denktiefe und Token-Verbrauch über das standardmäßig aktivierte Adaptive Thinking in Kombination mit dem Parameter output_config.effort.
Dieser Guide behandelt die Kombination aus thinking: { type: "adaptive" } und effort in der Claude-Sonnet-5-API, die Auswirkungen des neuen Tokenizers auf die Token-Kostenberechnung sowie praxiserprobte Patterns, um die Kosten pro Request in Produktions-Pipelines zu optimieren.
Das Wichtigste in Kürze
- Wird das Feld
thinkingim Request weggelassen, läuft Claude Sonnet 5 standardmäßig mit aktiviertem Adaptive Thinking (bei Sonnet 4.6 war es umgekehrt standardmäßig deaktiviert). Zum Deaktivieren muss explizitthinking: { type: "disabled" }gesetzt werden.- Die Denktiefe wird nicht mehr über den Integer-Wert
budget_tokensgesteuert, sondern über die Stufeoutput_config: { effort: "low" | "medium" | "high" | "xhigh" | "max" }. Der Standardwert isthigh.- Werden
temperature/top_p/top_kauf einen von den Standardwerten abweichenden Wert gesetzt, liefert die API einen 400-Fehler — eine neue Einschränkung, die es bei Sonnet 4.6 noch nicht gab.- Sonnet 5 verwendet einen neuen Tokenizer, wodurch derselbe Text im Vergleich zu Sonnet 4.6 auf rund 30 % mehr Tokens kommt. Das wirkt sich nicht über den Preis pro Token, sondern über die Anzahl der Tokens selbst auf die Kosten aus.
- Der Einführungspreis von $2 Input / $10 Output (pro Million Tokens) gilt bis zum 31. August 2026, danach greift der Standardpreis von $3 / $15.
Die Thinking-Steuerungsarchitektur von Claude Sonnet 5
| Parameter / Modus | effort: "low" |
effort: "high" (Standard) |
effort: "xhigh" |
|---|---|---|---|
| Einsatzbereich | Einfache Klassifikation, Chatbot-Antworten, hochfrequente Requests mit niedriger Latenz | Komplexe Schlussfolgerungen, schwierige Coding-Probleme, agentische Aufgaben | Lang laufende Coding-/Agenten-Aufgaben ab 30 Minuten |
| Denkverhalten | Adaptive Thinking wird bei den meisten Requests übersprungen | Adaptive Thinking greift bei Bedarf | Tieferes und häufigeres Denken |
| Geschwindigkeit/Kosten | Am schnellsten und günstigsten | Ausgewogen (Verhalten identisch zum Weglassen des Parameters) | Deutlich höherer Token-Verbrauch |
Wird effort nicht explizit gesetzt, verhält sich die Anfrage genauso wie mit high. max ist die Stufe mit der höchsten Leistung ohne Begrenzung des Token-Verbrauchs und sollte nur für wirklich schwierige Probleme verwendet werden.
Praxisbeispiel: Aufruf der Claude-Sonnet-5-API
Hier ein praxisnahes Codebeispiel für Node.js/TypeScript, das mit dem Anthropic SDK den Parameter effort dynamisch je nach Aufgabenschwierigkeit anpasst. Wird das aus Sonnet 4.6 und älter bekannte thinking.budget_tokens unverändert übernommen, kommt es zu einem 400-Fehler — bei der Migration muss der Code zwingend wie unten gezeigt angepasst werden.
import Anthropic from '@anthropic-ai/sdk';
const anthropic = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY,
});
type Effort = 'low' | 'medium' | 'high' | 'xhigh' | 'max';
async function runAdaptiveThinking(prompt: string, effort: Effort) {
const response = await anthropic.messages.create({
model: 'claude-sonnet-5',
max_tokens: 8192,
// Das bis Sonnet 4.6 verwendete { type: 'enabled', budget_tokens: N }
// wurde in Sonnet 5 entfernt und liefert einen 400-Fehler. Explizit angeben
// muss man es nur, wenn man Thinking abschalten will; lässt man es weg,
// läuft Adaptive Thinking standardmäßig aktiviert.
thinking: { type: 'adaptive' },
output_config: { effort },
messages: [
{
role: 'user',
content: prompt,
},
],
});
for (const block of response.content) {
if (block.type === 'thinking') {
console.log('[Claude Sonnet 5 Thinking]:', block.thinking);
} else if (block.type === 'text') {
console.log('[Claude Sonnet 5 Response]:', block.text);
}
}
}
// 단순 태스크는 low, 복잡한 리팩토링/에이전틱 작업은 xhigh
await runAdaptiveThinking('이 JSON을 스키마에 맞게 정규화해줘', 'low');
await runAdaptiveThinking('이 레포의 순환 의존성을 찾아서 리팩토링 계획을 세워줘', 'xhigh');
Für Requests, bei denen Thinking komplett deaktiviert werden soll (etwa bei einfachen Antworten, bei denen die Latenz absolut entscheidend ist), gibt man explizit thinking: { type: 'disabled' } an. Man könnte nun versucht sein, zusätzlich temperature oder top_p anzupassen — bei Sonnet 5 führt jedoch das Senden eines von den Standardwerten abweichenden Sampling-Parameters sofort zu einem 400-Fehler. Die Steuerung des Tons muss daher über Anweisungen im System-Prompt erfolgen.
Neuer Tokenizer und Kostenoptimierungsstrategien für die Produktion
- Tokens neu zählen, nicht wiederverwenden (Recount, Don’t Reuse):
Auf Sonnet 4.6 basierende Token-Zahlen bzw. -Budgets dürfen nicht einfach weiterverwendet werden. Da derselbe Text mit dem neuen Tokenizer auf rund 30 % mehr Tokens kommt, müssen alle mit dem Token-Budget verknüpften Werte — einschließlich
max_tokens— mit der Token Counting API neu gemessen werden. - Dynamisches Effort-Routing (Task Complexity Router):
Die Komplexität einer Nutzeranfrage bzw. des Umfangs der Codeänderungen wird gemessen und automatisch auf einen
effort-Wert abgebildet. Hochfrequente, einfache Antworten laufen mitlowund senken so die Kosten, während agentisches Coding und tiefgehende Analysen aufxhighhochgestuft werden. - Prompt Caching:
Wird eine große Codebasis oder Library-Typdefinitionen als System Prompt übergeben, sorgt
cache_control: { type: "ephemeral" }bei einem Cache-Hit für bis zu 90 % Token-Rabatt. Allerdings invalidiert ein Wechsel deseffort-Werts innerhalb derselben Konversation den gecachten Prefix — es ist daher für die Cache-Trefferquote von Vorteil, den zu Beginn der Session festgelegten Effort-Wert über die gesamte Session hinweg beizubehalten. - Einführungspreis-Zeitraum nutzen: Bis zum 31. August 2026 gilt der Einführungspreis von $2 Input / $10 Output (pro Million Tokens). Danach greift der Standardpreis von $3 / $15 — größere Migrationstests oder Backfill-Arbeiten sollten daher aus Kostengründen gebündelt in diesen Zeitraum gelegt werden.
Wer Adaptive Thinking und den effort-Parameter von Claude Sonnet 5 passend zum eigenen Produktionssystem routet, kann die gegenüber Sonnet 4.6 gestiegene Token-Kostenbelastung ausgleichen und dabei zugleich vorhersehbare Pipeline-Kosten beibehalten.