Ollama¶
Traduzione: Copia tutti i comandi
Traduzione: Generare PDF
< >
Ollama è uno strumento per eseguire modelli di lingua di grandi dimensioni localmente sulla vostra macchina, fornendo privacy, controllo e l'accesso offline a modelli AI come Llama, Mistral e CodeLlama.
## Installazione e configurazione
|Command|Description|
|---------|-------------|
|`curl -fsSL https://ollama.ai/install.sh \| sh`|Install Ollama on Linux/macOS|
|`brew install ollama`|Install via Homebrew (macOS)|
|`ollama --version`|Check installed version|
|`ollama serve`|Start Ollama server|
|`ollama ps`|List running models|
|`ollama list`|List installed models|
## Gestione dei modelli
|Command|Description|
|---------|-------------|
|`ollama pull llama3.1`|Download Llama 3.1 model|
|`ollama pull mistral`|Download Mistral model|
|`ollama pull codellama`|Download CodeLlama model|
|`ollama pull gemma:7b`|Download specific model size|
|`ollama show llama3.1`|Show model information|
|`ollama rm mistral`|Remove model|
## Modelli popolari
### Modelli a scopo generale
|Command|Description|
|---------|-------------|
|`ollama pull llama3.1:8b`|Llama 3.1 8B parameters|
|`ollama pull llama3.1:70b`|Llama 3.1 70B parameters|
|`ollama pull mistral:7b`|Mistral 7B model|
|`ollama pull mixtral:8x7b`|Mixtral 8x7B mixture of experts|
|`ollama pull gemma:7b`|Google Gemma 7B|
|`ollama pull phi3:mini`|Microsoft Phi-3 Mini|
### Codice Specializzato Modelli
|Command|Description|
|---------|-------------|
|`ollama pull codellama:7b`|CodeLlama 7B for coding|
|`ollama pull codellama:13b`|CodeLlama 13B for coding|
|`ollama pull codegemma:7b`|CodeGemma for code generation|
|`ollama pull deepseek-coder:6.7b`|DeepSeek Coder model|
|`ollama pull starcoder2:7b`|StarCoder2 for code|
### Modelli speciali
|Command|Description|
|---------|-------------|
|`ollama pull llava:7b`|LLaVA multimodal model|
|`ollama pull nomic-embed-text`|Text embedding model|
|`ollama pull all-minilm`|Sentence embedding model|
|`ollama pull mxbai-embed-large`|Large embedding model|
## Modelli in esecuzione
|Command|Description|
|---------|-------------|
|`ollama run llama3.1`|Start interactive chat with Llama 3.1|
|`ollama run mistral "Hello, how are you?"`|Single prompt to Mistral|
|`ollama run codellama "Write a Python function"`|Code generation with CodeLlama|
|`ollama run llava "Describe this image" --image photo.jpg`|Multimodal with image|
## Interfaccia di chat
|Command|Description|
|---------|-------------|
|`ollama run llama3.1`|Start interactive chat|
|`/bye`|Exit chat session|
|`/clear`|Clear chat history|
|`/save chat.txt`|Save chat to file|
|`/load chat.txt`|Load chat from file|
|`/multiline`|Enable multiline input|
## API Utilizzo
### API REST
|Command|Description|
|---------|-------------|
|`curl http://localhost:11434/api/generate -d '{"model":"llama3.1","prompt":"Hello"}'`|Generate text via API|
|`curl http://localhost:11434/api/chat -d '{"model":"llama3.1","messages":[{"role":"user","content":"Hello"}]}'`|Chat via API|
|`curl http://localhost:11434/api/tags`|List models via API|
|`curl http://localhost:11434/api/show -d '{"name":"llama3.1"}'`|Show model info via API|
### Risposte in streaming
|Command|Description|
|---------|-------------|
|`curl http://localhost:11434/api/generate -d '{"model":"llama3.1","prompt":"Hello","stream":true}'`|Stream response|
|`curl http://localhost:11434/api/chat -d '{"model":"llama3.1","messages":[{"role":"user","content":"Hello"}],"stream":true}'`|Stream chat|
## Configurazione del modello
### Temperatura e parametri
|Command|Description|
|---------|-------------|
|`ollama run llama3.1 --temperature 0.7`|Set temperature|
|`ollama run llama3.1 --top-p 0.9`|Set top-p sampling|
|`ollama run llama3.1 --top-k 40`|Set top-k sampling|
|`ollama run llama3.1 --repeat-penalty 1.1`|Set repeat penalty|
|`ollama run llama3.1 --seed 42`|Set random seed|
### Contesto e Memoria
|Command|Description|
|---------|-------------|
|`ollama run llama3.1 --ctx-size 4096`|Set context window size|
|`ollama run llama3.1 --batch-size 512`|Set batch size|
|`ollama run llama3.1 --threads 8`|Set number of threads|
## Modelli personalizzati
### Creazione di Modelfiles
|Command|Description|
|---------|-------------|
|`ollama create mymodel -f Modelfile`|Create custom model|
|`ollama create mymodel -f Modelfile --quantize q4_0`|Create with quantization|
### Esempi di Modelfile
Traduzione:
Traduzione:
## Esempi di integrazione
### Integrazione Python
Traduzione:
### Integrazione JavaScript
Traduzione:
### Integrazione di Bash
Traduzione:
## Ottimizzazione delle prestazioni
|Command|Description|
|---------|-------------|
|`ollama run llama3.1 --gpu-layers 32`|Use GPU acceleration|
|`ollama run llama3.1 --memory-limit 8GB`|Set memory limit|
|`ollama run llama3.1 --cpu-threads 8`|Set CPU threads|
|`ollama run llama3.1 --batch-size 1024`|Optimize batch size|
## Variabili dell'ambiente
|Variable|Description|
|---------|-------------|
|`OLLAMA_HOST`|Set server host (default: 127.0.0.1:11434)|
|`OLLAMA_MODELS`|Set models directory|
|`OLLAMA_NUM_PARALLEL`|Number of parallel requests|
|`OLLAMA_MAX_LOADED_MODELS`|Max models in memory|
|`OLLAMA_FLASH_ATTENTION`|Enable flash attention|
|`OLLAMA_GPU_OVERHEAD`|GPU memory overhead|
## Uso del docker
|Command|Description|
|---------|-------------|
|`docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama`|Run Ollama in Docker|
|`docker exec -it ollama ollama run llama3.1`|Run model in container|
|`docker exec -it ollama ollama pull mistral`|Pull model in container|
### Docker Compose
Traduzione:
## Monitoraggio e debug
|Command|Description|
|---------|-------------|
|`ollama logs`|View Ollama logs|
|`ollama ps`|Show running models and memory usage|
|`curl http://localhost:11434/api/version`|Check API version|
|`curl http://localhost:11434/api/tags`|List available models|
## Quantificazione del modello
|Command|Description|
|---------|-------------|
|`ollama create mymodel -f Modelfile --quantize q4_0`|4-bit quantization|
|`ollama create mymodel -f Modelfile --quantize q5_0`|5-bit quantization|
|`ollama create mymodel -f Modelfile --quantize q8_0`|8-bit quantization|
|`ollama create mymodel -f Modelfile --quantize f16`|16-bit float|
## Modelli di Embedding
|Command|Description|
|---------|-------------|
|`ollama pull nomic-embed-text`|Pull text embedding model|
|`curl http://localhost:11434/api/embeddings -d '{"model":"nomic-embed-text","prompt":"Hello world"}'`|Generate embeddings|
## Risoluzione dei problemi
|Command|Description|
|---------|-------------|
|`ollama --help`|Show help information|
|`ollama serve --help`|Show server options|
|`ps aux \| grep ollama`|Check if Ollama is running|
|`lsof -i :11434`|Check port usage|
|`ollama rm --all`|Remove all models|
## Migliori Pratiche
- Scegliere la dimensione del modello in base alla RAM disponibile (7B ≈ 4GB, 13B ≈ 8GB, 70B ≈ 40GB)
- Utilizzare l'accelerazione GPU quando disponibile per migliorare le prestazioni
- Implementare una corretta gestione degli errori nelle integrazioni API
- Monitorare l'utilizzo della memoria durante l'esecuzione di più modelli
- Utilizzare modelli quantizzati per gli ambienti con le risorse
- Cache frequentemente usato modelli localmente
- Impostare dimensioni contestuali appropriate per il tuo caso di utilizzo
- Utilizzare lo streaming per lunghe risposte per migliorare l'esperienza degli utenti
- Limitare il tasso di implementazione per l'utilizzo delle API di produzione
- Aggiornamenti regolari del modello per migliorare le prestazioni e le capacità
## Casi di uso comune
### Generazione di codice
Traduzione:
### Analisi del testo
Traduzione:
### Scrittura creativa
Traduzione:
### Trattamento dei dati
Traduzione: