- Python
- TypeScript
Pour créer une op, décorez une fonction Python avec L’appel d’une op crée une nouvelle version de l’op si le code a changé depuis le dernier appel, et journalise les entrées et les sorties de la fonction.Les fonctions que vous décorez 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 mettre en service ou déployer des Ops à l’aide du toolbelt de Weave.Personnaliser les noms d’affichage
- Python
- TypeScript
Vous pouvez personnaliser le nom d’affichage de l’op en définissant le paramètre
name dans le décorateur @weave.op :Appliquer des types et des couleurs
kind et color aux décorateurs @weave.op dans votre code. Par exemple, le code suivant attribue le type LLM et la couleur blue à la fonction parente, ainsi que le type tool et la couleur red à une fonction imbriquée :
- Python
- TypeScript

kind disponibles sont :
agentllmtoolsearch
color disponibles sont :
redorangeyellowgreenbluepurple
Personnaliser les entrées et sorties enregistrées
- Python
- TypeScript
Pour modifier les données que Weave enregistre sans modifier la fonction d’origine (par exemple, pour masquer des données sensibles), passez
postprocess_inputs et postprocess_output au décorateur op.postprocess_inputs prend en entrée un dict où les clés sont les noms des arguments et les valeurs, les valeurs des arguments, puis renvoie un dict contenant les entrées transformées.postprocess_output prend en entrée n’importe quelle valeur normalement renvoyée par la fonction 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’une op, définissez le paramètre Lorsque Weave n’échantillonne pas l’appel d’une op :
tracing_sample_rate dans le décorateur @weave.op. Utilisez cette option pour les Ops à haute fréquence lorsque vous n’avez besoin de tracer qu’un sous-ensemble des appels.Collectez toutes les traces pendant le développement de l’agent afin de mieux définir et comprendre son comportement. En production, configurez l’échantillonnage des traces pour réduire les coûts tout en conservant l’observabilité du comportement de votre agent.Weave applique les taux d’échantillonnage uniquement aux Ops de plus haut niveau. Si une op imbriquée possède un taux d’échantillonnage mais qu’une op parente l’appelle d’abord, Weave ignore le taux d’échantillonnage de l’op imbriquée.- La fonction s’exécute normalement.
- Weave ne reçoit aucune donnée de trace.
- Weave ne trace pas les Ops enfants pour cet appel.
Contrôler l’affichage des liens d’appel
WEAVE_PRINT_CALL_LINK sur false. Utilisez ce réglage pour réduire la verbosité de la sortie et alléger vos journaux.
Supprimer un Op
- Python
- TypeScript
Pour supprimer une version d’un Op, appelez Tenter d’accéder à un Op supprimé renvoie une erreur.
.delete() sur la référence de l’Op.