Buscador_Rol_vs.4_IA / README_melhorado.md
tuliodisanto's picture
Update README_melhorado.md
ac17ac6 verified
|
raw
history blame
4.06 kB

A lógica implementada é a seguinte:

Busca Inicial Rápida: Seu sistema atual (fuzzy, exata, etc.) age como um filtro para encontrar um conjunto de procedimentos candidatos.

Carregamento Local: O servidor app.py carrega o modelo BERTimbau de uma pasta local (./models/) ao iniciar.

Reclassificação Semântica: Os candidatos da busca inicial são passados para o modelo, que calcula um score semântico para cada um em relação à sua busca.

Resultado Final Ordenado: A lista final é reordenada com base nesse score semântico, e o melhor resultado é destacado.

Interface Melhorada: O index.html é atualizado para exibir essa lista final ordenada, destacar a melhor correspondência e mostrar o novo score semântico.

  1. README_melhorado.md (Atualizado)

Este arquivo agora inclui as novas dependências e as instruções para baixar o modelo localmente.

Generated markdown

Buscador de Procedimentos - RN 465 (Versão Semântica)

Descrição

Este é um buscador de procedimentos médicos que utiliza uma abordagem de duas etapas para máxima precisão:

  1. Busca Rápida (Filtro): Utiliza busca por código, textual, fuzzy e por palavras-chave para encontrar um conjunto de procedimentos candidatos relevantes.
  2. Reclassificação Semântica (Precisão): Utiliza o modelo de linguagem BERTimbau para analisar o significado da sua busca e reordenar os candidatos, apresentando o resultado mais relevante semanticamente em primeiro lugar.

Isso combina a velocidade da busca tradicional com a precisão da inteligência artificial para entender a intenção do usuário.

Instalação e Execução

Pré-requisitos

  • Python 3.7 ou superior
  • Git e Git LFS (para baixar o modelo facilmente)

Passos para Instalação

  1. Clone o projeto ou descompacte o arquivo:

    # Se recebeu um zip:
    unzip buscador_procedimentos.zip
    cd buscador_procedimentos/
    
  2. Baixe o Modelo de Linguagem (BERTimbau): Este passo precisa ser feito apenas uma vez. Ele irá baixar o modelo (aprox. 400MB) para uma pasta local models/ para que a aplicação funcione 100% offline.

    # Crie a pasta para os modelos
    mkdir models
    cd models
    
    # Instale o Git LFS se não tiver
    # git lfs install
    
    # Clone o repositório do modelo
    git clone https://huggingface.co/neuralmind/bert-base-portuguese-cased
    
    # Volte para a pasta principal do projeto
    cd ..
    
  3. Instale as dependências do Python:

    pip install Flask pandas thefuzz python-Levenshtein unidecode sentence-transformers torch
    
  4. Execute o buscador:

    python app.py
    

    Aguarde a mensagem [SERVIDOR PRONTO] no terminal. O primeiro carregamento pode ser um pouco mais lento devido ao modelo.

  5. Acesse no navegador: Abra seu navegador e acesse: http://127.0.0.1:5000/

Como Usar

Digite o procedimento desejado. Exemplos:

  • cirurgia para corrigir miopia
  • exame de sangue completo
  • ressonancia magnetica do joelho
  • tratamento para apendicite

Interpretação dos Resultados

A lista de resultados é ordenada pela relevância semântica.

  • Melhor Correspondência: O primeiro resultado, destacado com uma borda verde e um selo, é a recomendação do sistema como o mais provável de ser o que você procura.
  • Score Semântico: Uma pontuação de 0 a 100 que indica o quão similar é o significado do procedimento encontrado com o termo que você buscou.
  • Score de Busca: A pontuação original do método de busca inicial (fuzzy, etc.).
  • Tipo de correspondência: Indica como o resultado foi encontrado na busca inicial (filtro).

Estrutura dos Arquivos

  • app.py: Aplicação Flask principal, carrega os dados e o modelo.
  • enhanced_search_v2.py: Módulo que executa a busca inicial e a reclassificação semântica.
  • templates/index.html: Interface web (front-end).
  • models/bert-base-portuguese-cased/: (NOVO) Contém os arquivos do modelo de linguagem.
  • `r