Aplicação web simples que utiliza Inteligência Artificial para classificar emails como Produtivos ou Improdutivos e sugerir respostas automáticas com base nessa classificação.
O projeto foi desenvolvido como parte de um processo seletivo para vaga de desenvolvedor, seguindo os requisitos propostos.
- Upload de emails nos formatos .txt ou .pdf
- Inserção direta de texto do email
- Classificação automática do email:
- Produtivo → requer ação ou resposta
- Improdutivo → não requer ação imediata
- Sugestão de resposta automática utilizando IA
- Backend em Python (Flask)
- Frontend em HTML, CSS (BootStrap) e JavaScript
- Classificação de emails: modelo de Text Classification usando Hugging Face Transformers
- Geração de respostas: Google Gemini API (modelo Gemini Pro) utilizando free tier para testes
A arquitetura foi pensada de forma modular, permitindo fácil substituição do modelo de IA no futuro.
Projeto/
├── app.py
├── .env
├── requirements.txt
├── ai/
│ ├── __init__.py
│ ├── classifier.py
│ ├── responder.py
│ └── train_classifier.py
├── data/
│ └── emails.csv
├── utils/
│ ├── __init__.py
│ └── pdf_reader.py
├── templates/
│ └── index.html
├── static/
│ └── main.js
└── README.md
- Python 3.10+
- pip
- Conta Google para gerar a API Key do Gemini (free tier)
git clone https://github.com/MarcosDasp/ProdMail-AI.git
cd ProdMail-AIWindows (PowerShell):
python -m venv venv
venv\Scripts\activateLinux / macOS:
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt-
Acesse: https://aistudio.google.com/
-
Faça login com Google
-
Clique em Get API key
-
Crie uma chave
-
Copie a key
O Google possui um período de avaliação gratuita, onde será possível testar a aplicação. Porém é necessario cadastrar um cartão (sem cobranças durante o período do teste)
- Crie um arquivo
.envna raiz do projeto com o seguinte conteúdo:
GEMINI_API_KEY=your_api_key_here
⚠️ O arquivo.envnão deve ser versionado.
Antes de executar a aplicação, é necessário treinar o modelo responsável por classificar os e-mails como Produtivo ou Improdutivo.
O projeto já inclui:
- O script de treinamento:
ai/train_classifier.py - O dataset de treinamento (já presente no repositório)
- Execute o script de treinamento:
python ai/train_classifier.pyObservação: o treinamento precisa ser executado apenas uma vez, a menos que o dataset seja alterado.
python app.pyA aplicação normalmente estará disponível em:
-
Texto simples:
"Preciso de ajuda com meu acesso ao sistema"
-
Upload de arquivo:
email.txtemail.pdf
A resposta exibirá:
- Categoria do email
- Sugestão de resposta automática
- Python
- Flask
- Hugging Face Transformers
- Google Gemini API
- HTML5 / BootStrap / JavaScript
- O uso da IA de geração de respostas depende de limites do free tier da Google Gemini API
- O projeto foi desenvolvido com foco em clareza, modularização e facilidade de execução
- A classificação pode ser melhorada com mais dados de treinamento
Este projeto é destinado exclusivamente para fins educacionais e avaliação técnica.