Fusion multi-modèle - Documentation Entity Enricher

Fusion multi-modèle

Lorsque vous exécutez le même enrichissement sur plusieurs modèles d'IA, Entity Enricher peut fusionner les résultats en une sortie unique à haut niveau de confiance. La fusion détecte les conflits entre les sorties des modèles et les résout à l'aide de règles déterministes ou d'un arbitrage assisté par LLM.

Pipeline de fusion

Sorties des modèles
Résultat Claude
Résultat GPT-4
Résultat Gemini
Détection de conflits
Comparez chaque champ
sur tous les modèles
Résolution
Fusion basée sur des règles
ou
Arbitrage LLM
Résultat fusionné
Sortie unique avec
journal d'audit des conflits

Étape 1 : Détection des conflits

Le détecteur de conflits compare chaque champ entre toutes les sorties des modèles. Les champs sur lesquels tous les modèles s'accordent passent tels quels. Les champs sur lesquels les modèles divergent sont signalés comme des conflits à résoudre.

Règles de comparaison par type de champ
TypeMéthode de comparaisonSignification de l'accord
ScalaireCorrespondance exacte normalisée (espaces supprimés, minuscules, arrondi)Toutes les valeurs sont égales après normalisation
MultilingueComparaison par langueChaque clé de langue correspond entre les modèles
TableauComparaison d'ensembles (indépendante de l'ordre)Mêmes éléments quel que soit l'ordre
ObjetRécursif par propriétéToutes les propriétés imbriquées correspondent
NullNull équivaut à absentTraités comme équivalents
Exemple : enrichir « Sanofi » avec 2 modèles
Sortie Claude
revenue: 42.2
gmp_status: true
description: “Sanofi is a global...”
Sortie GPT-4
revenue: 44.1
gmp_status: true
description: “Sanofi SA is a...”
Résultat : gmp_status = agreed | revenue = conflict (42.2 vs 44.1) | description = conflict (texte différent)

Étape 2 : Résolution des conflits

Les conflits sont résolus selon l'une des deux méthodes, selon que vous avez sélectionné ou non un modèle d'arbitrage dans la barre latérale.

Option A

Fusion basée sur des règles

Des règles déterministes sont appliquées selon le type de données de chaque champ. Aucun appel LLM supplémentaire n'est nécessaire — la résolution est instantanée et gratuite.

Type de champRègleJustification
ChaîneVote majoritaire ; en cas d'égalité, la valeur la plus longue l'emportePlus de détails, c'est généralement mieux
NombreValeur médianeRobuste aux valeurs aberrantes
BooléenMajorité ; en cas d'égalité, true l'emporteValeur par défaut prudente
MultilingueVote majoritaire par langueChaque langue est résolue indépendamment
TableauUnion de tous les élémentsConserver toutes les informations
ObjetRécursif par champAppliquer les règles aux champs imbriqués
Null vs valeurPréférer les valeurs non nullesUne donnée manquante est pire que n'importe quelle valeur

Départage : en cas d'égalité des votes, la valeur du modèle le plus cher l'emporte (comme indicateur de capacité), puis l'ordre alphabétique des noms de modèles s'applique.

Option B

Arbitrage LLM

Lorsque vous sélectionnez un modèle d'arbitrage dans la barre latérale, les conflits sont envoyés à un LLM pour une résolution intelligente. L'arbitre reçoit le contexte de l'entité, les descriptions des champs du schéma et toutes les valeurs en conflit, puis prend des décisions motivées.

Ce que renvoie l'arbitre
Valeur choisieLa valeur qu'il considère comme la plus exacte
Modèle sourceIndique de quel modèle provient la valeur choisie
RaisonnementPourquoi il a choisi cette valeur plutôt que les alternatives
ConfianceSon niveau de confiance dans la décision (élevé, moyen, faible)

Repli : si le modèle d'arbitrage échoue (délai dépassé, erreur), le système bascule automatiquement vers la fusion basée sur des règles afin que vous obteniez toujours un résultat.

Étape 3 : Le résultat fusionné

Après la résolution des conflits, le système construit un résultat fusionné unique et le stocke comme enregistrement d'« arbitrage » dans la base de données. Chaque résultat fusionné inclut une piste d'audit qui vous permet de retracer comment chaque conflit a été résolu.

Piste d'audit (métadonnées d'arbitrage)

Chaque résultat fusionné inclut des métadonnées qui documentent le processus de fusion :

“method”: “rule_based” | “llm”
“source_record_ids”: [“uuid-1”, “uuid-2”]
“total_fields”: 23
“agreed_fields”: 18
“conflicted_fields”: 5
“decisions”: [{ path, chosen_value, rule_used, ... }]

Ce que vous voyez dans l'interface

Une fois la fusion terminée, l'onglet « Fusionné » du panneau de résultats affiche :

1
En-tête de résumé
Affiche la méthode de résolution (par règles ou LLM), ainsi qu'un décompte tel que « 18 concordants / 5 résolus / 23 champs au total ».
2
JSON fusionné
La sortie structurée complète combinant les valeurs concordantes et les conflits résolus en un seul document JSON.
3
Rapport de conflits
Cartes développables pour chaque conflit affichant : le chemin du champ, le badge de la méthode de résolution (vote majoritaire, médiane, union, etc.), toutes les valeurs des modèles avec celle retenue mise en évidence, et le texte de raisonnement si l'arbitrage LLM a été utilisé.

Fusion automatique lors du traitement par lot

Dans l'enrichissement par traitement par lot, la fusion s'effectue automatiquement dès que vous sélectionnez deux modèles ou plus. Vous n'avez pas besoin de cliquer manuellement sur « Fusionner les résultats » — dès que tous les modèles ont terminé pour une entité, la fusion s'exécute et le résultat fusionné apparaît aux côtés des sorties de chaque modèle.

Fusion en streaming : pendant l'enrichissement d'une entité unique comme pendant le traitement par lot, la progression de la fusion est diffusée via Server-Sent Events. Vous voyez les événements fusion_started, conflicts_detected et fusion_completed en temps réel.

Arbitrage basé sur des règles vs LLM : quand utiliser chaque approche

Basé sur des règles (gratuit, instantané)
  • Données majoritairement factuelles/numériques où la logique de vote fonctionne bien
  • Volume élevé ou traitement par lot lorsque le coût compte
  • Schémas simples avec peu de conflits attendus
  • Lorsque vous voulez des résultats déterministes et reproductibles
Arbitrage LLM (coût supplémentaire)
  • Schémas complexes où le contexte compte pour la résolution
  • Données textuelles (descriptions, résumés) où le vote est insuffisant
  • Lorsque vous avez besoin de décisions explicables avec justification
  • Enrichissements à enjeux élevés où la précision justifie le coût supplémentaire