Windows部署DeepSeek R1的详细步骤
一 方案总览与硬件建议
- 三种主流方式:
- 零基础一键运行:使用Ollama + ChatBox,最快在Windows 10/11上跑通,适合个人与演示环境。
- 可视化与多模型管理:使用Cherry Studio加载本地模型,适合需要界面与多模型对比的用户。
- 开发者深度集成:使用Python + Transformers自行加载与调用,适合二次开发与私有化集成。
- 硬件建议(按模型规模):
- 1.5B:内存≥16GB,CPU推理可用;显存≥8GB更流畅(量化后更省显存)。
- 7B:显存≥12GB(FP16),建议24GB更稳;内存≥32GB。
- 13B/33B:显存≥24GB/48GB,建议32B/64GB内存;适合高端GPU。
- 存储预留≥50GB(模型文件约20–30GB,缓存与依赖额外占用)。
二 方案一 Ollama + ChatBox零基础部署
- 步骤1 安装Ollama
- 在Windows 10/11上下载安装Ollama(安装时勾选Add to PATH),完成后在命令行执行:
- ollama --version(应输出版本号,如0.3.x)
- 步骤2 拉取并运行模型
- 低配优先选1.5B:ollama run deepseek-r1:1.5b
- 中配建议7B:ollama run deepseek-r1:7b
- 首次运行会自动下载模型,耗时取决于网络与模型大小。
- 步骤3 安装并配置ChatBox
- 安装ChatBox客户端,进入Settings > API,选择Ollama API,设置:
- URL:http://localhost:11434/api/generate
- Model:deepseek-r1:1.5b(或你拉取的对应标签)
- 保存后即可在ChatBox与本地模型对话。
- 步骤4 验证与常见问题
- 验证服务:curl http://localhost:11434/api/generate -d '{"prompt":"你好","stream":false}'
- 显存不足:优先改用量化标签(如7B的q4_k_m),或在配置中降低层数/批量。
- 离线使用:提前在有网环境拉取模型,或准备好离线模型包再导入。
三 方案二 Cherry Studio可视化部署
- 步骤1 准备环境
- 建议Python 3.8–3.10、CUDA 11.7/11.8、显存≥8GB(推荐12GB+),可用nvidia-smi检查驱动与CUDA状态。
- 步骤2 安装与启动
- 获取Cherry Studio代码并安装依赖:
- git clone https://github.com/deepseek-ai/cherry-studio.git
- cd cherry-studio && pip install -r requirements.txt
- python -m venv cherry_env && .cherry_envScriptsactivate
- pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
- pip install transformers>=4.34.0
- 启动Web UI(默认端口7860):
- python app.py --model-path C:modelsdeepseek-r1 --port 7860
- 步骤3 加载DeepSeek R1
- 从Hugging Face获取模型(如deepseek-ai/deepseek-r1),保存到C:modelsdeepseek-r1,在UI中选择本地模型路径加载。
- 步骤4 显存优化
- 加载时使用4-bit量化与device_map="auto"可显著降低显存占用(精度损失约2–3%)。
四 方案三 Python Transformers原生调用
- 步骤1 创建隔离环境
- conda create -n deepseek python=3.10
- conda activate deepseek
- pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
- pip install transformers>=4.34.0
- 步骤2 下载模型
- 建议从官方渠道获取DeepSeek-R1的PyTorch/GGML格式(如Hugging Face仓库),保存至C:modelsdeepseek_r1。
- 步骤3 最小推理示例
- from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_path = r"C:modelsdeepseek_r1"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(
model_path,
device_map="auto",
torch_dtype=torch.float16,
load_in_4bit=True # 需bitsandbytes
)
prompt = "用Python写一个快速排序算法"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
- 步骤4 性能与稳定性
- 优先使用量化(4-bit)与半精度(FP16);显存紧张时减小max_new_tokens与batch。
五 常见问题与优化
- 显存不足与速度优化
- 量化优先:7B使用q4_k_m或更低比特;必要时降低gpu_layers或启用低显存模式。
- 服务参数:OLLAMA_GPU_SPLIT可限制显存占用;NVIDIA控制面板将电源管理设为最高性能优先可带来约15%提速。
- 环境与依赖
- 驱动与CUDA:nvidia-smi确认驱动≥525.60.13;CUDA与cuDNN需版本匹配(常见组合:CUDA 11.8 + cuDNN 8.6+)。
- Windows工具链:可用winget或Chocolatey快速安装Python/CUDA;WSL2为可选增强项。
- 服务与网络
- 默认端口11434;如需局域网访问,设置OLLAMA_HOST=0.0.0.0并开放防火墙端口。
- 离线与校验
- 离线前在有网设备拉取模型或使用离线安装包;大模型文件建议校验MD5确保完整。