DeepSeek本地部署完整教程(2026年):从硬件选购到性能调优,Ollama/vLLM/llama.cpp三种方案全解析
DeepSeek在2025年发布V3和R1系列模型后,迅速成为开源大模型领域的标杆。V3在MMLU上达到88.5分,R1在数学推理和代码生成方面更是逼近GPT-4o水平。更关键的是,DeepSeek全系模型采用MIT协议开源,允许商业使用,这让本地部署成为企业和技术团队的刚需——数据不出本地、无API调用成本、完全可控。
但本地部署大模型对硬件有明确要求,不同部署方案的适用场景和性能表现也差异巨大。这篇文章覆盖了目前最主流的三种本地部署方案——Ollama、vLLM和llama.cpp,从硬件选购、环境配置到性能调优,每个步骤都给出了具体命令和参数说明。无论你用的是RTX 4090游戏卡还是多张A100服务器卡,都能找到对应的部署路径。
一、DeepSeek模型系列与硬件需求

在开始部署之前,先理清DeepSeek目前可用的模型版本和对应的硬件需求。DeepSeek提供了多个规格的模型,参数量从1.5B到671B不等,适合不同规模的硬件环境。
1.1 模型版本对照
| 模型名称 | 参数量 | 上下文长度 | 量化后显存需求 | 推荐GPU | 适用场景 |
|---|---|---|---|---|---|
| DeepSeek-V3-0324 | 671B (MoE) | 128K | 约400GB (4-bit) | 8×A100 80GB | 企业级全场景 |
| DeepSeek-R1-0528 | 671B (MoE) | 128K | 约400GB (4-bit) | 8×A100 80GB | 深度推理/数学 |
| DeepSeek-V3-Lite | 16B | 64K | 约10GB (4-bit) | RTX 4070/4080 | 个人开发者 |
| DeepSeek-R1-Distill-Qwen-32B | 32B | 64K | 约20GB (4-bit) | RTX 4090/3090 | 推理增强型 |
| DeepSeek-R1-Distill-Qwen-14B | 14B | 64K | 约9GB (4-bit) | RTX 4070/4080 | 消费级GPU |
| DeepSeek-R1-Distill-Qwen-7B | 7B | 64K | 约5GB (4-bit) | RTX 4060/3060 | 入门体验 |
| DeepSeek-Coder-V2-Lite | 16B | 128K | 约10GB (4-bit) | RTX 4070/4080 | 代码生成 |
对于大多数个人开发者和中小企业来说,14B-32B的蒸馏模型是性价比最高的选择。它们在保持较好性能的同时,对硬件的要求相对友好。如果你对DeepSeek和ChatGPT的性能差异感兴趣,可以参考我们的DeepSeek和ChatGPT深度对比评测。
1.2 硬件选购指南

本地部署大模型,硬件是最大的投入。下面按预算分层给出推荐方案:
入门级(预算5000-8000元):运行7B-14B模型
- CPU:Intel i5-13600K 或 AMD R7 7700X
- GPU:RTX 4060 Ti 16GB(16GB显存版本,非8GB版)
- 内存:32GB DDR5
- 存储:1TB NVMe SSD
- 预期性能:7B模型约30-40 tokens/s,14B模型约15-20 tokens/s
进阶级(预算12000-20000元):运行14B-32B模型
- CPU:Intel i7-14700K 或 AMD R9 7900X
- GPU:RTX 4090 24GB 或 RTX 3090 24GB(二手约6000元)
- 内存:64GB DDR5
- 存储:2TB NVMe SSD
- 预期性能:14B模型约50-70 tokens/s,32B模型约20-30 tokens/s
专业级(预算50000元以上):运行32B-671B模型
- GPU:2×RTX 4090 或 4×RTX 3090 或 A100 40GB/80GB
- CPU:AMD EPYC 或 Intel Xeon(多PCIe通道)
- 内存:128GB+ ECC
- 存储:4TB+ NVMe SSD
- 预期性能:32B模型约80-120 tokens/s(多卡),671B模型需要8卡并行
需要注意的是,NVIDIA显卡的CUDA生态对大模型推理的支持最完善。AMD显卡虽然可以通过ROCm运行部分模型,但兼容性和性能都不如NVIDIA方案稳定。Apple Silicon(M1/M2/M3/M4 Max/Ultra)通过MLX框架也能运行7B-32B模型,性能表现不错,适合Mac用户。
二、方案一:Ollama部署(推荐新手)

