Proudly debugging the system since 1981

Tag: qwen3

AI Workflow 2.0

Ho rimesso mano al workflow del post di luglio rivendendo un po il sistema di memoria, che ora registra sia la richiesta che la risposta e utilizzano un solo modello LLM per tutte le operazioni, evitando quindi di caricare scaricare la VRAM più volte per dare seguito ad una sola risposta. La scelta in questo caso è ricaduta su Qwen3 8B, che a volte viene eseguito senza ragionamento ( /no_think ) per i compiti più facili.

E’ stata inoltre introdotta l’integrazione con GMail per accedere alle mail delle ultime 24 ore e rispondere a domande ad essere inerenti. Il workflow non effettua una vera e propria ricerca, ma le scarica tutte, scarta quelle di spam o comunque non utili, sintetizza quelle poco importanti e mantiene inalterate quelle importanti. Il risultato viene aggiunto al prompt dell’utente.

L’integrazione con GMail si attiva solo se la valutazione del prompt dato fà pensare che possa servire accedere alle email recenti.

Vista l’integrazione con GMail il workflow si interrompe immediatamente se il tigger iniziale non viene da me.

Il workflow è scaricabile qua sotto:

Coding agent con Ollama + Qwen3 + Continue – Parte 2

Alla fine l’ho provato, ottenendo sicuramente risultati migliori che i semplici completamenti di testo offerti da altri plugin.

Rispetto alla configurazione proposta ho utilizzato Qwen3:14b invece del MOE, anche per limiti di memoria a disposizione. Inoltre ho utilizzato Intellij IDEA in una macchina diversa da quella su cui risiede ollama. Cioè in realtà fisicamente sono la stessa ma una è una VM e l’altra è il ferro vero. Per rendere tutto piu divertente ho fatto passare le richiesta dal proxy di OpenWebUI, che è esposto su rete pubblica e che quindi richiede un token di autenticazione.

Rimaneggiata un po la configurazione:

Chiedo all’agente di generarmi una nuova semplice applicazione Spring Boot.

E lui parte a generarmi tutto perfettamente integrato con la IDE e scrivendo direttamente i file.

Dopodiché chiedo di cambiare il sistema di build da Maven a Gradle e di aggiungermi Swagger.

E dopo un paio di altri prompt per sistemare le cose ecco online il backend di una applicazione avendo scritto solo prompt e accettato il risultato:

Si tratta ovviamente di una micro applicazione, senza business logic rilevante e senza, al momento una UI. Farò altre prove in contesti un po più sfidanti ma per ora sono comunque abbastanza impressionato.

Coding agent con Ollama + Qwen3 + Continue – Parte 1

Quanto segue e’ la traduzione di Build a LOCAL AI Coding Assistant: Qwen3 + Ollama + Continue.dev (Blazing Fast & Fully Private!) … non ho ancora provato il setup ma son molto curioso e lo faro’ a breve.

Volevo condividere il mio percorso nell’utilizzare diversi assistenti AI per la programmazione — da GitHub Copilot a Cursor e ora a Windsurf — e come infine ho trovato il punto ideale passando a una soluzione completamente locale, senza compromettere velocità o qualità 🔥.
Vediamo insieme come ci sono arrivato:

💡 L’evoluzione del mio stack AI per la programmazione

  1. GitHub Copilot : Buon inizio, ma contesto limitato e non molto profondo.
  2. Cursor : Un notevole balzo in termini di potenza e flessibilità, specialmente grazie a Cursor Composer.
  3. Windsurf : Wow, questa mi ha impressionato! La sua capacità di indiciare e comprendere le basi di codice è eccezionale. Non è necessario dargli a conoscere i file da analizzare — semplicemente sa . Dai un’occhiata a lukalibre.org — interamente costruito con Windsurf 🤯Ma… c’è sempre un problema.

🛑 Il problema: Costo, velocità e limiti 😤

  • Windsurf costa 20 dollari al mese — prezzo equo per ciò che offre.
  • MA… ti limita a 500 crediti al mese, e la modalità di pensiero di Claude 3.7 utilizza 1,5 volte per ogni chiamata .
  • Anche pagando, a volte è lento ⏳.
  • Stessa storia con Cursor e Copilot.
  • E non iniziamo nemmeno a parlare delle preoccupazioni per la privacy dei dati — se la tua azienda non permette strumenti esterni, sei bloccato.

🚨 L’ingresso: Ollama + Continue.dev

Avevo pensato:

“Cosa succederebbe se potessi eseguire modelli potenti in locale?”
Così ho provato:

  • Ollama : Ospita LLM in locale (idea fantastica).
  • Continue.dev : Offre un’esperienza simile a quella di Cursor/Windsurf.

MA…

  • Modelli come Llama3 o Mistral non erano proprio all’altezza.
  • Sono pesanti e lenti sui laptop 💻➡️🐢

✨ Poi arrivò Qwen3: Alert di cambiamento di gioco 🎯💥

