Messages.create() d’Anthropic.
Ce guide vous montre comment capturer les traces, encapsuler vos propres fonctions sous forme d’ops, créer un Model réutilisable pour vos expérimentations et suivre l’utilisation d’outils lorsque vous travaillez avec le SDK Anthropic. Appliquez ces approches pour déboguer, comparer et améliorer par itérations vos applications basées sur Claude, sans écrire de code de journalisation personnalisé.
Traces
Weave capture automatiquement les traces du SDK Anthropic dès que vous ajoutezweave.init("your-team-name/your-project-name") à votre code. Si vous ne passez pas de nom d’équipe en argument de weave.init(), Weave journalise la sortie dans votre entity W&B par défaut. Si vous ne spécifiez pas de nom de projet, l’initialisation de Weave échoue.
Les exemples suivants montrent comment intégrer Weave à un appel de base à Anthropic :
- Python
- TypeScript
weave.init() dans votre code, Weave capture automatiquement les informations de traçage et affiche des liens. Cliquez sur ces liens pour consulter les traces dans l’interface Weights & Biases.
Encapsuler avec vos propres ops
Siweave.init() suffit à capturer les appels au SDK Anthropic, décorer vos propres fonctions avec des ops vous permet d’obtenir des traces plus riches, qui incluent la logique de votre application autour de chaque appel de modèle.
Les ops Weave versionnent automatiquement votre code au fil de vos expériences et capturent ses entrées et ses sorties. Décorez une fonction avec @weave.op() en Python, ou encapsulez-la avec weave.op() en TypeScript, pour appeler Anthropic.messages.create(): Weave suit alors les entrées et les sorties à votre place.
Les exemples suivants montrent comment suivre une fonction :
- Python
- TypeScript
weave.op(), Weave capture son code, son entrée et sa sortie. Vous pouvez utiliser des ops pour suivre n’importe quelle fonction, y compris des fonctions imbriquées.
Créer un Model pour faciliter l’expérimentation
Une fois le traçage des appels individuels en place, l’étape suivante consiste à regrouper les paramètres associés afin de pouvoir comparer différentes configurations.
La classe
weave.Model est disponible uniquement dans le SDK Python de Weave. En TypeScript, utilisez le wrapper weave.op() pour suivre des fonctions avec des paramètres structurés.Model vous permet de capturer et d’organiser les détails expérimentaux de votre application, comme votre prompt système ou le modèle que vous utilisez. Vous pouvez ainsi organiser et comparer les différentes itérations de votre application.
En plus d’assurer la gestion des versions du code et de capturer les entrées et les sorties, les modèles capturent des paramètres structurés qui contrôlent le comportement de votre application. Vous pouvez ainsi identifier plus facilement les paramètres les plus efficaces. Vous pouvez également utiliser les modèles Weave avec serve et les évaluations.
Dans l’exemple suivant, vous pouvez faire varier model et temperature :
JokerModel. Vous pouvez ainsi associer les données de trace aux modifications de votre code, ce qui vous aide à déterminer quelles configurations conviennent le mieux à votre cas d’usage.
Outils (appel de fonctions)
En plus des messages standard, Weave instrumente l’interface d’utilisation d’outils d’Anthropic, ce qui vous permet de tracer vos flux de travail agentiques de bout en bout. Anthropic fournit une interface d’outils qui permet à Claude de demander des appels de fonctions. Weave suit automatiquement les définitions d’outils, les requêtes d’utilisation d’outils et les résultats d’outils tout au long de la conversation. Les exemples tronqués suivants illustrent une configuration d’outils Anthropic :- Python
- TypeScript
