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 文档搜索,可继续扩展配置。

posted @ 2025-07-08 18:07  梨花大将  阅读(87)  评论(0)    收藏  举报