Vai al contenuto
Il lama, logo ufficiale di Ollama

Immagine: Ollama

Con Ollama puoi far girare un modello linguistico sul tuo computer Linux. Questa guida parte da una macchina su cui Ollama non è installato. Alla fine il programma sarà installato e controllato, e avrai scaricato Gemma 4, il modello usato negli esempi ufficiali. Potrai chattare con il modello nel terminale e interrogarlo con curl attraverso l’API REST locale. La guida è pensata per chi vuole provare un modello in locale o usarlo nei propri script. I comandi sono quelli della documentazione ufficiale, che trovi elencata in fondo con la data di consultazione.

Cosa serve

  • Un computer con Linux. Per l’installazione manuale la documentazione di Ollama per Linux fornisce pacchetti sia per amd64 sia per arm64.
  • curl, che serve sia per lo script di installazione sia per le chiamate all’API.
  • Un account che possa usare sudo, per gestire il servizio di sistema.
  • Spazio su disco e memoria per i modelli. Per la variante gemma4:e2b la guida rapida indica un download di circa 7,2 GB e consiglia 8 GB di VRAM disponibile. Con meno VRAM Ollama può usare la RAM di sistema, ma le risposte possono arrivare più lentamente. Anche le finestre di contesto più ampie richiedono più memoria.
  • La GPU non è obbligatoria. Con una scheda Nvidia puoi installare i driver CUDA, con una AMD i driver ROCm v7. In entrambi i casi il passaggio è facoltativo.

Installare Ollama con lo script ufficiale

Il primo metodo di installazione indicato è uno script pubblicato sul sito di Ollama. Lo stesso comando compare anche nel README del repository su GitHub. La documentazione non spiega nel dettaglio che cosa installa e configura lo script, quindi più avanti controlleremo lo stato del servizio.

Il comando scarica uno script da internet e lo passa subito alla shell, che lo esegue sul tuo sistema. Se vuoi sapere cosa fa prima di lanciarlo, apri l’indirizzo dello script nel browser e leggilo.

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

Per aggiornare Ollama in seguito basta rilanciare lo stesso script. La pagina Linux della documentazione descrive anche un’installazione manuale, in cui gli archivi vanno estratti in /usr.

Controllare la versione installata

Come primo controllo, chiedi al programma la sua versione:

ollama -v

Nella pagina Linux questo comando serve a verificare che Ollama sia in esecuzione, e compare dopo l’avvio del server con ollama serve. Per questo conviene ripetere il controllo anche alla fine della sezione successiva, dopo aver verificato che il server sia attivo.

Verificare che il servizio systemd sia attivo ed esaminare i log

La CLI e l’API funzionano solo se il server di Ollama è in esecuzione. La pagina Linux raccomanda di farlo girare come servizio di avvio gestito da systemd, ma lo descrive solo nella sezione «Adding Ollama as a startup service», dove il servizio va creato a mano: si crea l’utente ollama, si scrive il file /etc/systemd/system/ollama.service e poi si abilita il servizio. La pagina non dice se lo script lo crea da solo. Per controllare se il servizio esiste ed è attivo:

sudo systemctl status ollama

Se il servizio c’è, nell’output deve risultare attivo. Se è fermo, lo avvii con sudo systemctl start ollama, come mostra la pagina Linux, e poi ricontrolli lo stato.

Se invece systemctl risponde che non trova un servizio chiamato ollama, hai due strade:

  • avviare il server a mano con ollama serve in un terminale, come indica la guida rapida per Linux quando il server non è già in esecuzione. Quel terminale va lasciato aperto, e i comandi successivi si lanciano in un altro;
  • creare il servizio seguendo la sezione «Adding Ollama as a startup service» della pagina Linux.

Quando Ollama gira come servizio, i suoi log si leggono con questo comando, che parte dalle righe più recenti:

journalctl -e -u ollama

L’opzione -u ollama mostra solo le righe del servizio Ollama, mentre -e apre il registro direttamente in fondo. Se hai avviato il server con ollama serve, i messaggi compaiono invece nel terminale da cui l’hai lanciato. Con il server attivo, puoi rilanciare ollama -v per il controllo descritto nella sezione precedente.

Scaricare un modello

Appena installato, Ollama non contiene nessun modello: bisogna scaricarli dalla libreria. Negli esempi della documentazione della CLI si usa gemma4, e questa guida fa lo stesso.

ollama pull gemma4

Quando il download è finito, controlla che il modello compaia nell’elenco di quelli presenti in locale:

ollama ls

Nell’elenco dovrebbe comparire gemma4. La guida rapida usa invece la variante gemma4:e2b, con i requisiti indicati sopra. Se preferisci quella, scrivi il suo nome al posto di gemma4 in tutti i comandi successivi.

Chattare con il modello da terminale

Il modo più diretto per usare il modello è la chat nel terminale:

ollama run gemma4

