- Python
- TypeScript
Pour créer un op, décorez une fonction Python avec L’appel d’un op crée une nouvelle version de l’op si le code a été modifié depuis le dernier appel, et journalise les entrées et les sorties de la fonction.Les fonctions décorées avec
weave.op().@weave.op() se comportent normalement (sans gestion des versions du code ni suivi) si vous n’appelez pas weave.init('your-project-name') avant de les appeler.Vous pouvez servir ou déployer des ops à l’aide des outils de Weave.Personnaliser les noms d’affichage
Un nom d’affichage personnalisé permet d’identifier plus facilement un op dans l’interface Weights & Biases, en particulier lorsque le nom de la fonction est générique ou généré automatiquement.- Python
- TypeScript
Pour personnaliser le nom d’affichage de l’op, définissez le paramètre
name dans le décorateur @weave.op :Appliquer des types et des couleurs
Pour mieux organiser vos ops dans l’interface Weights & Biases, appliquez des types et des couleurs personnalisés en ajoutant les argumentskind et color aux décorateurs @weave.op de votre code. Par exemple, le code suivant attribue à la fonction parente la valeur LLM pour kind et blue pour color, et à une fonction imbriquée la valeur tool pour kind et red pour color :
- Python
- TypeScript

kind sont :
agentllmtoolsearch
color sont :
redorangeyellowgreenbluepurple
Personnaliser les entrées et sorties journalisées
- Python
- TypeScript
Pour modifier les données que Weave journalise sans toucher à la fonction d’origine (par exemple, pour masquer des données sensibles), passez
postprocess_inputs et postprocess_output au décorateur d’op.postprocess_inputs accepte un dict dont les clés sont les noms des arguments et les valeurs, les valeurs de ces arguments, puis renvoie un dict contenant les entrées transformées.postprocess_output accepte n’importe quelle valeur que la fonction renverrait normalement et renvoie la sortie transformée.Contrôler le taux d’échantillonnage
- Python
- TypeScript
Pour contrôler la fréquence à laquelle Weave trace les appels d’un op, définissez le paramètre Lorsque Weave n’échantillonne pas l’appel d’un op :
tracing_sample_rate dans le décorateur @weave.op. Cette option est utile pour les ops appelés très fréquemment, pour lesquels il suffit de tracer une partie des appels.Collectez toutes les traces pendant le développement de l’agent afin de mieux façonner et comprendre son comportement. En production, configurez l’échantillonnage des traces pour réduire les coûts tout en préservant l’observabilité du comportement de votre agent.Weave applique les taux d’échantillonnage uniquement aux ops de plus haut niveau. Si un op imbriqué possède un taux d’échantillonnage mais qu’il est d’abord appelé par un op parent, Weave ignore le taux d’échantillonnage de l’op imbriqué.- La fonction s’exécute normalement.
- Weave ne reçoit aucune donnée de trace.
- Weave ne trace pas les ops enfants de cet appel.
Contrôler l’affichage des liens d’Appel
Par défaut, Weave affiche un lien vers chaque Appel au moment où il le journalise. Pour ne plus afficher les liens d’Appel pendant la journalisation, définissez la variable d’environnementWEAVE_PRINT_CALL_LINK sur false. Cela permet de réduire la verbosité de la sortie et d’alléger vos journaux.
Supprimer un op
Supprimer une version d’un op la retire de votre projet. Utilisez cette opération pour faire le ménage parmi les versions obsolètes ou superflues.- Python
- TypeScript
Pour supprimer une version d’un op, appelez Toute tentative d’accès à un op supprimé renvoie une erreur.
.delete() sur la réf. de l’op.