一、Ollama 是什么?
Ollama 是一个开源的本地大模型部署工具,旨在简化大型语言模型(LLM)的运行和管理。通过简单命令,用户可以在消费级设备上快速启动和运行开源模型(如 Llama、DeepSeek 等),无需复杂配置。它提供 OpenAI 兼容的 API,支持 GPU 加速,并允许自定义模型开发。
二、核心命令速查表
运行 ollama help 可查看所有命令,以下是高频命令总结:
命令 | 作用描述 |
ollama serve | 启动 Ollama 服务(后台运行) |
ollama create | 通过 Modelfile 创建自定义模型 |
ollama run | 运行指定模型(如 ollama run llama3 --gpu) |
ollama list | 列出所有已下载模型 |
ollama ps | 查看正在运行的模型 |
ollama rm | 删除指定模型(如 ollama rm llama3) |
ollama pull | 从注册表拉取模型(如 ollama pull deepseek-r1:70b) |
ollama stop | 停止正在运行的模型 |
ollama show | 显示模型详细信息(如 ollama show qwen) |
三、模型存储路径优化
默认路径问题
- Windows:C:\Users\<用户名>\.ollama
- Linux/macOS:~/.ollama
- 问题:可能占用系统盘空间,尤其对小容量 SSD 用户不友好。
路径迁移方案
Windows
- 右键「此电脑」→ 属性 → 高级系统设置 → 环境变量。
- 新建系统变量 OLLAMA_MODELS,路径设为 D:\ollama\models。
设置环境变量
- 重启电脑或终端后生效。
模型文件存放路径
Linux/macOS
复制echo 'export OLLAMA_MODELS=/path/to/your/models' >> ~/.bashrc # 或 ~/.zshrc source ~/.bashrc # 重新加载配置
四、模型管理:从下载到优化
1. 模型下载
- 官方模型:
ollama pull llama3 # 下载 Llama3 模型
- 自定义模型:
准备模型文件(如 GGUF 格式,从 Hugging Face 下载)。。
图片
创建 Modelfile 配置模板(示例):
复制name: mymodel template: qwen path: /path/to/your/model.q4_K_M.gguf
构建模型:
复制ollama create mymodel -f Modelfile
2. 运行与交互
- 终端交互:
ollama run --gpu mymodel # 启动 GPU 加速
输入问题后按 Ctrl+D 提交,等待模型响应。
- API 调用:Ollama 内置 OpenAI 兼容 API,通过 http://localhost:11434 访问:
curl http://localhost:11434/v1/models # 查看模型列表 curl -X POST "http://localhost:11434/v1/completions" -H "Content-Type: application/json" -d '{"model":"llama3", "prompt":"你好"}'
3. 性能监控与优化
- 显存不足:
选择轻量模型(如 deepseek:1.5b)。
尝试低精度版本(如 q4_K_M 或 q3_K_L)。
- 内存不足:
确保至少 8GB 内存(小模型)或 32GB+(大模型)。
使用 --verbose 参数监控资源消耗:
复制ollama run deepseek-r1:70b --verbose
- 输出示例:
total duration: 12m1.056s # 总耗时 load duration: 1.810s # 模型加载时间 eval rate: 2.09 tokens/s # 生成速度
五、常见问题与解决方案
1. 模型下载卡在 99%?
- 现象:下载进度停滞在最后阶段。
- 解决:
Ctrl+C 取消下载 → 再次运行 `ollama pull <model>` # 进度保留,后续速度可能恢复正常
2. 模型无响应或崩溃
- 可能原因:
Modelfile 配置错误(如路径或模板参数)。
系统资源不足(内存/显存)。
- 排查步骤:
检查 Modelfile 中的 TEMPLATE 和 stop 参数是否正确。
降低模型复杂度或增加硬件资源。
使用 --verbose 日志定位问题。
3. 删除无用模型释放空间
- 命令:
ollama rm modelname # 删除指定模型
六、安全加固指南
1. 限制网络访问
- 默认风险:Ollama 默认监听 0.0.0.0:11434,可能暴露公网。
- 解决方案:
# 仅允许本地访问 export OLLAMA_HOST=127.0.0.1:11434 # 或通过环境变量设置 OLLAMA_HOST=127.0.0.1:11434 ollama serve
2. 关闭危险端口
- 若仅本地使用,可通过防火墙屏蔽 11434 端口的外部访问。
3. 定期更新版本
- Ollama 定期修复安全漏洞,建议升级到最新版:
七、总结与建议
- 硬件规划:
7B 模型需 8GB 内存,70B 模型需 32GB+。
显存不足时优先选择低精度版本。
- 安全第一:
避免将 Ollama 端口暴露公网,定期更新版本。
- 模型选择:
根据需求选择(如 DeepSeek 适合代码生成,Qwen 适合多语言)。