Spaces:
Sleeping
Sleeping
title: Norus Tool | |
emoji: 🔥 | |
colorFrom: green | |
colorTo: purple | |
sdk: docker | |
app_file: app.py | |
pinned: true | |
# NORUS Tool 🧠📄 | |
[](https://huggingface.co/spaces/mabil/norus-tool) | |
**NORUS** (Novelty and Originality Recognition Utility System) è uno strumento basato su intelligenza artificiale che consente l'analisi semantica di articoli scientifici in formato PDF, confrontandoli con articoli locali o pubblicati su PubMed. Il tool restituisce misure di **similarità semantica**, **token overlap** e un indice composito chiamato **OUI (Originality & Uniqueness Index)**. | |
## 🚀 Funzionalità principali | |
- ✅ Caricamento PDF da analizzare | |
- 📂 Confronto con PDF locali o articoli da PubMed | |
- 🤖 Estrazione di embedding semantici tramite SciBERT | |
- 📊 Calcolo di: | |
- Similarità semantica (cosine similarity) | |
- Sovrapposizione testuale (token overlap) | |
- Indice OUI (originalità e novità) | |
- 📈 Visualizzazione interattiva dei risultati via Chart.js | |
## 🧪 OUI - Originality & Uniqueness Index | |
\`\`\`math | |
OUI = 1 - (α × semantic_similarity + β × token_overlap) | |
\`\`\` | |
- α = 0.7 → penalizza la somiglianza semantica | |
- β = 0.3 → penalizza la ripetizione letterale | |
- L'OUI misura **quanto un documento è originale**, sia nel contenuto che nella forma. | |
## 🧱 Architettura | |
- `Flask` come backend web | |
- `pdfplumber` per l'estrazione del testo dai PDF | |
- `nltk` per preprocessing linguistico | |
- `sentence-transformers` con modello `allenai/scibert_scivocab_uncased` | |
- `requests` per l'interfaccia con PubMed | |
## 📂 Struttura del progetto | |
``` | |
. | |
├── app.py | |
├── Dockerfile | |
├── requirements.txt | |
├── static/ | |
├── templates/ | |
├── uploads/ | |
├── README.md | |
``` | |
## ▶️ Esecuzione locale | |
Per eseguire localmente: | |
1. Assicurati di avere Python 3.9+ | |
2. Installa le dipendenze: | |
\`\`\`bash | |
pip install -r requirements.txt | |
\`\`\` | |
3. Avvia l'app: | |
\`\`\`bash | |
python app.py | |
\`\`\` | |
Apri il browser su `http://localhost:7860` | |
## 📡 Deploy su Hugging Face Spaces | |
Puoi caricare questo progetto come Space Docker-based su Hugging Face. Il `Dockerfile` è già configurato. | |
--- | |
--- | |
🧠 Developed by Marina Bilotta – Computational Chemistry & AI Research | |