L’intelligenza artificiale è ormai presente ovunque, molte volte la troviamo anche dove non serve. Però molte volte può essere utile per velocizzare alcuni compiti, verificare la presenza di errori semantici nei nostri testi o codici, oppure organizzare dati senza una struttura precisa. Normalmente in tutti questi casi una persona comune si collegherebbe ad uno dei più famosi provider di intelligenza artificiale come ChatGPT, Claude, Gemini e così via. Però questi servizi hanno sia un costo visibile che un costo nascosto.
Il costo visibile di questi servizi è l’abbonamento, abbiamo per ogni sessione gratuita un numero limitato di token e per poter continuare con il nostro lavoro dobbiamo quindi ricorrere a sottoscrivere un abbonamento. Il costo nascosto invece si paga con la nostra privacy e con le risorse del nostro pianeta. Infatti, sebbene le impostazioni dei vari servizi ci permettano di non utilizzare le nostre chat per l’apprendimento dei modelli, niente ci assicura cosa fanno realmente le aziende con i dati che transitano presso i loro server. Inoltre, la continua spinta ad espandersi minaccia gravemente l’ambiente in quanto i data center diventano sempre più grandi, sempre più energivori ed hanno bisogno di sempre più acqua per funzionare.
Quindi perché non usare un modello che funziona sul proprio computer, si avvia quando ne abbiamo bisogno, non condivide i nostri dati con nessuno e se alimentiamo il nostro pc con energia da fonti rinnovabili è anche rispettoso dell’ambiente?
Se volete sperimentare l’IA locale potete utilizzare llama.cpp.
Iniziamo con llama.cpp
llama.cpp è un progetto open-source che permette di far funzionare modelli IA in formato GGUF localmente sul vostro computer. Rispetto ad implementazioni come PyTorch, i modelli GGUF possono essere quantificati, in questo modo, si perde un po’ di precisione ma il modello userà meno ram e sarà più veloce.
Per installare llama.cpp si possono usare diverse vie in base alla distribuzione che state usando. Io vi consiglio per iniziare di controllare sempre che sia presente nel gestore di pacchetti della vostra distribuzione.
Ad esempio è presente nei repository di Arch linux ed Ubuntu 26.04 e 26.10. Su Debian invece manca sia su Bookworm(12) che su Trixie(13), mentre consultando packages.debian.org sembrerebbe che sarà disponibile su Forky (14), la versione di Debian attualmente in sviluppo e che in futuro andrà a sostituire Trixie.
Se invece il pacchetto non è presente nel gestore di pacchetti della vostra distribuzione potete installarlo usando il seguente comando:
curl -LsSf https://llama.app/install.sh | sh
Oppure potete usare un’immagine di docker, e per questo vi consiglio di seguire direttamente la documentazione su GitHub.
In questo tutorial andremo a provare Gemma 4 E4B sul seguente PC:
S.O.: Arch Linux
CPU: Intel i5-1135G7
RAM: 16GB
GPU: Intel Iris Xe
Come potete notare il pc che verrà usato non brilla in prestazioni, ma usando un modello leggero come Gemma 4 E4B si riesce ad avere un buon compromesso di velocità ed affidabilità.
Iniziamo procurandoci i pesi del modello. Quindi andiamo su HuggingFace, andiamo alla voce Models e poi usando i filtri selezioniamo la libreria GGUF e nella casella filter by name cerchiamo il nome del modello che ci interessa. Per questo test, io ho usato gemma-4-E4B-it-qat-GGUF:UD-Q4_K_X dal repository di unsloth, ma potete scegliere il modello che preferite.

Scegliete in modello che preferite scegliendo accuratamente anche la precisione del modello stesso, infatti sebbene un modello a 16 bit è sicuramente molto accurato in base all’addestramento ottenuto, un modello quantizzato può avere cali di accuratezza impercettibili con un enorme guadagno in termini di prestazioni.
Se usate un PC portatile, senza una scheda video dedicata di fascia alta e un quantitativo limitato di RAM un modello a 4 bit è il compromesso migliore.
Avete due strade diverse per ottenere il modello, o lo scaricate direttamente usando il flag -hf oppure si scaricano a mano i modelli e li si richiamano dalla riga di comando.
Nel primo caso basta lanciare il seguente comando per scaricare in automatico il modello ed avere a disposizione la webUI:
llama-server -hf unsloth/gemma-4-E4B-it-qat-GGUF:UD-Q4_K_XL
In questo caso abbiamo lanciato il server di llama.cpp, che esporrà sia le API che la webUI all’indirizzo 127.0.0.1:8080, inoltre scaricherà in automatico i pesi per il modello gemma-4-E4B quantizzato a 4-bit dal repository unsloth.
Se invece optate per scaricare a mano il modello vi basta selezionare la tab Files and versions nella scheda del modello di HuggingFace, scaricare innanzitutto il file gguf del modello che preferite, nel caso di Gemma-4 E4B quantizzato a 4 bit, il nome del file è gemma-4-E4B-it-qat-UD-Q4_K_XL.gguf.

Se poi vogliamo aggiungere la visione (disponibile sul modello usato), quindi la capacità di “vedere” le immagini allora dovremo scaricare anche il file projector mmproj-BF16.gguf. Una volta posizionati i file nella cartella desiderata si può avviare il server con il seguente comando:
llama-server -m /opt/llama/gemma-4/gemma-4-E4B-it-qat-GGUF:UD-Q4_K_X.gguf --mmproj /opt/llama/gemma-4/mmproj-BF16.gguf
In questo caso, ho salvato i pesi del modello nel percorso /opt/llama, ma voi potete posizionare i file dove preferite. La cosa importante è che al flag -m passate il percorso dei pesi del modello, ed al flag –mmproj passate il percorso del projector.
Una volta che il modello è stato caricato in memoria il risultato finale è questo:

Vale la pena perderci tempo?
Llama.cpp come anche Ollama ed altri client locali che permettono l’inferenza IA possono permetterci di eseguire modelli IA in locale con una discreta velocità se usiamo modelli piccoli ed abbiamo hardware prestanti. L’uso dell’IA locale però è limitato, infatti il rischio di allucinazioni è molto alto, inoltre hanno una conoscenza ristretta quindi non aspettatevi di avere un simulacro delle IA commerciali fornite dai grandi provider. È stato quindi inutile tutto questo? Assolutamente no.
Facciamo alcuni esempi di utilizzo concreto dell’IA locale. Potete usare il modello che avete scaricato per commentare automaticamente il vostro codice, oppure potete sfruttarla per generare il testo alternativo di immagini oppure effettuare l’OCR di testi privati meglio di quanto riesca a fare tesseract.
Non resta quindi che provare a sperimentare.















![Come funzionano i barcode [guida]](https://trovalost.it/wp-content/uploads/2024/07/barcode-616035_1280.png)









