Fusão Multi-Modelo - Documentação do Entity Enricher

Fusão Multi-Modelo

Quando executa o mesmo enrichment em vários modelos de IA, o Entity Enricher pode fundir os resultados num único resultado de elevada confiança. A fusion deteta conflitos entre os resultados dos modelos e resolve-os através de regras determinísticas ou de arbitration com recurso a LLM.

Pipeline de Fusão

Saídas do modelo
Resultado do Claude
Resultado do GPT-4
Resultado Gemini
Deteção de conflitos
Compare todos os campos
em todos os modelos
Resolução
Combinação baseada em regras
ou
Arbitragem por LLM
Resultado combinado
Uma única saída com
trilho de auditoria de conflitos

Passo 1: Deteção de Conflitos

O detetor de conflitos compara todos os campos em todos os resultados dos modelos. Os campos em que todos os modelos concordam passam inalterados. Os campos em que os modelos discordam são assinalados como conflitos que precisam de resolução.

Regras de comparação por tipo de campo
TipoComo ComparadoConcordância significa
EscalarCorrespondência exata normalizada (sem espaços, em minúsculas, arredondada)Todos os valores iguais após normalização
MultilingueComparação por idiomaCada chave de idioma corresponde entre modelos
ArrayComparação de conjuntos (independente da ordem)Os mesmos itens independentemente da ordem
ObjetoRecursivo por propriedadeTodas as propriedades aninhadas correspondem
NullNull é igual a ausenteTratado como equivalente
Exemplo: enriquecer “Sanofi” com 2 modelos
Output do Claude
revenue: 42.2
gmp_status: true
description: “Sanofi is a global...”
Saída do GPT-4
revenue: 44.1
gmp_status: true
description: “Sanofi SA is a...”
Resultado: gmp_status = agreed | revenue = conflict (42.2 vs. 44.1) | description = conflict (texto diferente)

Passo 2: Resolução de Conflitos

Os conflitos são resolvidos através de um de dois métodos, consoante tenha selecionado um modelo de arbitragem na barra lateral.

Opção A

Combinação baseada em regras

São aplicadas regras determinísticas com base no tipo de dados de cada campo. Não são necessárias chamadas LLM adicionais — a resolução é instantânea e gratuita.

Tipo de campoRegraJustificação
StringVoto maioritário; em caso de empate, prevalece o valor mais longoNormalmente, quanto mais detalhe, melhor
NúmeroValor medianoRobusto a valores atípicos
BooleanoMaioria; em caso de empate, vence truePredefinição conservadora
MultilingueVoto maioritário por idiomaCada idioma resolvido de forma independente
ArrayUnião de todos os itensPreservar todas as informações
ObjetoRecursivo por campoAplicar regras a campos aninhados
Null vs ValorPreferir não nuloDados em falta são piores do que qualquer valor

Critério de desempate: Quando os votos estão empatados, vence o valor do modelo mais caro (como indicador de capacidade), seguido da ordenação alfabética do nome do modelo.

Opção B

Arbitragem por LLM

Quando seleciona um modelo de arbitration na barra lateral, os conflitos são enviados para um LLM para resolução inteligente. O árbitro recebe o contexto da entity, as descrições dos campos do schema e todos os valores em conflito e, em seguida, toma decisões fundamentadas.

O Que o Árbitro Devolve
Valor escolhidoO valor que considera mais exato
Modelo de origemDe que modelo veio o valor escolhido
RaciocínioPor que motivo escolheu esse valor em vez das alternativas
ConfiançaQuão confiante está na decisão (alta, média, baixa)

Alternativa: Se o modelo de arbitragem falhar (tempo limite, erro), o sistema recorre automaticamente à fusão baseada em regras para que obtenha sempre um resultado.

Passo 3: O Resultado Combinado

Após a resolução de conflitos, o sistema constrói um único resultado combinado e armazena-o como um registo de “arbitragem” na base de dados. Cada resultado combinado inclui um registo de auditoria para que possa rastrear como cada conflito foi resolvido.

Registo de Auditoria (Metadados de arbitragem)

Cada resultado combinado inclui metadados que documentam o processo de fusão:

“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, ... }]

O Que Vê na Interface

Após a conclusão da fusão, o separador “Combinado” no painel de resultados mostra:

1
Cabeçalho de resumo
Mostra o método de resolução (baseado em regras ou LLM) e uma contagem como “18 em acordo / 5 resolvidos / 23 campos no total”.
2
JSON combinado
A saída estruturada completa que combina valores acordados e conflitos resolvidos num único documento JSON.
3
Relatório de conflitos
Cartões expansíveis para cada conflito que mostram: o caminho do campo, o selo do método de resolução (Voto Maioritário, Mediana, União, etc.), todos os valores dos modelos com o escolhido destacado e o texto de raciocínio se tiver sido usada arbitragem por LLM.

Fusão automática no processamento em lote

No enrichment em batch, a fusion ocorre automaticamente quando você seleciona dois ou mais models. Não precisa de clicar em “Combinar resultados” manualmente — assim que todos os models terminam para uma entity, a fusion é executada e o resultado combinado aparece juntamente com os outputs dos models individuais.

Fusão em streaming: Durante o enriquecimento de entidade única e em lote, o progresso da fusão é transmitido via Server-Sent Events. Vê os eventos fusion_started, conflicts_detected e fusion_completed em tempo real.

Regras vs arbitragem por LLM: quando usar cada uma

Baseado em regras (gratuito, instantâneo)
  • Dados maioritariamente factuais/numéricos onde a lógica de votação funciona bem
  • Grande volume ou processamento em lote onde o custo é importante
  • Esquemas simples com poucos conflitos esperados
  • Quando pretende resultados determinísticos e reproduzíveis
Arbitragem por LLM (custo adicional)
  • Schemas complexos onde o contexto é importante para a resolução
  • Dados textuais (descrições, resumos) onde a votação é insuficiente
  • Quando precisa de decisões explicáveis com raciocínio
  • Enriquecimentos críticos onde a precisão compensa o custo adicional