Ollama 是一个开源工具,专为在本地机器上便捷部署和运行大型语言模型(LLM)而设计。它支持多种操作系统(Windows、macOS、Linux),并提供简单的命令行接口和 API,适合开发者、研究人员以及对数据隐私有较高要求的用户。本文档将详细指导您如何通过 Ollama 在本地获取和运行 LLM。
1. 准备工作
在开始之前,请确保您的系统满足以下要求:
- 操作系统:Windows、macOS 或 Linux(支持 Docker 容器运行)。
- 硬件要求:建议至少 8GB 内存,16GB 以上更佳。部分模型支持 GPU 加速(需 NVIDIA GPU 和 CUDA 支持)。
- 网络连接:初次下载模型需要互联网连接,运行时可离线。
- 磁盘空间:根据模型大小,至少准备 10GB 以上存储空间(例如,Llama 3 8B 模型约需 5-10GB)。
2. 安装 Ollama
2.1 Windows
-
访问 Ollama 官网 或 GitHub 仓库(https://github.com/ollama/ollama)。
-
下载适用于 Windows 的最新安装包。
-
双击运行安装程序,按照提示完成安装。
-
安装完成后,打开终端(命令提示符或 PowerShell),输入以下命令验证安装:
ollama --version
应返回 Ollama 的版本号。
2.2 macOS
-
打开终端,运行以下命令一键安装:
curl -fsSL https://ollama.com/install.sh | sh
-
验证安装:
ollama --version
2.3 Linux
-
运行以下命令安装:
curl -fsSL https://ollama.com/install.sh | sh
-
验证安装:
ollama --version
-
(可选)若使用 Docker 部署:
-
拉取 Ollama Docker 镜像:
docker pull ollama/ollama
-
运行容器:
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
-
注意:确保 Ollama 服务在后台运行(Windows 上可能需要手动启动服务,macOS 和 Linux 默认自动运行)。
3. 下载并运行 LLM 模型
Ollama 支持多种开源模型,如 Llama 3、Qwen2、Mistral、Gemma2 等。您可以从 Ollama 的模型库(https://ollama.com/library)选择适合的模型。
3.1 拉取模型
-
查看可用模型:
ollama list
或访问 Ollama 模型库 浏览完整模型列表。
-
拉取指定模型,例如 Llama 3:
ollama pull llama3
这将从 Ollama 服务器下载模型到本地(存储路径通常为
~/.ollama/models
)。
3.2 运行模型
-
使用以下命令运行模型:
ollama run llama3
-
进入交互模式,您可以直接输入提示(prompt)与模型对话。例如:
>>> 你好!请介绍一下自己。 我是 Llama 3,一个由 Meta AI 开发的大型语言模型,通过 Ollama 在本地运行。我可以帮助回答问题、生成文本或完成各种任务。你有什么想问的吗?
-
退出交互模式:输入
/bye
或按Ctrl+D
。
3.3 模型管理
-
列出已下载模型 :
ollama list
-
删除模型 (释放空间):
ollama rm llama3
-
更新模型 :
ollama pull llama3
4. 自定义模型(可选)
Ollama 允许通过 Modelfile
自定义模型,适合需要特定配置或导入外部模型(例如 GGUF 格式)的场景。
4.1 创建 Modelfile
-
创建一个名为
Modelfile
的文件(无后缀),内容示例:FROM /path/to/your/model.gguf PARAMETER temperature 1 SYSTEM "你是一个智能助手,专注于提供准确且简洁的回答。"
FROM
:指定本地 GGUF 模型文件路径(可从 Hugging Face 下载)。PARAMETER
:设置模型参数,如温度(temperature,控制生成文本的创造性)。SYSTEM
:定义系统提示,影响模型行为。
-
创建自定义模型:
ollama create mymodel -f Modelfile
-
运行自定义模型:
ollama run mymodel
4.2 示例:导入 Hugging Face 的 GGUF 模型
- 从 Hugging Face 下载 GGUF 格式模型(例如
llama3-chinese-8b-gguf
)。 - 创建
Modelfile
,将FROM
指向下载的.gguf
文件路径。 - 执行
ollama create
和ollama run
命令。
5. 使用 API 调用模型
Ollama 提供 REST API,方便在应用程序中集成本地 LLM。
-
确保 Ollama 服务运行(默认监听
http://localhost:11434
)。 -
使用
curl
测试 API:curl http://localhost:11434/api/generate -d '{ "model": "llama3", "prompt": "你好!请介绍一下 Ollama。" }'
-
Python 示例:
import requests url = "http://localhost:11434/api/generate" payload = { "model": "llama3", "prompt": "你好!请介绍一下 Ollama。" } response = requests.post(url, json=payload) print(response.json())
6. 使用 Web 界面(可选)
Ollama 本身无 GUI,但可搭配第三方 Web 界面(如 Open WebUI)提升体验。
-
安装 Open WebUI:
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main
-
访问
http://localhost:3000
,连接到 Ollama 服务(默认http://host.docker.internal:11434
)。 -
通过浏览器与模型交互,支持聊天、模型切换等功能。
7. 常见问题与优化
- 性能优化 :
- 使用量化模型(如 4-bit 或 8-bit)以降低内存需求。
- 若有 NVIDIA GPU,确保安装 CUDA 并启用 GPU 加速(参考 Ollama 文档)。
- 存储管理 :
- 模型默认存储在
~/.ollama/models
,可通过环境变量OLLAMA_MODELS
自定义路径。
- 模型默认存储在
- 日志与调试 :
- 查看日志:
ollama serve --log-level debug
- 查看日志:
- 并发支持 :
- Ollama 支持多用户并发请求,适合小型团队使用。
- OpenAI 兼容性 :
- Ollama 的 API 与 OpenAI 的部分接口兼容,可直接替换 OpenAI 客户端调用。
8. 参考资源
- Ollama 官网 :https://ollama.com
- GitHub 仓库 :https://github.com/ollama/ollama
- 中文文档 :AiDocZh - AI工具中文文档库
- 模型库 :library
- Hugging Face(GGUF 模型) :https://huggingface.co/models?format=gguf
9. 注意事项
- 隐私与安全:本地运行 LLM 确保数据隐私,但请勿将敏感数据上传至公共模型仓库。
- 模型选择:根据硬件性能选择合适的模型(例如,8B 模型适合普通 PC,70B 模型需高性能硬件)。
- 更新维护:定期检查 Ollama 和模型更新,以获取最新功能和优化。
通过以上步骤,您可以轻松在本地部署和运行大型语言模型,享受高效、隐私保护的 AI 体验!