Skip to content

Kaxatcmd/holmes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔍 Holmes v0.3.0

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.


✨ Funcionalidades

  • 🌍 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

🗂️ Estrutura do Projeto

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

⚙️ Instalação

# 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.


▶️ Execução

python main.py

🛠️ Tecnologias

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

📋 Temas Suportados

Tema Subtemas
History Societies, Civilizations, Geopolitics
Science Medicine, Astronomy, Physics, Chemistry
Technology Communications, Industrial Revolutions, Generative AI

🎓 Contexto Académico

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.

About

Wikipedia Information & Disinformation Manager

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages