Converse com uma base de vendas em português — o app traduz a pergunta em SQL, executa numa base SQLite (modo somente leitura) e responde com tabela + gráfico.
Construído com Streamlit + LangChain + Groq (llama-3.3-70b-versatile).
app.py— interface Streamlit (chat, sidebar, render de tabela/gráfico)agent.py— agente SQL (LangChain + Groq) e tratamento de erros da APIdatabase.py— cria e populavendas.dbcom 500 registros de exemplotheme.py— tema visual (CSS + componentes HTML)
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # Linux/Mac
pip install -r requirements.txtCrie um .env (veja .env.example) com sua chave da Groq:
GROQ_API_KEY=...
Depois:
streamlit run app.pyO banco
vendas.dbé criado e semeado automaticamente na primeira execução, então não é necessário rodardatabase.pymanualmente.
No Windows há também o atalho run.bat.
- Suba o repositório no GitHub (o
.enve o*.dbficam de fora pelo.gitignore— isso é esperado). - Em share.streamlit.io, aponte para
app.py. - Em Settings → Secrets, adicione:
GROQ_API_KEY = "sua_chave" - Deploy. O
vendas.dbé gerado no primeiro carregamento.
A Groq aplica limites por minuto (TPM/RPM) e por dia (TPD/RPD). O app diferencia os dois: perguntas pesadas podem atingir o limite por minuto temporariamente — basta aguardar alguns segundos; isso não consome a cota diária.