Eine Redaktions-Integration hängt von mehr ab als vom Modellnamen: Sie kann auf einer Sampling-Einstellung, einem erzwungenen Funktionsaufruf oder einem Antwort-Parser beruhen. Ein Versionswechsel kann alle drei ändern, noch bevor er die Qualität der Bearbeitung verändert.
Wählen Sie Sonnet 5 für einen Neuaufbau, Sonnet 5.5, wenn Sie Antworten über 64 000 Tokens, unzensierte Fiktion oder die größte Bandbreite an Effort-Stufen brauchen, und Sonnet 4.6 für die Steuerung per temperature, top_p oder top_k. Sonnet 5 unterstützt außerdem erzwungene Tool-Aufrufe; 5.5 nicht. Allein die Modell-ID zu ändern, bricht eine Anfrage: Sonnet 5 und 5.5 antworten bei Sampling-Feldern mit einem 400-Fehler, und 5.5 lehnt zusätzlich eine erzwungene Tool-Auswahl ab. Entfernen Sie diese Felder pro Version, bevor Sie Antworten vergleichen.
Die Tabelle beschreibt die gehosteten Verträge von SpicyAPI. Anthropics Migrationsleitfaden für Sonnet 5.5 erklärt die nativen Versionsänderungen; Feldnamen und Standardwerte lassen sich nicht auf diese Schnittstelle übertragen. Alle Preise unten in USD pro Million Tokens.
Was jede Version akzeptiert
| Vertrag | Sonnet 4.5 | Sonnet 4.6 | Sonnet 5 | Sonnet 5.5 |
|---|---|---|---|---|
| Eingabelimit | 198 000 Tokens | 1 000 000 | 1 000 000 | 1 000 000 |
| Ausgabeobergrenze | 64 000 | 64 000 | 64 000 | 128 000 |
Standard-max_tokens | 4096 | 4096 | 4096 | 4096 |
reasoning_effort | Nicht verfügbar | low, medium, high, max | low, medium, high | none, low, medium, high, xhigh, max |
| Standard-Effort | — | medium | medium | medium |
temperature, top_p, top_k | Verfügbar | Verfügbar | Abgelehnt | Abgelehnt |
tool_choice | auto, none, required oder eine benannte Funktion | wie 4.5 | wie 4.5 | nur auto oder none |
response_format | Nicht akzeptiert | Nicht akzeptiert | Nicht akzeptiert | Nicht akzeptiert |
| Inhaltsstufe | Abgeschwächt | Unzensiert | Gefiltert | Unzensiert |
Die IDs lauten anthropic/claude-sonnet-4.5/chat, anthropic/claude-sonnet-5/chat, anthropic/claude-sonnet-5.5/chat und anthropic/claude-sonnet-4.6/chat; die Seiten sind 4.5, 5, 5.5 und 4.6. Alle vier nutzen dieselbe Anfrageform für /v1/chat/completions und akzeptieren außerdem stop, tools und parallel_tool_calls.
Sonnet 4.6 ist eine Zwischenstufe für die Migration. Es hat bereits das 1M-Fenster und reasoning_effort, nimmt aber weiterhin temperature an. Der Wechsel von 4.5 auf 4.6 behält die Anfrageform bei, erhöht den Eingabepreis um 11 %, hebt die Stufe von Abgeschwächt auf Unzensiert und nutzt standardmäßig mittleren Reasoning-Effort; erst der Schritt von 4.6 auf 5 entfernt das Sampling.
Die Inhaltsstufe ist für Fiktion und Rollenspiel wichtig. Sonnet 5 ist Gefiltert; Sonnet 4.5 und 4.6 haben in unseren Tests Anfragen für intensivere Erwachsenenfiktion oft abgeschwächt oder abgelehnt. Sonnet 5.5 lieferte diese getesteten Szenen ohne Abschwächung oder Ablehnung und ist hier daher die stärkere Wahl für Erwachsenenfiktion. Auch eine abgeschwächte Antwort kann abgerechnet werden. SpicyAPI fügt keinen Inhaltsfilter auf Plattformebene hinzu; legen Sie die fiktive Szene und die Bearbeitungsvorgaben in der System-Nachricht fest.
Welche Version passt
- Neue Text-Integration ohne Erwachseneninhalte: Sonnet 5. Es hat die niedrigsten Preise, ein 1M-Fenster und drei Effort-Stufen.
- Lange Ergebnisse oder erwachsenenorientierte Fiktion: Sonnet 5.5. Es ist das einzige, das in einer Antwort mehr als 64 000 Tokens schreiben kann, das einzige mit
none(kein Nachdenken) und es ist Unzensiert. - Sampling-Steuerung: Bleiben Sie bei einer festgelegten 4.5-Integration oder wechseln Sie für das 1M-Fenster auf 4.6. Erzwungene Funktionsaufrufe ohne Sampling: Sonnet 5 akzeptiert sie zu niedrigeren Preisen; nutzen Sie es statt 5.5, wenn der Aufruf erzwungen werden muss.
- Ein ganzes Manuskript mit 300 000 Tokens in einem Aufruf: Das ist eine Frage von Kontext und Kosten, die der Leitfaden zu langen Manuskripten mit Sonnet 4.6 behandelt.
Preis: Tokenizer und abgerechnete Ausgabe einrechnen
| USD pro Million Tokens | 4.5 | 4.6 | 5 | 5.5 |
|---|---|---|---|---|
| Eingabe | $2.70 | $3 | $1.90 | $2 |
| Eingabe aus dem Cache | $0.27 | $0.30 | $0.19 | $0.20 |
| Ausgabe | $13.50 | $15 | $9.50 | $10 |
| Cache-Schreibvorgänge | $3.30 | $3.75 | $2.375 | $2.50 |
Sonnet 5 und 5.5 nutzen einen neueren Tokenizer. Laut Anthropics Migrationsleitfaden erzeugt derselbe Text je nach Inhalt etwa 30 % mehr Tokens als bei 4.x; vergleichen Sie daher die Kosten pro Aufgabe, nicht pro Token. Für eine Beispielaufgabe mit 20 000 Eingabe- und 2 000 Ausgabe-Tokens auf 4.5 gilt: Nehmen Sie bei 5 und 5.5 für beide Token-Zahlen 30 % mehr an:
| Modell | Abgerechnete Tokens | Kosten |
|---|---|---|
| 4.5 | 20 000 ein, 2 000 aus | $0.081 |
| 4.6 | 20 000 ein, 2 000 aus | $0.090 |
| 5 | etwa 26 000 ein, 2 600 aus | etwa $0.074 |
| 5.5 | etwa 26 000 ein, 2 600 aus | etwa $0.078 |
In diesem Szenario liegt Sonnet 5 etwa 9 % unter 4.5; die Ersparnis gilt nicht für jedes Dokument gleich. Die Ausgabezahlen müssen das abgerechnete Reasoning enthalten. Mit low lässt sich das Nachdenken verringern, aber nicht abschalten; hier bietet nur 5.5 none. Lesen Sie die Nutzung Ihrer tatsächlichen Aufgabe aus, bevor Sie die Schätzung als Budget behandeln.
Die Preise von Sonnet 5.5 liegen etwa 5.3 % über denen von Sonnet 5; das ist der Unterschied bei identischen abgerechneten Zahlen und Cache-Kategorien. Zählen Sie lange Prompts nach einem Tokenizer-Wechsel neu: Ein hypothetischer Anstieg um 30 % würde aus einem Prompt mit 190 000 Tokens 247 000 machen, immer noch unter der Eingabegrenze von 1M, aber mit anderer Rechnung.
Die Bearbeitung im Playground ausprobieren
Nutzen Sie diese kleine Faktenprüfung, bevor Sie einen größeren Workflow migrieren:
Source A: the gallery reopened to staff in April. Source B: the public launch event was in June. Draft: "The gallery reopened to the public in April." Preserve the distinction between staff access and the public event. Return the corrected sentence and one sentence explaining the change.
- Öffnen Sie die oben verlinkte Modellseite von Sonnet 5.5 und wählen Sie Playground. Setzen Sie die beiden Quellen und den Entwurf in die Nutzer-Nachricht und „Edit from the supplied sources only“ als System-Anweisung.
- Verwenden Sie für diese Zeilenkorrektur den Effort
low. Führen Sie sie nach Prüfung der Kosten aus und kontrollieren Sie dann, dass die Antwort April für den Zugang des Personals und Juni für die öffentliche Veranstaltung beibehält, ohne ein genaues Datum zu erfinden. - Probieren Sie denselben Text mit Sonnet 5 für einen günstigeren Redaktions-Workflow ohne Erwachseneninhalte. Lassen Sie den Quelltext unverändert, damit Sie die Bearbeitung selbst beurteilen können.
Eine Version für die Bearbeitung wählen, die Sie tatsächlich liefern
Für die Überarbeitung eines Kapitels mit 700 Wörtern und einem Quellpaket von 20 000 Tokens braucht keine dieser Versionen ihren maximalen Kontext oder ihre maximale Ausgabe. Entscheidend ist, ob die Steuerung der Anfrage und die Eignung für den Inhalt passen. Sonnet 5 ist der preisgünstigere Ausgangspunkt für eine gewöhnliche Bearbeitung. Ein Lektor für Erwachsenenfiktion sollte außerdem die Stufe Gefiltert bedenken, bevor er es zum Standard für das ganze Manuskript macht. Dieselbe Anwendung kann daher für ein nicht explizites Exposé und für die Prüfung einer reifen Szene unterschiedliche Modelle brauchen.
Wenn Sie auf 4.5 oder 4.6 drei alternative Formulierungen wollen, bieten deren Sampling-Einstellungen einen zulässigen Weg, die Erzeugung zu variieren. Das heißt nicht, dass eine höhere Temperatur eine fehlerhafte Handlungslogik repariert. Ein Absatz, in dem eine Figur Informationen hat, die sie noch nicht kennen kann, braucht die Wissensregel und die Quellpassage, nicht mehr Zufall. Erfinden Sie auf 5 oder 5.5 kein gleichwertiges Sampling-Feld. Bitten Sie stattdessen um drei Alternativen mit unterschiedlich benannten Ansätzen: kürzere Dialoge, weniger Exposition oder eine spätere Enthüllung.
Stellen Sie sich eine Bearbeitung mit Tools vor, bei der der Entwurf den Arbeitgeber einer Figur nennt, der aktuelle Eintrag aber in der maßgeblichen Serien-Datenbank steht. Auf 4.5, 4.6 oder 5 kann die verfügbare Tool-Auswahl eine Abfrage erzwingen. Auf 5.5 kann auto eine Antwort ohne die Abfrage liefern. Wenn Ihre Anwendung den Arbeitgeber prüfen muss, führen Sie das Lesen vor der Bearbeitungsanfrage aus oder akzeptieren Sie keine Antwort ohne das erforderliche Abfrageergebnis. Ein Satz im Prompt gibt auto nicht dieselbe Garantie wie ein erzwungener Aufruf. Native Beispiele für thinking oder output_config aus Anthropics Migrationsleitfaden sollten Sie nicht unverändert in diese Anfrage übernehmen.
Das aussagekräftige Ergebnis des Beispiels ist ein Satz, der sowohl den Zugang des Personals im April als auch den öffentlichen Start im Juni bewahrt. „The gallery reopened in June“ ist zu allgemein, wenn das Personal schon im April hineinkonnte. „The gallery held its public launch in June, after reopening to staff in April“ ist eine akzeptable, von Menschen geschriebene Korrektur. Eine neue Version, die hübschere Formulierungen liefert, aber diese Unterscheidung verliert, hat die Bearbeitung nicht verbessert.
Die Anfrage migrieren
Eine 4.5-Integration nutzt vielleicht temperature: 0.2, top_p: 0.9 und eine erzwungene Funktion submit_edit. Der Wechsel auf 5 lehnt die Sampling-Felder ab; der Wechsel auf 5.5 lehnt Sampling und erzwungene Tool-Auswahl ab.
- Sampling auf 5 und 5.5 entfernen. Löschen Sie
temperature,top_pundtop_kaus diesen Anfragen. Nicht unterstützte Felder liefern400 unsupported_parameter, bevor eine Aufgabe erstellt oder berechnet wird; führen Sie pro Modell eine eigene Positivliste, statt ein gemeinsames Parameterobjekt zu senden. - Auf 5.5 ein automatisches Tool nutzen. Behalten Sie die Funktion
submit_editbei und fordern Sie sie im System-Prompt an, setzen Sie abertool_choiceaufauto. Es gibt hier keinresponse_format, und 5.5 kann die Funktion überspringen; validieren Sie daher die zurückgegebenen Argumente. Wenn Ihr Workflow einen erzwungenen Aufruf verlangt, unterstützt Sonnet 5 ihn zu niedrigeren Preisen. - Platz für die Antwort lassen. Reasoning verbraucht einen Teil von
max_tokens: Eine Obergrenze von 1 024 Tokens kann erschöpft sein, bevor sichtbarer Text erscheint. Nutzen Sielowfür eine Zeilenkorrektur undhighbei widersprüchlichen Quellen. Sonnet 5 endet beihigh;xhighundmaxvon 5.5 akzeptiert es nicht. - Längere Bearbeitungen streamen. Das kurze Beispiel unten nutzt eine normale JSON-Antwort. Große Aufrufe können das Limit des Netzwerkrands von etwa 100 Sekunden überschreiten; nutzen Sie dafür Streaming und setzen Sie Text und Tool-Argumente getrennt zusammen. Der Leitfaden zu Text und Streaming behandelt Abschluss-Ereignisse und Nutzung.
- Die Unterhaltung mit einer Nutzer-Nachricht beenden. Verlegen Sie einen beabsichtigten Einstieg oder Formathinweis in die System-Anweisung, statt beim Wechsel weg von 4.5 mit einem Assistant-Prefill zu enden.
Auch die Effort-Namen ändern ihre Bedeutung. Anthropic hat die Stufen von 5.5 neu kalibriert, daher ist high nicht über Versionen hinweg gleichwertig. SpicyAPI setzt sowohl 5 als auch 5.5 standardmäßig auf medium, während Anthropics native 5.5-API standardmäßig high nutzt. Für saubere kurze Antworten ist low besser als none: Mit none kann 5.5 die Frage im sichtbaren Text durcharbeiten. none bleibt nützlich für schnelle Beiträge in der Rolle.
Die Bearbeitung ausführen und validieren
Speichern Sie dies als sonnet_edit.py, setzen Sie SPICY_API_KEY aus API Keys und führen Sie dann python3 sonnet_edit.py aus. Es nutzt die Standardbibliothek von Python. Sonnet 5.5 dient hier dazu, die Migration auf automatische Tools zu zeigen; wenn Sie nur das Modell auf Sonnet 5 ändern, werden diese Felder ebenfalls akzeptiert. Dies ist ein kostenpflichtiger Textaufruf, keine Medien-Generierungsaufgabe. Die Chat-Rezepte behandeln Multi-Turn- und Streaming-Integrationen.
import json
import os
import sys
import uuid
from urllib.error import HTTPError
from urllib.request import Request, urlopen
def read_reply(resp: dict, *, require_edit_tool: bool = False) -> dict:
if resp.get("error"):
raise RuntimeError("API error")
choices = resp.get("choices") or []
if not choices:
raise RuntimeError("no choices in response")
choice = choices[0]
finish = choice.get("finish_reason")
if finish not in {"stop", "tool_calls"}:
raise RuntimeError(f"incomplete or rejected reply: {finish}")
msg = choice.get("message") or {}
calls = msg.get("tool_calls") or []
if calls:
if len(calls) != 1:
raise RuntimeError("expected one submit_edit call")
call = calls[0]
if call.get("type") != "function" or not isinstance(call.get("id"), str) or not call["id"]:
raise RuntimeError("missing function type or call ID")
fn = call.get("function") or {}
if fn.get("name") != "submit_edit":
raise RuntimeError("unexpected function")
args = json.loads(fn.get("arguments") or "")
if not isinstance(args, dict) or any(
not isinstance(args.get(key), str) or not args[key].strip()
for key in ("sentence", "reason")
):
raise RuntimeError("sentence and reason must be nonempty strings")
return {"kind": "tool", "call": calls[0], "edit": args}
if require_edit_tool:
raise RuntimeError("model skipped submit_edit")
text = msg.get("content")
if finish != "stop" or not isinstance(text, str) or not text.strip():
raise RuntimeError("empty or unfinished text")
return {"kind": "text", "text": text}
def main() -> None:
body = {
"model": "anthropic/claude-sonnet-5.5/chat",
"reasoning_effort": "low",
"max_tokens": 8192,
"messages": [
{"role": "system", "content": "Edit from the supplied sources only. Reply by calling submit_edit."},
{"role": "user", "content": 'Source A: the gallery reopened to staff in April. Source B: the public launch event was in June. Draft: "The gallery reopened to the public in April." Keep the staff/public distinction.'},
],
"tools": [{"type": "function", "function": {
"name": "submit_edit",
"description": "Return the corrected sentence and the reason.",
"parameters": {
"type": "object",
"properties": {"sentence": {"type": "string"}, "reason": {"type": "string"}},
"required": ["sentence", "reason"],
},
}}],
"tool_choice": "auto",
}
request = Request(
"https://api.spicyapi.ai/v1/chat/completions",
data=json.dumps(body).encode(),
headers={
"Authorization": f"Bearer {os.environ['SPICY_API_KEY']}",
"Content-Type": "application/json",
"Idempotency-Key": str(uuid.uuid4()),
"User-Agent": "sonnet-edit-example/1.0",
},
)
try:
with urlopen(request, timeout=80) as response:
task_id = response.headers.get("X-Spicy-Task-Id")
if task_id:
print(f"Task ID: {task_id}", file=sys.stderr)
result = read_reply(json.load(response), require_edit_tool=True)
except HTTPError as error:
task_id = error.headers.get("X-Spicy-Task-Id")
print(f"HTTP {error.code}; task ID: {task_id or 'not returned'}", file=sys.stderr)
raise
print(json.dumps(result["edit"], indent=2))
if __name__ == "__main__":
main()Eine gültige Bearbeitung behält April für den Zugang des Personals und Juni für die öffentliche Veranstaltung. Der Parser lehnt eine leere Antwort, eine Abschneidung und einen übersprungenen oder fehlerhaften Funktionsaufruf ab; gültige Argumente brauchen trotzdem diese Faktenprüfung. Ein Migrationsbericht zu Sonnet beschreibt einen leeren Fallback, der Nutzer als erfolgreiches Ergebnis erreicht.
Ist finish_reason gleich length, geben Sie für einen neuen Aufruf mehr Ausgabeplatz oder eine kleinere Aufgabe vor. Sichern Sie jedes Teilergebnis und die Task-ID, bevor Sie erneut Geld ausgeben. Geben Sie in einem mehrstufigen Tool-Workflow das Tool-Ergebnis mit der passenden tool_call_id zurück, bevor die nächste Runde beginnt. Nehmen Sie in Ihre Migrationsprüfungen einen Widerspruch, einen unveränderten Fakt, eine „unknown“-Antwort und ein „no match“-Tool-Ergebnis auf; prüfen Sie bei längeren Extraktionen, dass die erforderlichen Abschnitte vorhanden und das JSON gültig ist.
Einen Agent die Integration vorbereiten lassen
Nutzen Sie einen Agent, wenn er einen bestehenden Editor anpassen soll, statt dass Sie eine Anfrage selbst einfügen. Behalten Sie in seiner Aufgabe dieselben Galerie-Quellen und denselben Entwurf bei.
- CLI: Lassen Sie ihn nach dem Setzen von
SPICY_API_KEYden gewählten Vertrag mitnpx @spicyapi/cli models get anthropic/claude-sonnet-5.5/chat --jsonprüfen. Der CLI-Leitfaden dokumentiert diesen schreibgeschützten Befehl. - MCP: Fragen Sie, sobald der SpicyAPI-MCP-Server verbunden ist: "Use
spicyapi_model_getforanthropic/claude-sonnet-5.5/chat, then adapt my gallery edit to its accepted effort and tool-choice settings. Prepare the request without running it." - Skill: Installieren Sie den offiziellen SpicyAPI-Skill mit
npx skills add spicyapi-ai/spicy-skill, starten Sie eine neue Agent-Sitzung und fragen Sie dann: "Use the SpicyAPI Skill to migrate my gallery editor from Sonnet 4.5 to 5.5. Keep the source facts and validatesubmit_edit; show me the request before calling it."
CLI und MCP liefern die Modellerkennung für diesen Text-Workflow; die Bearbeitung selbst läuft über /v1/chat/completions mit dem Programm oben oder dem HTTP-Client Ihres Agent. Setzen Sie ein Ausgabenlimit für den API-Schlüssel, bevor Sie wiederholte Bearbeitungen delegieren.
FAQ
Ist Sonnet 5.5 günstiger als Sonnet 5?
Nein. Es kostet pro Token etwa 5.3 % mehr ($2 und $10 gegenüber $1.90 und $9.50). Eine Aufgabe kostet nur dann so viel mehr, wenn abgerechnete Token-Zahlen und Cache-Kategorien identisch sind. Der Aufpreis bringt die Antwortobergrenze von 128 000 Tokens, die Effort-Stufen none und xhigh sowie die Stufe Unzensiert.
Ist Sonnet 5.5 besser als Opus 5.5?
Nicht grundsätzlich. Opus 5.5 kostet bei SpicyAPI $3.60 für Eingabe und $18 für Ausgabe, etwa das 1.8-Fache von Sonnet 5.5, bei gleichem 1M-Fenster und derselben Ausgabeobergrenze von 128 000. Beginnen Sie mit Sonnet 5.5 und wechseln Sie nur nach oben, wenn Ihre eigenen schwierigsten Passagen falsch zurückkommen; dieser Weg wird im Leitfaden „Claude Opus 5.5 für NSFW-Rollenspiele“ behandelt.
Kann ich temperature auf Sonnet 5.5 behalten?
Nein. Nutzen Sie den Reasoning-Effort für die Tiefe und legen Sie Tonregeln im System-Prompt fest. Wenn Sie Sampling-Steuerung brauchen, sind 4.5 und 4.6 die Optionen.









