Principiante 11 minAltri strumenti

Llamafile : un LLM completo in un solo file eseguibile

Risposta diretta

Llamafile (progetto mozilla-ai/llamafile, licenza Apache 2.0) concentra un modello GGUF e il motore llama.cpp in un singolo eseguibile grazie a Cosmopolitan Libc. Scarichi un file, lo rendi eseguibile (o lo rinomini in .exe su Windows), e si apre un'interfaccia di chat su http://localhost:8080, senza installazione né daemon. Lo stesso file funziona su Windows, macOS, Linux e BSD, con un limite di 4 GB su Windows.

Llamafile è un progetto di Mozilla che racchiude un modello di linguaggio completo e il suo motore di inferenza in un singolo file eseguibile. Nessuna installazione, nessuna dipendenza, nessun daemon: scarichi un file, lo avvii e un LLM gira sulla tua macchina con un'interfaccia web. Lo stesso file funziona allo stesso modo su Windows, macOS e Linux. Questa guida mostra come avviare un llamafile, cosa offre e quando è preferibile a strumenti come Ollama.

Di Clara M.·Agg. 2026-09-28·Testato su Windows, macOS e Linux

#Perché llamafile

La maggior parte degli strumenti LLM locali richiede un'installazione, un servizio in background, poi il download del modello. Llamafile elimina tutti questi passaggi: il motore di inferenza e i pesi del modello vivono in un singolo file. Lo rendi eseguibile, lo avvii e il tuo browser apre un'interfaccia di chat. È la via più breve per andare da un link di download a una conversazione con un modello locale.

Questo formato eccelle in tre situazioni. Per testare rapidamente un modello senza sporcare la propria macchina. Per distribuire un LLM a colleghi o utenti non tecnici: un solo file da inviare, niente da configurare. E per l'archiviazione: un llamafile funzionerà ancora tra anni, senza dipendere da un runtime da installare o da un repository online sempre accessibile.

Nessuna installazione
Nessun pacchetto, nessun daemon, nessuna variabile d'ambiente da impostare.
Un solo file
Motore + modello uniti, facile da copiare, salvare o condividere.
Multi-OS
Lo stesso binario funziona su Windows, macOS, Linux, BSD (x86-64 e ARM64).
100 % locale
Nessun dato lascia la macchina e non è richiesta alcuna connessione di rete dopo il download.

#Come funziona: il formato Mozilla

Il kit IA Locale

Il tuo ChatGPT privato e gratuito sulla tua macchina in 1 ora — LM Studio, Ollama, Open WebUI, i tuoi documenti, senza cloud.

  • Spazio online a vita
  • PDF + file
  • Aggiornamenti a vita

Llamafile combina due componenti open source. Il primo è llama.cpp, il motore di inferenza in C/C++ che esegue i modelli in formato GGUF sia su CPU che su GPU. Il secondo è Cosmopolitan Libc, una libreria firmata da Justine Tunney che permette di compilare un eseguibile «poliglotta»: uno stesso file binario riconosciuto e avviato nativamente da diversi sistemi operativi.

Concretamente, un file .llamafile è sia un programma sia un archivio. Contiene il codice del server di inferenza e, al suo interno, il file GGUF dei pesi. All'avvio, rileva il sistema operativo e l'architettura, carica il modello dal proprio file, poi avvia un server HTTP locale con un'interfaccia web di chat.

i
GGUF, la base comune
I pesi inclusi in un llamafile sono nel formato GGUF, lo stesso utilizzato da llama.cpp, Ollama o LM Studio. Un llamafile non inventa un nuovo formato di modello: racchiude un GGUF esistente insieme al suo motore.

Il progetto llamafile stesso è sotto licenza Apache 2.0; le modifiche apportate a llama.cpp e whisper.cpp per le esigenze del progetto rimangono sotto licenza MIT, come i progetti originali, per restare compatibili e poter essere reintegrate nei progetti di origine. Dalla versione 0.10.0, llamafile utilizza un nuovo sistema di build allineato alle versioni recenti di llama.cpp, ampliando così il supporto a modelli e funzionalità più recenti; le versioni precedenti restano accessibili per chi preferisce l'esperienza «classica».

