b0sh.net

Proudly debugging the system since 1981

Bot Voice To Text

Nella sua semplicità è il bot (gestito da un workflow N8N) che uso più spesso. I messaggi vocali sono lenti e inefficienti, l’accelerazione 1.5x o 2x risolve solo in parte il problema. Poter leggere velocemente, o scansionare, il contenuto di un vocale senza dover essere bloccato due minuti per ascoltarlo tutto è una fantastica comodità.

Ho migliorare un pochettino il workflow per gestire correttamente anche l’inoltro, sempre tramite telegram, di una MP3. Il motivo scatenante è stato che non volevo ascoltare un podcast di un ora per una piccola frazione di informazione, durata 5 minuti, annegata chissà dove.

Ho per cui modificato la gestione dell’input, cambiato i timeout di risposta, e gestito l’output di più di 2000 caratteri con lo stesso sistema del bot assistente personale.

Per trascrivere un ora di podcast l’hardware a mia disposizione ha impiegato 22 minuti, ma va bene. Non avevo fretta. E’ comunque una velocità superiore al doppio e mentre il silicio lavorava io potevo fare altro.

Il punto di partenza è stato quanto descritto in questo articolo. Il bot è sempre disponibile pubblicamente su http://t.me/b0sh8_bot anche se non tutti i giorni e non H24.

Di seguito il workflow aggiornato.

Navigating Intelligent Solutions: From AI to Agentic Retrieval‑Augmented Frameworks

L’intelligenza artificiale (IA) ha trasformato il modo in cui le aziende elaborano informazioni. Ma i modelli linguistici di grandi dimensioni (LLM) spesso mancano di conoscenza aggiornata e possono generare dati errati. La tecnica di retrieval‑augmented generation (RAG) unisce ricerca documentale e generazione, riducendo le allucinazioni e mantenendo il modello aggiornato. Quando questa metodologia è abbinata a sistemi agentici intelligenti che decidono autonomamente quale strumento utilizzare, nasce l’agentic RAG, una nuova frontiera che migliora la precisione e la trasparenza delle risposte. Il modello di decision‑tree guida la logica decisionale in questi sistemi, consentendo una pianificazione adattiva basata su test successivi. In questo articolo esploreremo passo dopo passo queste tecnologie, partendo dalla base dell’IA, passando per RAG, l’agent AI, l’agentic RAG e infine il ruolo del decision tree.

Capire l’Intelligenza Artificiale: Fondamenti e Sfide

Il settore dell’Intelligenza Artificiale (IA) è nato con l’obiettivo di replicare l’intelligenza umana nei sistemi computazionali. I primi sistemi basati su regole rigide e approcci simbolici si sono dimostrati difficili da scalare e poco robusti di fronte alla variabilità dei dati reali. Con l’avvento dei modelli di apprendimento profondo, l’IA ha guadagnato capacità di estrazione di pattern non lineari, portando allo sviluppo dei cosiddetti Large Language Models (LLM). Tuttavia, i LLM pur essendo potenti, soffrono di allucinazioni, mancano di spiegabilità e richiedono enormi risorse computazionali. Per mitigare tali problemi, la ricerca ha intensificato lo studio di architetture decision‑tree, che suddividono il processo decisionale in nodi specializzati (es. ricerca, sintesi, filtro). Tale modularità consente un tracciamento chiaro delle operazioni, facilita la gestione degli errori e permette di combinare modelli leggeri per la routing con LLM pesanti per il ragionamento approfondito. Inoltre, le decision‑trees favoriscono l’apprendimento continuo grazie alla possibilità di aggiungere nuovi “tool” in modo incrementale. In sintesi, l’evoluzione dall’IA tradizionale a sistemi decision‑tree‑augmented rappresenta un passo cruciale verso soluzioni più efficienti, trasparenti e sostenibili. Gli approcci decision‑tree non solo migliorano la qualità delle risposte, ma permettono anche una gestione più fine delle risorse di calcolo, poiché il carico computazionale viene distribuito tra componenti di diverso peso. Ciò riduce l’overhead di addestramento e facilita l’implementazione su infrastrutture esistenti, rendendo l’IA più accessibile e adattabile a scenari reali.

Retrieval‑Augmented Generation (RAG): La Nuova Frontiera per LLM

