Passer au contenu principal
weave / tour de conversation Une invocation d’agent. Elle encapsule généralement le travail nécessaire pour répondre à un seul message d’un utilisateur. Elle émet un span invoke_agent et sert de racine à la trace de ce tour de conversation : elle est toujours démarrée sous ROOT_CONTEXT afin de ne jamais hériter accidentellement d’un parent provenant d’une autre bibliothèque instrumentée avec OTel. Créé par weave.startTurn() (ou session.startTurn()) et terminé avec end(). Un seul tour de conversation peut être actif dans une chaîne asynchrone. Les enfants (LLM, Tool, SubAgent) s’y rattachent via les méthodes startLLM, startTool, startSubagent. Exemple
const turn = weave.startTurn({agentName: 'research-bot', model: MODEL});
try {
  const llm = turn.startLLM({model: MODEL, providerName: 'openai'});
  // ...
  llm.end();
} finally {
  turn.end();
}

Table des matières

Propriétés

Méthodes

Propriétés

agentName

Readonly agentName: string

Défini dans

genai/turn.ts:60

model

Readonly model: string

Défini dans

genai/turn.ts:61

Méthodes

addEvent

addEvent(name, attributes?, startTime?): this Ajoutez un événement nommé au span tour de conversation. Utile pour marquer des moments qui ne correspondent pas à des spans, comme le compactage du contexte, la détection de boucles d’outil ou le déclenchement de garde-fous. Sans effet après end(). Reproduit le comportement de Span.addEvent d’OTel.

Paramètres

NomType
namestring
attributes?Attributes
startTime?TimeInput

Renvoie

this Exemple
turn.addEvent('context_compacted', {removedMessages: 12});

Défini dans

genai/turn.ts:152

end

end(opts?): void Ferme le span tour de conversation. Cette opération est idempotente. Passez error pour le marquer comme ayant échoué.

Paramètres

NomType
opts?Object
opts.error?Error

Renvoie

void

Défini dans

genai/turn.ts:159

setAttribute

setAttribute(key, value): this Définit un seul attribut sur le span du tour de conversation. Utile pour consigner des totaux cumulés en cours d’exécution (par exemple, le coût cumulé ou l’utilisation de jetons) ou d’autres métadonnées qui ne deviennent connues qu’en cours de tour de conversation. N’a aucun effet après end(). Équivaut à Span.setAttribute d’OTel.

Paramètres

NomType
keystring
valueAttributeValue

Renvoie

this Exemple
turn.setAttribute('gen_ai.usage.input_tokens', totalInputTokens);

Défini dans

genai/turn.ts:138

startLLM

startLLM(opts): LLM Démarre un span LLM enfant dans ce tour de conversation.

Paramètres

NomType
optsLLMInit

Renvoie

LLM

Défini dans

genai/turn.ts:104

startSubagent

startSubagent(opts): SubAgent Démarre un span SubAgent enfant au sein de ce tour de conversation.

Paramètres

NomType
optsSubAgentInit

Renvoie

SubAgent

Défini dans

genai/turn.ts:122

startTool

startTool(opts): Tool Démarre un span enfant de Tool dans ce tour de conversation.

Paramètres

NomType
optsToolInit

Renvoie

Tool

Défini dans

genai/turn.ts:113

create

create(opts?): tour de conversation

Paramètres

NomType
optsTurnInit & { conversationId?: string }

Renvoie

tour de conversation

Défini dans

genai/turn.ts:64