Il progetto include anche whisperfile, uno strumento complementare racchiuso in un unico file, basato su whisper.cpp e sullo stesso confezionamento Cosmopolitan, per la trascrizione e la traduzione audio, senza installazione, sulle stesse piattaforme di un llamafile classico.

#Prerequisiti

I requisiti sono volutamente minimi. L'essenziale è avere abbastanza memoria per il modello scelto: la dimensione del file e la RAM necessaria dipendono direttamente dalla quantizzazione.

OS
Windows 10+, macOS 11+, Linux recente o BSD. x86-64 o ARM64 (Apple Silicon incluso).
RAM
Calcolare approssimativamente la dimensione del file più un margine. Un modello 7B in Q4 (~5 GB) funziona senza difficoltà con 8-16 GB.
GPU (opzionale)
Accelerazione possibile tramite NVIDIA (CUDA) o Apple Metal. Senza GPU, l'inferenza avviene sulla CPU: è più lenta, ma funziona.
Spazio su disco
Da circa 500 MB per un modello piccolo a decine di GB per un modello grande non quantizzato.
!
La limitazione dei 4 GB su Windows
Windows limita la dimensione degli eseguibili a 4 GB. Oltre questo limite, bisogna scegliere un llamafile più piccolo oppure tenere separato il file dei pesi .gguf e passarlo al llamafile con l'opzione -m. Gli altri sistemi non sono interessati.

#Scaricare e avviare in pochi secondi

Il repository ufficiale mozilla-ai/llamafile su GitHub elenca llamafile pronti all'uso, e Hugging Face ne ospita molti altri. Il progetto, inizialmente avviato da Mozilla Builders, è oggi portato avanti e mantenuto da Mozilla.ai. Una volta scaricato il file, la procedura cambia appena a seconda del sistema operativo.

  1. 01
    Scarica il file
    Recupera un .llamafile dalla pagina GitHub del progetto o da Hugging Face (cerca « llamafile » nella barra di ricerca dei modelli).
  2. 02
    macOS e Linux: rendere eseguibile
    Apri un terminale nella cartella di download e autorizza l'esecuzione con chmod, poi avvia il file.
  3. 03
    Windows: rinominare in .exe
    Aggiungi l'estensione .exe al nome del file, poi fai doppio clic su di esso (o avvialo da PowerShell).
  4. 04
    Aprire l'interfaccia
    L'applicazione avvia un server locale e apre di solito automaticamente il tuo browser. Altrimenti, vai a http://localhost:8080.
Terminale — macOS / Linux
# Rendre le fichier exécutable
chmod +x Llama-3.2-3B-Instruct.Q4_K_M.llamafile

# Lancer : ouvre l'interface web sur http://localhost:8080
./Llama-3.2-3B-Instruct.Q4_K_M.llamafile
PowerShell — Windows
# Renommer pour ajouter l'extension .exe
Rename-Item .\Llama-3.2-3B-Instruct.Q4_K_M.llamafile Llama-3.2-3B.exe

# Lancer
.\Llama-3.2-3B.exe
→
Il doppio clic
Su Windows, dopo aver rinominato il file con l'estensione .exe, e su macOS/Linux, una volta impostato il bit di esecuzione, basta un semplice doppio clic dal gestore di file per avviare il llamafile. Non serve il terminale per l'uso abituale.

#Lo stesso file su Windows, Mac e Linux

È la promessa più sorprendente di llamafile: il file che scarichi su Linux è esattamente lo stesso che funzionerà su un Mac o su un PC Windows. Nessuna versione « Windows », « Mac » o « Linux » da scegliere. Questa portabilità deriva da Cosmopolitan Libc, che produce un eseguibile comprensibile da diversi sistemi contemporaneamente.

In pratica, significa che lo stesso llamafile su una chiavetta USB o una condivisione di rete funziona per un intero team, indipendentemente dalle postazioni di ciascuno. Distribuisci un modello senza preoccuparti del sistema operativo di ognuno e senza chiedere a nessuno di installare nulla.

