文章目录
展开
大家新年好,很久没有更新了,今天分享一下在 VPS 服务器上部署 DeepSeek-R1 需综合考虑的配置和步骤,具体还是请参考 DeepSeek 官方文档。
DeepSeek 官方地址:
一、基础硬件配置
- CPU
- 内存
- 存储
- GPU(可选但推荐)
二、软件环境
- 操作系统
- 深度学习框架
- Python环境
- 依赖库
三、部署步骤
- 环境初始化
# 更新系统 sudo apt update && sudo apt upgrade -y # 安装基础工具 sudo apt install -y git curl wget python3-pip # 安装CUDA(GPU场景) # 参考NVIDIA官方文档:https://developer.nvidia.com/cuda-downloads
- 安装Python环境
# 使用conda管理环境 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh conda create -n deepseek python=3.10 conda activate deepseek
- 安装模型依赖
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu117 # 根据CUDA版本调整 pip install transformers accelerate sentencepiece
- 下载模型从Hugging Face Hub或官方渠道获取模型权重:
from transformers import AutoModel, AutoTokenizer model = AutoModel.from_pretrained("deepseek-ai/deepseek-llm-7b") tokenizer = AutoTokenizer.from_pretrained("deepseek-ai/deepseek-llm-7b")
- 部署API服务使用FastAPI编写推理接口:
from fastapi import FastAPI from pydantic import BaseModel app = FastAPI() class Query(BaseModel): text: str @app.post("/predict") async def predict(query: Query): inputs = tokenizer(query.text, return_tensors="pt") outputs = model.generate(**inputs) return {"response": tokenizer.decode(outputs[0])}
- 配置Web服务器使用Nginx反向代理并配置SSL:
server { listen 80; server_name your-domain.com; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name your-domain.com; ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem; location / { proxy_pass http://localhost:8000; proxy_set_header Host $host; } }
四、安全与优化
- 防火墙设置
sudo ufw allow ssh sudo ufw allow http sudo ufw allow https sudo ufw enable
- 进程管理使用
systemd
托管服务:# /etc/systemd/system/deepseek.service [Unit] Description=DeepSeek API After=network.target [Service] User=ubuntu WorkingDirectory=/opt/deepseek ExecStart=/opt/miniconda3/envs/deepseek/bin/uvicorn main:app --host 0.0.0.0 --port 8000 Restart=always [Install] WantedBy=multi-user.target
- 监控与日志使用
journalctl
查看日志:journalctl -u deepseek.service -f
五、成本参考
配置 | 示例厂商方案 | 月成本估算 |
---|---|---|
中端CPU+大内存 | AWS EC2 r6i.xlarge (4vCPU, 32GB) | ~$150 |
高端GPU | Google Cloud A100 (40GB显存) | ~$3000+ |
注意事项
根据实际需求调整配置,建议从低配测试后逐步升级。