2026-04-13 08:02:48 +02:00
|
|
|
# CLAUDE.md — RAG from Scratch
|
|
|
|
|
|
2026-04-15 11:38:45 +02:00
|
|
|
## Regole invarianti
|
2026-04-13 08:02:48 +02:00
|
|
|
|
2026-04-15 11:38:45 +02:00
|
|
|
- **Lingua:** Rispondi sempre in italiano.
|
2026-04-20 11:05:20 +02:00
|
|
|
- **Venv:** Usa `.venv/bin/python` o `source .venv/bin/activate`. Mai `pip`/`python` di sistema.
|
|
|
|
|
- **`raw.md` immutabile:** La copia di lavoro è sempre `clean.md`.
|
2026-04-13 08:02:48 +02:00
|
|
|
|
2026-04-15 11:38:45 +02:00
|
|
|
---
|
|
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
## Pipeline
|
2026-04-15 11:38:45 +02:00
|
|
|
|
|
|
|
|
```
|
2026-04-20 11:05:20 +02:00
|
|
|
PDF → conversione → chunking → verifica → vettorizzazione → retrieval
|
2026-04-15 11:38:45 +02:00
|
|
|
```
|
|
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
`--stem` = nome PDF senza estensione = nome collection ChromaDB.
|
2026-04-13 08:02:48 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
Per i path degli script e degli output usa `git ls-files` o esplora la root: la struttura è in evoluzione verso un programma unico.
|
2026-04-15 11:38:45 +02:00
|
|
|
|
|
|
|
|
---
|
2026-04-13 08:02:48 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
## Configurazione
|
2026-04-15 11:38:45 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
`config.py` è la fonte di verità: `EMBED_MODEL`, `OLLAMA_MODEL`, `TOP_K`, `TEMPERATURE`, `SYSTEM_PROMPT`.
|
2026-04-15 11:38:45 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
**Se cambi `EMBED_MODEL`:** riesegui ingest con `--force` — embedding incoerenti non producono errori ma risposte insensate.
|
2026-04-15 11:38:45 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
**Se cambi `MIN_CHARS` / `MAX_CHARS`:** cerca tutte le occorrenze nel repo e sincronizza.
|
2026-04-15 11:38:45 +02:00
|
|
|
|
|
|
|
|
---
|
2026-04-13 08:02:48 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
## Workflow consigliato
|
2026-04-15 11:38:45 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
1. Converti il PDF con lo script di conversione
|
|
|
|
|
2. `/prepare-md conversione/<stem>/clean.md`
|
|
|
|
|
3. Chunking
|
|
|
|
|
4. Vettorizza con `--stem <stem>`
|
|
|
|
|
6. `python rag.py --stem <stem>`
|
2026-04-15 11:38:45 +02:00
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
## Skills custom
|
2026-04-15 11:38:45 +02:00
|
|
|
|
2026-04-20 11:05:20 +02:00
|
|
|
- `/prepare-md <path|stem>` — corregge `clean.md`: sillabazione, artefatti, header, paragrafi spezzati, gerarchia.
|
2026-04-20 14:25:18 +02:00
|
|
|
- `/post-chunk <stem>` — verifica chunk, dry-run, fix via `fix_chunks.py` e prepara per la vettorizzazione.
|