

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Konserviertes Denken
<a name="claude-messages-thinking-block-binding"></a>

## -Übersicht
<a name="claude-messages-thinking-block-binding-overview"></a>

In Claude Fable 5.1 ist jeder Denkblock an die Konversation gebunden, die ihn ausgelöst hat. Die API überprüft, ob die Systemaufforderung, die Tool-Liste und alle Nachrichten vor dem Block unverändert sind, wenn Sie diesen Block in einer späteren Anfrage erneut abspielen. Dies schützt die Integrität der Claude Argumentation: Eine Argumentation, die unter einem Satz von Anweisungen erstellt wurde, kann nicht unter einem anderen Satz wiederholt werden.

Wenn Ihr Gurtzeug den Gesprächsverlauf genau so zurücksendet, wie er ihn empfangen hat, ändert sich für Sie nichts. Wenn du den Verlauf zwischen Anfragen bearbeitest — indem du Erinnerungen pro Spielzug einfügst, ältere Spielzüge zusammenfasst oder die Systemaufforderung neu erstellst — lehnt die API die Anfrage standardmäßig ab.

**Was wird bei der Wiederholung überprüft **


| **Prüfen ** | **Beschreibung** | 
| --- | --- | 
| Modell | Das Model, das den Block liest, darf die Gedanken des Produzenten lesen. Ein Modell kann das Denken eines anderen Modells nicht lesen, es sei denn, beide sind explizit kompatibel. Diese Prüfung gilt für jedes denkfähige Modell. | 
| Präfix für Konversation | Die Systemaufforderung auf oberster Ebene, die Tools und der gesamte Nachrichteninhalt vor dem Block sind gegenüber der Anforderung, die ihn ausgelöst hat, unverändert. Claude Fable 5.1 führt diese Prüfung durch. Claude Mythos 5.1 zeichnet dieselbe Signatur auf, führt sie aber nicht aus. | 

**Anmerkung**  
Ein Denkblock, dessen Signatur geändert wurde oder nicht entschlüsselt werden kann, gibt immer 400 zurück, unabhängig von diesen Prüfungen oder dem Beta-Wert.

## Das block\_binding-Anforderungsobjekt (Beta)
<a name="claude-messages-thinking-block-binding-request-object"></a>

Fügen Sie dem `thinking` Objekt etwas `block_binding` hinzu und fügen Sie den Beta-Wert hinzu, `anthropic_beta` um zu steuern, was passiert, wenn ein Präfix erkannt wird, das nicht übereinstimmt:

```
{
    "anthropic_version": "bedrock-2023-05-31",
    "anthropic_beta": ["thinking-binding-controls-2026-08-01"],
    "max_tokens": 16000,
    "thinking": {
        "type": "adaptive",
        "block_binding": {
            "mismatch_behavior": "drop_block"
        }
    },
    "messages": [{ "role": "user", "content": "Your prompt here" }]
}
```

`block_binding`akzeptiert ein Feld, das steuert`mismatch_behavior`, was die API mit einem Denkblock macht, der die Überprüfung des Konversationspräfixes nicht besteht. Ohne den Beta-Wert gesendet, `block_binding` gibt 400 zurück. Falsch formatierte Werte geben außerdem eine 400 zurück, die das Feld benennt.

## Steuerung des Verhaltens bei Nichtübereinstimmungen
<a name="claude-messages-thinking-block-binding-mismatch-behavior"></a>


| **Wert** | **Verhalten bei einer fehlgeschlagenen Prüfung ** | 
| --- | --- | 
| "error" (Standard) | Die Anfrage schlägt mit der 400 invalid\_request\_error Benennung des fehlgeschlagenen Blocks fehl. Kann nicht erneut versucht werden; wird vor allen Streaming-Ereignissen zurückgegeben. | 
| "drop\_block" | Die Anfrage ist mit 200 erfolgreich. Der fehlgeschlagene Block wird vor dem Modell entfernt, zusammen mit jedem späteren Denkblock in der Konversation, und jeder entfernte Block wird in input\_transformations aufgeführt. | 

Keiner der Werte ändert die Modellprüfung, die immer ausfällt.

## Das Antwortarray input\_transformations
<a name="claude-messages-thinking-block-binding-input-transformations"></a>

Wenn der Beta-Wert gesendet wird, kann die Antwort ein `input_transformations` Array der obersten Ebene enthalten, das alle Blöcke beschreibt, die entfernt wurden:

```
{
    "type": "message", "role": "assistant", "content": [ ... ],
    "stop_reason": "end_turn",
    "usage": {"input_tokens": 18234, "output_tokens": 911},
    "input_transformations": [
        {"type": "thinking_dropped", "path": "messages.3.content.0", "reason": "prefix_binding_mismatch"}
    ]
}
```

Dies ist ein Array der obersten Ebene (ein Geschwisterfeld von`usage`), das nur mit dem Beta-Wert vorhanden ist, `[]` wenn keine Blöcke entfernt wurden und ansonsten nicht vorhanden waren. Jeder Eintrag enthält ein Element, das den entfernten Block `path` identifiziert, und ein `reason` — eins von `model_binding_mismatch` oder. `prefix_binding_mismatch` Bei Streaming-Antworten erscheint das Array innerhalb des Nachrichtenobjekts innerhalb des `message_start` Ereignisses. Entfernte Blöcke zählen nicht dazu`input_tokens`.

## Fehlermeldungen
<a name="claude-messages-thinking-block-binding-error-responses"></a>

`mismatch_behavior`Ist dies der Fall`"error"`, gibt ein nicht übereinstimmendes Präfix Folgendes zurück:

```
{
    "type": "error",
    "error": {
        "type": "invalid_request_error",
        "message": "messages.3.content.0: Invalid `signature` in `thinking` block. The block is bound to a different conversation. Remove the block, or set `thinking.block_binding.mismatch_behavior` to \"drop_block\"."
    }
}
```

Dieser Fehler ist für diese Anfrage dauerhaft — eine automatische Wiederholungsschleife löscht ihn nicht. Wenn Sie ihn erwischen, entfernen Sie entweder alle Denkblöcke aus dem Verlauf und versuchen Sie es erneut, oder versuchen Sie es erneut mit dem `mismatch_behavior: "drop_block"` Beta-Header.

## Anleitung für Multi-Turn- und Agentenanwendungen
<a name="claude-messages-thinking-block-binding-guidance"></a>
+ Spielen Sie den Assistenten genau so ab, wie sie zurückgegeben wurden, und sorgen Sie dafür, dass die System-Eingabeaufforderung und die Tools während einer Konversation stabil bleiben.
+ Vermeiden Sie einmalige Inhalte, die in früheren Runden eingefügt werden (z. B. eine vorübergehende Systemnachricht oder ein Erinnerungstext, der an die letzte Runde des Benutzers angehängt wird). Diese ändern das Gesprächspräfix und machen spätere Denkblockaden ungültig. Verwenden Sie stattdessen Systemnachrichten während einer Konversation.
+ Wenn Ihre Anwendung den Gesprächsverlauf neu schreibt, löschen Sie Denkblockaden ab dem neu geschriebenen Punkt oder setzen Sie auf. `mismatch_behavior` `"drop_block"`
+ Wenn Sie die Converse-API mit einem Modell verwenden, das sie unterstützt, geben Sie den Betawert durch und durch. `thinking.block_binding` `additionalModelRequestFields`