作者:吴业亮
博客:wuyeliang.blog.csdn.net
一、Ollama 简介及工作原理
1. Ollama 简介及原理
- 简介:Ollama 是一款轻量级、开源的大语言模型(LLM)运行工具,旨在简化本地部署和运行大语言模型的流程。它支持 Llama 3、Mistral、Gemini 等主流开源模型,用户无需复杂配置即可在本地设备(CPU 或 GPU)上快速启动模型,适用于开发测试、本地智能应用搭建等场景。
- 工作原理 :
- 采用模型封装机制,将大语言模型的运行环境、依赖库及推理逻辑打包为标准化格式,实现模型的一键下载、启动和版本管理。
- 通过优化的推理引擎适配硬件架构,支持 CPU 基础运行和 GPU 加速(如 NVIDIA CUDA),减少资源占用并提升响应速度。
- 提供简洁的 REST API 和命令行接口,降低开发者集成门槛,无需深入了解模型底层细节即可调用。
- 支持容器化部署,确保跨环境一致性,避免依赖冲突问题。
2. Open-WebUI 简介及原理
- 简介:Open-WebUI 是一款开源的可视化界面工具,专为 Ollama 设计,提供直观的交互界面用于管理和使用大语言模型。它支持模型切换、对话历史记录、参数调整等功能,让本地大语言模型的使用更便捷。
- 工作原理 :
- 作为前端交互层,通过 API 与 Ollama 后端通信,接收用户输入并将其转发给 Ollama 进行模型推理。
- 解析 Ollama 返回的结果并以自然语言对话形式展示给用户,同时记录对话历史并支持上下文关联。
- 提供模型管理功能,可直接在界面中下载、启动、停止 Ollama 支持的模型,简化模型运维流程。
- 支持容器化部署,与 Ollama 容器通过网络互通,实现快速搭建完整的本地大语言模型交互系统。
二、安装Docker
1. 安装Docker依赖
bash
apt-get install ca-certificates curl gnupg lsb-release
2. 添加阿里云Docker软件源
bash
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
3. 配置系统软件源
编辑/etc/apt/sources.list文件,添加以下内容(清华大学Ubuntu镜像源):
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# 安全更新软件源
deb http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
4. 添加Docker软件源并更新密钥
bash
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DDCAE044F796ECB0
5. 安装Docker
bash
apt-get install docker-ce docker-ce-cli containerd.io
6. 验证Docker安装
bash
docker -v
7. 配置Docker国内镜像源
7.1 编辑配置文件/etc/docker/daemon.json
json
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://docker.m.daocloud.io",
"https://ghcr.io",
"https://mirror.baidubce.com",
"https://docker.nju.edu.cn"
]
}
7.2 重新加载并重启Docker
bash
systemctl daemon-reload
systemctl restart docker
三、安装英伟达显卡驱动(GPU支持)
1. 配置存储库
bash
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
2. 设置源
创建并编辑nvidia-container-toolkit.list文件:
bash
# 内容如下
deb https://mirrors.ustc.edu.cn/libnvidia-container/stable/deb/$(ARCH) /
deb https://mirrors.ustc.edu.cn/libnvidia-container/stable/ubuntu18.04/$(ARCH) /
#deb https://mirrors.ustc.edu.cn/libnvidia-container/experimental/deb/$(ARCH) /
#deb https://mirrors.ustc.edu.cn/libnvidia-container/experimental/ubuntu18.04/$(ARCH) /
3. 更新包列表
bash
sudo apt-get update
4. 安装NVIDIA Container Toolkit
bash
apt-get install -y nvidia-container-toolkit
5. 配置Docker以支持Nvidia驱动
bash
nvidia-ctk runtime configure --runtime=docker
6. 重启Docker服务
bash
systemctl restart docker.service
四、使用Docker安装Ollama
1. 拉取Ollama镜像
官方镜像:
bash
docker pull ollama/ollama:latest
国内镜像(推荐):
bash
docker pull dhub.kubesre.xyz/ollama/ollama:latest
2. 启动Ollama容器
bash
docker run -d \
--gpus=all \
--restart=always \
-v /root/project/docker/ollama:/root/project/.ollama \
-p 11434:11434 \
--name ollama \
ollama/ollama
说明:此配置会让Ollama将模型保持加载在内存(显存)中
五、使用Docker安装Open-WebUI
1. 安装Main版本
bash
docker run -d \
-p 15027:8080 \
--gpus all \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.nju.edu.cn/open-webui/open-webui:main
2. 安装CUDA版本(GPU加速)
bash
docker run -d \
-p 15027:8080 \
--gpus all \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.nju.edu.cn/open-webui/open-webui:cuda
3. 访问Open-WebUI
打开浏览器访问以下地址进行登录:
http://192.168.1.129:15027/auth