RAG è un’architettura che combina la ricerca di informazioni (retrieval) con la generazione di testo (augmentation). In pratica, un modello di linguaggio chiama un sistema di ricerca vettoriale per recuperare documenti pertinenti, quindi integra questi documenti nel proprio prompt per produrre risposte basate su fonti verificabili. Questo approccio riduce le allucinazioni, perché la generazione è ancorata a dati esterni, e migliora la precisione senza richiedere un costoso fine‑tuning del modello principale.

Agent AI: Sistemi Intelligenti che Operano in Ambienti Dinamici

I chatbot tradizionali si basano principalmente sulla risposta a prompt testuali. Con gli agenti AI, l’interazione diventa autonoma e contestuale: il sistema valuta lo stato attuale, decide quale azione compiere (ricerca, sintesi, visualizzazione) e produce la risposta in modo iterativo.

In un contesto Retrieval‑Augmented Generation (RAG), l’agente accede in tempo reale a una base di conoscenza, recupera i documenti più rilevanti e poi genera la risposta con un modello LLM, integrando così recupero e generazione in un’unica pipeline decisionale.

L’implementazione di Elysia si basa su un “decision tree orchestrato” dove ogni nodo è un tool (retriever, summariser, visualizzatore, ecc.). Il decision agent valuta il contesto, la storia delle interazioni e i costi computazionali per scegliere l’operazione più adatta. Questo approccio garantisce trasparenza: il percorso decisionale è visibile in tempo reale, facilitando debug e audit.

Per le imprese, i vantaggi sono:
– Affidabilità migliorata grazie alla gestione degli errori e ai limiti di iterazione.
– Riduzione dei costi di sviluppo: i componenti possono essere riutilizzati senza riformulare prompt.
– Personalizzazione pro‑attiva che apprende dai feedback degli utenti.

Il futuro prevede l’integrazione di agenti multi‑modalità, la capacità di autogenerare nuovi tool e la sinergia con sistemi di controllo decisionale complessi, aprendo la strada a soluzioni enterprise completamente autonome.

Agentic RAG e Decision Tree: La Logica Decisionale dei Sistemi

Elysia sfrutta una decision‑tree architecture per coordinare gli agenti. Ogni nodo è un tool specifico—retriever, LLM, visualizer—e la scelta di quale nodo attivare avviene tramite un decision agent che valuta contestualmente i dati, i risultati precedenti e le potenziali ramificazioni future. Questo modello si ispira alle teorie dei Decision Trees, dove la struttura ad albero rappresenta una sequenza di test decisionali, ognuno dei quali conduce a ulteriori sotto‑decisioni o a un risultato finale. In Elysia, i test sono adaptivi: l’agente ricalcola le probabilità di successo di ciascun branch in base ai feedback in tempo reale, spostando dinamicamente l’albero verso percorsi più promettenti. La profondità dell’albero è limitata da un hard pass limit che evita loop infiniti; al superamento di questo valore, l’agente propaga un errore verso un percorso alternativo o invia una notifica di fallimento.

Flusso decisionale in una lista:

  • Input utente → nodo di analisi preliminare
  • Test di compatibilità del dato → scegliere retriever o preprocessore
  • Chiamata LLM → valutare qualità della risposta
  • Se insufficiente, ricalcolo: attivare visualizer o iterare con nuovo prompt
  • Output finale → rendering dinamico e memorizzazione preferenza utente

Esempi pratici:

  • Nel negozio di skincare, il percorso dall’input di un problema cutaneo al consiglio di prodotto passa da un retriever di documenti, a un LLM di sintesi, fino a un visualizer di carte prodotto.
  • In un sistema di raccomandazione, la decision tree genera una serie di filtri di prodotto, crea una collezione di articoli correlati e poi genera un prompt per l’LLM che propone prodotti finali.

Conclusioni

Il futuro dell’IA non è solo potenza di calcolo, ma capacità di integrare conoscenza esterna in modo intelligente e decisionale. RAG, quando combinato con architetture agentiche e modelli di decision‑tree, offre soluzioni più affidabili, trasparenti e adattabili. Le imprese possono ora sfruttare data‑driven chat‑bots e agenti autonomi che si evolvono con il loro ambiente, riducendo il rischio di allucinazioni e garantendo la citazione delle fonti.

