Este projeto é um assistente virtual criado usando FastAPI, MongoDB, e o modelo Ollama da Langchain Community, projetado para responder perguntas específicas. O assistente busca informações em uma base de conhecimento armazenada no MongoDB e, se não encontrar uma resposta relevante, utiliza o modelo de IA para gerar respostas baseadas em contexto.
- Busca em base de conhecimento (MongoDB): O assistente verifica se há informações relacionadas ao
prompt
fornecido na base de conhecimento. - Geração de respostas com IA: Se a busca na base de dados não encontrar resultados suficientes, o sistema consulta o modelo de IA Ollama para gerar uma resposta.
- Serviço de arquivos estáticos: Servir páginas HTML, CSS, e JavaScript através do FastAPI.
- CORS habilitado: Para permitir requisições de diferentes origens.
- app.py: Arquivo principal do FastAPI que define o endpoint
/agent
e a configuração do servidor. - main.py: Outro arquivo do FastAPI responsável por servir a interface do usuário e lidar com as requisições para o assistente virtual.
- static/: Diretório contendo arquivos estáticos como imagens, estilos CSS, e JavaScript.
- index.html: Página inicial que exibe a interface do chat do Genius.
- .env: Arquivo contendo variáveis de ambiente (por exemplo,
MONGO_URI
). - requirements.txt: Lista de dependências necessárias para o projeto.
- Python 3.8+
- MongoDB Atlas (ou uma instância local de MongoDB)
- Ollama: Modelo de IA da Langchain Community