Módulo 4 · Projetos Práticos Avançados

Painel de decisão com IA e Streamlit

Aula 12 de 15 Aula de 9 min Atualizado em 30 de outubro de 2026
Progresso no curso80%

Nesta aula

Painel que leva a uma ação.

Um painel bom não é o que tem mais gráficos. É o que leva alguém a agir. Aqui você monta um painel com Streamlit, uma biblioteca de Python que transforma um script em página web. A IA ajuda em três lugares, mas a decisão continua com uma pessoa.

Pergunta, ação e comparação

Cada elemento do painel precisa responder a uma pergunta e disparar uma ação. Se não dispara nada, sai da tela. "Quantos itens aguardam uma pessoa há mais de 24 horas?" dispara "realocar alguém". "Quantos e-mails entraram esta semana?" sozinho não dispara nada.

Todo número precisa de comparação: o período anterior, uma meta ou a mediana das últimas semanas. Um número solto é decoração.

Streamlit: o script roda de novo

A cada clique num filtro, o script inteiro roda de novo, de cima a baixo. Por isso, o que é caro de calcular precisa de cache, uma memória guardada entre as execuções. Todo cache deve ter prazo de validade, o ttl. Sem ele, uma consulta antiga pode ficar na tela por horas.

O que cada pessoa escolheu, como o período, mora em st.session_state. Cada aba tem a sua sessão. O erro comum é guardar a escolha numa variável global: ela é compartilhada por todos, e a tela de uma pessoa muda a de outra.

Dados só para leitura

O painel lê a fila e nunca escreve nela. No SQLite, abra o banco com um endereço terminado em mode=ro. Qualquer tentativa de escrita falha, e um bug no painel não corrompe a fila. A consulta traz só as colunas que a tela usa: o texto do e-mail, com dado pessoal, nem chega ao painel.

A fila grava a hora em UTC, e o painel mostra o horário de Brasília. Sem converter antes de agrupar, os itens das 21h às 23h59 caem no dia seguinte.

A IA em três lugares

A IA nunca soma, conta ou decide sozinha. O código calcula o que é exato.

Coisa de profissional

Fazer login não é ter permissão. A documentação do Streamlit diz que o OpenID Connect suporta autenticação, mas não autorização. Ou seja: a conta do Google prova quem é a pessoa, mas quem decide quem pode ver o painel é a sua lista de e-mails permitidos. Quem publica painel de verdade monta as quatro camadas: servidor escutando só no endereço local, proxy com HTTPS na frente, login e lista de permitidos. Pular a última deixa os dados abertos para qualquer pessoa com uma conta.

LGPD: mostre só o agregado

Um painel com dados de e-mails de clientes trata dado pessoal, mesmo sem nome. Uma linha como "reembolso de 1.200 reais em 14/10" pode identificar alguém. Mostre contagens, taxas e medianas. O detalhe por item fica só com quem atende.

Cuidado

O arquivo de segredos, com a chave da API e o segredo do login, nunca vai para o repositório. Coloque-o no .gitignore. Se um segredo vazou, troque-o na hora.

Prática · 5 min

  1. Liste os elementos do seu painel e escreva a pergunta e a ação de cada um. Apague os que ficaram sem ação.
  2. Escreva o título de cada gráfico como pergunta e leia em voz alta para alguém de fora.
  3. Escolha um número e defina a comparação dele.
Entregável: uma lista com pergunta, ação e comparação de cada elemento do painel.

Resumo

Fontes

Lidas em 30 de outubro de 2026.

  1. Streamlit. Authentication and personalization: o OIDC e a autorização.
  2. Streamlit. Caching overview: cache de dados e ttl.
  3. Streamlit. Session State.

Quiz da aula

Três situações para aplicar o que viu.

Aula 12 de 15

Antes de seguir para a próxima aula

Coloque em prática o que viu. As caixas ficam marcadas neste navegador, para você voltar depois.

Ficou com dúvida nesta aula? O time da IV Help responde pessoalmente no WhatsApp.

Perguntar no WhatsApp