IA locale per programmare: il primo avvio con Ollama
Neaptide · 20 settembre 2026 · 8 min di lettura
Avvia un modello locale con Ollama: installazione, API HTTP, esercizio Python verificabile e diagnosi della lentezza.
In questo articolo

Per provare un modello locale, parti da un piccolo frammento di codice: spiegare una funzione, proporre test o individuare un errore. Al primo tentativo contano soprattutto una procedura ripetibile e un risultato verificabile, più che le dimensioni del modello.
Ollama esegue i modelli e fornisce un'interfaccia per interrogarli. Questa guida usa la variante locale di Qwen2.5-Coder 1.5B come piccolo esempio didattico. Non è una raccomandazione del miglior modello attuale né una promessa di qualità su progetti estesi. Scheda del modello.
Installazione e prima risposta
Segui le istruzioni ufficiali per il tuo sistema e avvia l'applicazione o il servizio. Nel terminale:
ollama --version
ollama run qwen2.5-coder:1.5bIl primo avvio scarica il modello: servono una connessione Internet e spazio su disco. Quando compare il prompt interattivo, fai una breve domanda sul codice. Per uscire, digita `/bye`.
Non valutare la velocità dalla sola prima risposta: caricamento e generazione sono fasi diverse. Prima ottieni una risposta ripetibile a una richiesta semplice.
Un esercizio con risultati verificabili
Chiedi una funzione con requisiti precisi:
Scrivi una funzione Python unique_names(names). Riceve una lista di stringhe, elimina gli spazi alle estremità, le stringhe vuote e i duplicati senza distinguere maiuscole e minuscole. Mantieni l'ordine delle prime occorrenze e la loro grafia dopo la rimozione degli spazi. Restituisci il codice e tre test. Non aggiungere dipendenze.Definisci in anticipo i risultati attesi:
assert unique_names([" Anna ", "anna", "", "BOB"]) == ["Anna", "BOB"]
assert unique_names([]) == []
assert unique_names([" A ", "a", "B", "b"]) == ["A", "B"]Sono criteri dell'esercizio, non risultati misurati del modello. Leggi il codice proposto prima di eseguire le verifiche in un ambiente di test. Se cambia l'ordine o le maiuscole della prima occorrenza, indica la discrepanza precisa e chiedi una correzione.
Questo piccolo esperimento mostra se il modello rispetta quelle istruzioni. Non dimostra che sappia modificare autonomamente un grande repository.
Interrogare il modello da un programma
Ollama espone un'API HTTP locale. Su macOS, Linux o WSL:
curl http://localhost:11434/api/generate -d '{
"model": "qwen2.5-coder:1.5b",
"prompt": "Explain the difference between a Python list and a tuple.",
"stream": false
}'Qui `stream: false` richiede una risposta completa anziché un flusso di frammenti. I campi sono descritti nella documentazione di generate. La richiesta verifica l'accesso all'API; non collega automaticamente il modello a tutte le funzioni dell'editor.
Per l'integrazione, controlla prima che l'estensione scelta supporti Ollama o un endpoint locale compatibile. Specifica poi l'indirizzo del server e il nome esatto del modello installato. Il supporto della chat non implica quello di tutti gli strumenti di un agente di sviluppo.
Che cosa significa «locale»
Ollama dichiara di non ricevere prompt e risposte quando il modello viene eseguito localmente. I modelli cloud seguono un percorso diverso. Anche editor, estensioni e strumenti esterni possono contattare i propri servizi: controlla l'intera configurazione. FAQ di Ollama.
Ollama offre una modalità local-only per escludere le proprie funzioni cloud. Tuttavia, non definire il flusso completamente offline senza aver verificato download delle dipendenze, richieste delle estensioni e comportamento degli strumenti. Usa codice didattico per la prima prova.
Se le risposte sono troppo lente
Esegui `ollama ps`: mostra i modelli caricati e la distribuzione dell'esecuzione tra CPU e GPU. Aiuta a individuare il limite. Verificare dove viene eseguito il modello.
Cambia una sola condizione alla volta: modello più piccolo, input più breve o contesto configurato più contenuto. Chiudi altre applicazioni pesanti e ripeti lo stesso compito. Non impostare automaticamente il contesto massimo: i pesi non sono l'unica componente che occupa memoria.
Annota modello e tag, hardware, contesto, richiesta, durata e risultati dei test. Una risposta veloce non basta a scegliere una configurazione utile se il codice non viene verificato.