Si apre un prompt in cui scrivi le domande, e il modello risponde nello stesso terminale. Secondo la guida rapida, se il modello non è ancora sul disco ollama run lo scarica e poi avvia la chat. Qualche indicazione utile per il prompt interattivo:

  • per scrivere un messaggio su più righe, aprilo e chiudilo con tre virgolette doppie (""");
  • per uscire dalla chat si scrive /bye.

Ai modelli multimodali puoi passare il percorso di un’immagine direttamente nel comando ollama run, insieme alla domanda, come mostra la CLI Reference.

Vedere i modelli caricati in memoria e fermarli

Per sapere quali modelli sono in esecuzione in un dato momento:

ollama ps

Se devi liberare memoria, per esempio la VRAM della scheda video, puoi fermare il modello:

ollama stop gemma4

Se rilanci ollama ps, gemma4 non dovrebbe più comparire tra i modelli in esecuzione. Fermare un modello non lo cancella dal disco, e con ollama ls continuerai a vederlo.

API REST: elencare i modelli disponibili in locale

Ollama espone anche un’API REST, che permette di usare i modelli da script e applicazioni. Negli esempi ufficiali il server risponde su localhost, porta 11434. Per cominciare, chiedi l’elenco dei modelli installati:

curl http://localhost:11434/api/tags

La risposta è un oggetto JSON con un array models. La pagina dell’endpoint /api/tags mostra che per ogni modello ci sono nome, data di modifica, dimensione in byte e digest, più un blocco details con formato, famiglia, numero di parametri e livello di quantizzazione. Queste sono alcune righe dell’esempio riportato nella documentazione:

"name": "gemma4",
"parameter_size": "8.0B",
"quantization_level": "Q4_K_M"

API REST: generare un testo a partire da un prompt

L’endpoint /api/generate riceve un prompt e restituisce il testo prodotto dal modello. L’unico campo obbligatorio della richiesta è model. Il comando occupa più righe, ma puoi incollarlo così com’è, perché gli a capo stanno tutti dentro gli apici singoli.

curl http://localhost:11434/api/generate -d '{
  "model": "gemma4",
  "prompt": "Why is the sky blue?"
}'

Se non lo imposti, il parametro stream vale true, quindi la risposta arriva come una serie di risposte parziali in JSON. Il testo generato sta nel campo response, mentre done indica se la generazione è finita. Tra gli altri campi ci sono eval_count, cioè il numero di token prodotti, e diverse durate espresse in nanosecondi.

La pagina dell’endpoint /api/generate descrive tutti i campi della richiesta, tra cui system per il prompt di sistema, format per l’output strutturato e keep_alive, che decide per quanto tempo il modello resta caricato.

API REST: conversazione tramite l’endpoint chat, senza streaming

Per le conversazioni si usa l’endpoint /api/chat. Invece di un singolo prompt riceve un array messages, in cui ogni messaggio ha un ruolo (role) e un contenuto (content). L’esempio del README ufficiale invia un solo messaggio con ruolo user e disattiva lo streaming, così la risposta arriva in un unico oggetto JSON:

curl http://localhost:11434/api/chat -d '{
  "model": "gemma4",
  "messages": [{
    "role": "user",
    "content": "Why is the sky blue?"
  }],
  "stream": false
}'

Il testo della risposta si legge nel campo message.content, come indica la guida rapida per l’API di Ollama. Per gli altri endpoint e le altre opzioni, il README rimanda alla documentazione completa dell’API.

Rimuovere un modello che non serve più

I modelli occupano parecchio spazio su disco, quindi conviene cancellare quelli che non usi più.

Il comando qui sotto cancella dal disco i file del modello indicato. Prima di lanciarlo, controlla con ollama ls di aver scritto il nome giusto. Se cancelli il modello sbagliato, dovrai scaricarlo di nuovo con ollama pull.

ollama rm gemma4

Poi rilancia ollama ls: il modello non deve più comparire nell’elenco.

Se qualcosa va storto

  • Il server non risponde. Se il servizio esiste, controllane lo stato con sudo systemctl status ollama, avvialo con sudo systemctl start ollama e leggi i log con journalctl -e -u ollama. Se il servizio non esiste, avvia il server con ollama serve in un terminale separato, come indica la guida rapida.
  • Servono più messaggi di diagnostica. La pagina Linux spiega come aggiungere al servizio la variabile d’ambiente OLLAMA_DEBUG=1 con un file di override in /etc/systemd/system/ollama.service.d/.
  • La GPU Nvidia non viene usata. Verifica che i driver CUDA siano installati: il programma nvidia-smi deve stampare i dati della scheda.
  • La GPU AMD non viene usata. Il driver amdgpu incluso nel kernel Linux è una versione più vecchia e potrebbe non supportare tutte le funzioni di ROCm. Per le Radeon la documentazione consiglia di installare il driver più recente dal sito di AMD.
  • Aggiornamento di un’installazione manuale. Prima di estrarre il nuovo pacchetto bisogna rimuovere le vecchie librerie in /usr/lib/ollama, come spiega la pagina Linux.

Documentazione di riferimento

Pagine ufficiali consultate il 28 settembre 2026:

Leggi anche