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 :Messages d’entrée envoyés au modèle. Font l’objet d’un vidage dansMessage[] =[]
gen_ai.input.messages lors de
end().
Défini dans : src/genai/llm.ts:93
modèle
Défini dans : src/genai/llm.ts:117readonlymodèle:string
outputMessages
outputMessages :Messages de l’assistant renvoyés par le modèle. Font l’objet d’un vidage dansMessage[] =[]
gen_ai.output.messages lors de l’appel à end().
Défini dans : src/genai/llm.ts:98
nom du fournisseur
Défini dans : src/genai/llm.ts:118readonlynom du fournisseur :string
raisonnement
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:105facultatifraisonnement :Reasoning
utilisation
utilisation :Nombre de jetons et statistiques du cache. Font l’objet d’un vidage dansUsage={}
gen_ai.usage.* lors de l’appel à end().
Défini dans : src/genai/llm.ts:100
Méthodes
addEvent()
addEvent(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èsname,attributes?,startTime?):this
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(Prépare une pièce jointe multimédia pour l’appel LLM. Choisissez exactement l’un des éléments suivants :opts) :this
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(Méthode pratique poururl,opts) :this
attachMedia({uri, modality}).
Défini dans : src/genai/llm.ts:192
Paramètres
url
string
opts
modality
Modality
Renvoie
this
end()
end(Effectue le vidage de l’état accumulé et ferme le span. Idempotente. Transmettezopts?):void
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(Ajoute un message de l’assistant à la réponse. Défini dans : src/genai/llm.ts:155content) :this
Paramètres
contenu
string
Renvoie
this
record()
record(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:203opts) :this
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(Définit plusieurs attributs du span à la fois. Émet un avertissement et ne fait rien aprèsattributes) :this
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(Démarre un span SubAgent enfant imbriqué dans ce LLM. Défini dans : src/genai/llm.ts:261opts) :SubAgent
Paramètres
opts
SubAgentInit
Renvoie
SubAgent
startTool()
startTool(Démarre un span Tool enfant imbriqué dans ce LLM. Défini dans : src/genai/llm.ts:252opts):Tool
Paramètres
opts
ToolInit
Renvoie
Tool
think()
think(Définit ou complète le contenu de raisonnement/chaîne de pensée du modèle. Ce contenu est accumulé danscontent) :this
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