Link di partenza per la generazione del testo : https://weaviate.io/blog/elysia-agentic-rag
La generazione e’ stata fatta con GPT-OSS 20B, che per arrivare all’articolo di cui sopra (circa 1000 parole, 500 token) ha prodotto 50.000 token in elaborazioni successive, tra cui riassunto a pezzi con metodo map-reduce, pianificazione dell’articolo interrogando anche altre fonti (wikipedia) e redazione dei singoli capitoli. Proverò comunque Elysia e magari scriverò qualcosa anche io direttamente.

L’AI e il Futuro dei Junior Developer

In un’epoca in cui l’intelligenza artificiale sta rivoluzionando il mondo del lavoro, il ruolo dei junior developer si sta trasformando. AWS CEO Matt Garman ha espresso la sua visione su come l’AI possa integrarsi con le competenze umane, piuttosto che sostituirle.

L’AI e la sua applicazione nel programming

Nonostante l’AI possa semplificare alcune attività ripetitive, come la generazione di codice o l’ottimizzazione del debugging, non rappresenta una minaccia per i programmatori inesperti. Al contrario, offre loro strumenti potenti per imparare più velocemente e sviluppare competenze avanzate. I junior developer possono sfruttare l’AI per automatizzare compiti che richiederebbero tempo e pazienza, concentrando quindi le loro energie su aspetti più creativi e strategici del coding.

Con l’AI a disposizione, i junior developer possono ricevere feedback immediati durante lo sviluppo del software, migliorare la loro capacità di risolvere problemi complessi e affinare le loro abilità di pensiero critico. Questo non solo accelera il loro apprendimento, ma li prepara a svolgere ruoli più avanzati in futuro. Inoltre, l’AI può fungere da strumento di supporto per i junior developer, guidandoli attraverso processi di sviluppo complessi e aiutandoli a comprendere meglio i concetti di programmazione.

L’evoluzione del ruolo del junior developer nel contesto dell’AI richiede una visione proattiva: imparare a utilizzare queste tecnologie non come sostituti, ma come alleati. Questo approccio non solo rafforza il loro valore nel mercato del lavoro, ma li posiziona come attori chiave nell’innovazione tecnologica futura.

Il ruolo dei junior developer nel futuro del lavoro

Il ruolo dei junior developer nel futuro del lavoro è un tema cruciale in un contesto in cui l’intelligenza artificiale sta trasformando il mondo del programming. Matt Garman ha sottolineato che i junior developer non devono essere visti come una risorsa da sostituire con l’AI, ma come una opportunità di investimento per le aziende. I junior developer, infatti, sono i meno costosi e i più adattabili alle nuove tecnologie, rendendoli un elemento chiave per il successo delle organizzazioni.

Il loro ruolo non è solo di apprendere le competenze tecniche, ma anche di sviluppare abilità come il pensiero critico, la creatività e la capacità di risolvere problemi complessi. Queste competenze saranno sempre più importanti in un mondo in cui l’AI diventa un alleato, non un sostituto. I junior developer possono sfruttare gli strumenti AI per migliorare la loro efficienza e la loro produttività, senza perdere la capacità di pensare in modo autonomo e innovativo.

L’AI non eliminerà il ruolo dei junior developer, ma lo trasformerà. I programmatori del futuro non saranno semplici codificatori, ma problem-solver e gestori di agenti AI. Questo richiederà una continua formazione e un’adattabilità ai nuovi strumenti e alle nuove tecnologie. I junior developer dovranno imparare a utilizzare l’AI come un supporto per il loro lavoro, piuttosto che come una sostituzione.

Il futuro del lavoro per i junior developer è quindi un’opportunità, non una minaccia. Con l’adeguata formazione e l’uso intelligente dell’AI, i junior developer potranno diventare sviluppatori più efficienti, creativi e adatti alle esigenze del mercato del lavoro in evoluzione.

L’evoluzione del ruolo del developer

In questo capitolo, affronteremo l’evoluzione del ruolo del developer in un mondo dominato dall’AI. Matt Garman ha sottolineato che i programmatori non saranno sostituiti, ma il loro lavoro si trasformerà. Questo capitolo analizzerà come i developer passeranno da semplici codificatori a problem-solver e gestori di agenti AI. Verranno esaminate le nuove competenze necessarie per i developer del futuro, tra cui la capacità di prendere decisioni critiche, risolvere problemi complessi e gestire strumenti AI avanzati.

