Vérification de non-déterminisme - Documentation Entity Enricher

Vérification de non-déterminisme

Détectez les propriétés de schéma dont les valeurs varient d'un modèle à l'autre ou d'une exécution à l'autre, et corrigez-les avant qu'elles ne polluent vos données — pour des enrichissements reproductibles, comparables et précis.

Pourquoi le déterminisme est important

Entity Enricher traite les LLM comme des bases de connaissances interrogeables. Cela ne fonctionne que lorsqu'un nom de propriété fixe une réponse unique et reproductible. Une propriété comme annual_revenue ne le fait pas : quel exercice fiscal ? Quelle devise ? En millions ou en unités ? Chaque modèle — et chaque nouvelle exécution du même modèle — est libre de choisir un cadre différent, si bien que les valeurs divergent même lorsqu'aucun modèle n'a tort.

Les propriétés volatiles nuisent à tout ce qui suit : la fusion multi-modèles voit des conflits qui ne sont en réalité que des différences de cadrage, et les écarts de cohérence du benchmark se creusent pour des raisons qui n'ont rien à voir avec la qualité du modèle. Le contrôle de non-déterminisme détecte ces propriétés et vous explique comment les fixer.

Les quatre causes

Chaque propriété signalée est classée selon l'une de quatre causes, chacune ayant son propre remède :

CauseExempleSolution
Temporel
ceo, stock_priceceo_2025
Un fait mouvant sans date d'ancrage — fixez la période, ou restructurez en tableau indexé par période.
Ambigu
annual_revenuerevenue_fy2024_usd_millions
Le nom ne fixe pas l'unité, la devise, la période ou la portée — intégrez le cadre manquant dans le nom ou la description.
Subjectif
reputationesg_risk_rating_sustainalytics
Aucune vérité de terrain objective — remplacez par un indicateur mesurable ou une échelle fixe ; sinon, la propriété reste signalée à titre indicatif.
Multivalué
top_competitorstop_3_competitors_by_revenue
Plusieurs réponses également correctes, généralement une liste non bornée — bornez-la et précisez le critère d'ordre.

Un renommage n'est pas le seul remède : pour les propriétés de schéma, l'analyseur propose aussi une correction de description qui fixe le cadre manquant. Une description plus précise atteint l'IA d'enrichissement exactement comme le nom, mais ne rompt jamais votre contrat de données — c'est donc le remède privilégié pour les schémas déjà en usage.

Où s'exécute le contrôle

Pendant la génération de l'échantillon

Une fois un échantillon généré, l'analyseur l'examine. Les renommages sans ambiguïté sont appliqués automatiquement aux clés inventées par l'IA (jamais aux champs que vous avez nommés vous-même), et les corrections structurelles sont renvoyées au générateur pour un maximum de deux tours de correction. Les échantillons ancrés dans des documents joints sont ignorés — leurs valeurs proviennent du document source, et non de la mémoire du modèle.

Après la génération du schéma

Une fois qu'un schéma généré est enregistré, une passe finale annote chaque propriété avec son niveau de non-déterminisme. Cette étape est réalisée au mieux : si elle échoue, la génération elle-même n'est pas affectée.

À la demande depuis l'éditeur de schéma

Le bouton Revérifier n'analyse que les propriétés qui n'ont pas encore d'annotation, et passe à une réanalyse complète une fois que chaque propriété est annotée.

Sur les échantillons collés

Le JSON d'exemple que vous collez pour créer un schéma peut être analysé sans état — vous obtenez un rapport des noms de propriété risqués sans qu'aucune modification ne soit apportée.

Le contrôle est purement consultatif. Il ne bloque jamais la génération, ne rejette jamais un enrichissement, et ses annotations sont retirées de chaque prompt envoyé aux modèles d'enrichissement — il vous informe, vous, pas l'IA.

Lire les résultats

Les propriétés signalées affichent un badge « varie » dans l'éditeur de schéma : ambre pour un risque moyen, rouge pour un risque élevé. En survolant le badge, vous voyez la note de l'analyseur expliquant ce qui varie et pourquoi. Les propriétés jugées déterministes ne portent aucun badge.

Les annotations suivent la propriété

Un verdict est rendu à partir du nom et de la description d'une propriété considérés ensemble — ainsi, renommer une propriété ou modifier sa description supprime son annotation. L'éditeur signale ces propriétés comme obsolètes et propose une revérification, qui n'analyse que ce qui manque. C'est précisément ce que vous voulez après avoir appliqué un renommage suggéré : la revérification confirme si le nouveau nom est déterministe.

Bascule par schéma

Le contrôle peut être désactivé par schéma depuis le menu supplémentaire de l'éditeur de schéma. Une fois désactivé, la passe post-génération est ignorée et les badges, le bouton Revérifier et les avertissements d'obsolescence sont masqués. Les annotations existantes sont conservées (simplement masquées), et réactiver le contrôle sur un schéma qui n'a jamais été analysé le lance automatiquement.

Les schémas générés à partir de documents joints démarrent avec le contrôle désactivé : leurs valeurs sont transcrites depuis le document source, la variance d'une exécution à l'autre dans les connaissances du modèle ne s'applique donc pas.

Bon à savoir

Les notes parlent votre langue

Les notes de l'analyseur sont rédigées dans la langue de votre interface — un utilisateur français voit des explications en français, un utilisateur japonais en japonais. Les noms de propriétés suggérés restent en anglais, conformément aux conventions de nommage des schémas.

L'analyse est un appel IA facturé

Chaque analyse est un véritable appel de modèle (peu coûteux), enregistré comme son propre prompt sur l'enregistrement et déduit des crédits comme tout autre usage de l'IA. Les revérifications incrémentales ne facturent que les propriétés réellement analysées.

La prévention agit aussi en amont

La génération de schéma elle-même reçoit pour instruction de produire des noms et des descriptions déterministes (périodes, unités et critères d'ordre fixés), de sorte que la plupart des schémas sont propres et que l'analyseur n'a plus qu'à repérer les cas restants.

Accès API & MCP

Le contrôle est disponible par programmation :

SurfaceDescription
POST /api/schema/analyze-sampleAnalyser un échantillon JSON collé — rapport sans état, rien n'est modifié
POST /api/schema/saved/{id}/analyzeAnalyser un schéma enregistré et écrire des annotations — incrémental par défaut, force=true réanalyse tout
analyze_sample_determinismOutil MCP — le même rapport d'échantillon sans état, depuis Claude ou tout client MCP
analyze_schema_determinismOutil MCP — annoter un schéma enregistré ; combinez avec edit_schema pour appliquer un renommage suggéré

Consultez la référence de l'API et le guide du serveur MCP pour l'authentification et le catalogue complet des outils.

Prochaines étapes