Files
rag-from-scratch/ollama
davide 12effa1a51 refactor: elimina step-7 e step-9, consolida script alla root
- step-9/: config.py, rag.py, retrieve.py → root;
  test_ollama.py → ollama/
- step-7/: eliminata, già coperta da ollama/
- sys.path aggiornati in rag.py, retrieve.py, ingest.py,
  check_env.py (step-7 e ollama)
- Riferimenti step-9/config.py → config.py in tutti i file
2026-04-17 18:50:36 +02:00
..

Ollama — Step 7 (Verifica Ambiente)

Prima di procedere con la vettorizzazione (step 8) devi avere installato:

  • Ollama — server locale per LLM e embedding
  • un modello di embedding (es. qwen3-embedding:0.6b, bge-m3)
  • un modello LLM (es. qwen3.5:4b)
  • chromadb — libreria Python per il vector store

1. Installa Ollama

curl -fsSL https://ollama.com/install.sh | sh

Verifica che il servizio sia attivo:

ollama list

Disinstalla Ollama

# Ferma e rimuovi il servizio systemd
sudo systemctl stop ollama
sudo systemctl disable ollama
sudo rm /etc/systemd/system/ollama.service
sudo systemctl daemon-reload

# Rimuovi il binario
sudo rm /usr/local/bin/ollama

# Rimuovi modelli e dati (opzionale)
sudo rm -rf /usr/share/ollama

# Rimuovi utente e gruppo di sistema (opzionale)
sudo userdel ollama
sudo groupdel ollama

2. Scarica i modelli

Modello di embedding (consigliato)

ollama pull qwen3-embedding:0.6b

Alternative supportate:

  • nomic-embed-text-v2-moe
  • bge-m3
  • nomic-embed-text

Se cambi embedding model rispetto a quello usato in step-8, riesegui ingest con --force e aggiorna EMBED_MODEL in config.py.

Modello LLM (consigliato per 8 GB RAM)

ollama pull qwen3.5:4b

Se usi un modello diverso, aggiorna OLLAMA_MODEL in config.py.

Disinstalla un modello

ollama rm qwen3.5:4b
ollama rm qwen3-embedding:0.6b

3. Installa le dipendenze Python

source .venv/bin/activate
pip install -r requirements.txt

4. Verifica ambiente

source .venv/bin/activate
python ollama/check_env.py

Output atteso (esempio):

✅ ollama trovato nel PATH
✅ ollama risponde correttamente
✅ embedding disponibile: qwen3-embedding:0.6b
✅ LLM disponibile: qwen3.5:4b
✅ chromadb importabile
✅ Ambiente pronto — procedi con la vettorizzazione:
   python step-8/ingest.py --stem <nome>

Prossimo step

python step-8/ingest.py --stem <nome>