Entwickeln mit erweitertem Denken
Erweitertes Denken verleiht Claude 3.7 Sonnet verbesserte Denkfähigkeiten für komplexe Aufgaben und bietet gleichzeitig Transparenz in seinen schrittweisen Denkprozess, bevor er seine endgültige Antwort liefert.
Wie erweitertes Denken funktioniert
Wenn erweitertes Denken aktiviert ist, erstellt Claude thinking
-Inhaltsblöcke, in denen es seine internen Überlegungen ausgibt. Claude integriert die Erkenntnisse aus diesen Überlegungen, bevor es eine endgültige Antwort formuliert.
Die API-Antwort enthält sowohl thinking
- als auch text
-Inhaltsblöcke.
In Gesprächen mit mehreren Runden sind nur Denkblöcke, die mit einer Tool-Verwendungssitzung oder einer assistant
-Runde in der letzten Nachrichtenposition verbunden sind, für Claude sichtbar und werden als Eingabe-Token berechnet; Denkblöcke, die mit früheren assistant
-Nachrichten verbunden sind, sind nicht sichtbar für Claude während des Samplings und werden nicht als Eingabe-Token berechnet.
Implementierung von erweitertem Denken
Fügen Sie den Parameter thinking
und ein festgelegtes Token-Budget für erweitertes Denken zu Ihrer API-Anfrage hinzu.
Der Parameter budget_tokens
bestimmt die maximale Anzahl von Tokens, die Claude für seinen internen Denkprozess verwenden darf. Größere Budgets können die Antwortqualität verbessern, indem sie eine gründlichere Analyse für komplexe Probleme ermöglichen, obwohl Claude möglicherweise nicht das gesamte zugewiesene Budget nutzt, besonders bei Bereichen über 32K.
Ihr budget_tokens
muss immer kleiner sein als die angegebenen max_tokens
.
Verstehen von Denkblöcken
Denkblöcke repräsentieren Claudes internen Denkprozess. Um Claude zu ermöglichen, Probleme mit minimalen internen Einschränkungen zu bearbeiten und gleichzeitig unsere Sicherheitsstandards und zustandslosen APIs aufrechtzuerhalten, haben wir Folgendes implementiert:
- Denkblöcke enthalten ein
signature
-Feld. Dieses Feld enthält ein kryptographisches Token, das bestätigt, dass der Denkblock von Claude generiert wurde, und wird überprüft, wenn Denkblöcke an die API zurückgegeben werden. Beim Streaming von Antworten wird die Signatur über einsignature_delta
innerhalb einescontent_block_delta
-Events kurz vor demcontent_block_stop
-Event hinzugefügt. Es ist nur dann unbedingt erforderlich, Denkblöcke zurückzusenden, wenn Tool-Verwendung mit erweitertem Denken genutzt wird. Andernfalls können Sie Denkblöcke aus vorherigen Runden weglassen oder die API sie für Sie entfernen lassen. - Gelegentlich werden Claudes interne Überlegungen von unseren Sicherheitssystemen markiert. In diesem Fall verschlüsseln wir einige oder alle
thinking
-Blöcke und geben sie alsredacted_thinking
-Block zurück. Diese redigierten Denkblöcke werden entschlüsselt, wenn sie an die API zurückgegeben werden, sodass Claude seine Antwort ohne Kontextverlust fortsetzen kann. thinking
- undredacted_thinking
-Blöcke werden vor dentext
-Blöcken in der Antwort zurückgegeben.
Hier ist ein Beispiel, das sowohl normale als auch redigierte Denkblöcke zeigt:
Das Auftreten von redigierten Denkblöcken in Ihrer Ausgabe ist erwartetes Verhalten. Das Modell kann diese redigierten Überlegungen weiterhin nutzen, um seine Antworten zu informieren und gleichzeitig Sicherheitsrichtlinien einzuhalten.
Wenn Sie die Handhabung redigierter Denkblöcke in Ihrer Anwendung testen müssen, können Sie diese spezielle Testzeichenfolge als Prompt verwenden: ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Wenn Sie thinking
- und redacted_thinking
-Blöcke in einem Gespräch mit mehreren Runden an die API zurückgeben, müssen Sie den vollständigen unveränderten Block für die letzte Assistenten-Runde an die API zurückgeben.
Dies ist entscheidend für die Aufrechterhaltung des Denkflusses des Modells. Wir empfehlen, immer alle Denkblöcke an die API zurückzugeben. Weitere Details finden Sie im Abschnitt Denkblöcke bewahren.
[Rest of translation continues in the same detailed manner, preserving all formatting, technical terms, and component tags exactly as in the original…]
Was this page helpful?