Scarica ed esegui LLM sul tuo Mac.

Eseguire un modello in locale comincia dal trovare il file giusto: il formato adatto alla tua app, una dimensione che la memoria del Mac può contenere e una quantizzazione che lo mantenga preciso. Ecco come scegliere, scaricare ed eseguire modelli aperti su Apple Silicon.

Aggiornato

In breve

  • I modelli aperti si trovano su Hugging Face. Su un Mac, cerca versioni MLX (spesso di mlx-community) o file GGUF per llama.cpp, Ollama e LM Studio.
  • La memoria decide cosa ci sta: un modello MLX a 4 bit richiede circa 0,56 GB per miliardo di parametri, più spazio per il contesto e per macOS.
  • I modelli ad accesso limitato richiedono un account Hugging Face gratuito, una licenza accettata e un token.
  • Eseguili con MLX Harness, mlx-lm, LM Studio o Ollama.

1Dove trovare i modelli

Hugging Face ospita la maggior parte dei modelli a pesi aperti. Lo stesso modello di solito esiste in più versioni, e il formato decide quale app può eseguirlo:

FormatoCome si presentaFunziona in
MLXUna cartella di file safetensors con config.json, nomi come Model-4bitmlx-lm, LM Studio, MLX Harness
GGUFUno o pochi file .gguf, nomi come Q4_K_Mllama.cpp, Ollama, LM Studio
Pesi originaliSafetensors a precisione piena, pubblicati da chi ha creato il modelloDa convertire prima in MLX, oppure scegli una versione pronta
Versioni MLX pronte dei modelli più popolari sono pubblicate dall'organizzazione mlx-community; mlx-lm può crearne di tue (mlx-lm).

Non sai quale runtime usare? MLX vs Ollama vs llama.cpp li mette a confronto. Sei alle prime armi? Parti da eseguire un LLM su un Mac.

2Scegli una dimensione adatta alla tua memoria

I pesi di un modello devono stare in memoria con margine. MLX memorizza ogni peso quantizzato come i suoi bit più una scala e un bias condivisi per ogni gruppo di 64 pesi, circa mezzo bit in più per peso (MLX). Quindi 4 bit costano circa 0,56 GB per miliardo di parametri e 8 bit circa 1,06 GB.

Parametri4 bit (MLX)8 bit (MLX)16 bit
3 miliardicirca 1,7 GBcirca 3,2 GB6 GB
8 miliardicirca 4,5 GBcirca 8,5 GB16 GB
14 miliardicirca 7,9 GBcirca 14,9 GB28 GB
32 miliardicirca 18 GBcirca 34 GB64 GB
70 miliardicirca 39 GBcirca 74 GB140 GB
Solo i pesi: parametri × (bit + 0,5) ÷ 8 per le versioni MLX quantizzate, 2 byte per parametro a 16 bit. Il contesto della conversazione e macOS richiedono spazio in più.

Per impostazione predefinita macOS lascia alla GPU solo una parte della memoria unificata; Compare ne considera circa tre quarti, e il README di mlx-lm spiega come alzare il limite su macOS 15 o successivo con sudo sysctl iogpu.wired_limit_mb=N (mlx-lm). Nei modelli mixture-of-experts, i parametri totali decidono la memoria e quelli attivi la velocità. Compare fa questo calcolo per ogni modello popolare e ogni chip Apple, e il miglior Mac per gli LLM in locale spiega perché è la banda a determinare la velocità.

3Quantizzazione: 4 bit, 8 bit e il resto

La quantizzazione memorizza ogni peso con meno bit, così il modello occupa meno memoria e gira più veloce, a scapito di un po' di qualità. Su un Mac, 4 bit è il punto di partenza abituale. 8 bit è più vicino all'originale e pesa il doppio. Sotto i 4 bit i file diventano piccoli, ma le risposte peggiorano prima, quindi provali solo quando un modello più grande non ci starebbe altrimenti.

  • Le versioni MLX lo dicono nel nome: -4bit, -8bit e a volte versioni a precisione mista che tengono a più bit gli strati sensibili.
  • I file GGUF usano i nomi di llama.cpp: Q4_K_M, Q5_K_M, Q8_0 e così via. Quando esegui in Ollama un repository GGUF di Hugging Face senza indicarne uno, sceglie Q4_K_M se c'è (Hugging Face).
  • Crea la tua versione MLX dai pesi originali: mlx_lm.convert --model mistralai/Mistral-7B-Instruct-v0.3 -q scrive una copia a 4 bit (mlx-lm).

4Spazio su disco e dove vengono salvati i modelli

Un download pesa più o meno quanto i pesi della tabella sopra, quindi un modello 8B a 4 bit occupa qualche gigabyte e un modello 70B decine di gigabyte. Provare più dimensioni o versioni dello stesso modello si somma in fretta.

