Eseguire modelli locali con Ollama e llama.cpp
Ollama è l'equivalente di "docker run" per gli LLM; llama.cpp offre un controllo più approfondito su quantizzazione e C++.
Eseguire modelli locali con Ollama e llama.cpp è una lezione AI Agents gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AI Agents, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AI Agents include 4 lezioni in totale.
Parti di questa lezione non sono ancora state tradotte e vengono mostrate in inglese.
Due percorsi semplici
Per eseguire modelli open in self-hosting su una workstation o un server:
- Ollama — la soluzione più semplice, con un'esperienza d'uso simile a Docker per gli LLM
- llama.cpp — più vicino all'hardware, offre maggiore controllo e occupa meno spazio
Ollama Quick Start
# Install (macOS):
brew install ollama
# Pull a model:
ollama pull llama3.1:8b
# Run interactively:
ollama run llama3.1:8b 'Hello'
# Serve via HTTP (OpenAI-compatible):
ollama serveCalling Ollama Via SDK
from openai import OpenAI
client = OpenAI(base_url='http://localhost:11434/v1', api_key='ollama')
response = client.chat.completions.create(
model='llama3.1:8b',
messages=[{'role': 'user', 'content': 'Hello'}]
)
print(response.choices[0].message.content)Tool calling con Ollama
Ollama supporta il tool calling per i modelli compatibili (Llama 3.1+, Mistral, Qwen 2.5):
tools = [{'type': 'function', 'function': {...}}]
response = client.chat.completions.create(
model='llama3.1:8b',
messages=messages,
tools=tools
)Nozioni di base su llama.cpp
llama.cpp è un'implementazione in C++ che esegue QUALSIASI modello in formato GGUF su CPU, GPU o Metal (Apple Silicon):
# Build (or install pre-built):
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp && make
# Run a quantized model:
./llama-cli -m models/llama-3.1-8b-instruct.Q4_K_M.gguf -p 'Hello'Server Mode
./llama-server -m models/llama-3.1-8b-instruct.Q4_K_M.gguf --port 8080
# Now OpenAI-compatible endpoint at http://localhost:8080/v1Quantizzazione
La quantizzazione a 4 bit (Q4_K_M) consente di eseguire un modello da "16GB" utilizzando circa 5GB di RAM, con una perdita di qualità minima. Provi prima Q4; scelga valori più alti (Q5, Q6, Q8) per le attività in cui la qualità è fondamentale.
Requisiti hardware
| Modello | RAM Q4 | VRAM Q4 |
|---|---|---|
| 7-8B | ~6 GB | ~6 GB |
| 13B | ~10 GB | ~10 GB |
| 70B | ~40 GB | ~40 GB |
La memoria unificata di Apple Silicon rende sorprendentemente utilizzabili i modelli locali di grandi dimensioni.
vLLM per il throughput
Per distribuire modelli in produzione con un'elevata concorrenza, usi vLLM (PagedAttention, continuous batching):
# pip install vllm
from vllm import LLM, SamplingParams
llm = LLM(model='meta-llama/Llama-3.1-8B-Instruct')
params = SamplingParams(temperature=0.2, max_tokens=512)
result = llm.generate(['Hello world'], params)Text Generation Inference (TGI)
HuggingFace TGI è un altro server per la produzione. Offre un supporto avanzato al tool calling.
Confronto tra server
- Ollama — la migliore esperienza d'uso, CLI/HTTP semplici, ideale per lo sviluppo
- llama.cpp — il più leggero, funziona ovunque
- vLLM — il throughput più elevato, solo GPU
- TGI — integrazione con HuggingFace e monitoraggio
Quando usare il self-hosting
- Privacy rigorosa
- Volumi molto elevati (il punto di pareggio dei costi è intorno ai 10 milioni di token al giorno)
- Modelli sottoposti a fine-tuning
- Scenari edge o offline
Quando NON usare il self-hosting
- Progetti personali con volumi ridotti (l'hosting è più economico)
- È necessaria una qualità di ragionamento di fascia frontier
- Attività multimodali
Endpoint compatibile con OpenAI
Perché la convenzione degli endpoint compatibili con OpenAI è utile per i modelli locali?
Riepilogo
Ollama per la semplicità nello sviluppo, llama.cpp per la portabilità e vLLM per il throughput in produzione. Tutti espongono API compatibili con OpenAI, quindi può sostituirli senza modificare il codice.
Impara AI Agents con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 60
- Lezioni
- 239
Domande Frequenti
La lezione «Eseguire modelli locali con Ollama e llama.cpp» è gratuita?
Sì — il testo completo di «Eseguire modelli locali con Ollama e llama.cpp» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AI Agents, passa a CoddyKit PRO. Il corso AI Agents include 4 lezioni in totale.
Cosa imparerò in «Eseguire modelli locali con Ollama e llama.cpp»?
Ollama è l'equivalente di "docker run" per gli LLM; llama.cpp offre un controllo più approfondito su quantizzazione e C++. Eserciti AI Agents con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare AI Agents?
Non è richiesta alcuna esperienza precedente. AI Agents su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Eseguire modelli locali con Ollama e llama.cpp»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione AI Agents?
Sì. Ogni lezione AI Agents include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Panoramica su Llama, Mistral e Qwen
- Eseguire modelli locali con Ollama e llama.cpp
- Function calling con modelli open (Hermes, Functionary)
- Compromessi: latenza, costi e capacità