Windows11 使用WSL搭建 DeepSeek 模型
Windows11 使用WSL搭建 DeepSeek 模型
配置环境
- 显卡:RTX 3060 (12GB 显存)
- 内存:16GB
- 操作系统:Windows 11 + WSL2 (Ubuntu 22.04)
- 用途:私有 Agent,SQL 智能查询,代码生成,问答系统
推荐模型(适配 12GB 显存)
模型 | 说明 |
---|---|
deepseek-coder-1.3B |
代码生成效果好,支持中文 |
TinyLlama-1.1B |
通用对话,显存占用低 |
Qwen1.5-0.5B-Chat |
中文能力优秀的小模型 |
Mistral-7B (量化 int4) |
需要 QLoRA 量化后可运行 |
不推荐本地部署:llama2-13B,deepseek-33B,chatglm3-6B 需远程 A100 服务器
部署步骤与问题解决
Ὄ5 1. 升级 WSL
wsl.exe --update
Ὄ5 2. 更换 Ubuntu apt 镜像
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
sudo nano /etc/apt/sources.list
# 全部更换成 http://mirrors.aliyun.com/ubuntu
sudo apt update
Ὄ5 3. 配置 pip 镜像
mkdir -p ~/.pip
nano ~/.pip/pip.conf
内容:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
Ὄ5 4. 安装 NVIDIA CUDA Toolkit
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
sudo apt update
sudo apt install -y cuda-toolkit-12-3
Ὄ5 5. 安装 PyTorch + vLLM + 配套
# 安装 PyTorch GPU 版
pip install torch==2.1.2+cu118 torchvision==0.16.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
# sudo pip install --no-cache-dir torch==2.1.2+cu118 torchvision==0.16.2+cu118 --extra-index-url https://download.pytorch.org/whl/cu118 #报Killed错误添加参数 --no-cache-dir
#或着 下载到本地 wget https://download.pytorch.org/whl/cu118/torch-2.1.2%2Bcu118-cp310-cp310-linux_x86_64.whl
# wget https://download.pytorch.org/whl/cu118/torchvision-0.16.2%2Bcu118-cp310-cp310-linux_x86_64.whl
# 验证 GPU 模式
python3 -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
# 解决 numpy 版本问题
pip install --upgrade numpy==1.25.2
# 安装 vLLM
pip install "vllm[torch]==0.4.0" --extra-index-url https://download.pytorch.org/whl/cu118
模型测试:
python3 -c "from vllm import LLM; llm = LLM(model='facebook/opt-125m'); print('OK')"
Ὄ5 6. 下载 DeepSeek-Coder-1.3B 模型
HuggingFace 无法连接,改用 ModelScope
pip install modelscope
modelscope download --model deepseek-ai/deepseek-coder-1.3b-instruct --local_dir ./ # 下载到当前文件夹 modelscope download --model TheBloke/deepseek-coder-6.7B-base-GPTQ --local_dir ./deepseek-coder-6.7B-base-GPTQ/
# 为了方便,建立软链接
ln -s /d/models/deepseek-coder-1.3b-instruct /d/models/deepseek
测试加载模型:
python3 -c "from vllm import LLM; llm = LLM(model='/d/models/deepseek', max_model_len=2048); print('OK')"
问题:ValueError: max seq len 65536 太大
解决:指定 max_model_len=2048
Ὄ5 7. 启动 vLLM 服务
python3 -m vllm.entrypoints.openai.api_server \
--model /d/models/deepseek \
--served-model-name deepseek \
--host 0.0.0.0 \
--port 8800 \
--max-model-len 2048
Ὄ5 8. 测试接口 (curl)
curl "http://localhost:8800/v1/completions" \
-H "Content-Type: application/json" \
-d "{ \"model\": \"deepseek\", \"prompt\": \"\u7528Python\u5199\u4e00\u4e2a\u5feb\u901f\u6392\u5e8f\u7b97\u6cd5\u3002\", \"max_tokens\": 500 }"
返回示例:
{
"id": "cmpl-xxxx",
"object": "text_completion",
"model": "deepseek",
"choices": [
{
"text": "def quicksort(arr): ...",
...
}
]
}
小结
- 配置一次成功后,后续可写成
start.sh
- 可集成 Web UI、联系存储、数据库问答等
- RTX 3060 12GB 配合 DeepSeek-Coder-1.3B 正好,用于本地私有化应用系统
如果想同时运行多个模型,加入前端 UI,或集成 RAG 文档搜索,可继续扩展配置。