Entwickeln mit erweitertem Denken
Erweitertes Denken gibt 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 er seine internen Überlegungen ausgibt. Claude integriert Erkenntnisse aus diesen Überlegungen, bevor er eine endgültige Antwort formuliert.
Die API-Antwort enthält sowohl thinking
- als auch text
-Inhaltsblöcke.
In mehrteiligen Gesprächen sind nur Denkblöcke, die mit einer Tool-Verwendungssitzung oder einem assistant
-Turn 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 für Claude während des Samplings nicht sichtbar und werden nicht als Eingabe-Token berechnet.
Implementierung von erweitertem Denken
Fügen Sie den thinking
-Parameter und ein festgelegtes Token-Budget für erweitertes Denken zu Ihrer API-Anfrage hinzu.
Der budget_tokens
-Parameter 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
.
Die API-Antwort enthält sowohl Denk- als auch Textinhaltsblöcke:
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 Durchgängen weglassen oder die API sie für Sie entfernen lassen, wenn Sie sie zurücksenden. - 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 an Sie 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, während die Sicherheitsrichtlinien eingehalten werden.
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 mehrteiligen Gespräch an die API zurückgeben, müssen Sie den vollständigen, unveränderten Block für den letzten Assistant-Turn 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.
Empfehlungen für den Umgang mit redigierten Denkblöcken in der Produktion
Beim Aufbau kundenorientierter Anwendungen, die erweitertes Denken verwenden:
- Beachten Sie, dass redigierte Denkblöcke verschlüsselte Inhalte enthalten, die nicht menschenlesbar sind
- Erwägen Sie eine einfache Erklärung wie: “Einige von Claudes internen Überlegungen wurden aus Sicherheitsgründen automatisch verschlüsselt. Dies hat keinen Einfluss auf die Qualität der Antworten.”
- Wenn Sie Denkblöcke Benutzern zeigen, können Sie redigierte Blöcke herausfiltern und normale Denkblöcke beibehalten
- Seien Sie transparent darüber, dass die Verwendung von erweiterten Denkfunktionen gelegentlich dazu führen kann, dass einige Überlegungen verschlüsselt werden
- Implementieren Sie eine angemessene Fehlerbehandlung, um redigierte Denkprozesse ohne Beeinträchtigung Ihrer Benutzeroberfläche zu verarbeiten
Streaming von erweitertem Denken
Wenn Streaming aktiviert ist, erhalten Sie Denkinhalte über thinking_delta
-Events. So gehen Sie mit Streaming und Denken um:
Beispiel für Streaming-Ausgabe:
Über das Streaming-Verhalten mit Denken
Wenn Sie Streaming mit aktiviertem Denken verwenden, werden Sie möglicherweise bemerken, dass Text manchmal in größeren Blöcken abwechselnd mit kleinerer, Token-für-Token-Lieferung ankommt. Dies ist erwartetes Verhalten, besonders bei Denkinhalten.
Das Streaming-System muss Inhalte für optimale Leistung in Batches verarbeiten, was zu diesem “stückweisen” Liefermuster führen kann. Wir arbeiten kontinuierlich daran, diese Erfahrung zu verbessern, wobei zukünftige Updates darauf abzielen, Denkinhalte flüssiger zu streamen.
redacted_thinking
-Blöcke haben keine zugehörigen Deltas und werden als einzelnes Event gesendet.
[Rest of translation continues in next part due to length…]
Was this page helpful?