Ollama是目前最简单的本地大模型运行工具,一键安装、一行命令即可启动模型。它基于llama.cpp构建,支持自动量化、多GPU并行和模型管理。如果你之前用过Stable Diffusion本地部署,会发现Ollama的安装过程更加简洁。
2.1 安装Ollama
Linux系统(推荐Ubuntu 22.04+):
curl -fsSL https://ollama.com/install.sh | sh
安装完成后,Ollama会自动以systemd服务运行。检查状态:
systemctl status ollama
macOS系统:直接从 ollama.com/download 下载安装包即可。Windows系统目前也支持,但性能不如Linux原生。
2.2 拉取并运行DeepSeek模型
Ollama的模型库已经收录了DeepSeek系列模型。以DeepSeek-R1-Distill-Qwen-14B为例:
# 拉取模型(首次运行会自动下载,约9GB)
ollama pull deepseek-r1:14b
# 运行模型(进入交互对话模式)
ollama run deepseek-r1:14b
# 指定GPU运行(多卡环境)
CUDA_VISIBLE_DEVICES=0 ollama run deepseek-r1:14b
如果需要更大的模型:
# 32B蒸馏模型(需要24GB显存)
ollama pull deepseek-r1:32b
# 7B蒸馏模型(需要8GB显存)
ollama pull deepseek-r1:7b
2.3 配置参数优化
Ollama支持通过Modelfile自定义模型参数。创建一个Modelfile:
# 创建Modelfile
cat > Modelfile << 'EOF'
FROM deepseek-r1:14b
# 设置系统提示词
SYSTEM "你是一个专业的AI助手,擅长中文对话和技术问题解答。"
# 参数优化
PARAMETER temperature 0.7
PARAMETER top_p 0.9
PARAMETER num_ctx 8192
PARAMETER num_gpu 99
EOF
# 构建自定义模型
ollama create my-deepseek -f Modelfile
# 运行自定义模型
ollama run my-deepseek
关键参数说明:
temperature:控制输出随机性。0.1-0.3适合代码/数学,0.6-0.8适合对话/创作,0.9+适合头脑风暴。top_p:核采样参数,通常设为0.9。与temperature配合使用效果更好。num_ctx:上下文窗口长度。14B模型建议设为4096-8192,设太大会占用额外显存。num_gpu:GPU层占比。99表示尽量将所有层加载到GPU上。如果显存不足,可以降低到80-90让部分层在CPU上运行。
2.4 暴露API服务
Ollama默认监听127.0.0.1:11434,提供OpenAI兼容的API接口。修改监听地址让局域网内其他设备也能访问:
# 设置环境变量(推荐写入 /etc/systemd/system/ollama.service.d/environment.conf)
sudo mkdir -p /etc/systemd/system/ollama.service.d
sudo tee /etc/systemd/system/ollama.service.d/environment.conf << 'EOF'
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_ORIGINS=*"
EOF
# 重启服务
sudo systemctl daemon-reload
sudo systemctl restart ollama
之后就可以通过OpenAI兼容API调用了:
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-r1:14b",
"messages": [{"role": "user", "content": "用Python写一个快速排序"}],
"temperature": 0.3
}'
这个API格式和OpenAI完全一致,所以任何支持OpenAI API的客户端(如Cursor、Continue等)都可以直接配置使用。在Cursor中设置API Base URL为http://localhost:11434/v1,Model填写deepseek-r1:14b即可。
三、方案二:vLLM部署(高性能推理)

