> ## Documentation Index
> Fetch the complete documentation index at: https://docs.strattum.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Entity Resolution

> Como o Memory descobre que registros espalhados em CRM, ERP, WhatsApp e email são a mesma entidade — matching determinístico, probabilístico e bypass por external_id.

Entity Resolution é o processo que descobre que "M. Silva" na tabela de leads, "Maria Silva ([mari@emp.com](mailto:mari@emp.com))" no CRM e o `+552199990000` no WhatsApp são a mesma pessoa. É o passo que transforma registros fragmentados em um único perfil consolidado no grafo do Memory.

Sem essa consolidação, o mesmo cliente aparece como três entidades separadas, cada uma com uma fatia do histórico.

***

## Por que Entity Resolution existe

Os dados de uma entidade nascem espalhados. O CRM guarda o email, o sistema de cobrança guarda o CPF, o WhatsApp guarda o telefone, e nenhum deles compartilha o mesmo identificador.

Entity Resolution reconcilia esses registros por atributos em comum. O resultado é um nó único no grafo: o perfil que o agente consulta antes de qualquer decisão, com o histórico completo em vez de um pedaço.

***

## Como funciona

O Memory resolve identidade em duas estratégias complementares, e oferece um atalho para quem já tem um ID unificado.

### Matching determinístico

Compara identificadores exatos e normalizados: CPF, CNPJ, email normalizado, telefone padronizado. Quando dois registros compartilham um desses valores, são a mesma entidade sem margem de dúvida.

O matching determinístico resolve **60–80%** dos casos. É o caminho preferencial: barato, exato e auditável.

### Matching probabilístico

Entra onde não há identificador exato em comum. Compara atributos por similaridade e calcula um score de confiança:

| Atributo | Técnica de comparação |
| - | - |
| Nome | Similaridade fuzzy (Jaro-Winkler) |
| Endereço | Vetorização e proximidade (TF-IDF) |
| Razão social | Comparação fuzzy de texto |

Um par com score acima do threshold configurado é consolidado automaticamente. Abaixo do threshold, o par vai para a fila de revisão, onde uma pessoa aprova ou rejeita.

> [!NOTE]
>
> O confidence threshold é definido na configuração da ontologia. Comece pelo perfil **Balanceado (0.80)** e ajuste conforme o volume da fila de revisão. Veja [Configuração pós-instalação](https://docs.strattum.ai/getting-started/configuration.md#passo-3--ontologia-do-memory).

### Bypass via external\_id

Se a sua empresa já mantém um ID unificado nos sistemas de origem, o Memory usa essa chave diretamente e pula o Entity Resolution.

Você aponta o `external_id` como o identificador da entidade, e os registros que compartilham esse valor viram o mesmo nó sem passar por matching probabilístico. O onboarding fica mais rápido e a consolidação, determinística de ponta a ponta.

> [!TIP]
>
> Prefira `external_id` sempre que existir. Uma chave de negócio já unificada elimina a ambiguidade que o matching probabilístico precisa resolver.

***

## Como acompanhar no Console

**1. Veja as entidades consolidadas**

Em **Memory → Entities**, cada linha é uma entidade já resolvida, com o status de completude do perfil.

**2. Inspecione as fontes de um perfil**

Clique em uma entidade para ver quais registros de quais fontes foram consolidados nela.

**3. Revise os casos ambíguos**

Em **Memory → Review Queue**, aprove, edite ou rejeite os pares que ficaram abaixo do threshold. Cada rejeição ensina o modelo a não repetir a associação.

***

## Casos de uso

> **Cliente presente em quatro sistemas**
>
> Um analista de crédito consulta CRM, plataforma de originação, cobrança e WhatsApp para montar o contexto de uma renegociação. Entity Resolution reúne os quatro registros em um perfil só, disponível antes do atendimento.

> **Empresa com ID de negócio próprio**
>
> A empresa já emite um código interno único por cliente em todos os sistemas. Apontando esse código como `external_id`, o Memory consolida sem matching probabilístico e o onboarding acelera.

***

## Próximos passos

> **[GraphRAG](https://docs.strattum.ai/memory/graphrag.md)**
>
> Veja como o Memory expande o contexto pelas relações da entidade resolvida.

> **[Configurar ontologia](https://docs.strattum.ai/getting-started/configuration.md#passo-3--ontologia-do-memory)**
>
> Defina os tipos de entidade e o confidence threshold do matching.

> **[Memory](https://docs.strattum.ai/memory/overview.md)**
>
> Volte à visão geral do grafo de contexto.

> **[FAQ — Ontologia](https://docs.strattum.ai/faq/ontology.md)**
>
> Perguntas comuns sobre modelagem de entidades no grafo.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.