mlx-lm e gli altri strumenti di Hugging Face salvano i download in ~/.cache/huggingface/hub; imposta HF_HOME o HF_HUB_CACHE per spostarli. hf cache ls mostra cosa c'è e hf cache rm elimina un modello (Hugging Face). Ollama e LM Studio tengono i modelli nelle proprie cartelle e li gestiscono da soli.

5Modelli ad accesso limitato e token di Hugging Face

Alcuni modelli, tra cui Llama, sono ad accesso limitato: devi accettare i termini di chi li ha creati prima di poterli scaricare (Hugging Face).

  1. Accedi a un account Hugging Face gratuito e apri la pagina del modello.
  2. Accetta i termini con il pulsante nella pagina (per impostazione predefinita Agree and send request to access repo). Alcuni autori approvano le richieste a mano, e ci vuole più tempo.
  3. Crea un token di accesso nelle impostazioni di Hugging Face.
  4. Dai il token ai tuoi strumenti: esegui hf auth login nel Terminale per mlx-lm e gli altri strumenti di Hugging Face (Hugging Face), oppure incollalo nel campo del token Hugging Face dell'app.

6Eseguilo: quattro modi

mlx-lm: MLX di Apple nel Terminale

Installalo con pip, poi indica un qualsiasi modello MLX su Hugging Face; la prima esecuzione lo scarica (mlx-lm).

pip install mlx-lm
mlx_lm.generate --model mlx-community/Llama-3.2-3B-Instruct-4bit --prompt "How tall is Mt Everest?"
mlx_lm.chat --model mlx-community/Llama-3.2-3B-Instruct-4bit

mlx_lm.server serve un modello su un'API in stile OpenAI su localhost:8080 per altre app (mlx-lm):

mlx_lm.server --model mlx-community/Llama-3.2-3B-Instruct-4bit
curl localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"messages": [{"role": "user", "content": "Say this is a test!"}]}'

LM Studio: un'app con un catalogo di modelli

LM Studio cerca e scarica modelli da Hugging Face dentro l'app ed esegue modelli MLX su Apple Silicon oltre ai GGUF tramite llama.cpp. Richiede Apple Silicon e macOS 14 o successivo, e consiglia 16 GB di memoria o più (LM Studio).

Ollama: un solo comando

Ollama esegue i modelli della propria libreria e qualsiasi repository GGUF su Hugging Face direttamente, con un tag di quantizzazione facoltativo (Hugging Face):

ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:IQ3_M

MLX Harness: la nostra app gratuita

MLX Harness è la nostra app gratuita per Mac, basata su vMLX: cerca modelli MLX su Hugging Face, chatta, esegue strumenti e modelli di immagini, e serve tutto su un'API locale. Anche il suo gateway usa la porta 8080, quindi non eseguirlo insieme a mlx_lm.server sulla stessa porta. Quando non usi il Mac, MLX Node può prestarlo a MLX Network.

7Domande

Dove scarico gli LLM per Mac?
Da Hugging Face. Cerca versioni MLX, molte pubblicate da mlx-community, o file GGUF. LM Studio e Ollama possono cercarli e scaricarli per te.
Quale dimensione di modello devo scaricare?
Uno i cui pesi stiano comodamente nella memoria del tuo Mac: a 4 bit circa 0,56 GB per miliardo di parametri, quindi circa 4,5 GB per un modello 8B e 39 GB per un 70B, più spazio per il contesto. Compare su mlx.app lo verifica per il tuo Mac.
MLX o GGUF su un Mac?
Entrambi funzionano bene su Apple Silicon. Le versioni MLX sono fatte per MLX di Apple e girano in mlx-lm, LM Studio e MLX Harness; i file GGUF girano in llama.cpp, Ollama e LM Studio.
Mi serve un account Hugging Face?
Non per i modelli pubblici. I modelli ad accesso limitato richiedono un account gratuito, una licenza accettata e un token di accesso.
Posso usare offline i modelli scaricati?
Sì. Una volta che i file sono sul tuo Mac, il modello funziona senza connessione a internet e i tuoi prompt restano sul Mac.

Fonti

  1. Hugging Facehuggingface.co
  2. mlx-communityhuggingface.co
  3. mlx-lmgithub.com
  4. MLXml-explore.github.io
  5. Hugging Facehuggingface.co
  6. Hugging Facehuggingface.co
  7. Hugging Facehuggingface.co
  8. Hugging Facehuggingface.co
  9. mlx-lmgithub.com
  10. LM Studiolmstudio.ai
  11. LM Studiolmstudio.ai
  12. Ollamaollama.com

Leggi anche

Scaricare LLM ed eseguirli in locale sul Mac: guida pratica | MLX