Coûts et audit d’agents : ce que couvre OpenTelemetry
Votre backend garde les spans 30 jours, et un auditeur vous interroge sur une décision d’agent de l’an dernier (cas fictif). Où cherchez-vous ?

EN 30 SECONDES
Les conventions GenAI sont solides sur le poste d’inférence du modèle de coûts d’un agent, et faibles sur son enregistrement d’audit. Les spans donnent aux autres postes une clé de jointure, et c’est l’enregistrement d’audit, pas la trace, qui reste la preuve.
À RETENIR · 3
- Les conventions couvrent bien le poste d’inférence d’un modèle de coûts : tokens par modèle, lectures et écritures de cache. Elles comptent des tokens, jamais de l’argent.
- La plupart des 14 champs de l’enregistrement d’audit n’ont pas de place dans gen_ai.*. Les spans servent d’index à l’enregistrement, pas d’enregistrement.
- Décisions, relecture humaine, empreintes de preuves et conservation vont dans votre propre espace com.acme.* ou dans l’enregistrement lui-même.
Sur cette page
Ce que gen_ai.* couvre dans la facture d’un agent
EN BREF Les conventions couvrent bien le poste d’inférence d’un modèle de coûts, et donnent aux postes coûteux une clé de jointure, rien de plus.
LES MOTS À CONNAÎTRE
- Span
- Une étape de travail chronométrée, comme un appel de modèle ou d’outil, avec un nom et des paires clé-valeur appelées attributs.
- Trace
- L’ensemble des spans d’une exécution, reliés de parent à enfant, pour voir quelle étape en a lancé une autre.
- Clé de jointure
- Un identifiant stocké à deux endroits, pour qu’une donnée d’un système retrouve la donnée qui lui correspond dans un autre.
- Enregistrement d’audit
- La trace écrite de ce qu’un agent a décidé, sur quelles preuves, et de qui l’a relu, conservée pour un auditeur.
Dans l’article sur les coûts, j’ai découpé la facture mensuelle d’un agent en cinq postes. Mettez les conventions en face : la couverture est très inégale.
environ 5 %
du coût mensuel : le poste d’inférence que couvrent les conventions
Modèle illustratif de l’épisode 7, pas un chiffre mesuré.
Ne couvrir que ce poste n’est pas grave. Le poste d’inférence devient comparable d’un fournisseur à l’autre et d’un SDK à l’autre.
EN CLAIR
Les autres postes gagnent une Clé de jointure Un identifiant stocké à deux endroits, pour qu’une donnée d’un système retrouve la donnée qui lui correspond dans un autre. Voir le glossaire, un identifiant que le span partage avec vos autres données. Le coût d’une relecture se rattache au span qui a renvoyé le cas vers une personne.
Un piège : la #469 a retiré les champs de cache du span invoke_agent local, parce qu’ils mélangent plusieurs modèles. Prenez-les sur les spans d’inférence.
Les spans indexent l’audit, ils ne le remplacent pas
EN BREF La plupart des 14 champs d’audit n’ont pas de place dans gen_ai.* : les spans servent d’index, et l’enregistrement d’audit reste la référence.
L’Enregistrement d’audit La trace écrite de ce qu’un agent a décidé, sur quelles preuves, et de qui l’a relu, conservée pour un auditeur. Voir le glossaire de l’épisode 8 compte 14 champs. Le schéma montre où irait chacun.
La clé de jointure. Sur le span d’agent ; l’enregistrement garde l’identifiant de trace.
La version n’est plus sur le span local.
Tout schéma est permis : suivez votre outil de prompts si vous en avez un, sinon une empreinte du contenu convient.
gen_ai.retrieval.documents n’est pas activé par défaut et ne définit qu’un identifiant et un score facultatifs.
finish_reasons dit pourquoi le modèle s’est arrêté, pas ce que l’agent a décidé.
Une Trace L’ensemble des spans d’une exécution, reliés de parent à enfant, pour voir quelle étape en a lancé une autre. Voir le glossaire peut être échantillonnée, regroupée par lots, perdue ou réécrite en route. Puis le backend la supprime selon ses propres règles.
Le stockage des traces est bien pensé pour l’exploitation, et mal pensé pour la preuve.
LA QUESTION DE L’AUDITEUR
Étape 1. L’agent décide. Son span porte l’identifiant de l’enregistrement d’audit, sous com.acme.audit.record_id.
- L’agent décide Son span porte l’identifiant de l’enregistrement d’audit, sous com.acme.audit.record_id.
- L’enregistrement garde l’identifiant de trace Décision, relecture et preuves vont dans l’enregistrement, qui pointe vers la trace.
- Jour 31 : la trace a disparu Le backend l’a supprimée comme prévu. Interroger les traces ne donne rien.
- L’enregistrement répond Un an plus tard, l’enregistrement répond à l’auditeur : le span n’était que l’index.
Attention au préfixe. Pour vos propres noms, le guide de nommage d’OpenTelemetry recommande le domaine inversé de votre entreprise : com.acme pour acme.com. Il déconseille d’emprunter l’espace de noms d’une convention existante.
ADAM explique : Ma règle : n’inventez jamais de gen_ai.decision. Le jour où la spec en ajoute un avec un autre sens, vos données et les siennes entrent en collision.
OBJET OBTENU
Les spans sont l’index
Sources, consultées le 7 octobre 2026 : métriques, spans d’agents, spans, nommage.
FAQ
Pas par défaut : selon les conventions, une instrumentation ne devrait pas capturer par défaut les instructions, les entrées ni les sorties (« SHOULD NOT »). Si le volume ou des données sensibles l’exigent, elles recommandent de stocker ce contenu ailleurs, avec une référence sur le span. La preuve d’audit reste ainsi chez vous.
NIVEAU TERMINÉ
Ce que vous savez maintenant
- Quel poste de coût les conventions couvrent, et comment les autres postes se rattachent à un span.
- Pourquoi c’est l’enregistrement d’audit, et non la trace, qui garde la preuve.
Vérifiez par vous-même
Touchez ou cliquez une question pour voir la réponse.
Vous devez noter qu’une personne a validé la décision d’un agent. Ajoutez-vous un attribut gen_ai.human_review ?
Non. N’inventez jamais de clé gen_ai.* : la spec pourrait en ajouter une avec un autre sens. Prenez votre propre espace com.acme.*, ou l’enregistrement d’audit vers lequel pointe le span.
Ingénieur web3 x IA, ancien CTO d’Integra. Auteur nommé (1 sur 5) d’ERC-3643, premier auteur d’ERC-6960, co-auteur d’ERC-7410 et co-auteur d’ERC-8203, encore à l’état de brouillon.
Un projet à livrer ou un poste à pourvoir ?
Parlons de votre besoinSuivre les notes techniques
Recevez les nouveaux articles sur l’IA en production et les smart contracts par email.

