Sembra fantascienza, ma è solo Python. O quasi. In un’epoca in cui ogni singola API sembra volerci chiedere una carta di credito, un gruppo di sviluppatori ha deciso di mandare al diavolo il cloud e riportare l’intelligenza artificiale dove dovrebbe sempre stare: nella tua macchina, nel tuo terminale, sotto il tuo controllo. Zero server, zero streaming, zero dipendenze esotiche. È il trionfo della local-first AI, e sì, gira perfino in tempo reale con la webcam. Offline. Con una leggerezza da far impallidire metà delle startup AI finanziate da Andreessen Horowitz.

Nel cuore di tutto questo c’è llama.cpp, un backend leggero e affilato come un rasoio, capace di far girare modelli linguistici e multimodali direttamente in CPU o GPU. Il tutto supportato da una M3 MacBook – ma con qualche accorgimento gira anche su Linux o Windows. E lo strato “visivo”? HuggingFace, ovviamente, con un piccolo ma potente VLM (Visual Language Model), tipo SmolVLM-500M-Instruct-GGUF. Un nome orrendo, ma non fatevi ingannare: è un piccolo mostro di efficienza e velocità.

Il codice? Circa 150 righe, ma scritte come un colpo di pennello zen: essenziale, minimale, vibe-coded, come dicono quelli che non hanno voglia di spiegare ma ti fanno venir voglia di clonare il repo. Se pensate che non sia possibile fare real-time vision AI in locale con così poco, vi invito a provare. Spoiler: funziona. Funziona dannatamente bene.

Come si monta il baraccone, direte voi. Beh, non è proprio roba da chi si spaventa davanti a un terminale. Ma neanche così complicato. Basta seguire questo rituale laico:

  1. Installare llama.cpp. Lo so, sembra il nome di un progetto troll, ma è una delle cose più serie che siano uscite negli ultimi 12 mesi. Si compila in un attimo, è scritto in C++, non ha pretese ma fa il lavoro sporco come si deve.
  2. Lanciare il server locale. Basta una riga: ./llama-server -hf ggml-org/SmolVLM-500M-Instruct-GGUF Questo tira su un’istanza che macina il modello HuggingFace in locale. Se avete una GPU Nvidia, AMD o Intel, aggiungete pure -ngl 99 per spremere un po’ più di frame rate. Non è obbligatorio, ma vi farà sentire meglio.
  3. Aprire index.html nel browser. Qui entra in gioco la parte interattiva: il file HTML è il frontend minimale per interagire col modello. Niente fronzoli, ma funziona. Potete persino cambiare l’istruzione di default per fargli sputare JSON invece che testo.
  4. Premere “Start” e godersi lo spettacolo. In tempo reale. Sul vostro hardware. Senza dover implorare ChatGPT di non andare in timeout.

E cosa succede quando parte? Beh, l’AI guarda dalla vostra webcam, interpreta le scene in tempo reale, e risponde in linguaggio naturale, perché il modello è istruito per unire input visivo con output testuale. Una specie di Siri sotto steroidi e senza il fiato di Cupertino sul collo.

Questo è il genere di progetti che, in un mondo ideale, dovrebbero insegnare al primo anno di ingegneria informatica. Non solo per la bellezza del codice, ma per la filosofia: controllo locale, esecuzione trasparente, nessuna dipendenza da server remoti o API a pagamento. È un modo di pensare l’AI che non solo è più sostenibile, ma anche più etico. E pure più divertente, diciamocelo.

Perché sì, è incredibile quanto siano diventate potenti queste soluzioni locali. E no, non stiamo parlando di “demo carine”: stiamo parlando di applicazioni reali che girano offline, protette dal silicio sotto la tua tastiera. E se qualcuno pensa ancora che “non si può competere con i big”, vi consiglio di mostrar loro questo progetto. Poi di chiedere quanto costa ogni chiamata API a GPT-4 Vision.

“Sai che c’è? Io la visione artificiale me la faccio in casa. E mi costa meno di una pizza.” — citazione da bar, ma nemmeno troppo esagerata.

Il futuro, a quanto pare, è sempre più distribuito. E se gira in 150 righe, tanto meglio. Qui il REPO.