i
ARM e Apple Silicon
I llamafile recenti includono anche il codice per ARM64. Su un Mac M1/M2/M3/M4, l'inferenza utilizza Metal e funziona nativamente, senza emulazione Rosetta.

#Opzioni utili da riga di comando

L'interfaccia web basta per conversare, ma alcune opzioni permettono di regolare il comportamento. Vanno passate dopo il nome del file al momento dell'avvio.

-ngl N
Trasferisce N livelli del modello sulla GPU (ad esempio -ngl 999 per mettere tutto in VRAM se è sufficiente).
-c N
Imposta la dimensione della finestra di contesto in token (es. -c 4096).
--host / --port
Cambia l'indirizzo e la porta di ascolto del server (per impostazione predefinita: localhost:8080).
-m file.gguf
Utilizza un file di pesi esterno piuttosto che quello integrato — utile per superare il limite Windows dei 4 GB.
--server --nobrowser
Si avvia in modalità server senza aprire un browser, comodo per un uso headless.
Terminale — opzioni
# Tout charger sur le GPU, contexte 8k, port personnalisé
./Llama-3.2-3B-Instruct.Q4_K_M.llamafile -ngl 999 -c 8192 --port 8090

# Serveur headless avec un GGUF externe (contourne la limite 4 Go)
./llava-v1.5-7b-q4.llamafile --server --nobrowser -m modele.gguf

Il server offre anche un'API compatibile con OpenAI su /v1/chat/completions. Puoi quindi collegare un llamafile a qualsiasi client che parla il protocollo OpenAI, semplicemente puntando l'URL base su http://localhost:8080/v1.

#Creare il proprio llamafile

Non sei limitato ai file preparati da altri: qualsiasi modello GGUF può essere confezionato in un pacchetto. Il progetto fornisce un binario zipalign e un eseguibile «vuoto» (solo il motore) al quale si aggiungono il file dei pesi e un file di argomenti predefiniti.

  1. 01
    Recuperare gli strumenti
    Scarica l'ultima release da GitHub: contiene il binario llamafile (solo il motore) e l'utilità zipalign.
  2. 02
    Avere un GGUF
    Ottieni il file .gguf del modello desiderato da Hugging Face, nella quantizzazione che preferisci (Q4_K_M è un buon compromesso).
  3. 03
    Scrivere gli argomenti predefiniti
    Crea un file .args elencando le opzioni da applicare all'avvio (modello, interfaccia web, ecc.).
  4. 04
    Impacchettare con zipalign
    Copia il motore con un nuovo nome, poi inserisci al suo interno il GGUF e il file .args con zipalign.
  5. 05
    Testare
    Rendi eseguibile il risultato e avvialo come qualsiasi altro llamafile.
Terminale — pacchettizzazione
# Fichier d'arguments par défaut
cat > .args <<'EOF'
-m
modele.Q4_K_M.gguf
--host
0.0.0.0
...
EOF

# Copier le moteur, puis y injecter poids + args
cp llamafile mon-modele.llamafile
zipalign -j0 mon-modele.llamafile modele.Q4_K_M.gguf .args

# Tester
chmod +x mon-modele.llamafile
./mon-modele.llamafile
→
Scegliere la quantizzazione giusta
Per un llamafile destinato a essere condiviso, Q4_K_M offre il migliore equilibrio tra dimensione e qualità. Riserva Q5_K_M o Q8_0 ai casi in cui la qualità è prioritaria rispetto al peso del file, e FP16 solo per l'archiviazione senza perdita.

#Llamafile vs Ollama: due filosofie

Llamafile e Ollama rispondono alla stessa esigenza — eseguire un LLM in locale — ma con logiche opposte. Ollama installa un daemon in ascolto su http://localhost:11434 e gestisce una libreria di modelli scaricati su richiesta. Llamafile non gestisce nulla: ogni modello è un file autonomo che avvii direttamente.

