纠结 CherryStudio 和 OpenWebUI?我全都要!HaloWebUI开启测试
- 内容介绍
- 文章标签
- 相关推荐
现在的 AI 客户端简直是百花齐放,讨论相对较多的应该就属 CherryStudio 和 OpenWebUI
先聊 CherryStudio
- 优点:UI 设计确实审美在线,比 ChatBox 精致不少,而且多服务商、多模型的接入和切换非常方便,主打一个方便快捷,打开软件就能用。
- 硬伤:对话历史的堆积,个人目前体验变得非常卡;最可惜的是缺乏原生多端同步
再说 OpenWebUI
-
优点:走的是 Web 架构路线,界面复刻了 ChatGPT 的极简风格,上手几乎是零门槛。函数调用、知识库,还有高度可定制化的设置非常优秀,比如模型参数、权限、检索策略这类设置,很多客户端只是给个开关意思一下,它是给你一整套可控面板,当然还有我最需要的多端同步
-
缺点:模型太多的时候就很不方便管理,而且不支持 Gemini 接口的原生接入。高度可自定义化也意味着默认体验未必最佳——你得自己调,调好了很爽,没调好就容易变成功能太多太杂,懒得去动的状态
但我想要是能把二者相结合岂不是绝杀?能的佬友,能的!
GitHub - ztx888/HaloWebUI: 基于官方OpenWebUI,汉化界面提高中文使用体验,增加了模型计费和用量统计
基于官方OpenWebUI,汉化界面提高中文使用体验,增加了模型计费和用量统计
重点优化功能:
自定义上下文条数:可以设置发送给模型的历史消息上下文的数量,有效节省Token
image1301×512 35.4 KB
image1334×384 21 KB
增加清除上下文功能,对齐cherrystudio,实现当前对话中隔离上下文
PixPin_2026-01-14_20-00-441424×971 52.9 KB
增加了 Responses API 传递支持,XHigh展示思维链,ChatGPT开启模型自带内置搜索
PixPin_2026-01-21_13-29-511025×801 88.7 KB
新增模型一键设置公开: 模型设置页增加一键切换公开私有,方便管理
PixPin_2026-01-15_13-49-30299×133 5.7 KB
image326×138 6.16 KB
模型管理: 外部连接页增加标签分类和模型管理功能,和cherrystudio一样方便添加模型
PixPin_2026-01-22_00-13-56885×882 66.3 KB
新增对话分支功能: 支持当前对话直接创建新分支到新窗口继续对话
Gemini 原生端口支持:不依赖 OpenAI 兼容层,直接走 Gemini 原生接口
PixPin_2026-01-21_02-26-33578×654 27.9 KB
外部连接显示优化:改成双列显示,管理效率直接拉满,标签排序方便分类收纳
PixPin_2026-01-20_12-30-071361×947 78.5 KB
PixPin_2026-01-23_22-40-25691×684 41.4 KB
图标 + 思考强度可选: 更加直观方便可选,增加常见图标
PixPin_2026-01-22_00-20-28374×458 20 KB
PixPin_2026-01-20_13-25-14310×341 17.4 KB
模型计费 + 用量统计前端同步info黑框:支持免费/按次/按量三种模式,实时计算对话成本
PixPin_2026-01-19_17-45-06402×269 4.93 KB
PixPin_2026-01-20_13-28-11296×220 5.66 KB
优化代码块展示:仿Mac风格,并优化原版字体和颜色,更加美化易读
PixPin_2026-01-21_21-04-21969×858 95.8 KB
image925×854 93.2 KB
新增图片连续编辑功能: 可以在对话中连续编辑图片,不会丢失原画面
PixPin_2026-01-20_00-48-22875×966 210 KB
设置优化:添加备注功能方便区分,列表中点击名称直接跳转到设置,再也不怕点错小齿轮,适合链接多的佬
PixPin_2026-01-21_02-27-23568×689 27.1 KB
PixPin_2026-01-14_12-57-30639×453 42.1 KB
使用方式:
Docker 一键部署【点击展开】
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v open-webui:/app/backend/data \
ghcr.io/ztx888/openwebui:latest
- 浏览器访问:
http://你的服务器IP:3000 - 数据持久化在 Docker 卷:
open-webui(用于重启或者更新的时候不丢配置和对话)
如果你本机没有 Docker 卷习惯,也可以改成本地目录挂载:
mkdir -p ./open-webui-data
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v $(pwd)/open-webui-data:/app/backend/data \
ghcr.io/ztx888/openwebui:latest
pip + PM2部署【点击展开】
适合:不想用 Docker、不想折腾前端构建、就想稳定跑起来的佬。
优势:步骤少、更新方便、跟管理 Node 项目一样用 PM2 守护
注意:本包同时提供
open-webui和open-webui-leon两个命令。
为避免与官方包冲突,建议使用独立 venv 并优先用open-webui-leon命令。
1、准备环境
- Python:建议 3.11 或 3.12(不支持 3.13)
- Node:仅用于装 PM2(装过的佬忽略)
2、创建目录 + venv + 安装
mkdir -p /opt/open-webui
cd /opt/open-webui
python3.11 -m venv venv
source venv/bin/activate
# 从 GitHub Release 安装(务必替换版本号!!!)⚠️
pip install https://github.com/ztx888/open-webui/releases/download/v0.7.3-7/open_webui_leon-0.7.3.post7-py3-none-any.whl
3、准备数据目录
mkdir -p /opt/open-webui/data
4、先手动跑一次确认
source /opt/open-webui/venv/bin/activate
export DATA_DIR=/opt/open-webui/data
open-webui-leon serve --host 0.0.0.0 --port 8080
浏览器访问:http://你的服务器IP:8080
确认能访问后按 Ctrl+C 停止,继续下一步
5、用 PM2 守护自动重启 + 日志
# 安装 PM2
npm i -g pm2
# 创建启动脚本(推荐方式)
cat > /opt/open-webui/start.sh << 'EOF'
#!/bin/bash
cd /opt/open-webui
source venv/bin/activate
export DATA_DIR=/opt/open-webui/data
export RAG_EMBEDDING_ENGINE=openai
export ENABLE_MEMORIES=false
exec open-webui-leon serve --host 0.0.0.0 --port 8080
EOF
chmod +x /opt/open-webui/start.sh
# 用 PM2 启动
pm2 start /opt/open-webui/start.sh --name open-webui --interpreter bash
pm2 list
pm2 logs open-webui
pm2 save
pm2 startup
环境变量说明:
RAG_EMBEDDING_ENGINE=openai:节省 200-400MB 内存ENABLE_MEMORIES=false:加快启动速度
更新方式(pip 版)
cd /opt/open-webui
source venv/bin/activate
pm2 stop open-webui
# 从 GitHub Release 更新(务必替换版本号!!!)
pip install https://github.com/ztx888/open-webui/releases/download/v0.7.3-7/open_webui_leon-0.7.3.post7-py3-none-any.whl
pm2 restart open-webui
pm2 logs open-webui
常用命令
pm2 status # 查看状态
pm2 logs open-webui # 查看日志
pm2 restart open-webui # 重启服务
pm2 stop open-webui # 停止服务
ARM 设备部署【点击展开】
本镜像针对 ARM64 架构设备(如 Raspberry Pi 4/5、NVIDIA Jetson、Apple M1/M2/M3、部分 Android 盒子)提供了独立构建版本。
提醒:树莓派请尽量使用 64 位系统(aarch64),否则无法运行 arm64 镜像。
1、拉取镜像
ARM 架构使用独立构建标签,请使用带 -arm64 后缀的镜像标签:
docker pull ghcr.io/ztx888/openwebui:latest-arm64
2、启动容器(Docker CLI)
最简单的启动方式:
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v open-webui:/app/backend/data \
ghcr.io/ztx888/openwebui:latest-arm64
启动后访问:
http://<你的设备IP>:3000
数据保存在 Docker Volume:
open-webui
3、使用 Docker Compose
如果你习惯用 docker-compose.yml 管理:
services:
open-webui:
image: ghcr.io/ztx888/openwebui:latest-arm64
container_name: open-webui
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
restart: always
volumes:
open-webui:
启动命令:
docker compose up -d
常见问题
- 为什么必须加
-arm64:
本项目的latest标签仅包含 amd64 架构。ARM 设备(树莓派、Mac M 系列等)必须使用latest-arm64标签,否则会出现no matching manifest for linux/arm64等错误。 - Apple Silicon (M1/M2/M3) 用户说明:
虽然 Docker Desktop 可能通过 Rosetta 模拟运行 amd64 镜像(通常更慢、占用更高),但建议使用latest-arm64以获得更好的原生性能与稳定性。 - 内存要求:
建议至少 4GB RAM。2GB 内存设备可能遇到 OOM导致容器启动失败或运行缓慢 - 更新镜像:
重新拉取并重启即可,命令如下:
docker pull ghcr.io/ztx888/openwebui:latest-arm64
docker restart open-webui
最后必须说一句
非常感谢各位公益站站长的付出和维护,真的帮各位佬省了太多折腾和成本。提供节点、反代、还是日常兜底运维,都很不容易,向各位站长致敬。
遇到问题欢迎反馈
当前已知问题与佬友功能建议【持续更新】:目前最新镜像 v0.7.3-7版本
-
深度优化启动速度,增加缓存机制,修复原版频繁请求模型列表、加载各种模型等不必要操作
-
如在使用中遇到问题,欢迎佬友反馈复现条件与日志片段,便于我快速定位并持续优化
-
如遇对话报错,建议优先查看报错信息,查阅相关帮助文档 [1] 或留言求助
-
原版的OpenWebUI对话的兼容性过于严格,可能会出现不支持某些代理中转,项目初期,希望佬们多多反馈报错内容或使用感受,感谢佬们的支持和理解
下个版本更新预告:【欢迎佬们多多建议】
- 对话输入框增加思考强度快捷调节,方便快捷
- UI深度优化重新排列,修复原版杂乱的设置选项
- 优化使用体验,使小白更加易上手使用
- 深度优化内存占用,避免不必要的资源浪费
PixPin_2026-01-25_16-04-10368×184 4.88 KB
PixPin_2026-01-25_22-24-10346×279 11.4 KB
我会持续迭代同步官方上游更新,如果你装了之后遇到问题、或者有更想要的功能点,又或者是UI方面的建议,都非常欢迎反馈,i人可以私信交流。 什么?你问我为何如此上心?
image354×121 13.6 KB
OpenWebUI指南 ↩︎
--【壹】--:
CherryStudio确实很卡
--【贰】--:
想了解一下内存占用情况如何
--【叁】--:
题外话:
佬用cherry卡的可以检查一下有没有自定义css搞了复杂动画。。。
比如前几天我的:
https://linux.do/t/topic/1421521
一个css动画吃了大量cpu
画图的有些返回base64 非常巨大 那个窗口也会卡了
--【肆】--:
大佬厉害!
--【伍】--:
哦?这个我还真没注意哎!反正最近用的真的有点卡
--【陆】--:
支持支持
--【柒】--:
这个不错啊,!大晚上不睡看到好东西了
--【捌】--:
哇哦 大家快来看,这有个好东西
--【玖】--:
owui现在的问题就是模型管理太复杂了,权限还得一个个开
--【拾】--:
太强大了
--【拾壹】--:
终于写完了,睡觉睡觉
--【拾贰】--:
好提议!已增加一键开启和关闭的开关,直接一键设置模型
PixPin_2026-01-15_18-52-471052×221 52.2 KB
--【拾叁】--:
有没有保留数据库模式
--【拾肆】--:
先占个位置。看上去很有东西呀。
--【拾伍】--:
太强了吧
--【拾陆】--:
太有用了
--【拾柒】--:
star了,之前都是使用Cherrystudio的,不同设备用起来同步是个大问题,这个应该能解决吧(还没试过openwebui)
--【拾捌】--:
关注下了
--【拾玖】--:
PixPin_2026-01-14_01-15-03870×769 40.1 KB
以我的绿联NAS上的docker环境为例,刚测试一轮对话,占用基本在660M左右
现在的 AI 客户端简直是百花齐放,讨论相对较多的应该就属 CherryStudio 和 OpenWebUI
先聊 CherryStudio
- 优点:UI 设计确实审美在线,比 ChatBox 精致不少,而且多服务商、多模型的接入和切换非常方便,主打一个方便快捷,打开软件就能用。
- 硬伤:对话历史的堆积,个人目前体验变得非常卡;最可惜的是缺乏原生多端同步
再说 OpenWebUI
-
优点:走的是 Web 架构路线,界面复刻了 ChatGPT 的极简风格,上手几乎是零门槛。函数调用、知识库,还有高度可定制化的设置非常优秀,比如模型参数、权限、检索策略这类设置,很多客户端只是给个开关意思一下,它是给你一整套可控面板,当然还有我最需要的多端同步
-
缺点:模型太多的时候就很不方便管理,而且不支持 Gemini 接口的原生接入。高度可自定义化也意味着默认体验未必最佳——你得自己调,调好了很爽,没调好就容易变成功能太多太杂,懒得去动的状态
但我想要是能把二者相结合岂不是绝杀?能的佬友,能的!
GitHub - ztx888/HaloWebUI: 基于官方OpenWebUI,汉化界面提高中文使用体验,增加了模型计费和用量统计
基于官方OpenWebUI,汉化界面提高中文使用体验,增加了模型计费和用量统计
重点优化功能:
自定义上下文条数:可以设置发送给模型的历史消息上下文的数量,有效节省Token
image1301×512 35.4 KB
image1334×384 21 KB
增加清除上下文功能,对齐cherrystudio,实现当前对话中隔离上下文
PixPin_2026-01-14_20-00-441424×971 52.9 KB
增加了 Responses API 传递支持,XHigh展示思维链,ChatGPT开启模型自带内置搜索
PixPin_2026-01-21_13-29-511025×801 88.7 KB
新增模型一键设置公开: 模型设置页增加一键切换公开私有,方便管理
PixPin_2026-01-15_13-49-30299×133 5.7 KB
image326×138 6.16 KB
模型管理: 外部连接页增加标签分类和模型管理功能,和cherrystudio一样方便添加模型
PixPin_2026-01-22_00-13-56885×882 66.3 KB
新增对话分支功能: 支持当前对话直接创建新分支到新窗口继续对话
Gemini 原生端口支持:不依赖 OpenAI 兼容层,直接走 Gemini 原生接口
PixPin_2026-01-21_02-26-33578×654 27.9 KB
外部连接显示优化:改成双列显示,管理效率直接拉满,标签排序方便分类收纳
PixPin_2026-01-20_12-30-071361×947 78.5 KB
PixPin_2026-01-23_22-40-25691×684 41.4 KB
图标 + 思考强度可选: 更加直观方便可选,增加常见图标
PixPin_2026-01-22_00-20-28374×458 20 KB
PixPin_2026-01-20_13-25-14310×341 17.4 KB
模型计费 + 用量统计前端同步info黑框:支持免费/按次/按量三种模式,实时计算对话成本
PixPin_2026-01-19_17-45-06402×269 4.93 KB
PixPin_2026-01-20_13-28-11296×220 5.66 KB
优化代码块展示:仿Mac风格,并优化原版字体和颜色,更加美化易读
PixPin_2026-01-21_21-04-21969×858 95.8 KB
image925×854 93.2 KB
新增图片连续编辑功能: 可以在对话中连续编辑图片,不会丢失原画面
PixPin_2026-01-20_00-48-22875×966 210 KB
设置优化:添加备注功能方便区分,列表中点击名称直接跳转到设置,再也不怕点错小齿轮,适合链接多的佬
PixPin_2026-01-21_02-27-23568×689 27.1 KB
PixPin_2026-01-14_12-57-30639×453 42.1 KB
使用方式:
Docker 一键部署【点击展开】
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v open-webui:/app/backend/data \
ghcr.io/ztx888/openwebui:latest
- 浏览器访问:
http://你的服务器IP:3000 - 数据持久化在 Docker 卷:
open-webui(用于重启或者更新的时候不丢配置和对话)
如果你本机没有 Docker 卷习惯,也可以改成本地目录挂载:
mkdir -p ./open-webui-data
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v $(pwd)/open-webui-data:/app/backend/data \
ghcr.io/ztx888/openwebui:latest
pip + PM2部署【点击展开】
适合:不想用 Docker、不想折腾前端构建、就想稳定跑起来的佬。
优势:步骤少、更新方便、跟管理 Node 项目一样用 PM2 守护
注意:本包同时提供
open-webui和open-webui-leon两个命令。
为避免与官方包冲突,建议使用独立 venv 并优先用open-webui-leon命令。
1、准备环境
- Python:建议 3.11 或 3.12(不支持 3.13)
- Node:仅用于装 PM2(装过的佬忽略)
2、创建目录 + venv + 安装
mkdir -p /opt/open-webui
cd /opt/open-webui
python3.11 -m venv venv
source venv/bin/activate
# 从 GitHub Release 安装(务必替换版本号!!!)⚠️
pip install https://github.com/ztx888/open-webui/releases/download/v0.7.3-7/open_webui_leon-0.7.3.post7-py3-none-any.whl
3、准备数据目录
mkdir -p /opt/open-webui/data
4、先手动跑一次确认
source /opt/open-webui/venv/bin/activate
export DATA_DIR=/opt/open-webui/data
open-webui-leon serve --host 0.0.0.0 --port 8080
浏览器访问:http://你的服务器IP:8080
确认能访问后按 Ctrl+C 停止,继续下一步
5、用 PM2 守护自动重启 + 日志
# 安装 PM2
npm i -g pm2
# 创建启动脚本(推荐方式)
cat > /opt/open-webui/start.sh << 'EOF'
#!/bin/bash
cd /opt/open-webui
source venv/bin/activate
export DATA_DIR=/opt/open-webui/data
export RAG_EMBEDDING_ENGINE=openai
export ENABLE_MEMORIES=false
exec open-webui-leon serve --host 0.0.0.0 --port 8080
EOF
chmod +x /opt/open-webui/start.sh
# 用 PM2 启动
pm2 start /opt/open-webui/start.sh --name open-webui --interpreter bash
pm2 list
pm2 logs open-webui
pm2 save
pm2 startup
环境变量说明:
RAG_EMBEDDING_ENGINE=openai:节省 200-400MB 内存ENABLE_MEMORIES=false:加快启动速度
更新方式(pip 版)
cd /opt/open-webui
source venv/bin/activate
pm2 stop open-webui
# 从 GitHub Release 更新(务必替换版本号!!!)
pip install https://github.com/ztx888/open-webui/releases/download/v0.7.3-7/open_webui_leon-0.7.3.post7-py3-none-any.whl
pm2 restart open-webui
pm2 logs open-webui
常用命令
pm2 status # 查看状态
pm2 logs open-webui # 查看日志
pm2 restart open-webui # 重启服务
pm2 stop open-webui # 停止服务
ARM 设备部署【点击展开】
本镜像针对 ARM64 架构设备(如 Raspberry Pi 4/5、NVIDIA Jetson、Apple M1/M2/M3、部分 Android 盒子)提供了独立构建版本。
提醒:树莓派请尽量使用 64 位系统(aarch64),否则无法运行 arm64 镜像。
1、拉取镜像
ARM 架构使用独立构建标签,请使用带 -arm64 后缀的镜像标签:
docker pull ghcr.io/ztx888/openwebui:latest-arm64
2、启动容器(Docker CLI)
最简单的启动方式:
docker run -d \
--name open-webui \
--restart always \
-p 3000:8080 \
-v open-webui:/app/backend/data \
ghcr.io/ztx888/openwebui:latest-arm64
启动后访问:
http://<你的设备IP>:3000
数据保存在 Docker Volume:
open-webui
3、使用 Docker Compose
如果你习惯用 docker-compose.yml 管理:
services:
open-webui:
image: ghcr.io/ztx888/openwebui:latest-arm64
container_name: open-webui
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
restart: always
volumes:
open-webui:
启动命令:
docker compose up -d
常见问题
- 为什么必须加
-arm64:
本项目的latest标签仅包含 amd64 架构。ARM 设备(树莓派、Mac M 系列等)必须使用latest-arm64标签,否则会出现no matching manifest for linux/arm64等错误。 - Apple Silicon (M1/M2/M3) 用户说明:
虽然 Docker Desktop 可能通过 Rosetta 模拟运行 amd64 镜像(通常更慢、占用更高),但建议使用latest-arm64以获得更好的原生性能与稳定性。 - 内存要求:
建议至少 4GB RAM。2GB 内存设备可能遇到 OOM导致容器启动失败或运行缓慢 - 更新镜像:
重新拉取并重启即可,命令如下:
docker pull ghcr.io/ztx888/openwebui:latest-arm64
docker restart open-webui
最后必须说一句
非常感谢各位公益站站长的付出和维护,真的帮各位佬省了太多折腾和成本。提供节点、反代、还是日常兜底运维,都很不容易,向各位站长致敬。
遇到问题欢迎反馈
当前已知问题与佬友功能建议【持续更新】:目前最新镜像 v0.7.3-7版本
-
深度优化启动速度,增加缓存机制,修复原版频繁请求模型列表、加载各种模型等不必要操作
-
如在使用中遇到问题,欢迎佬友反馈复现条件与日志片段,便于我快速定位并持续优化
-
如遇对话报错,建议优先查看报错信息,查阅相关帮助文档 [1] 或留言求助
-
原版的OpenWebUI对话的兼容性过于严格,可能会出现不支持某些代理中转,项目初期,希望佬们多多反馈报错内容或使用感受,感谢佬们的支持和理解
下个版本更新预告:【欢迎佬们多多建议】
- 对话输入框增加思考强度快捷调节,方便快捷
- UI深度优化重新排列,修复原版杂乱的设置选项
- 优化使用体验,使小白更加易上手使用
- 深度优化内存占用,避免不必要的资源浪费
PixPin_2026-01-25_16-04-10368×184 4.88 KB
PixPin_2026-01-25_22-24-10346×279 11.4 KB
我会持续迭代同步官方上游更新,如果你装了之后遇到问题、或者有更想要的功能点,又或者是UI方面的建议,都非常欢迎反馈,i人可以私信交流。 什么?你问我为何如此上心?
image354×121 13.6 KB
OpenWebUI指南 ↩︎
--【壹】--:
CherryStudio确实很卡
--【贰】--:
想了解一下内存占用情况如何
--【叁】--:
题外话:
佬用cherry卡的可以检查一下有没有自定义css搞了复杂动画。。。
比如前几天我的:
https://linux.do/t/topic/1421521
一个css动画吃了大量cpu
画图的有些返回base64 非常巨大 那个窗口也会卡了
--【肆】--:
大佬厉害!
--【伍】--:
哦?这个我还真没注意哎!反正最近用的真的有点卡
--【陆】--:
支持支持
--【柒】--:
这个不错啊,!大晚上不睡看到好东西了
--【捌】--:
哇哦 大家快来看,这有个好东西
--【玖】--:
owui现在的问题就是模型管理太复杂了,权限还得一个个开
--【拾】--:
太强大了
--【拾壹】--:
终于写完了,睡觉睡觉
--【拾贰】--:
好提议!已增加一键开启和关闭的开关,直接一键设置模型
PixPin_2026-01-15_18-52-471052×221 52.2 KB
--【拾叁】--:
有没有保留数据库模式
--【拾肆】--:
先占个位置。看上去很有东西呀。
--【拾伍】--:
太强了吧
--【拾陆】--:
太有用了
--【拾柒】--:
star了,之前都是使用Cherrystudio的,不同设备用起来同步是个大问题,这个应该能解决吧(还没试过openwebui)
--【拾捌】--:
关注下了
--【拾玖】--:
PixPin_2026-01-14_01-15-03870×769 40.1 KB
以我的绿联NAS上的docker环境为例,刚测试一轮对话,占用基本在660M左右

