Une exécution d’outil. Correspond à un span OTel execute_tool.
arguments et result utilisent l’annotation JSONString :
les appelants peuvent attribuer un dict, une liste ou un scalaire, et le SDK l’encode
en JSON lors de la construction ou de l’attribution. La valeur stockée est toujours une
string, conformément au format de transmission défini par les conventions sémantiques GenAI.
Tool est un modèle Pydantic. Vous pouvez définir chacun des champs ci-dessous comme argument nommé lors de sa construction.
Tool est un gestionnaire de contexte et peut être utilisé dans une instruction with.
Champs
Méthodes
end
start
Démarre ce span une seule fois ; l’entrée dans le gestionnaire de contexte emprunte le même chemin.
record_error
Enregistre un échec sans terminer le span ; appelez end() le moment venu.
set_attributes
Appose des attributs OTel arbitraires sur ce span.
Transmettez un dict, que vous ayez une seule clé ou plusieurs ; pour une seule clé,
utilisez span.set_attributes({"weave.tag": "value"}). Reproduit la méthode
Span.set_attributes d’OTel.
Doit être appelé après le démarrage du span par une fabrique start_*, par start() ou par with,
et avant sa fin. En dehors de cette fenêtre, l’appel est sans effet (no-op) et
journalise un avertissement. Pour l’ingestion par lots, renseignez directement les champs déclarés de l’objet
et transmettez-le à log_turn / log_conversation. Dernière modification le 30 septembre 2026