Garman ha sottolineato che il ruolo del developer non si limiterà a scrivere codice, ma si estenderà a comprendere e gestire le soluzioni AI. Questo richiederà una forte capacità di adattamento e una visione strategica per identificare quando e come l’AI può essere utilizzata per migliorare la produttività. I developer del futuro dovranno anche imparare a lavorare in sinergia con gli strumenti AI, interpretando i risultati e correggendo eventuali errori.

Inoltre, Garman ha sottolineato che l’AI non eliminerà il lavoro, ma lo trasformerà. I developer dovranno evolvere le loro competenze per rimanere rilevanti nel mercato del lavoro. Questo richiederà un impegno costante nell’apprendimento continuo e nell’adattamento a nuove tecnologie. Il ruolo del developer si trasformerà in un ruolo più creativo e strategico, dove il pensiero critico e la capacità di decisione saranno fondamentali.

Questo capitolo conclude che l’AI non eliminerà il ruolo del developer, ma lo trasformerà in una figura più versatile e strategica. I developer del futuro saranno chiamati a sfruttare l’AI come strumento di supporto, non come sostituzione, per raggiungere obiettivi più complessi e innovativi. Questo richiederà una combinazione di competenze tecniche, creative e strategiche, che renderanno i developer sempre più indispensabili nel mondo del lavoro.

L’importanza delle competenze umane nell’era dell’AI

L’evoluzione del ruolo del developer non è l’unica trasformazione in atto nell’era dell’intelligenza artificiale. I junior developer, in particolare, stanno assumendo un ruolo sempre più centrale nel mondo del lavoro tecnologico. Nonostante l’AI possa semplificare molte attività di programmazione, come la scrittura di codice ripetitivo, è chiaro che le competenze umane restano irrinunciabili. I junior developer, pur essendo alle prime armi, rappresentano una risorsa preziosa grazie alla loro capacità di apprendimento rapido e alla loro adattabilità ai nuovi strumenti e tecnologie.

Garman ha sottolineato che i junior developer non sono solo il futuro della programmazione, ma anche un’opportunità per le aziende di investire in talenti emergenti. Questi giovani professionisti possono imparare a lavorare in sinergia con l’AI, utilizzandola come strumento di supporto per migliorare la produttività e la qualità del lavoro. Inoltre, le capacità umane, come la creatività, la capacità di risolvere problemi complessi e il pensiero critico, sono fondamentali per guidare l’AI e massimizzare il suo potenziale.

I junior developer, quindi, non devono temere di essere sostituiti dall’AI, ma anzi, devono imparare a integrarla nel loro lavoro. Questo richiede una formazione continua e l’acquisizione di nuove competenze, come la gestione di strumenti AI avanzati e la capacità di prendere decisioni etiche e creative. Solo chi si adatta a questa nuova realtà potrà prosperare nel mercato del lavoro del futuro.

Conclusioni

L’AI non eliminerà i lavori, ma li trasformerà. I junior developer hanno un ruolo cruciale nel futuro del programming, e l’adattamento a nuove tecnologie sarà la chiave per successo e crescita professionale.

Questo post e’ realizzato tramite intelligenza artificiale basandosi su questo articolo: AWS CEO Says Replacing Junior Developers with AI Is the Dumbest Thing He’s Ever Heard

AI, N8N, Workflow, Agentic AI e LLM: Un’Introduzione al Futuro della Tecnologia

In questo articolo, esploreremo il ruolo chiave dell’intelligenza artificiale, N8N, i workflow, l’agentic AI e i modelli linguistici di grandi dimensioni (LLM) nel contesto tecnologico moderno. Questi argomenti rappresentano una combinazione potente che sta rivoluzionando il modo in cui sviluppiamo e utilizziamo le applicazioni.

Introduzione all’Intelligenza Artificiale e n8n

L’intelligenza artificiale (AI) sta trasformando il modo in cui creiamo e gestiamo i flussi di lavoro, e uno strumento che sta guadagnando attenzione è n8n. Questo strumento permette di costruire workflow complessi in modo visivo e intuitivo, integrando facilmente API e servizi esterni. Con l’avvento dell’Agentic AI, i workflow possono diventare autonomi, prendendo decisioni basate su dati e feedback in tempo reale. L’uso di LLM (Large Language Models) all’interno di questi workflow apre nuove possibilità, come l’analisi del testo, la generazione di contenuti e l’automazione intelligente. Questa combinazione di tecnologie promette di semplificare processi complessi, aumentando l’efficienza e riducendo il carico umano.

Intelligenza Artificiale e Workflow Dinamici

