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

# Agente Facematch

> Sistema para comparação facial 1:1 entre duas imagens para determinar se correspondem à mesma pessoa

<Info>
  **Versão:** 1.3.0-public
</Info>

O **Agente Facematch** é um sistema multi-agente que emprega a técnica de "correspondência facial 1:1" para determinar se duas imagens faciais correspondem à mesma pessoa, aplicando um nível de tolerância definido para garantir a precisão dos resultados.

Este agente pode ser usado quando você precisa verificar a presença de um rosto e avaliar sua similaridade.

## Experiência do usuário

### ✅ Checklist para começar sem bloqueios

* As **entradas** (foto do documento e foto do vídeo selfie) devem vir do **Agente Document Check** e do **Agente de Verificação de Presença**.
* Configure o **limite** de comparação (recomendado: 60%) e o **provedor** (por exemplo Jelou, ou outros).
* <u>Recomendado:</u> defina o fluxo de atendimento caso habilite o **Human in the loop** (quem revisa, tempos de resposta e o que acontece se não houver resposta).

### Validações

<CardGroup cols={3}>
  <Card title="Detecção de Rosto" icon="face-smile">
    Identificamos a presença e localização de rostos nas imagens obtidas.
  </Card>

  <Card title="Comparação Facial" icon="user-check">
    Verificamos se os rostos detectados correspondem.
  </Card>

  <Card title="Definição do Nível de Similaridade" icon="percentage">
    Calculamos o percentual de similaridade entre as imagens para confirmar se pertencem à mesma pessoa.
  </Card>
</CardGroup>

### Processo

O vídeo selfie obtido durante a verificação de presença é comparado contra duas possíveis fontes:

* **Foto do Documento de Identidade:** Usamos a foto extraída do documento, garantindo previamente que o documento é autêntico e as informações foram verificadas com fontes governamentais, garantindo um alto padrão de segurança de identidade.
* **Foto Registrada na Entidade Governamental:** Quando disponível, também comparamos o vídeo selfie com a foto armazenada nos bancos de dados governamentais.

## Configuração

<Tabs>
  <Tab title="Entradas">
    <AccordionGroup>
      <Accordion title="% Limite aceito para comparação facial" icon="percentage">
        <ParamField body="% Limite aceito para comparação facial" type="string" required>
          Variável: `facematchThreshold`. Limite mínimo necessário para a comparação de facematch.

          **Tipo:** Texto (0-100)

          **Recomendado:** 60%
        </ParamField>
      </Accordion>

      <Accordion title="Foto do rosto extraída do documento de identidade" icon="id-card">
        <ParamField body="Foto do rosto extraída do documento de identidade" type="string" required>
          Variável: `imgDocumentNumber`. Foto extraída do documento de identidade.
        </ParamField>
      </Accordion>

      <Accordion title="Foto do Vídeo Selfie" icon="video">
        <ParamField body="Foto do Vídeo Selfie" type="string" required>
          Variável: `imgVideoSelfie`. Foto extraída do Vídeo Selfie.
        </ParamField>
      </Accordion>

      <Accordion title="Provedor" icon="server">
        <ParamField body="Provedor" type="string" required>
          Variável: `provider`. Provedor de facematch.

          **Valores disponíveis:** `Jelou`, `Facephi`

          **Recomendado:** `Jelou`
        </ParamField>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Saídas">
    ### ✅ Sucesso

    <AccordionGroup>
      <Accordion title="Verificação Facial Bem-sucedida" icon="circle-check">
        A verificação facial foi concluída com sucesso.

        **Variável:** `facematchSuccess`

        <Tip>
          Para acessar as informações nesta variável, use o comando `$memory.get("result_facematch")`
        </Tip>

        **Exemplo de resposta:**

        ```json theme={null}
        {
          "result_facematch": {
            "facematch_result": "approved",
            "facematch_confidence": 99
          }
        }
        ```

        **Campos importantes:**

        * `facematch_result`: Resultado da comparação (exemplo: `approved` ou `decline`)
        * `facematch_confidence`: Nível de confiança em percentual (0-100)
        * `error_name`: Nome do erro se ocorreu algum (vazio se não houver erro)

        <Note>
          O objeto `result_facematch` corresponde à resposta da ferramenta **Facematch AWS Recognition (TOOL)**.
        </Note>

        **Informações salvas na Memória:**

        O agente salva automaticamente as seguintes informações em [variáveis de memória](/pt/guias/variaveis/memory):

        ```json theme={null}
        {
          "facematchResult": true,
          "result_facematch": {
            "facematch_result": "approved",
            "facematch_confidence": 99,
            "error_name": ""
          }
        }
        ```

        **Variáveis disponíveis:**

        * `$memory.facematchResult`: Indica se a verificação facial foi bem-sucedida (`true`) ou não (`false`)
        * `$memory.result_facematch`: Objeto com o resultado completo da comparação facial (resposta da ferramenta Facematch AWS Recognition)

        <Tip>
          Você pode acessar essas informações em qualquer ponto do fluxo usando `$memory.get("facematchResult")` ou `$memory.get("result_facematch")`.
        </Tip>
      </Accordion>
    </AccordionGroup>

    ### 🔴 Erros

    <AccordionGroup>
      <Accordion title="Verificação Facial Malsucedida" icon="triangle-exclamation">
        A verificação facial não foi bem-sucedida.

        **Variável:** `facematchFailedError`
      </Accordion>
    </AccordionGroup>
  </Tab>
</Tabs>

## Integração

<Steps>
  <Step title="Selecione o fluxo">
    Acesse o Fluxo dentro da empresa onde você precisa instalar este Agente. Clique no botão flutuante com o nome do fluxo e o ícone de pasta para abrir o painel de Workflows e Ferramentas. Selecione "Abrir Marketplace" e lá pesquise o nome do Agente e faça o download.
  </Step>

  <Step title="Configuração inicial">
    A primeira coisa a configurar é a **Versão** encontrada em "Configurações avançadas".

    <Tip>
      **Importante:** Todos os campos neste Agente são **Obrigatórios**. Você deve inserir:

      * As entradas a comparar (foto do documento e foto do vídeo selfie)
      * O limite necessário (recomendado: 60%)
      * O provedor (geralmente deve ser "Jelou")
    </Tip>
  </Step>

  <Step title="Configure as Saídas">
    Este Agente tem 1 saída de erro e 1 saída de sucesso. Cada uma pode ser direcionada para:

    * Uma caixa de texto com uma mensagem personalizada
    * O PMA (Painel Multiagente) se o cliente tiver este módulo
  </Step>

  <Step title="Execute testes">
    Com a configuração que você acabou de concluir, pode prosseguir para executar testes usando um fluxo ou outro agente como precursor. Certifique-se de que as entradas venham do **Agente Document Check** e do **Agente de Verificação de Presença**.
  </Step>
</Steps>
