本地 LLM 部署指南:使用 Ollama 在本地运行开源大模型
Ollama 让在本地运行开源大模型变得极其简单。不需要 GPU 也能运行小模型,有 GPU 则可以运行更大的模型。
安装 Ollama
# macOS
brew install ollama
# Linux
curl -fsSL https://ollama.com/install.sh | sh
# Docker
# docker run -d --name ollama -p 11434:11434 ollama/ollama
下载和运行模型
# 拉取并运行模型(自动下载)
ollama run llama3.2:3b # Llama 3.2 3B,适合 CPU
ollama run mistral # Mistral 7B,需要 8GB RAM
ollama run qwen2.5:7b # Qwen 2.5 7B,中文效果优秀
ollama run llama3.2:11b # Llama 3.2 11B,需要 16GB+ RAM
模型对比
| 模型 | 参数 | 最低 RAM | 中文 | 速度(CPU) | 适合场景 |
|---|---|---|---|---|---|
| Llama 3.2 3B | 3B | 4GB | 一般 | 快 | 简单问答、分类 |
| Mistral 7B | 7B | 8GB | 一般 | 中等 | 通用对话 |
| Qwen 2.5 7B | 7B | 8GB | 优秀 | 中等 | 中文场景 |
| Llama 3.2 11B | 11B | 16GB | 一般 | 慢 | 复杂推理 |
| Qwen 2.5 14B | 14B | 16GB | 优秀 | 慢 | 中文+复杂 |
API 调用
Ollama 自动提供 REST API,可直接从应用调用:
# API 请求
curl http://localhost:11434/api/generate -d '{
"model": "qwen2.5:7b",
"prompt": "为什么选择云主机?",
"stream": false
}'
// 从 Node.js 调用
const response = await fetch('http://localhost:11434/api/generate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
model: 'qwen2.5:7b',
prompt: '用三句话介绍云主机',
stream: false
})
});
const data = await response.json();
console.log(data.response);
Docker Compose 部署(服务器)
version: '3.8'
services:
ollama:
image: ollama/ollama:latest
ports:
- "127.0.0.1:11434:11434"
volumes:
- ollama-models:/root/.ollama
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
restart: unless-stopped
volumes:
ollama-models:
16IDC 观察
Ollama 让本地 LLM 部署变得前所未有的简单。对于注重数据隐私的网站和 SaaS 产品,自托管 LLM 是一个值得考虑的方案——数据不出服务器,无需 API 费用,完全可控。建议从 Qwen 2.5 7B 或 Llama 3.2 3B 开始尝试。