Ollama 结合 Open-WebUI 本地运行大模型
本文介绍了如何使用 Ollama 在本地运行大型语言模型(LLM),以及利用 Open-WebUI 提供的图形化界面与大语言模型进行交互。
一、Ollama 简介
Ollama 是一个开源框架,专门设计用于在本地运行大型语言模型(LLM)。主要特点如下:
- 简化部署:旨在简化在 Docker 容器中部署 LLM 的过程。安装完成后,用户可以通过简单的命令行操作启动和运行大型语言模型。例如,要运行 Gemma 2B 模型,只需执行命令
ollama run gemma:2b。 - 捆绑模型组件:将模型权重、配置和数据捆绑到一个包中,称为 Modelfile,有助于优化设置和配置细节,包括 GPU 使用情况。
- 支持多种模型:支持多种大型语言模型,如 Llama 2、Code Llama、Mistral、Gemma 等,并允许用户根据特定需求定制和创建自己的模型。
- 跨平台支持:支持 Windows、macOS 和 Linux 平台。安装过程简单,用户只需访问 Ollama 的官方网站下载相应平台的安装包即可。
二、Docker 安装 Ollama
建议使用带有 NVIDIA 显卡的实例环境以加速推理。
1. 环境准备
确保系统已安装 Docker。如果没有安装 Ubuntu 系列系统的 Docker 包,可以通过以下命令安装:
apt update -y
apt install docker.io -y
systemctl start docker
2. 拉取镜像
拉取 ollama docker 镜像(依赖网速):
docker pull ollama/ollama
查看镜像文件,镜像大小约 2GB。
docker images
3. 启动容器
快速启动容器。注意,默认通过 CPU 加载启动,如需 GPU 支持需添加参数。
CPU 模式启动:
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
GPU 模式启动:
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
查看容器状态:
docker ps
4. 运行模型
在 docker 容器内运行模型:
docker exec -it ollama bash
ollama run qwen2:0.5b
通过 ollama list 命令查看下载的所有模型。
5. 环境变量与升级
常用环境变量:
OLLAMA_KEEP_ALIVE=-1:模型加载后持续启动,不自动关闭。OLLAMA_ORIGINS=*:跨域访问环境变量。
示例命令:
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always -e OLLAMA_KEEP_ALIVE=-1 ollama/ollama
升级:停止容器后,重新拉取最新镜像并启动即可。
三、Open-WebUI
Open WebUI 是一个可扩展、功能丰富且用户友好的自托管 WebUI,它支持完全离线操作,并兼容 Ollama 和 OpenAI 的 API。这为用户提供了一个可视化的界面,使得与大型语言模型的交互更加直观和便捷。
1. 拉取镜像
从 Docker Hub 拉取 open-webui 镜像:
docker pull dyrnq/open-webui:main
官方文档推荐从 GitHub Container Registry (GHCR) 拉取:
docker pull ghcr.io/open-webui/open-webui:main
2. 启动服务
启动 docker 镜像,映射端口 3000:
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always dyrnq/open-webui:main
3. 使用界面
访问服务器公网 IP 的 3000 端口。首次访问需要创建账号。登录后选择 Ollama 中的模型进行聊天测试。支持直接拉取 Ollama 库中没有的模型。


