Bem-vindo ao repositório do ChatBot de Atendimento da equipe GenAI Seguros! Este projeto faz parte da Atividade Obrigatória 2 do curso InsurMinds (I2A2).
Equipe:
| Nome | |
|---|---|
| Bruno Corrêa | correabruno321@gmail.com |
| Jhiovana Silva Ribeiro | jhiovanasilva11@gmail.com |
| Luis R G Pereira | luisrgpereira@gmail.com |
| Rodrigo Medeiros Costa | eng.rodrigomdc@gmail.com |
| Rodrigo Souza Aguiar | rodrigo_souza_aguiar@hotmail.com |
Desenvolver um chatbot (assistente virtual) baseado em Inteligência Artificial para automatizar o atendimento ao segurado. O foco é responder a perguntas frequentes e direcionar solicitações, proporcionando respostas rápidas e liberando a equipe humana para casos mais complexos.
Documentação do projeto: GenAI Seguros.
Siga o passo a passo abaixo para rodar a aplicação em sua própria máquina. O projeto possui um orquestrador automatizado (run_application.py) que facilita todo o processo de setup.
- Python 3.10+ instalado.
- Chave de API do Google Gemini (necessária para os modelos de linguagem).
Abra o seu terminal e clone o projeto:
git clone https://github.com/RAguiarEng/GenAI_Seguros.git
cd GenAI_SegurosCrie e ative um ambiente virtual isolado para não conflitar com outros projetos na sua máquina:
# Criar o ambiente virtual (Windows)
python -m venv venv
# Ativar o ambiente (Windows)
venv\Scripts\activate
# Se estiver no Mac/Linux, a ativação é:
source venv/bin/activateInstale as bibliotecsa necessárias contidas no arquivo de requisitos:
pip install -r requirements.txtO projeto necessita de credenciais de API.
- Crie uma cópia do arquivo
.env_examplee renomeie para.env. - Abra o arquivo
.enve insira as suas chaves de API.
# Exemplo de conteúdo .env:
GOOGLE_API_KEY=SUA_API_KEY_AQUI
LLM_PROVIDER=google # ou local
LLM_MODEL=gemini-2.5-flash
EMBEDDING_MODEL=models/gemini-embedding-001
OLLAMA_MODEL=gemma:2b
FASTAPI_HOST=0.0.0.0
FASTAPI_PORT=8000
FRONTEND_URL=http://127.0.0.1:8000 # Ou a URL onde seu frontend será acessado
STREAMLIT_HOST=localhost
STREAMLIT_PORT=8501Importante: Não envie seu arquivo
.envpara o repositório (GitHub, etc.). Ele contém informações sensíveis. Adicione.envao arquivo.gitignorepara evitar que ele seja enviado acidentalmente.
Se optar por rodar o LLM localmente, configure LLM_PROVIDER=local no .env.
Antes de iniciar a aplicacao, baixe o modelo necessario:
ollama pull gemma:2bDepois, mantenha o Ollama ativo em um terminal:
ollama serveEm outro terminal, execute a aplicacao com run_application.py.
Mesmo usando LLM local via Ollama, os embeddings continuam usando Gemini na configuracao atual. Por isso, mantenha
GOOGLE_API_KEYeEMBEDDING_MODEL=models/gemini-embedding-001configurados.
Temos um script central que prepara o banco de dados (vetorizando os documentos se necessário) e sobe a aplicação.
Opção A: Interface Interativa (Streamlit): Executa a interface principal do chatbot com histórico e avatares visuais:
python run_application.py --mode streamlitVídeo da aplicação em funcionamento: Modo Streamlit
Opção B:Modo Web (FastAPI + HTML): Inicia o backend invisível e permite conecdtar uma interface HTML/JS simples:
python run_application.py --mode webVídeo da aplicação em funcionamento: Modo web
Para encerrar a aplicação, basta pressionar Ctrl+C no terminal.
- data/: Documentos PDF originais (Manuais/FAQ) e banco vetorial ChromaDB.
- src/: Código-fonte modularizado contendo os fluxos do LangGraph, RAG e integração com a API Gemini.
run_application.py: O script orquestrador que automatiza o setup e inicialização da aplicação.
Se você for colaborador com código no repositório, consulte também o nosso guia detalhado no arquivo
orientativo_github.md.