L’intelligenza artificiale (AI) sta rivoluzionando il modo in cui creiamo e gestiamo i workflow, grazie ad strumenti come n8n, una piattaforma open source che permette di costruire e automatizzare processi complessi. Con l’introduzione di agentic AI, i workflow non sono più semplici sequenze di istruzioni, ma diventano dinamici e adattivi, grazie all’uso di LLM (Large Language Models) che possono prendere decisioni autonome. Questo approccio consente di creare soluzioni personalizzate, scalabili e in grado di evolversi nel tempo.

L’intelligenza artificiale (AI) rappresenta una delle tecnologie più promettenti del nostro tempo

L’intelligenza artificiale (AI) rappresenta una delle tecnologie più promettenti del nostro tempo, con applicazioni che vanno dall’automazione al riconoscimento delle immagini. Uno strumento chiave per sfruttare al massimo le potenzialità dell’AI è n8n, una piattaforma open source che permette di creare workflow complessi senza la necessità di codificare. Questo strumento è particolarmente utile quando si lavora con l’AI agente, dove un modello linguistico di grandi dimensioni (LLM) esegue compiti autonomi e interagisce con altri sistemi. Il potere di n8n risiede nella sua capacità di integrare diversi strumenti e API, rendendo il processo di sviluppo più fluido e accessibile.

L’intelligenza artificiale (AI) sta trasformando il modo in cui creiamo e gestiamo i workflow

grazie a strumenti come n8n, una piattaforma open source che permette di collegare diversi servizi e applicazioni in modo semplice e intuitivo. In combinazione con l’AI, n8n permette di automatizzare compiti complessi, riducendo il tempo e gli errori umani. L’agente AI, un sistema autonomo in grado di prendere decisioni, può essere integrato nei workflow per eseguire compiti specifici, come l’analisi dei dati o la generazione di testi, grazie all’uso di modelli linguistici di grandi dimensioni (LLM). Questa sinergia tra AI, n8n, workflow e agente AI rappresenta un passo avanti significativo nell’automazione intelligente.

Conclusioni

L’AI, N8N, i workflow, l’agentic AI e i LLM stanno aprendo nuove possibilità nel mondo della tecnologia. Questi strumenti, quando utilizzati insieme, possono portare a un’evoluzione significativa in molti settori, rendendo il software più intelligente, personalizzato e adattabile.

Questo articolo, fin qua, e’ stato interamente scritto tramite AI e un workflow N8N, che a partire da un elenco di keyword ha generato il testo e pubblicato (in bozza) sul sito. Mi sono ispirato ad un workflow reso disponibile pubblicamente e modificato, come al solito, per usare ollama e per scrivere in italiano. L’idea e’ di adattarlo ulteriormente per partire da un testo o ancora meglio da una pagina web che mi ha interessato per generare un post, invece che dalle keyword. Se ne esce qualcosa di interessante pubblicherò il risultato.

AI Workflow 2.5

Modifiche:

  • Correzioni di bug vari
  • Gestito l’invio di messaggi multipli di telegram invece che fare un riassunto nel caso si eccedessero i 2000chr come nelle versioni precedenti, cosa che ha necessitato un po di programmazione
  • Aggiunto un riassunto delle informazioni dedotte della conversazioni su un documento su google drive
  • Corretto un bug che impediva al RAG di funzionare correttamente: lo step e’ stato diviso, prima con il reperimento delle informazioni, e poi con la generazione delle risposta
  • Integrato l’utilizzo delle API di Groq per una migliore velocità di esecuzione. Al momento non esegue tutto in locale, ma alcune task sono effettuate remotamente da Groq. L’utilizzo rientra ampiamente nel piano free, quindi senza costi. E’ comunque facilmente modificabile … sia per usare Groq per tutto (ma consiglio un piano developer per via dei limiti della dimensione del contesto del piano free) sia per usare solo un llm offerto localmente da Ollama

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:

WebSocket su proxyPass con Apache 2

Note to self: quando le richieste websocket non funzionano in una applicazione proxata con Apache 2 questa pagina può essere di aiuto : https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html

In caso in futuro non sia più disponibile la configurazione che che ho usato e’

ProxyPass / http://example.com:9080/
RewriteEngine on
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteRule ^/?(.*) "ws://example.com:9080/$1" [P,L]

« Articoli meno recenti

© 2025 b0sh.net

Tema di Anders NorenSu ↑