Cette page décrit les attributs des fonctions tracées avec le décorateur
@weave.op. Si vous instrumentez un agent avec le SDK d’agent Weave, définissez plutôt des attributs et des événements sur les spans d’agent (Turn, LLM, Tool et SubAgent). Voir Définir des attributs et des événements sur les spans d’agent.- déploiement ;
- locataire ;
- expérience.
- Attributs par appel : utilisez le gestionnaire de contexte
weave.attributes()pour ajouter des métadonnées à des opérations ou à des blocs de code précis. - Attributs globaux : utilisez le champ
global_attributespour définir, dès l’initialisation, des attributs qui s’appliquent à toutes les traces et évaluations de votre projet.
Attributs par appel
Le gestionnaire de contexteweave.attributes() vous permet d’ajouter des métadonnées à certaines opérations tracées. Utilisez-le pour associer des informations contextuelles à des appels de fonction ou à des runs d’évaluation précis.
- Python
- TypeScript
weave.attributes(). Pour une même clé, la valeur du contexte interne remplace celle du contexte externe :
- Python
- TypeScript
Attributs globaux
Les attributs globaux définis lors de l’initialisation de Weave s’appliquent automatiquement à toutes les traces et évaluations de votre projet. Ils permettent de propager des métadonnées communes à l’ensemble du projet, comme l’environnement, la version du déploiement ou des informations sur l’équipe.- Python
- TypeScript
Combiner attributs globaux et attributs par appel
Vous pouvez combiner attributs globaux et attributs par appel. Lorsqu’ils partagent la même clé, les attributs par appel remplacent les attributs globaux :- Python
- TypeScript
Obtenir les attributs pendant l’exécution
Lors de l’exécution, vous pouvez inspecter les attributs appliqués à un Appel. Cela s’avère utile pour déboguer les métadonnées que Weave joint, ou lorsque votre code doit adopter un comportement différent selon des informations contextuelles définies par un appelant externe.- Python
- TypeScript
L’exemple suivant utilise le décorateur Weave pour journaliser la fonction Ce code produit la sortie suivante :
process_data, configure les attributs à journaliser, puis les renvoie lors de l’exécution.weave.get_current_call() ne fonctionne qu’à l’intérieur d’une fonction décorée avec @weave.op. En dehors d’un op, elle renvoie None.