vLLM是伯克利大学开发的LLM推理引擎,核心技术是PagedAttention,可以显著提升显存利用率和推理吞吐量。适合需要同时服务多个用户或追求极致推理速度的生产环境。
3.1 安装vLLM
vLLM对CUDA版本和GPU驱动有严格要求,安装前请确认:
- NVIDIA驱动版本 ≥ 525.60
- CUDA版本 ≥ 12.1
- Python版本 3.9-3.12
# 创建虚拟环境
conda create -n vllm python=3.11 -y
conda activate vllm
# 安装vLLM(CUDA 12.1+)
pip install vllm
# 验证安装
python -c "import vllm; print(vllm.__version__)"
3.2 启动推理服务
vLLM支持直接从HuggingFace或ModelScope下载DeepSeek模型:
# 从ModelScope下载并启动(国内用户推荐)
python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B \
--served-model-name deepseek-r1-14b \
--tensor-parallel-size 1 \
--gpu-memory-utilization 0.9 \
--max-model-len 8192 \
--trust-remote-code
关键参数说明:
--tensor-parallel-size:张量并行大小。单卡设为1,双卡设为2,以此类推。运行671B满血版至少需要8卡并行。--gpu-memory-utilization:GPU显存利用率,默认0.9。设太高可能导致OOM,设太低浪费显存。--max-model-len:最大序列长度。影响KV Cache的显存占用。14B模型设为8192大约需要12GB显存。--quantization:量化方式。支持AWQ、GPTQ、SqueezeLLM等。例如--quantization awq可以使用AWQ量化模型。
多卡部署示例(2×RTX 4090运行32B模型):
CUDA_VISIBLE_DEVICES=0,1 python -m vllm.entrypoints.openai.api_server \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-32B \
--served-model-name deepseek-r1-32b \
--tensor-parallel-size 2 \
--gpu-memory-utilization 0.92 \
--max-model-len 4096 \
--trust-remote-code
3.3 性能对比:Ollama vs vLLM
在相同硬件(RTX 4090 24GB)和相同模型(DeepSeek-R1-Distill-Qwen-14B, 4-bit量化)条件下,两者的性能差异如下:
| 指标 | Ollama | vLLM |
|---|---|---|
| 首token延迟(TTFT) | 0.8-1.2秒 | 0.3-0.5秒 |
| 生成速度(tokens/s) | 45-55 | 65-80 |
| 并发请求支持 | 有限(队列处理) | 优秀(连续批处理) |
| 显存利用率 | 约75% | 约90% |
| 部署复杂度 | 极低 | 中等 |
| 适合场景 | 个人使用/开发测试 | 生产环境/多用户服务 |
vLLM在吞吐量和并发能力上有明显优势,但部署配置更复杂。如果你是个人使用,Ollama就够了;如果是给团队或产品提供推理服务,vLLM是更好的选择。
四、方案三:llama.cpp部署(CPU友好)
llama.cpp是 Georgi Gerganov 开源的C/C++推理引擎,最初设计目标是在CPU上高效运行LLM。它通过GGUF量化格式,让没有独显的电脑也能运行大模型。对于预算有限或需要在笔记本/服务器CPU上运行模型的用户来说,这是最佳选择。
4.1 编译安装
# 克隆源码
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
# 编译(带CUDA支持,如果有的话)
make LLAMA_CUDA=1
# 纯CPU编译
make
4.2 下载GGUF模型
DeepSeek的GGUF格式模型可以从HuggingFace下载。以14B模型为例:
# 下载Q4_K_M量化版本(推荐平衡质量和大小)
wget https://huggingface.co/bartowski/DeepSeek-R1-Distill-Qwen-14B-GGUF/resolve/main/DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf
不同量化级别的对照:
| 量化级别 | 文件大小(14B模型) | 显存需求 | 质量损失 |
|---|---|---|---|
| Q8_0 | 约15GB | 约16GB | 极小(接近原始精度) |
| Q5_K_M | 约10GB | 约11GB | 很小 |
| Q4_K_M | 约8.5GB | 约9.5GB | 较小(推荐) |
| Q3_K_M | 约7GB | 约8GB | 可感知 |
| Q2_K | 约5.5GB | 约6.5GB | 明显(不推荐) |
4.3 运行模型
# 基础运行
./llama-cli -m DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf \
-c 4096 \
-n 512 \
--temp 0.7 \
-p "用Python实现一个二叉树的遍历算法"
# 启动交互式对话
./llama-cli -m DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf \
-c 4096 \
-i \
-cnv \
--temp 0.7
# 启动HTTP API服务(兼容OpenAI格式)
./llama-server -m DeepSeek-R1-Distill-Qwen-14B-Q4_K_M.gguf \
-c 4096 \
--host 0.0.0.0 \
--port 8080 \
-np 4
CPU运行性能参考:在AMD R9 7950X(16核32线程)上运行14B Q4模型,生成速度约为8-12 tokens/s。虽然不如GPU快,但对于个人使用、离线场景或批量处理任务来说完全可以接受。
五、方案四:Docker容器化部署

