在 Ubuntu 上安装 Ollama 并通过 Open WebUI 运行本地大语言模型
1. 引言
在这篇教程中,我们将详细介绍如何在 Ubuntu 系统上安装 Ollama,以及如何通过 Open WebUI 进行图形化管理本地大语言模型。你将能够在本地机器上运行诸如 DeepSeek-Coder 或 CodeLlama 之类的大型语言模型,并通过 Web 界面与它们进行交互。通过这种方法,你无需依赖外部服务器,可以在本地机器上享受私有化、大模型的推理体验。
2. 系统要求
操作系统:Ubuntu 20.04 或更高版本
内存要求:至少 8GB RAM(建议 16GB 或更多)
显卡要求:NVIDIA GPU(可选),但如果没有显卡也可以通过 CPU 运行
其他要求:Docker、Git
3. 安装步骤
3.1 安装 Docker 和 Docker Compose
首先,我们需要安装 Docker 和 Docker Compose,这些是运行 Open WebUI 容器的前提。
# 更新系统并安装 Docker 和 Docker Compose
sudo apt update
sudo apt install docker.io docker-compose -y
安装完成后,可以检查 Docker 是否安装成功:
docker --version
docker-compose --version
确保返回版本信息,说明 Docker 已成功安装。
3.2 配置 Docker 权限
如果在运行 Docker 命令时遇到权限错误,如 permission denied while trying to connect to the Docker daemon socket,可以通过将当前用户添加到 docker 组来解决:
# 将当前用户加入 docker 用户组
sudo usermod -aG docker $USER# 重新加载用户组配置并生效
newgrp docker
然后,重新启动 Docker 服务:
sudo systemctl restart docker
3.3 安装 Ollama
Ollama 是本地化的大语言模型推理引擎,我们将通过其提供的 API 来与模型进行交互。
# 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh
此命令将自动下载并安装 Ollama。
3.4 启动 Ollama 服务
安装完成后,启动 Ollama 服务:
ollama serve &
该命令将在后台启动 Ollama 服务,默认监听端口 11434。
3.5 拉取所需的模型
接下来,我们需要拉取本地模型。例如,拉取 DeepSeek-Coder 和 CodeLlama 模型:
# 拉取 DeepSeek-Coder 模型
ollama pull deepseek-coder:instruct# 拉取 CodeLlama 模型
ollama pull codellama:13b-instruct
3.6 安装 Open WebUI
为了方便操作和管理,我们使用 Open WebUI 来提供图形化的界面。Open WebUI 将通过浏览器访问本地的 Ollama 模型。
# 拉取并运行 Open WebUI 容器
docker run -d -p 3000:8080 --name open-webui --restart always \-e OLLAMA_API_BASE_URL=http://localhost:11434/api \ghcr.io/open-webui/open-webui:main
3.7 访问 Open WebUI
WebUI 容器启动后,你可以在浏览器中访问本地界面:
http://localhost:3000
在该页面,你可以选择加载的模型并开始与模型进行交互。
4. 配置和使用
4.1 配置 config.py
在 Open WebUI 容器中,配置文件 config.py 定义了模型和 Ollama API 的连接设置。你可以按照如下方式配置:
models_config = {"deepseek-chat": {"base_url": "https://api.deepseek.com","key": "",},"gpt-4o": {"base_url": "","key": "",},# 本地 Ollama(OpenAI 兼容 /v1)"ds-coder": {"base_url": "http://localhost:11434/v1","key": "","inner_model_name": "deepseek-coder:instruct"},"c13b": {"base_url": "http://localhost:11434/v1","key": "","inner_model_name": "codellama:13b-instruct"}
}
在这里,你可以选择模型的名称、API 地址以及 API 密钥(如果有的话)。如果模型是在本地运行,则不需要密钥。
4.2 通过 Open WebUI 进行交互
打开浏览器并访问 http://localhost:3000,你将看到一个可视化界面。你可以在界面中选择不同的模型并开始与它们进行对话。例如,选择 DeepSeek-Coder 模型并输入一些编程相关的查询,模型将返回相应的代码生成和优化建议。
5. 常见问题与解决方法
5.1 权限问题
如果遇到 Docker 权限问题(如 permission denied),请确保将当前用户添加到 docker 组并重新登录。
5.2 显存不足
如果没有 NVIDIA 显卡,或者显存不够运行较大模型(如 codellama:13b-instruct),可以考虑使用较小的模型(例如 deepseek-coder:lite-instruct)。
6. 总结
通过上述步骤,你已经成功在 Ubuntu 上安装并运行了 Ollama 与 Open WebUI。现在,你可以在本地机器上享受与大语言模型的交互体验,无需依赖外部云端服务。通过 Docker 容器,你还可以方便地管理和切换不同的模型,提升工作效率。
希望这篇教程能帮助你更好地理解如何在本地运行大语言模型,并通过图形化界面进行管理。如果你有任何问题,欢迎在评论区留言!
