Skip to main content
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 ou de sous-agent en dessous via startTool / startSubagent. Renseignez directement inputMessages / outputMessages / usage / reasoning, ou utilisez les fonctions utilitaires (output, think, attachMedia, record). Toutes les données enregistrées font l’objet d’un vidage dans le span lors de end(). Défini dans : src/genai/llm.ts:86

Exemples

Étend

  • SpanBase

Propriétés

inputMessages

inputMessages : Message[] = []
Messages d’entrée envoyés au modèle. Font l’objet d’un vidage dans gen_ai.input.messages lors de end(). Défini dans : src/genai/llm.ts:93

modèle

readonly modèle: string
Défini dans : src/genai/llm.ts:117

outputMessages

outputMessages : Message[] = []
Messages de l’assistant renvoyés par le modèle. Font l’objet d’un vidage dans gen_ai.output.messages lors de l’appel à end(). Défini dans : src/genai/llm.ts:98

nom du fournisseur

readonly nom du fournisseur : string
Défini dans : src/genai/llm.ts:118

raisonnement

facultatif raisonnement : Reasoning
Contenu de chaîne de pensée. Intégré au dernier message de l’assistant sous forme de ReasoningPart lors de la sérialisation. Défini dans : src/genai/llm.ts:105

utilisation

utilisation : Usage = {}
Nombre de jetons et statistiques du cache. Font l’objet d’un vidage dans 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 avec setAttributes. OpenTelemetry abandonne progressivement l’API d’événements de span (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 marquer des moments qui ne correspondent pas à des spans, tels que la compaction du contexte, la détection de boucles d’outils ou le déclenchement de garde-fous. Émet un avertissement et ne fait rien après end(). Reproduit le comportement de Span.addEvent d’OTel. Défini dans : src/genai/spanBase.ts:82

Paramètres

nom
string
attributes ?
Attributes
startTime?
TimeInput

Renvoie

this

Exemple

Hérité de

SpanBase.addEvent

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 (ID de fichier déjà téléversé). La pièce jointe est ajoutée au dernier message utilisateur d’inputMessages lors de l’appel à end(). Défini dans : src/genai/llm.ts:183

Paramètres

opts
AttachMediaOpts

Renvoie

this

attachMediaUrl()

attachMediaUrl(url, opts) : this
Méthode pratique pour attachMedia({uri, modality}). Défini dans : src/genai/llm.ts:192

Paramètres

url
string
opts
modality
Modality

Renvoie

this

end()

end(opts?): void
Effectue le vidage de l’état accumulé et ferme le span. Idempotente. Transmettez error pour signaler un échec ; transmettez endTime pour antidater la fermeture. Défini dans : src/genai/llm.ts:274

Paramètres

opts ?
SpanEndOptions

Renvoie

void

output()

output(content) : this
Ajoute un message de l’assistant à la réponse. Défini dans : src/genai/llm.ts:155

Paramètres

contenu
string

Renvoie

this

record()

record(opts) : this
Définit en bloc n’importe quel sous-ensemble des champs modifiables. Remplace les valeurs existantes (sans les fusionner). Utile pour attribuer toutes les valeurs en une seule fois après le retour d’un appel à un fournisseur. Défini dans : src/genai/llm.ts:203

Paramètres

opts
finishReasons?
string[]
inputMessages ?
Message[]
mediaAttachments ?
AttachMediaOpts[]
outputMessages ?
Message[]
outputType?
string
raisonnement ?
Reasoning
responseId?
string
modèleDeRéponse ?
string
utilisation ?
Usage

Renvoie

this

setAttributes()

setAttributes(attributes) : this
Définit plusieurs attributs du span à la fois. Émet un avertissement et ne fait rien après end(). Correspond à Span.setAttributes d’OTel (ainsi qu’à la méthode set_attributes du SDK Python). Défini dans : src/genai/spanBase.ts:63

Paramètres

attributs
Attributes

Renvoie

this

Exemple

Hérité de

SpanBase.setAttributes

startSubagent()

startSubagent(opts) : SubAgent
Démarre un span SubAgent enfant imbriqué dans ce LLM. Défini dans : src/genai/llm.ts:261

Paramètres

opts
SubAgentInit

Renvoie

SubAgent

startTool()

startTool(opts): Tool
Démarre un span Tool enfant imbriqué dans ce LLM. Défini dans : src/genai/llm.ts:252

Paramètres

opts
ToolInit

Renvoie

Tool

think()

think(content) : this
Définit ou complète le contenu de raisonnement/chaîne de pensée du modèle. Ce contenu est accumulé dans this.reasoning.content. Lors de la sérialisation, il est intégré au dernier message de l’assistant sous la forme d’un ReasoningPart, conformément au format transmis par le SDK Python. Défini dans : src/genai/llm.ts:167

Paramètres

contenu
string

Renvoie

this