2c0b7a462e980264617a81bdab3f6f4085e2a464
- extract.py: aggiunge extract_metadata() — title, author, year, pages via fitz - extract.py: aggiunge markdown_page_separator con <!-- page: N --> tra pagine - extract.py: aggiunge replace_invalid_chars=" " per testo più pulito - runner.py: prepend YAML frontmatter (source/title/author/year/pages) al clean.md - runner.py: mostra title e author rilevati durante validazione 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%