marker
Aggiunge _t_demote_h1 in _headers.py: se il documento contiene ≥5 header # con contenuto testuale (lettere iniziali), i # vengono demotati a ## creando la gerarchia ## (parti) → ### (sezioni) invece di # → ###. Utile per manuali strutturati in parti principali (h1) con sezioni (h3) senza livello intermedio h2. La soglia di 5 evita falsi positivi su documenti con un solo titolo h1 o h1 da artefatti di encoding. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
PDF → Markdown
Converte PDF digitali in Markdown strutturato e pulito.
Stack: Python · opendataloader-pdf (XY-Cut++) · Java 11+
Compatibile con: Linux · macOS · Windows (WSL2)
Setup
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Java 11+ richiesto:
sudo apt install default-jdk # Ubuntu/Debian/WSL
java -version
Utilizzo
# Singolo PDF
python conversione/pipeline.py --stem <nome>
# Tutti i PDF in sources/
python conversione/pipeline.py
# Forza riesecuzione
python conversione/pipeline.py --stem <nome> --force
--stem = nome file PDF senza estensione.
Esempio: sources/analisi1.pdf → --stem analisi1
Output
Per ogni stem in conversione/<stem>/:
| File | Descrizione |
|---|---|
raw.md |
Markdown grezzo — non modificare |
clean.md |
Markdown pulito — copia di lavoro |
structure_profile.json |
Struttura rilevata e metriche |
report.json |
Statistiche complete della conversione |
Validazione batch
python conversione/validate.py
Stampa una tabella di stato su tutti gli stem convertiti.
Vedi conversione/README.md per dettagli sulla pipeline e i tipi di documento supportati.
Description
Sistema RAG costruito da zero su qualsiasi PDF digitale. Ogni fase della pipeline - estrazione, chunking adattivo, vettorizzazione, retrieval e generazione - è uno step separato e verificabile. Gira interamente in locale su CPU, senza GPU e senza cloud. Stack: Python - Ollama - ChromaDB.
Languages
Python
99.6%
Shell
0.4%