Windows 上 DeepSeek‑R1 部署优化指南
一 硬件与版本基线
- 系统建议:Windows 10/11 64 位;内存至少16GB(7B 量化版可用,16GB 更稳),更推荐32GB;存储预留30GB+(7B 量化约十几 GB,原始权重更大)。
- GPU 建议:NVIDIA 显卡,驱动≥525.60.13;7B 模型建议显存≥12GB(量化可降至约8–10GB),13B 建议≥24GB。
- 无独显方案:可用 CPU + ONNX Runtime/DirectML 推理,实测 i7‑12700H + ONNX Runtime 首批约3.2 token/s、持续约1.8 token/s,满足基础对话与轻量生成。
二 快速方案 Ollama + ChatBox 的即插即用优化
- 安装与验证:安装 Ollama for Windows,命令行执行
ollama --version 验证;安装 ChatBox 作为前端。 - 模型选择与运行:优先选择量化标签(如 1.5B/7B‑q4)以降低显存/内存占用;命令行执行
ollama run deepseek‑r1:7b-q4(或 deepseek‑r1:1.5b)完成拉取与首次运行。 - 接口与前端:ChatBox 设置 API 为 http://127.0.0.1:11434/api/generate,模型选择对应的 deepseek‑r1。
- 稳定性与日志:Ollama 默认端口 11434;查看日志
C:\Users\<用户名>\.ollama\logs\server.log;端口占用可用 netstat -ano | findstr 11434 排查。 - 离线与合规:在受限网络环境可预先下载模型与安装包,部署时保持离线;必要时对模型文件做加密与访问控制。
三 GPU 深度优化与推理参数
- 驱动与基础栈:更新 NVIDIA 驱动;安装与驱动匹配的 CUDA/cuDNN;Python 环境建议 3.10,PyTorch GPU 版可用
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118。 - 加载与混合精度:使用 float16 与
device_map="auto";必要时开启 8bit/4bit 量化 或 offload(磁盘卸载)以在有限显存下运行更大模型。 - 生成参数:在追求吞吐时设置
do_sample=False、temperature=0;需要多样性时再启用采样。 - 监控与调优:用
nvidia‑smi 观察 GPU 利用率 70–90% 为佳;若显存吃紧,降低 max_length、减小 batch_size 或改用更激进的量化。
四 无显卡与 ONNX Runtime 路线
- 环境准备:安装 Python 3.10.x;安装 ONNX Runtime 与(有独显时)onnxruntime‑directml;PyTorch 可选 CPU 或 DirectML 版本。
- 模型转换与量化:从 Hugging Face 获取权重,使用 Transformers 导出 ONNX;用 optimum.onnxruntime 做 INT8 量化,可显著减小模型体积并提升推理速度。
- 执行与线程:创建 InferenceSession 时选择 CPUExecutionProvider 或 DmlExecutionProvider;设置
intra_op_num_threads 为物理核心数或其一半,提高 CPU 利用率。 - 连续生成优化:启用 KV Cache(缓存历史注意力键值)可显著改善长文本连续生成速度。
五 常见问题与排障清单
- 显存不足 OOM:优先改用 量化(如 4bit/8bit)、降低
max_length 与 batch_size,或启用 offload;必要时改用 7B/1.5B 级别模型。 - API 连接失败:确认 Ollama 服务运行 与端口 11434 未被占用;ChatBox 的 API 地址应为 http://127.0.0.1:11434/api/generate。
- 模型加载异常:核对模型文件路径与格式,必要时校验 MD5;查看 server.log 定位初始化错误。
- 性能不达预期:用
nvidia‑smi 检查 GPU 利用率 与温度;CPU 场景下提升 线程数 并开启 KV Cache;必要时改用 DirectML 或 量化 版本。