Ecco dove le cose si fecero veramente interessanti.
Qwen3 (soprattutto la variante 30b-a3b) mi ha lasciato a bocca aperta!

  • Utilizza distillazione + Mixture-of-Experts (MoE) → inferenza estremamente veloce.
  • Nonostante sia un modello da 30B, vengono utilizzati solo 3B di parametri per ogni prompt 🚀.
  • Le prestazioni? Strabiliantemente vicine a quelle di giganti come Claude 3.7 Sonnet e GPT-4o.
  • Funziona senza problemi su un laptop decente — testato su: i7 + RTX 2070Mac M4 Max

E il meglio di tutto: Nessuna perdita di dati, nessuna chiave API, nessuna attesa.

📌 Passo passo: Come impostare Qwen3 localmente con Continue.dev (Mac & Windows) 🖥️🛠️

Facciamolo insieme:

✅ Passo 1: Installare Ollama

Mac :

brew install ollama

Windows : Scaricare da: ollama.com/download

Avviare Ollama dopo l’installazione.

✅ Passo 2: Scaricare Qwen3 e modello di embedding

Nel terminale o in PowerShell:

ollama pull qwen3:30b-a3b

ollama pull nomic-embed-text

Perché questi modelli?

  • qwen3:30b-a3b: Il cervello principale AI 🧠 (gestisce chat, completamento automatico, modifiche).
  • nomic-embed-text: Aiuta l’AI a comprendere l’intera base di codice (spiegato di seguito ⬇️).

✅ Passo 3: Installare l’estensione Continue.dev in VS Code

  1. Apri VS Code.
  2. Vai alle Estensioni (icona 🔍 nel lato sinistro).
  3. Cerca “Continue”.
  4. Clicca su Installa.

✅ Passo 4: Configurare Continue per utilizzare Qwen3

  1. In VS Code, vai alla scheda Continue (icona 🧠).
  2. Clicca sull’icona ingranaggio ⚙️ > Apri Configurazione.
  3. Sostituisci la configurazione predefinita con questa:
name: Local Assistant  
version: 1.0.0
schema: v1
models:
- name: Qwen3-30b
provider: ollama
model: qwen3:30b-a3b
roles:
- chat
- edit
- autocomplete
- apply
- summarize
- name: embeddingsProvider
provider: ollama
model: nomic-embed-text
roles:
- embed
context:
- provider: code
- provider: docs
- provider: diff
- provider: terminal
- provider: problems
- provider: folder
- provider: codebase

🔍 Cosa fa ogni parte del YAML

models:

Definisce i “cervelli” del tuo assistente.

  • Qwen3–30b
  • embeddingsProvider

context:

Dichiara a cosa può accedere l’AI quando risolve problemi:

  • codice: File corrente.
  • docs: Documentazione (come i README).
  • diff: Cambiamenti Git.
  • terminal: Output del terminale (per il debug).
  • problems: Errori del linter.
  • folder: Cartella intera del progetto.
  • codebase: Indice completo della base di codice (grazie al modello di embedding!).

Senza questo, il tuo assistente vedrebbe solo il file che stai modificando — come cercare di riparare un motore di un’auto senza vedere l’intera auto 🚗.

✅ Passo 5: Finito! 🎉

Ora hai un assistente AI per la programmazione locale che è:

  • 🔒 Privato (nessuna perdita di dati)
  • ⚡ Veloce (eseguito sul tuo computer)
  • 💪 Potente (si confronta con GPT-4o/Claude 3.7)
  • 🌐 Pronto per l’offline

📌 Pensieri finali

Se sei stanco di pagare per token limitati, risposte lente o vuoi il pieno controllo sul tuo codice e i tuoi dati, prova Qwen3 + Ollama + Continue.dev.
È stato un cambiamento di gioco per me 🧠✨, e spero che ti aiuti anche tu.

Workflow AI, un altro caso d’uso

Credo che sta cosa mi stia sfuggendo di mano. Ho messo insieme un po’ tutto. Riconoscimento vocale, chatbot potenziato con rag, embedding, sintesi della risposta e sintesi vocale in uscita.

Risultato: una assistente personale a portata di messaggistica istantanea con due tipi di memoria, una a breve termine per sostenere efficacemente una conversazione, e una a lungo termine supportata dal RAG. L’embedding si attiva inserendo nel messaggio di input una parola chiave. Il sistema inoltre risponde (anche) a voce se l’interazione iniziale avviene mediante voce o solo scritto se l’interazione e’ stata iniziata in forma testuale.

Lo utilzzero’ davvero? Non lo so, ma potrebbe essere che si … specie per via della memoria a lungo termine, in modo che posso di fatto prendere appunti velocemente e poi poterci accedere in modo altrettanto facile e veloce.

Intanto il trascrittore di vocali, nato per provare, l’ho usato varie volte.

Il tutto, come negli esempi precedenti, e’ selfhosted. Utilizzo:

© 2025 b0sh.net

Tema di Anders NorenSu ↑