Skip to content

jgnevess/desafio-python

Repository files navigation

Classificador de E-mails Automático

Este projeto é uma aplicação Flask que classifica e responde e-mails automaticamente com base no seu conteúdo. Utiliza modelos LLM (OpenAI GPT e Google Gemini) para analisar o texto e gerar respostas apropriadas.

Funcionalidades

  • Classificação de e-mails em: Produtivo, Improdutivo ou Inválido.

  • Geração automática de respostas com base na classificação.

  • Upload de arquivo (.txt ou .pdf) ou envio de texto diretamente.

  • Interface web simples em Flask com Bootstrap.

  • Dockerizado para fácil deploy.

Tecnologias

  • Python 3.11

  • Flask

  • Docker / Docker Compose

  • OpenAI GPT-5

  • Google Gemini AI

Pré-requisitos

  • Python 3.11

  • Docker e Docker Compose instalados

  • Variáveis de ambiente configuradas:

Como rodar

1. Com docker

1.1 Clonar o repositório

git clone git@github.com:jgnevess/desafio-python.git
cd desafio-python

1.2 Configurar as variáveis de ambiente

export OPENAI_API_KEY="sua_chave_openai"
export GOOGLE_API_KEY="sua_chave_gemini"

1.3. Subir a aplicação

sudo docker compose up -d

1.4. Acessar no navegador

http://localhost:5000

2. Localmente

pip install -r requirements.txt
export OPENAI_API_KEY="sua_chave_openai"
export GOOGLE_API_KEY="sua_chave_gemini"
python app.py

Uso

  1. Abra a interface no navegador.
  2. Escolha se quer enviar um arquivo ou texto.
  3. Clique em Enviar.
  4. Veja a classificação e a resposta sugerida.

Observação

  • Certifique-se de que as chaves de API estejam corretas e ativas.

Estrutura do projeto

├── exemplos
│   ├── improdutivo.txt
│   ├── invalido.txt
│   └── produtivo.txt
├── services
│   ├── __init__.py
│   ├── ai.py
│   └── process.py
├── static
│   ├── css
│   │   └── style.css
│   └── js
│       ├── requests.js
│       └── ui.js
├── templates
│   └── index.html
├── tests
│   ├── __init__.py
│   └── ai_test.py
├── .dockerignore
├── .gitignore
├── Dockerfile
├── README.md
├── __init__.py
├── app.py
├── docker-compose.yml
└── requirements.txt

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors