L'idea dei due modelli (leggi prima questo)

Un buon setup locale usa due modelli, non uno, perché autocomplete e chat hanno bisogni opposti:

CompitoServeModello
Autocomplete Latenza sotto il secondo, scatta a ogni tasto qwen2.5-coder:1.5b
Chat / modifiche / agente Intelligenza, contesto ampio, tollera qualche secondo di attesa qwen3-coder:30b

Usare un solo modello grande per entrambi rende l'autocomplete lento da non poterlo usare; usarne uno solo piccolo per entrambi rende la chat mediocre. Il 30B è un mixture-of-experts, quindi nonostante la taglia genera in fretta — vedi la pagina di Qwen3-Coder per hardware e velocità. Su una scheda da 24GB i due modelli convivono senza problemi; su 8–12GB, scendi con il modello di chat a qwen2.5-coder:7b.

Passo 1 — Scarica i modelli (5 min)

$ ollama pull qwen3-coder:30b # chat, modifiche, agente $ ollama pull qwen2.5-coder:1.5b # autocomplete veloce

Nuovo a Ollama? Le basi di installazione e primo avvio sono nel nostro tutorial Ollama + Open WebUI.

Passo 2 — Installa Continue e collega chat + autocomplete (10 min)

Installa l'estensione Continue dal marketplace di VS Code. Gestisce la chat in editor, le modifiche inline (seleziona il codice → Cmd/Ctrl+I) e il tab autocomplete. Apri la sua config (~/.continue/config.yaml) e puntala su Ollama:

models: - name: Qwen3-Coder provider: ollama model: qwen3-coder:30b roles: [chat, edit, apply] - name: Autocomplete provider: ollama model: qwen2.5-coder:1.5b roles: [autocomplete]

Ricarica VS Code. Ora hai la chat nella sidebar e i suggerimenti grigi di autocomplete mentre scrivi. L'autocomplete usa il modello minuscolo, quindi sta al passo con la tua digitazione; la chat usa il 30B.

Passo 3 — Aggiungi Cline per le modifiche agentiche (5 min)

Continue è ottimo per "aiutami con questa funzione." Per "implementa questa feature su tre file, esegui i test, correggi ciò che si rompe" ti serve un agente. Installa Cline, imposta il suo provider API su Ollama e il modello su qwen3-coder:30b. Cline pianifica, modifica file, esegue comandi da terminale e rilegge l'output in un loop — lo stesso schema degli agenti cloud, ma locale e gratuito.

È qui che un modello MoE veloce ripaga enormemente: un task agentico è decine di generazioni, quindi la differenza tra 30 e 100 tok/s è la differenza tra minuti e pause caffè.

Passo 4 — Sistema la finestra di contesto (l'errore n.1) (5 min)

Ollama imposta num_ctx di default a una finestra minuscola di 2K–4K. Un agente che modifica più file la fa traboccare senza avvisare e comincia a "dimenticare" il codice appena letto — il motivo più comune in assoluto per cui si conclude che "i modelli di coding locali fanno schifo." Non è vero: è che gli manca il contesto. Imponi una finestra vera con un Modelfile:

$ cat > Modelfile <<'EOF' FROM qwen3-coder:30b PARAMETER num_ctx 65536 EOF $ ollama create qwen3-coder-64k -f Modelfile

Punta Continue e Cline su qwen3-coder-64k. Occhio alla memoria: un contesto da 64K aggiunge diversi GB di KV-cache oltre ai pesi — i conti esatti, e come dimezzarli con la quantizzazione della cache, sono nella nostra guida alla KV-cache. Se sei a corto di VRAM, 32K è un buon compromesso.

Il verdetto onesto rispetto a Copilot e Cursor

Niente hype — ecco dove un setup locale vince e dove no:

  • ✅ Privacy: il tuo codice non lascia mai la macchina — l'intera ragione per cui team regolamentati e realtà attente alla sovranità lo fanno.
  • ✅ Costo: zero abbonamento, zero costi per postazione, funziona offline.
  • ✅ Qualità dell'autocomplete: con il setup a due modelli, davvero vicino a Copilot per il codice quotidiano.
  • ⚠️ Modifiche agentiche: buone, ma un modello cloud di frontiera pianifica ancora le modifiche multi-file in modo più affidabile. Il locale colma il divario ogni pochi mesi.
  • ⚠️ Hardware: serve una GPU capace. Sotto i 12GB di VRAM, aspettati un calo reale di qualità dai modelli di chat più piccoli.

Vuoi provare il 30B senza possedere una scheda da 24GB? Noleggiane una a ore ed eseguici Ollama — vedi RunPod vs Vast.ai. E se questo assistente è per un team, porta il backend su vLLM in Docker così più sviluppatori condividono una sola GPU.