Ollama + Open WebUI:搭建本地 ChatGPT 界面(完整指南)
说实话,我第一次用本地跑大模型的时候挺忐忑的。心里想着:这玩意儿能跑得起来吗?我那台老笔记本会不会卡死?结果——比想象中顺利多了。
这篇文章会教你用 Ollama 和 Open WebUI 在本地搭一个 ChatGPT 风格的对话界面。整个过程,大概 30 分钟搞定。
为什么选本地部署?
ChatGPT、Claude 都挺好用,但有几个地方让我不太舒服。
费用这事儿。每个月 20 美元,一年下来 240 美元。如果是重度用户还行,但我就偶尔问问代码问题、查查资料,这笔钱有点冤枉。本地跑模型,下载完就免费了,没 Token 计费,不用操心续费。
隐私这块。你输入的东西会上传到 OpenAI 或 Anthropic 的服务器。工作文档、个人笔记、私密对话——说实话,我不太放心。本地部署后,数据全在我自己的硬盘上,哪都不去。
离线这个。出门旅行、网不好的时候,云端 AI 就废了。本地模型下载后完全离线跑,没网照样用。
定制这块。云端服务的参数都锁死了。Temperature、Prompt 模板——你都没法调。本地跑的话,想怎么改就怎么改。
核心概念速览
先搞清楚俩工具是啥,不然后面容易迷糊。
Ollama 就是个模型运行器。帮你下载、管理、跑大语言模型,顺便还提供一个 API(默认端口 11434)。你可以把它当成”本地版的 OpenAI API”。
Open WebUI 是个 Web 界面。ChatGPT 风格的对话窗口、模型切换、历史管理——全都有。它通过 API 连到 Ollama,把命令行操作变成浏览器里的图形界面。
架构长这样:
浏览器 (localhost:3000)
↓
Open WebUI (Docker 容器)
↓ HTTP API
Ollama (本地服务, 端口 11434)
↓
本地模型 (存 ~/.ollama 里)
打开浏览器 → Open WebUI 调 Ollama API → Ollama 加载模型推理 → 结果返回给你。就这么简单。
系统要求与准备
部署前先看看你的硬件够不够劲儿。
最低要求:
- 处理器:Intel i5 或差不多性能的
- 内存:8GB RAM(16GB 以上更稳)
- 存储:至少 10GB 空闲(模型文件挺大)
- 系统:Windows 10+、macOS 11+、Linux
推荐配置:
- GPU:NVIDIA RTX 3060 或更好(推理快很多)
- Apple Silicon Mac:M1/M2/M3 系列,内存统一架构,天生适合跑模型
软件依赖:
- Docker:跑 Open WebUI 用的(也可以不用,但 Docker 省事)
检查 Docker 装没装:
docker --version
docker compose version
输版本号就说明装了。没输的话,先装 Docker Desktop(Windows/macOS)或 Docker Engine(Linux)。
Step 1: 安装 Ollama
Ollama 安装——一条命令就完事儿。
1.1 macOS 和 Linux 安装
打开终端,跑这个:
curl -fsSL https://ollama.com/install.sh | sh
脚本会自动下载 Ollama 并装到系统里。装完后,后台服务自动启动。
1.2 Windows 安装
PowerShell 里跑这个:
irm https://ollama.com/install.ps1 | iex
或者直接去 ollama.com/download 下个 Windows 安装包,双击运行。都行。
1.3 Docker 安装(可选)
想把 Ollama 也放容器里?用 Docker:
docker pull ollama/ollama:latest
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
-v ollama:/root/.ollama 把模型存到 Docker 卷里——容器重启后模型不会丢。
1.4 验证安装
装完了,确认下 Ollama 正常跑着:
ollama --version
应该输出类似 ollama version is 0.1.x 的版本号。
服务没自动启动的话,手动跑一下:
ollama serve
这会在后台启动 Ollama API 服务,监听 http://localhost:11434。
Step 2: 下载并跑模型
Ollama 装好了,接下来下个模型。
2.1 模型咋选
不同大小的模型需要不同的硬件。下面这个表帮你快速选:
| 硬件配置 | 推荐模型 | 参数量 | 磁盘占用 | 命令 |
|---|---|---|---|---|
| 8GB RAM,没 GPU | Llama 3.2 1B | 1B | 740MB | ollama run llama3.2:1b |
| 8GB RAM,没 GPU | Gemma 3 2B | 2B | 1.4GB | ollama run gemma3:2b |
| 16GB RAM | Llama 3.2 3B | 3B | 2GB | ollama run llama3.2 |
| 16GB RAM | Qwen 2.5 7B | 7B | 4GB | ollama run qwen2.5:7b |
| 16GB RAM + GPU | Llama 3.1 8B | 8B | 4.7GB | ollama run llama3.1:8b |
| 32GB RAM + GPU | DeepSeek R1 14B | 14B | 8GB | ollama run deepseek-r1:14b |
| 64GB RAM + GPU | Llama 3.3 70B | 70B | 39GB | ollama run llama3.3:70b |
按用途选:
- 日常对话、简单任务:Llama 3.2 1B 或 3B
- 中文要好:Qwen 2.5 系列(阿里出的,中文效果好)
- 写代码:DeepSeek R1 系列(推理强,适合代码生成)
- 通用高性能:Llama 3.1 8B 或 Mistral 7B
2.2 下载模型
用 ollama pull 命令下:
# 下 Llama 3.2(默认 3B 版)
ollama pull llama3.2
# 下 DeepSeek R1 7B
ollama pull deepseek-r1:7b
# 下 Qwen 2.5 7B(中文好)
ollama pull qwen2.5:7b
第一次下可能要几分钟——看模型大小和网速。我下 Llama 3.2 的时候大概等了 2 分钟,DeepSeek R1 7B 多等了一会儿。
2.3 跑模型对话
下完了,直接跑:
ollama run llama3.2
你会进到一个对话界面:
>>> Send a message (/? for help)
输入问题,模型会实时回:
>>> 你好,介绍一下你自己
你好!我是基于 Llama 3.2 模型的本地 AI 助手...
退出来用 Ctrl + d 或者输 /bye。
2.4 常用管理命令
看看已下载的模型:
ollama list
删掉某个模型:
ollama rm llama3.2:1b
复制模型(起个别名):
ollama cp llama3.2 my-llama
看模型详情:
ollama show llama3.2
Step 3: 安装 Open WebUI
命令行够用了。但如果你想体验 ChatGPT 风格的图形界面——那就装 Open WebUI 吧。
3.1 Docker 单容器部署(快得很)
先确保 Ollama 服务跑着(ollama serve),然后执行:
docker run -d -p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
--restart unless-stopped \
ghcr.io/open-webui/open-webui:main
参数解释下:
-p 3000:8080:把容器的 8080 端口映射到本机的 3000 端口--add-host=host.docker.internal:host-gateway:让容器能访问宿主机的 Ollama 服务-v open-webui:/app/backend/data:持久化存数据(对话历史、用户账户)--restart unless-stopped:Docker 重启后容器自动启动
部署完了,打开浏览器访问:
http://localhost:3000
3.2 Docker Compose 部署(推荐)
想把 Ollama 和 Open WebUI 都用 Docker 管?Docker Compose 更方便。
先建个目录:
mkdir open-webui-project
cd open-webui-project
建个 compose.yaml 文件:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
volumes:
- ./data:/app/backend/data
environment:
- "OLLAMA_BASE_URL=http://ollama:11434"
restart: unless-stopped
depends_on:
- ollama
ollama:
image: ollama/ollama:latest
container_name: ollama
volumes:
- ./ollama:/root/.ollama
ports:
- "11434:11434"
restart: unless-stopped
启动服务:
docker compose up -d
看看状态:
docker compose ps
俩容器都显示 running 就成功了。
3.3 首次访问与配置
打开浏览器访问 http://localhost:3000,第一次会看到账户创建页面。
创建管理员账户:
- 输用户名、邮箱、密码
- 点”Sign Up”
登录后,Open WebUI 会自动检测 Ollama 服务,列出可用模型。如果你已经下了模型,下拉菜单里会显示类似:
llama3.2:latest
deepseek-r1:7b
qwen2.5:7b
没自动检测到?去 Settings → Connections,手动填 Ollama API 地址:
http://host.docker.internal:11434
如果用 Docker Compose,填:
http://ollama:11434
Step 4: 基础使用
界面搭好了,看看咋用。
4.1 ChatGPT 风格对话
界面跟 ChatGPT 很像:
- 左边是对话列表,能新建、删、重命名
- 顶上是模型选择下拉菜单
- 底下是输入框,输完按 Enter 发
选个模型(比如 llama3.2),输问题,回复会实时显示——跟 ChatGPT 一样流式输出。挺爽的。
4.2 模型切换
同一个对话能切模型。点顶上的模型下拉菜单,选另一个模型,再继续聊。
这功能适合对比不同模型的回答。比如:
- 问同一个问题,先让 Llama 3.2 回
- 切到 DeepSeek R1,看它回得更深不深
4.3 对话管理
- 新建对话:点左边的”New Chat”
- 重命名对话:点对话标题,直接改
- 删对话:右键点对话,选删除
- 搜历史对话:左上角有搜索框
所有对话都存本地 Docker 卷里,不上传云端。
4.4 参数调整
点输入框右边的设置图标,能调模型参数:
- Temperature(温度):控制输出的随机性。低值(0.1-0.3)更稳,高值(0.7-0.9)更有创意
- Top P:控制词汇选择的范围
- 最大输出长度:限回复字数
这些参数对结果影响挺大。写代码用低 Temperature,写创意文案用高的。
Step 5: 进阶功能
基础对话之外,Open WebUI 还有几个实用的高级功能。
5.1 RAG 知识库构建
RAG(Retrieval-Augmented Generation)——把你的文档变成 AI 可检索的知识库。
咋用:
- 点左边的”Documents”标签
- 点”Upload”,选文件(支持 PDF、Markdown、TXT、DOCX)
- 文件上传后,系统自动处理并建索引
上传完了,对话时勾”Use Documents”,AI 会从你的文档里检索相关信息。
场景举例:
- 上传公司 API 文档,问”某个接口的参数是啥”
- 上传个人笔记,问”上次会议的结论是啥”
- 上传技术 PDF,问”某个概念的详细解释”
这就是本地版的”知识库对话”——文档全在你自己硬盘上。
5.2 多用户管理
多人共用这个系统?能创建不同账户。
管理员能在 Settings → Users 里:
- 创建新用户
- 设置用户权限(普通用户、管理员)
- 看用户列表
每个用户的对话历史独立存,互不干扰。
5.3 API 集成
Open WebUI 和 Ollama 都提供 OpenAI 兼容的 API,能直接对接现有工具。
调 Ollama API:
curl http://localhost:11434/api/chat -d '{
"model": "llama3.2",
"messages": [
{"role": "user", "content": "Hello"}
],
"stream": false
}'
调 Open WebUI API(要认证的话,先拿 Token):
curl http://localhost:3000/api/chat/completions \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{
"model": "llama3.2",
"messages": [{"role": "user", "content": "Hello"}]
}'
Python 示例:
import requests
response = requests.post('http://localhost:11434/api/chat', json={
'model': 'llama3.2',
'messages': [{'role': 'user', 'content': 'Hello'}],
'stream': False
})
print(response.json()['message']['content'])
这样一来,你就能把本地模型对接到 VS Code 插件、自动化脚本,或者其他支持 OpenAI API 的工具里。
Step 6: 性能调整
推理速度慢?内存不够?调几个参数试试。
6.1 GPU 加速
Ollama 会自动检测 GPU 并用。GPU 没被识别?检查驱动装对没。
NVIDIA GPU:
确保装了 NVIDIA 驱动和 CUDA。Ollama 会自动调 nvidia-smi 检测 GPU。
Apple Silicon Mac:
M1/M2/M3 Mac 不用额外配置——Ollama 会自动用 Metal 加速。
AMD GPU:
Linux 上能装 ROCm 版的 Ollama:
curl -L https://ollama.com/download/ollama-linux-amd64-rocm.tgz -o ollama-linux-amd64-rocm.tgz
sudo tar -C /usr/ -xzf ollama-linux-amd64-rocm.tgz
6.2 并发设置
想让多个模型同时跑,或者提高并发处理能力?设环境变量:
# 设同时跑的模型数
OLLAMA_NUM_PARALLEL=2 ollama serve
# 设最大加载模型数
OLLAMA_MAX_LOADED_MODELS=2 ollama serve
这些参数适合多用户场景,避免频繁切模型时的加载延迟。
6.3 模型量化
大模型(像 70B)占内存太多?用量化版本减少占用:
# 下 4-bit 量化版本(占用减少约 75%)
ollama pull llama3.3:70b-q4_K_M
量化会轻微降低质量,但速度和内存占用好很多。
常见问题排查
部署过程中可能会遇到问题。这里列几个最常见的。
Q1: 模型下载很慢
原因:Ollama 官方服务器在国外,国内下可能慢。
解决:
- 用代理
- 或者从镜像站下 GGUF 文件,手动导到 Ollama
手动导入方法:
# 下完 GGUF 文件后,建个 Modelfile
FROM ./llama3.2.gguf
# 创建模型
ollama create my-llama3.2 -f Modelfile
Q2: Open WebUI 连不上 Ollama
现象:界面显示”Ollama connection failed”。
排查:
- 确认 Ollama 服务跑着:
curl http://localhost:11434
应该返回 "Ollama is running"。
- 用 Docker 的话,检查网络配置:
docker exec -it open-webui curl http://host.docker.internal:11434
不通的话,可能要手动配 OLLAMA_BASE_URL 环境变量。
Q3: GPU 不被识别
现象:推理速度很慢,nvidia-smi 显示 GPU 没被用。
排查:
- 检查 NVIDIA 驱动:
nvidia-smi
应该显示 GPU 信息。
- 检查 Ollama 是否识别 GPU:
ollama show llama3.2 --system
显示 CPU-only 的话,说明 GPU 没被识别。
解决:
- 重装 NVIDIA 驱动
- 确认 CUDA 版本兼容
- Linux 上可能要设
CUDA_VISIBLE_DEVICES
Q4: 内存不足错误
现象:跑大模型时报 OOM(Out of Memory)错误。
解决:
- 换更小的模型(像 1B 或 3B)
- 用量化版本(
q4_K_M) - 增加 swap 空间(Linux)
- 关掉其他占内存的程序
Q5: Docker 容器启动失败
现象:docker ps 显示容器状态为 Exited。
排查:
看容器日志:
docker logs open-webui
常见原因:
- 端口冲突(3000 端口被其他程序占了)
- 卷权限问题
- 内存不足
解决:
- 换个端口(像
-p 8080:8080) - 检查 Docker 卷权限
- 增加容器内存限制
总结
用 Ollama + Open WebUI 在本地搭 ChatGPT 界面,核心流程就这么几步:
- 装 Ollama(一条命令)
- 下合适的模型(看硬件选)
- 部署 Open WebUI(Docker 一键启动)
- 开始对话
搭完了,你就有:
- 免费的 AI 对话助手
- 完全隐私的数据存储
- 离线能用
- 可定制的模型参数
- 可扩展的知识库(RAG)
- 可集成的 API 接口
这套方案适合个人日常用,也适合小团队内部部署。如果想再深入,可以探索:
- Modelfile 自定义模型行为
- 多云端模型集成(同时用本地模型和 OpenAI API)
- Kubernetes 生产级部署
搭建本地 ChatGPT 界面
用 Ollama 和 Open WebUI 在本地部署 ChatGPT 风格的 AI 对话界面
⏱️ 预计耗时: 30 分钟
- 1
步骤1: 安装 Ollama
根据操作系统选择安装方式:
• macOS/Linux:curl -fsSL https://ollama.com/install.sh | sh
• Windows:irm https://ollama.com/install.ps1 | iex
• Docker:docker pull ollama/ollama:latest
安装后运行 ollama --version 验证 - 2
步骤2: 下载模型
根据硬件配置选择模型:
• 8GB RAM:ollama pull llama3.2:1b
• 16GB RAM:ollama pull llama3.2
• 16GB RAM + GPU:ollama pull llama3.1:8b
• 中文优化:ollama pull qwen2.5:7b - 3
步骤3: 部署 Open WebUI
Docker 单容器部署:
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
或用 Docker Compose 管理双容器 - 4
步骤4: 首次配置
访问 http://localhost:3000:
• 创建管理员账户
• 自动检测 Ollama 服务
• 选择模型开始对话 - 5
步骤5: 进阶功能配置
可选功能:
• RAG 知识库:上传 PDF/Markdown 文档
• API 集成:OpenAI 兼容端点
• GPU 加速:自动检测,无需配置
常见问题
本地部署 AI 需要什么硬件配置?
Ollama 支持哪些模型?
• Meta Llama 系列(1B-70B)
• DeepSeek R1 推理模型
• 阿里 Qwen 系列(中文优化)
• Google Gemma、Mistral 等
用 ollama list 查看已下载模型,ollama pull 下载新模型
Open WebUI 连不上 Ollama 怎么办?
本地部署的 AI 能离线使用吗?
如何对接现有工具(如 VS Code 插件)?
• 端点:http://localhost:11434/api/chat
• 格式与 OpenAI API 相同
• Python/Node.js 直接调用
只需把 API 地址从 OpenAI 换成本地地址即可
参考资源
有问题去 Ollama 和 Open WebUI 的 GitHub Issues 搜——社区活跃,大部分问题都有人答过。
11 分钟阅读 · 发布于: 2026年4月4日 · 修改于: 2026年4月5日
相关文章
Ollama Modelfile 参数详解:创建专属定制模型的完整指南
Ollama Modelfile 参数详解:创建专属定制模型的完整指南
Ollama API 调用:从 curl 到 OpenAI SDK 兼容接口
Ollama API 调用:从 curl 到 OpenAI SDK 兼容接口
Ollama 模型管理:下载、切换、删除与版本控制完全指南

评论
使用 GitHub 账号登录后即可评论