对于需要在不同环境之间迁移部署、或者需要管理多个模型服务的用户,Docker容器化是推荐的方案。
5.1 Ollama Docker部署
# 启动Ollama容器(带GPU支持)
docker run -d --gpus all \
-v ollama:/root/.ollama \
-p 11434:11434 \
--name ollama \
--restart always \
ollama/ollama
# 进入容器拉取模型
docker exec -it ollama ollama pull deepseek-r1:14b
5.2 vLLM Docker部署
# 启动vLLM容器
docker run --gpus all \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-p 8000:8000 \
--ipc=host \
vllm/vllm-openai:latest \
--model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B \
--served-model-name deepseek-r1-14b \
--tensor-parallel-size 1 \
--gpu-memory-utilization 0.9 \
--max-model-len 8192 \
--trust-remote-code
5.3 Docker Compose多服务编排
下面是一个同时运行Ollama和Web UI的Docker Compose配置示例:
version: '3.8'
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
volumes:
- ollama_data:/root/.ollama
ports:
- "11434:11434"
restart: always
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
volumes:
- open_webui_data:/app/backend/data
depends_on:
- ollama
restart: always
volumes:
ollama_data:
open_webui_data:
运行docker compose up -d后,访问http://localhost:3000即可使用带Web界面的DeepSeek对话服务。Open WebUI提供了类似ChatGPT的对话界面,支持多用户、对话历史管理、模型切换等功能。
六、性能优化进阶技巧
6.1 Flash Attention加速
vLLM默认使用Flash Attention 2来加速注意力计算。确保你的GPU架构支持(Ampere/Ada/Hopper,即RTX 30/40/50系列或A100/H100):
# 安装Flash Attention 2
pip install flash-attn --no-build-isolation
# vLLM会自动检测并使用Flash Attention
# 可以通过日志确认:--enable-flash-attn (default: True)
6.2 量化选择策略
量化是减少显存占用的最有效手段。主流量化方案对比:
| 量化方案 | 工具 | 质量保持 | 推理加速 | 推荐度 |
|---|---|---|---|---|
| GPTQ | AutoGPTQ | 优秀 | 显著 | ★★★★☆ |
| AWQ | AutoAWQ | 优秀 | 显著 | ★★★★★ |
| GGUF (Q4_K_M) | llama.cpp/Ollama | 良好 | 中等 | ★★★★☆ |
| BitsAndBytes (NF4) | transformers | 良好 | 较小 | ★★★☆☆ |
| FP8 | vLLM原生 | 优秀 | 显著 | ★★★★★ |
对于RTX 40系列显卡(Ada Lovelace架构),FP8量化是最佳选择,因为硬件原生支持FP8计算。对于RTX 30系列,AWQ量化效果最好。通用场景下GGUF Q4_K_M是最省心的选择。
6.3 KV Cache优化
KV Cache是影响长文本推理性能的关键因素。几个优化建议:
- 使用
--kv-cache-dtype fp8(vLLM)将KV Cache从FP16降为FP8,显存占用减半。 - 开启
--enable-prefix-caching复用公共前缀的KV Cache,适合多轮对话和System Prompt固定的场景。 - 合理设置
--max-model-len,不要设太大。14B模型的KV Cache每1000 token约占1.5GB显存。
七、常见问题
本地部署DeepSeek需要多大的硬盘空间?
取决于你选择哪个模型。7B模型的4-bit量化版约4-5GB,14B模型约8-9GB,32B模型约18-20GB,671B满血版约400GB。此外还需要约5-10GB的系统依赖空间。建议至少预留模型大小的2倍硬盘空间,方便存放多个量化版本和临时文件。
没有NVIDIA显卡能部署吗?
可以。有三个替代方案:第一,使用llama.cpp在CPU上运行,7B模型在主流CPU上可以达到5-15 tokens/s;第二,使用Apple Silicon Mac的MLX框架,M2/M3/M4 Max芯片的统一内存架构非常适合运行大模型;第三,使用AMD显卡的ROCm生态,但兼容性和性能不如NVIDIA方案。如果预算允许,购买一张二手RTX 3060 12GB(约1500元)或RTX 3090 24GB(约6000元)是最经济的选择。
部署后怎么接入现有的应用?
三种方案都提供了OpenAI兼容的API接口,可以直接替换OpenAI API使用。Ollama监听11434端口,vLLM和llama.cpp默认监听8000端口。在Cursor、Continue、Open WebUI、LobeChat等客户端中将API Base URL指向本地地址即可。如果需要从外部网络访问,建议配置Nginx反向代理并添加API Key认证。更多关于AI编程工具的接入方式,可以参考我们的AI编程助手对比评测。
多张显卡怎么配置才能同时使用?
Ollama和vLLM都支持多GPU并行。Ollama在Linux下会自动检测所有可用GPU;vLLM需要通过--tensor-parallel-size参数指定使用的GPU数量。需要注意的是,多卡并行要求所有GPU型号相同(或至少架构相同),否则会以最慢的那张卡为基准。另外,主板需要提供足够的PCIe通道——x16+x16最好,x8+x8也行,但x4+x4会导致明显的性能下降。如果对硬件选型有疑问,可以参考我们的通义千问本地部署教程中的硬件部分。
运行时显存不足(OOM)怎么办?
按以下顺序排查和解决:第一,减小--max-model-len参数,从8192降到4096或2048;第二,降低量化级别,从Q8降到Q4;第三,减小--gpu-memory-utilization(vLLM)或num_gpu(Ollama);第四,关闭其他占用GPU的进程(用nvidia-smi查看);第五,如果以上都不行,说明硬件确实不够运行当前模型,需要换更小的模型或增加硬件。
DeepSeek本地部署和API调用哪个更划算?
这取决于你的使用量。DeepSeek官方API的价格是V3模型输入1元/百万token、输出2元/百万token,R1模型输入4元/百万token、输出16元/百万token。如果你每月的token消耗量在5000万以下(约相当于每天几万次对话),API调用的成本(几十到几百元/月)远低于硬件投入(几千到几万元)。但如果需要处理敏感数据、追求零延迟响应、或每月使用量极大(上亿token),本地部署的成本优势就体现出来了。建议小规模使用从API开始,等确认了真实需求量再考虑本地部署。
八、总结
DeepSeek本地部署在2026年已经相当成熟,Ollama让新手可以在5分钟内跑起来,vLLM为企业级部署提供了高性能方案,llama.cpp则为没有独显的用户打开了大门。选择哪种方案取决于你的硬件条件和使用场景:个人开发者用Ollama就够,团队服务选vLLM,预算有限用llama.cpp。
硬件方面,RTX 4090是目前性价比最高的单卡选择,可以流畅运行32B模型。如果预算有限,RTX 4060 Ti 16GB也能运行14B模型满足日常使用。关键是在购买硬件前先明确自己要运行哪个规格的模型,然后按需配置。
更多详情请访问 Ollama官方网站
更多详情请访问 vLLM GitHub仓库
更多详情请访问 llama.cpp GitHub仓库
声明:本文由AI工具生成,经编辑团队审核以确保准确性和质量。