发布于 Wed Feb 18 2026 08:00:00 GMT+0800 (中国标准时间)
深度评测本地推理Open WebUIOllama
全本地 AI 客服落地:Open WebUI + Ollama + Qwen 一台 GPU 服务器
数据不出网的硬要求下,单台 A100 服务器跑全套 AI 客服可行吗?硬件、模型、知识库、对外开放全流程。
适用场景#
- 金融 / 医疗 / 政企(数据完全不出网)
- 已采购 GPU 想发挥价值
- 想验证本地模型与云端的真实差距
硬件清单#
| 场景 | 配置 | 月成本(云租赁) |
|---|---|---|
| < 100 并发,小知识库 | 1 × A10 24GB + 8C32G CPU | ~$700 |
| < 500 并发,中知识库 | 1 × A100 40GB + 16C64G | ~$1500 |
| 大型企业,需要 70B | 2 × A100 80GB + 32C128G | ~$4000 |
软件栈#
关键步骤#
1. Ollama + Qwen#
# 安装 Ollama
curl -fsSL https://ollama.com/install.sh | sh
# 拉模型(14B 量化版本)
ollama pull qwen2.5:14b-instruct-q4_K_M
# 测试
ollama run qwen2.5:14b-instruct-q4_K_M "你好"
2. Open WebUI#
docker run -d --name openwebui \
-p 3000:8080 \
-v openwebui:/app/backend/data \
--add-host=host.docker.internal:host-gateway \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
ghcr.io/open-webui/open-webui:main
3. 本地 Embedding#
不要图省事用 OpenAI 接口——一旦数据出网整套合规就废了。本地装 text-embeddings-inference:
docker run -d --name tei \
--gpus all -p 8080:80 \
-v $PWD/tei-data:/data \
ghcr.io/huggingface/text-embeddings-inference:1.5 \
--model-id BAAI/bge-m3
在 Open WebUI 配 embedding endpoint 指向 http://host.docker.internal:8080。
4. Pipelines 接业务#
Pipelines 是 Open WebUI 的「中间件」,可以写 Python 逻辑:
# 当用户问到订单类问题,自动调用 ERP
class Pipeline:
def __init__(self):
self.name = "Order Lookup"
def pipe(self, body, user, **kwargs):
msg = body['messages'][-1]['content']
if '订单' in msg:
# 提取订单号、调用本地 ERP API
order = lookup_local_erp(msg)
body['messages'].append({
'role': 'system',
'content': f'订单信息:{order}'
})
return body
5. 对外开放(受控)#
千万不要把 Open WebUI 直接暴露公网。做法:
- 内网 only,员工通过 VPN 访问
- 外部客户:Open WebUI → 反向代理 → 加身份验证 → 仅暴露聊天 API
- 用 Chatwoot 当公网入口,Open WebUI 作为后端通过 Agent Bot 调用
实测性能#
| 指标 | 数值 |
|---|---|
| 首 token 延迟 | 800-1200ms |
| tokens/秒 | 45-60(Qwen 14B q4 on A100) |
| RAG 检索 | 55ms |
| 端到端首响 | 约 1.5 秒 |
| 并发上限 | 约 80 并发 |
与云端对比#
| 维度 | 本地 Qwen 14B | 云端 Qwen 72B |
|---|---|---|
| 准确率 | 4.0 | 4.4 |
| 首响延迟 | 1500ms | 800ms |
| 月成本(5000 会话) | $700-1500 | $50-150 |
| 数据合规 | ✓ | ✗ for some |
结论:本地推理的唯一理由是合规。成本上云端碾压本地(除非你已有 GPU 沉没成本)。