Llamafile o Ollama, confronto rapido
CriterioLlamafileOllama
Modello mentaleUn file = un modello, senza servizioGestore dei modelli con daemon centrale
InstallazioneNessuna, il file si avvia così com'èSi installa una volta e poi fa un 'pull' dei modelli
DistribuzioneSi può distribuire così com'è, funziona ovunquePresuppone che il destinatario installi Ollama
Diversi modelliDiventa presto pesante, un file per modelloEccelle: cambio istantaneo tramite un comando
Audio (STT)Whisperfile come strumento complementare separatoNon nativo
API compatibile con OpenAISìSì
LicenzaApache 2.0 (MIT per i moduli ripresi)MIT
Buona scelta seTestare o distribuire senza installazioneGestire più modelli ogni giorno

La distinzione si riassume così: llamafile è la scelta migliore per fare test occasionali, distribuire a persone non tecniche o archiviare un modello fissato a una determinata versione; Ollama è la scelta migliore quando si gestiscono più modelli quotidianamente o si integra un LLM in uno stack duraturo con un'interfaccia come Open WebUI o LM Studio.

i
Non sono concorrenti
Nulla impedisce di usare entrambi: un llamafile per mostrare un modello a un cliente sul suo portatile, Ollama come motore permanente sulla propria postazione di lavoro. Entrambi si basano infatti su llama.cpp.

#Risoluzione dei problemi

« run-detectors » o rifiuto di avvio (Linux)
Un binutils/binfmt troppo zelante può bloccare il formato poliglotta. Soluzione: installare il pacchetto APE loader oppure avviare tramite sh -c "./fichier.llamafile".
File troppo grande su Windows
Oltre i 4 GB, mantieni il GGUF separato e passalo con -m a un piccolo llamafile «solo motore».
Nessuna accelerazione GPU
Verifica che i driver CUDA (NVIDIA) siano presenti e aggiungi -ngl 999. Su Mac, Metal viene usato automaticamente.
Porta già occupata
Un altro servizio è in esecuzione su 8080: cambia con --port 8090 ad esempio.
Risposte lente
Con la sola CPU, è normale per i modelli di grandi dimensioni. Scegli una quantizzazione più leggera o un modello più piccolo (3B invece di 7B).

#Per approfondire

Llamafile è un punto di partenza ideale. Per un utilizzo locale più completo e duraturo, queste guide approfondiscono l'argomento.


#FAQ

Llamafile è gratuito?+
Sì. Il progetto llamafile è open source con licenza Apache 2.0, e le modifiche apportate a llama.cpp e whisper.cpp restano sotto licenza MIT. Paghi solo l'hardware e l'elettricità necessari per far funzionare il modello, come per qualsiasi strumento di inferenza locale che esegui tu stesso.
Chi sviluppa llamafile?+
Il progetto è stato avviato da Mozilla Builders nel 2023, poi ripreso e modernizzato da Mozilla.ai. Di conseguenza, il repository ufficiale ha cambiato indirizzo su GitHub: ora si trova sotto l'organizzazione mozilla-ai anziché sotto la precedente Mozilla-Ocho, con un nuovo sistema di build a partire dalla versione 0.10.0.
Llamafile può anche trascrivere audio?+
Sì, tramite whisperfile, uno strumento complementare in un unico file basato su whisper.cpp e sullo stesso sistema di impacchettamento Cosmopolitan. Gestisce la trascrizione e la traduzione audio senza installazione, sulle stesse piattaforme di un classico llamafile per la chat, seguendo esattamente lo stesso principio di un unico file autonomo da scaricare.
Perché il mio llamafile non si avvia su Windows?+
La causa più frequente è il limite di 4 GB imposto agli eseguibili Windows: un llamafile più grande non può essere eseguito su Windows così com'è. La soluzione è tenere separato il file dei pesi GGUF e passarlo con l'opzione -m a un llamafile «con il solo motore», più leggero.
Serve installare llama.cpp per usare llamafile?+
No. Llamafile include già il motore llama.cpp compilato all'interno del file grazie a Cosmopolitan Libc. È proprio questo a rendere il formato autonomo: non occorre installare alcuna dipendenza esterna prima di poter avviare il modello, né sapere in anticipo che llama.cpp esiste.
Questa guida ti è stata utile?

Un feedback, un errore, una precisazione? Facci sapere, così la guida migliora per tutti.