本地大模型知识库部署实践(4090D×2)
基于 ESXi + Ubuntu + 双4090D(48G) 搭建企业级知识库平台实践记录
环境说明
硬件配置
| 项目 | 配置 |
|---|---|
| CPU | 128核 |
| 内存 | 256GB |
| GPU | 4090D 48G × 2 |
| 系统 | Ubuntu 22.04 |
| 虚拟化 | ESXi 8.0 |
模型选型
| 模型 | 评价 |
|---|---|
| QwQ-32B-AWQ | 推荐,速度快、并发高 |
| QwQ-32B | 推荐,准确率高 |
| DeepSeek-R1-Distill-Qwen-32B | 推荐 |
| DeepSeek-R1 70B | 不推荐,速度过慢 |
向量模型
Embedding:bge-m3
Rerank:bge-reranker-v2-m3
第一章 基础环境部署
Docker
安装 Docker
推荐:
安装 1Panel
自动部署 Docker 与 Docker Compose
配置 Docker 代理
{
...
}
验证
docker --version
docker compose version
Conda
安装
wget ...
bash ...
验证
conda --version
NVIDIA 驱动
按照 NVIDIA 官方文档安装:
- CUDA
- Driver
- Toolkit
验证:
nvidia-smi
第二章 模型推理引擎
Ollama
特点:
- 简单
- 适合个人
缺点:
- 性能较低
vLLM(推荐)
特点:
- 性能最佳
- OpenAI API兼容
- 支持 Tensor Parallel
安装
conda create -n vllm_env python=3.12
...
Xinference
特点:
- 集成多种推理引擎
- 支持 Embedding
- 支持 Rerank
适合作为:
Embedding 服务
Rerank 服务
第三章 模型下载
ModelScope
pip install modelscope
下载模型
modelscope download ...
第四章 运行模型
LLM模型
QwQ-32B-AWQ
vllm serve ...
参数说明
| 参数 | 作用 |
|---|---|
| tensor-parallel-size | GPU数量 |
| max-model-len | 上下文长度 |
| gpu-memory-utilization | 显存利用率 |
| swap-space | 内存交换空间 |
实际测试结果
| 模型 | TPS |
|---|---|
| QwQ-32B-AWQ | 70+ |
| QwQ-32B | 25+ |
| DeepSeek-R1 70B | 10左右 |
Embedding
bge-m3
xinference launch ...
Rerank
bge-reranker-v2-m3
xinference launch ...
第五章 平台选型
平台对比
| 平台 | 推荐指数 | 说明 |
|---|---|---|
| Dify | ⭐⭐⭐⭐⭐ | 企业首选 |
| OpenWebUI | ⭐⭐⭐⭐⭐ | 最佳前端 |
| Ragflow | ⭐⭐⭐⭐ | 强知识库 |
| MaxKB | ⭐⭐⭐⭐ | 简单易用 |
| AnythingLLM | ⭐⭐⭐⭐ | 功能全面 |
| FastGPT | ⭐⭐ | 商业版限制较多 |
第六章 Dify部署
安装
git clone ...
docker compose up -d
推荐修改项
上传大小
UPLOAD_FILE_SIZE_LIMIT=10000
上传数量
UPLOAD_FILE_BATCH_LIMIT=100
Milvus配置
MILVUS_URI=...
第七章 知识库配置
推荐参数
多路召回
| 参数 | 建议 |
|---|---|
| Score | 0.7 |
| TopK | 10 |
检索
| 参数 | 建议 |
|---|---|
| 相似度 | 0.3 |
| TopK | 10 |
| 检索方式 | 混合检索 |
第八章 工作流
介绍工作流设计思路
- 文件上传
- 文本切分
- 向量化
- 检索
- Rerank
- LLM回答
第九章 WebUI
OpenWebUI
优点:
- UI漂亮
- 多用户
- 权限管理
安装
docker run ...
Dify 对接
架构:
用户 ↓ OpenWebUI ↓ dify2openai ↓ Dify ↓ vLLM
踩坑记录
vLLM
显存占用异常
现象:
模型只需40G显存
实际占用双卡84G+
原因:
Tensor Parallel 会复制部分缓存和KV结构
Xinference + vLLM
现象:
速度仅原生vLLM的三分之一
待进一步研究。
最终推荐架构
vLLM ↓ Dify ↓ OpenWebUI
Embedding: bge-m3
Rerank: bge-reranker-v2-m3
生产环境推荐指数:★★★★★