Files
rag-from-scratch/ollama/README.md
T
2026-05-11 15:58:54 +02:00

114 lines
2.0 KiB
Markdown

# Ollama — 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
```bash
curl -fsSL https://ollama.com/install.sh | sh
```
Verifica che il servizio sia attivo:
```bash
ollama list
```
### Disinstalla Ollama
```bash
# 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)
```bash
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 ingestion, riesegui ingest con `--force` e aggiorna `EMBED_MODEL` in `config.py`.
### Modello LLM (consigliato per 8 GB RAM)
```bash
ollama pull qwen3.5:4b
```
Se usi un modello diverso, aggiorna `OLLAMA_MODEL` in `config.py`.
### Disinstalla un modello
```bash
ollama rm qwen3.5:4b
ollama rm qwen3-embedding:0.6b
```
---
## 3. Installa le dipendenze Python
```bash
source .venv/bin/activate
pip install -r requirements.txt
```
---
## 4. Verifica ambiente
```bash
source .venv/bin/activate
python ollama/check_env.py
```
Output atteso (esempio):
```text
✅ 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 ingestion/ingest.py --stem <nome>
```
---
## Prossimo step
```bash
python ingestion/ingest.py --stem <nome>
```