SofiA é uma assistente virtual desenvolvida para suporte interno de equipes comerciais e operacionais, utilizando RAG (Retrieval-Augmented Generation) com integração a GroqAI (compatível também com OpenAI). Ela é capaz de ler documentos .csv e .pdf, realizar buscas inteligentes em base de dados (Pinecone) e atender tanto via interface Streamlit quanto via Telegram Bot.
- ✅ Leitura de múltiplos
.csv,.pdfe arquivos do Google Drive - ✅ Integração RAG moderna (
create_retrieval_chain) com LangChain - ✅ Busca semântica otimizada por embeddings da Cohere
- ✅ Persistência de contexto inteligente em Pinecone
- ✅ Interface no Streamlit estilo WhatsApp, com tema claro/escuro
- ✅ Integração via Telegram Bot oficial
- ✅ Controle automático de limites de tokens (respeitando planos gratuitos)
Clone o repositório e instale as dependências:
pip install -r requirements.txtpython run_integration.pypython app/rag_chain/rag_chain.pyConfigure seu token no .env e execute:
python main_telegram.pyAcesse o Bot da Sofia agora mesmo pelo Telegram:
👉 @sofiahouer_bot
- GROQ_API_KEY =sua_chave
- OPENAI_API_KEY =sua_chave
- COHERE_API_KEY= sua_chave
- PINECONE_API_KEY= sua_chave
- PINECONE_INDEX= nome_do_seu_indexador
- GOOGLE_DRIVE_FILE_LINK=https://drive.google.com/drive/u/1/folders/1L4D0a6ULwGWtJGFgHbyRoXiZiIAFwGaK
- TELEGRAM_API = chave_do_seu_BotFather
Todas as variáveis devem estar no seu .env na raiz do projeto.
- Python 3.11+
- Streamlit
- Telegram Bot (python-telegram-bot)
- LangChain (v0.1+ - LCEL)
- Groq / OpenAI
- Cohere Embeddings
- Pinecone Vector Database
- Google Drive API
- Pandas, PyPDF2, Glob, dotenv
- Melhorias visuais no Streamlit (componentes nativos para upload)
- Integração com WhatsApp via API (Cloud API / Z-API)
- Armazenamento de histórico de conversa em banco de dados
- Logs de conversação para análises internas
- Sistema de usuários autenticados para gestão de permissões
Este projeto possui um template padrão de Pull Request para facilitar revisões e padronizar entregas.
- Faça um fork do projeto
- Crie uma branch com sua feature (
git checkout -b feature/sua-feature) - Commit suas alterações (
git commit -m 'feat: Minha nova feature') - Faça o push para o seu fork (
git push origin feature/sua-feature) - Abra um Pull Request
- A SofiA é destinada exclusivamente para uso interno no Grupo Houer.
- Sua comunicação é empática, positiva e alinhada aos valores da empresa.
- Não substitui o atendimento humano em situações críticas ou sensíveis.
Usuário: Quais são os municípios que temos acesso em Rondônia?
Sofia: De acordo com os dados disponíveis, temos acesso aos municípios: Cerejeiras, Colorado do Oeste, Corumbiara, Costa Marques...
Usuário: Qual a CAPAG do município de Niterói (RJ)?
Sofia: Para Niterói (RJ), a classificação CAPAG é A, com base nos indicadores analisados em 2023.
Projeto interno para otimização de atendimento e apoio comercial 🌟