Skip to main content
Un appel d’agent. Encapsule généralement le traitement nécessaire pour répondre à un seul message utilisateur. Émet un span invoke_agent et sert de racine à la trace de ce tour de conversation : il est toujours démarré sous ROOT_CONTEXT afin de ne jamais hériter par erreur d’un parent issu d’une autre bibliothèque instrumentée avec OTel. Créé par weave.startTurn() (ou conversation.startTurn()) et terminé avec end(). Un seul Turn peut être actif dans une chaîne asynchrone. Les enfants (LLM, Tool, SubAgent) sont joints via les méthodes startLLM, startTool et startSubagent.

Exemples

Hérite de

  • SpanBase

Accesseurs

agentName

Signature d’obtention

get agentName(): string
string

model

Signature d’obtention

get model(): string
string

Méthodes

addEvent()

Obsolète. Enregistrez plutôt ces données via setAttributes. OpenTelemetry abandonne progressivement l’API Span Event (Span.addEvent). Cette méthode fonctionne toujours et les données d’événements de span existantes restent valides. Voir https://opentelemetry.io/blog/2026/deprecating-span-events/
addEvent(name, attributes?, startTime?) : this
Ajoute un événement nommé au span. Utile pour signaler des moments qui ne constituent pas des spans, comme le compactage du contexte, la détection de boucles d’outils ou le déclenchement de garde-fous. Après end(), émet un avertissement et ne fait rien. Équivalent de Span.addEvent dans OTel.

Paramètres

string
requis
Attributes
TimeInput

Renvoie

this

Exemple

Hérité de

SpanBase.addEvent

end()

end(opts?): void
Lit les valeurs actuelles des champs (pour refléter les modifications apportées via record() depuis start) et ferme le span. Idempotent. Passez error pour le marquer comme ayant échoué ; passez endTime pour antidater sa fermeture.

Paramètres

object

Renvoie

void

record()

record(opts): this
Définit en bloc tout sous-ensemble des champs modifiables. Remplace les valeurs existantes (sans fusion). Pratique pour tout attribuer en une seule fois après le retour d’un appel au fournisseur de modèle.

Paramètres

object
requis

Renvoie

this

setAttribute()

Obsolète. Utilisez plutôt setAttributes, qui reprend set_attributes du SDK Python et Span.setAttributes d’OTel. Cette méthode est conservée sous la forme d’un simple alias afin que le code existant qui définit un seul attribut continue de fonctionner. Seul Turn la propose : les autres émetteurs n’ont jamais proposé de forme au singulier.
setAttribute(key, value): this

Paramètres

string
requis
AttributeValue
requis

Renvoie

this

setAttributes()

setAttributes(attributes): this
Définit plusieurs attributs à la fois sur le span. Après end(), émet un avertissement et ne fait rien. Équivalent de Span.setAttributes d’OTel (et de set_attributes dans le SDK Python).

Paramètres

Attributes
requis

Renvoie

this

Exemple

Hérité de

SpanBase.setAttributes

startLLM()

startLLM(opts): LLM
Démarre un span LLM enfant dans ce Turn.

Paramètres

LLMInit
requis
Voir LLMInit.

Renvoie

LLM

startSubagent()

startSubagent(opts): SubAgent
Démarre un span enfant SubAgent sous ce Turn.

Paramètres

SubAgentInit
requis

Renvoie

SubAgent

startTool()

startTool(opts): Tool
Démarre un span enfant Tool dans ce Turn.

Paramètres

ToolInit
requis
Voir ToolInit.

Renvoie

Tool
Dernière modification le 30 septembre 2026