05946bb93f
- step-8/ingest.py: rimuove EMBED_MODEL e OLLAMA_URL hardcoded; li importa da step-9/config.py (fonte di verita unica) - step-7/check_env.py: aggiorna EMBED_MODELS con tutti i modelli del README (aggiunge qwen3-embedding, nomic-embed-text-v2-moe, paraphrase-multilingual); mostra il modello configurato in config.py e verifica proprio quello, non un qualsiasi modello embedding - step-8/README.md: creato
60 lines
1.4 KiB
Markdown
60 lines
1.4 KiB
Markdown
# Step 8 — Vettorizzazione
|
|
|
|
Legge i chunk prodotti da step-6, genera gli embedding tramite Ollama e li
|
|
salva in ChromaDB (vector store persistente su disco).
|
|
|
|
---
|
|
|
|
## Prerequisiti
|
|
|
|
- Step-6 completato (esiste `step-6/<stem>/chunks.json`)
|
|
- Ollama attivo con il modello di embedding scaricato
|
|
- `chromadb` installato (`pip install -r requirements.txt`)
|
|
|
|
---
|
|
|
|
## Configurazione modello
|
|
|
|
Il modello di embedding viene letto da **`step-9/config.py`**:
|
|
|
|
```python
|
|
# step-9/config.py
|
|
EMBED_MODEL = "nomic-embed-text" # ← cambia qui
|
|
```
|
|
|
|
> Il modello scelto qui deve corrispondere a quello usato in step-9.
|
|
> Se lo cambi dopo aver già vettorizzato, devi rieseguire step-8 con `--force`.
|
|
|
|
---
|
|
|
|
## Uso
|
|
|
|
```bash
|
|
# Vettorizza un singolo documento
|
|
python step-8/ingest.py --stem <nome>
|
|
|
|
# Vettorizza tutti i documenti trovati in step-6/
|
|
python step-8/ingest.py
|
|
|
|
# Sovrascrive una collection già esistente
|
|
python step-8/ingest.py --stem <nome> --force
|
|
|
|
# Override modello (senza modificare config.py)
|
|
python step-8/ingest.py --stem <nome> --model bge-m3
|
|
```
|
|
|
|
---
|
|
|
|
## Output
|
|
|
|
I vettori vengono salvati in `chroma_db/<stem>/` come collection ChromaDB con
|
|
distanza coseno. La directory è ignorata da git (generata automaticamente).
|
|
|
|
---
|
|
|
|
## Modelli supportati
|
|
|
|
Stessi modelli raccomandati nel [README di step-7](../step-7/README.md).
|
|
Il modello deve essere scaricato in Ollama prima di eseguire questo script
|
|
(`ollama pull <modello>`).
|