Wikipedia Information & Disinformation Manager
Aplicação desktop em Python que consulta artigos da Wikipédia, avalia a qualidade do conteúdo e deteta padrões de texto gerado por inteligência artificial, combinando métricas heurísticas com um modelo RoBERTa treinado especificamente para deteção de texto GPT.
- 🌍 Pesquisa de artigos por tema e subtema em Inglês e Português
- 📊 Score de qualidade do artigo (0-100) com análise detalhada
- 🤖 Deteção de texto gerado por IA
- Métricas heurísticas: Burstiness, TTR, Repetição, POS Tagging
- Modelo RoBERTa (
roberta-base-openai-detector)
- 🗄️ Histórico de pesquisas persistente em SQLite
- ⚡ Cache entre sessões em JSON com expiração automática (7 dias)
- 📁 Exportação de relatórios em TXT e JSON
- 📈 Dashboard com gráficos interativos (mplcursors)
- 🌑 Interface dark mode com Tkinter
holmes/
├── main.py ← Ponto de entrada
├── config.json ← Configuração global
├── requirements.txt ← Dependências
├── core/
│ ├── wiki_fetcher.py ← Consulta Wikipedia API (EN/PT)
│ ├── filter_engine.py ← Motor de relevância por tema
│ ├── quality_scorer.py ← Score de qualidade do artigo
│ ├── ai_detector.py ← Deteção de texto IA (heurísticas + RoBERTa)
│ └── database.py ← Histórico SQLite
├── ui/
│ └── app.py ← Interface gráfica Tkinter
├── utils/
│ ├── paths.py ← Caminhos centralizados do projeto
│ ├── logger.py ← Sistema de logging
│ ├── exporter.py ← Exportação TXT/JSON
│ └── dashboard.py ← Gráficos matplotlib
└── data/
└── exports/ ← Relatórios exportados
# 1. Clonar o repositório
git clone https://github.com/Kaxatcmd/holmes.git
cd holmes
# 2. Criar e ativar ambiente virtual
python3 -m venv holmes_env
source holmes_env/bin/activate # Linux/Mac
holmes_env\Scripts\activate # Windows
# 3. Instalar dependências
pip install -r requirements.txt
# 4. Recursos NLTK necessários
python -c "
import nltk
nltk.download('punkt')
nltk.download('stopwords')
nltk.download('averaged_perceptron_tagger_eng')
"
⚠️ O modelo RoBERTa (~500MB) é descarregado automaticamente na primeira utilização. Requer ligação à internet.
python main.py| Biblioteca | Utilização |
|---|---|
wikipedia-api |
Consulta de artigos |
nltk |
Processamento de linguagem natural |
transformers + torch |
Modelo RoBERTa de deteção IA |
matplotlib + mplcursors |
Dashboard interativo |
tkinter |
Interface gráfica |
sqlite3 |
Base de dados de histórico |
| Tema | Subtemas |
|---|---|
| History | Societies, Civilizations, Geopolitics |
| Science | Medicine, Astronomy, Physics, Chemistry |
| Technology | Communications, Industrial Revolutions, Generative AI |
Projeto desenvolvido no âmbito do curso de Programação Avançada em Python. Demonstra integração de múltiplas bibliotecas, arquitetura modular, boas práticas de desenvolvimento e uso de modelos de linguagem para análise textual.