Passer au contenu principal
weave / LLM Un appel LLM. Émet un span chat avec des attributs gen_ai.*. Créé par weave.startLLM() (ou turn.startLLM()) et terminé par end(). Un seul LLM peut être actif à la fois dans un contexte asynchrone ; imbriquez les appels d’outil/sous-agent sous celui-ci via startTool / startSubagent. Renseignez directement inputMessages / outputMessages / usage / reasoning, ou utilisez les fonctions utilitaires (output, think, attachMedia, record). Toutes les données enregistrées sont vidées vers le span lors de end(). Exemple
Exemple

Hiérarchie

  • SpanBase LLM

Table des matières

Propriétés

Méthodes

Propriétés

inputMessages

inputMessages: Message[] = [] Messages d’entrée envoyés au modèle. Vidés dans gen_ai.input.messages lors de end().

Défini dans

src/genai/llm.ts:93

model

Readonly model: string

Défini dans

src/genai/llm.ts:117

outputMessages

outputMessages: Message[] = [] Messages de l’assistant renvoyés par le modèle. Vidés dans gen_ai.output.messages lors de end().

Défini dans

src/genai/llm.ts:98

providerName

Readonly providerName: string

Défini dans

src/genai/llm.ts:118

reasoning

Facultatif reasoning: Reasoning Contenu de la chaîne de pensée. Intégré au dernier message de l’assistant sous la forme d’un ReasoningPart lors de la sérialisation.

Défini dans

src/genai/llm.ts:105

usage

usage: Usage = {} Nombre de jetons et statistiques du cache. Vidés vers gen_ai.usage.* lors de l’appel à end().

Défini dans

src/genai/llm.ts:100

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 span-event existantes restent valides. Voir https://opentelemetry.io/blog/2026/deprecating-span-events/Example
addEvent(name, attributes?, startTime?): this Ajoute un event nommé au span. Utile pour marquer des moments qui ne correspondent pas à des spans, comme la compaction du contexte, la détection de boucles d’outil ou le déclenchement de guardrails. Émet un avertissement et ne fait rien après end(). Reprend le comportement de OTel Span.addEvent.

Paramètres

Renvoie

this

Hérité de

SpanBase.addEvent

Défini dans

src/genai/spanBase.ts:82

attachMedia

attachMedia(opts): this Prépare une pièce jointe multimédia pour l’appel LLM. Choisissez exactement l’un des éléments suivants : content (octets base64 intégrés), uri (référence URI) ou fileId (identifiant de fichier téléversé au préalable). La pièce jointe est associée au dernier message utilisateur dans inputMessages lors de end().

Paramètres

Renvoie

this

Défini dans

src/genai/llm.ts:183

attachMediaUrl

attachMediaUrl(url, opts): this Méthode utilitaire pour attachMedia({uri, modality}).

Paramètres

Renvoie

this

Défini dans

src/genai/llm.ts:192

end

end(opts?): void Effectue le vidage de l’état accumulé et ferme le span. Cette opération est idempotente. Passez error pour marquer le span comme en échec ; passez endTime pour antidater la fermeture.

Paramètres

Renvoie

void

Défini dans

src/genai/llm.ts:274

output

output(content): this Ajoute un message de l’assistant à la réponse.

Paramètres

Renvoie

this

Défini dans

src/genai/llm.ts:155

record

record(opts): this Définit en une seule opération n’importe quel sous-ensemble des champs modifiables. Remplace (sans fusionner). Utile pour tout attribuer d’un coup après le retour d’un appel au provider.

Paramètres

Renvoie

this

Défini dans

src/genai/llm.ts:203

setAttributes

setAttributes(attributes): this Définit plusieurs attributs sur le span en une seule fois. Émet un avertissement puis n’a aucun effet après end(). Reflète le comportement de Span.setAttributes d’OTel (et de set_attributes du SDK Python).

Paramètres

Renvoie

this Example

Hérité de

SpanBase.setAttributes

Défini dans

src/genai/spanBase.ts:63

startSubagent

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

Paramètres

Renvoie

SubAgent

Défini dans

src/genai/llm.ts:261

startTool

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

Paramètres

Renvoie

Tool

Défini dans

src/genai/llm.ts:252

think

think(content): this Définit ou enrichit le contenu de raisonnement ou de chaîne de pensée du modèle. S’accumule dans this.reasoning.content. Est fusionné dans le dernier message de l’assistant sous forme de ReasoningPart au moment de la sérialisation, conformément au format transmis par le SDK Python.

Paramètres

Renvoie

this

Défini dans

src/genai/llm.ts:167

create

create(opts): LLM

Paramètres

Renvoie

LLM

Défini dans

src/genai/llm.ts:124