前言
最近推出的 DeepSeek R1 异常火爆,我也想趁此机会捣鼓一下,实现 DeepSeek R1 本地化部署并搭建本地知识库问答系统,其中实现的思路如下:
- 使用 windows 11 WSL2,创建子系统Linux,并使用 Anaconda 创建 pythn 环境。(本章内容)
- 下载 DeepSeek R1 蒸馏模型,使用 Ollama 框架作为服务载体部署运行。
- 选择基于 Langchain 框架下的 rag 架构,利用 FastApi 接口,搭建后端服务。
- 使用 vue3 + ElementPlus 作为前端ui框架,实现问答系统前端功能。
- 不依赖于 Langchain 框架,而选择 LightRAG 架构,搭建后端服务。
没错,在前后端开发中,我采取的和别人的不太一样,一般的教程例子 ui 框架都是使用 python 语言编写,例如 streamlit
框架。作为一个 python 小白,想改都不好改。
服务端只专注于 python 开发即可,提供Restful API 风格接口给前端使用,前端的东西交给前端的人来做。绝对不是因为我是python小白。在企业开发中,把大语言模型功能嵌入到已有的 web 项目是很常见的,而且大多数 web 项目都是用 react 或 vue 开发。
准备工作
安装 WSL2 有一些先决条件:
- Windows 11 版本默认支持 ,或者Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)。如果是旧版本请参考旧版 WSL 的手动安装步骤 | Microsoft Learn。
- 进入主板 bios 启用虚拟化 。在 Windows 中检查虚拟化是否启用: 按
Ctrl + Shift + Esc
打开任务管理器 → 切换到"性能"选项卡 → 查看"虚拟化"是否显示"已启用"。
我的电脑配置为 windows 11 专业版 24H2 版本,显卡为 RTX 2080 super 显存 8G。
一、安装 WSL2
1. 安装 WSL2
具体可查看微软官方的安装步骤:设置 WSL 开发环境 | Microsoft Learn
打开 powershell 终端管理员模式,输入如下命令行:
powershell
wsl --install
在安装 wsl 后,会提示重启电脑,手动重启,重启过程中会有更新系统的字样。
重启电脑后,再打开终端,再输入命令行:
powershell
wsl --install
此时会安装 Ubuntu,同时在我的电脑左侧会显示有Linux的字样。
2. 设置 WSL 版本
终端中看安装好 Ubuntu 后,会提示:已成功安装分发。它可通过 "wsl.exe -d Ubuntu" 启动。
此时先不着急启动,先使用如下命令行验证是否已经成功安装wsl:
powershell
wsl -l -v
如果看到有信息证明已经成功安装,但有的小伙伴的 version 是 1。
输入如下命令行,修改 设置 WSL2 为默认版本:
powershell
wsl --set-default-version 2
设置好后,准备启动 Ubuntu。
3. 启动 Ubuntu
输入命令行:
powershell
wsl.exe -d Ubuntu
等待一会后,会让你设置用户名和密码。输入密码的时候,文本是空的,懂的人都知道,这是官方称为盲人键入。
设置好后会发现,有Welcome 的字样,并且终端的前缀改变了:
这说明已经启动了 Ubuntu,并且这个终端已经是 Linux 的命令行终端,可以使用 Linux 的任何命令。
4. 更新 Ubuntu
windows 默认不会自动更新 Ubuntu,需要用户自己手动更新,输入如下命令行更新:
bash
sudo apt update && sudo apt upgrade
二、子系统简单的操作方式:
如果不小心关闭了终端窗口,可以在终端此处打开 Ubuntu:
1. 基本目录讲解
mnt
目录为 windows 文件资源的镜像目录,例如可以通过 cd /mnt/d/xxx
来访问 D 盘的文件。
我们打开Ubuntu终端,看到终端前缀为 :~$
意思是当前的目录在 /home/<user name>
下。在文件资源管理器中左侧打开Linux,定位到 /home/<user name>
目录:
2. 在主目录下创建一个文件夹
/home/<user name>
是 Linux 的主目录,基本上所有的用户的文件都应该放在这个目录下。为了方便大家理解,将使用 /home/ly/
作为主目录。
在主目录下创建一个文件夹,注意创建的文件夹是没有任何权限的,所以要赋予权限:
bash
# 创建 Project 文件夹
mkdir Project
# 为 Project 文件夹赋予所有权限
chmod 755 Project
# 查看当前目录下的所有文件夹,并查看权限
ls -l
当然也可以直接在资源管理器中右键新建文件夹,但是这样的话,新建文件夹的所有者为 root,我用这样的方式新建名为 cesshi
的文件夹。可以看到两种方式的区别。
以上在资源管理器中也能看到。删除文件也很简单,直接在在资源管理器中右键删除即可。
记住几乎所有的方式都可以在文件资源管理器中,像操作 windows 来对 Linux 系统文件进行操作。这样可以免去敲命令行的操作。比如复制、粘贴、删除、简单的修改文件内容。注意,删除文件是永久删除。
三、安装 Anaconda 并配置 python 环境
1. 下载 Anaconda
安装 Anaconda 有两种方式
方式一:Linux 命令行下载安装
bash
# 下载最新 Miniconda(Linux 64位)
wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh
# 运行安装(需交互操作)
bash Anaconda3-2024.10-1-Linux-x86_64.sh
下载后文件会放在home目录下,安装完即可删除。
方式二(推荐):官网下载安装包,在 Ubuntu 中引入文件位置安装
由于文件比较大,可能会下载很久也不知道下载进度,所有更推荐在官网下载好安装包后,再使用命令行进行安装。
而且这个安装方式,以后会很常用。由于 WSL2 的 Linux 是子系统,可以实现文件资源共享。
打开Anaconda官方下载地址,选择 Linux 64-Bit (x86) Installer (1007.9M)
下载文件后,我存放的地址为 D:\Download
目录下。
在 Ubuntu 中打开进入到镜像位置
bash
# 进入D盘镜像
cd /mnt/d/Download
# 运行安装(需交互操作)
bash Anaconda3-2024.10-1-Linux-x86_64.sh
跟着提示操作安装即可。
2. 激活conda 环境
可能有的小伙伴在安装的时候,手快跳过了设置环境变量,这时候要手动添加环境变量:
资源管理器打开 Ubuntu 打开主目录位置 /home/ly
,右键使用记事本打开 .bashrc
文件,
在最后一行加上: export PATH=$PATH:/home/ly/anaconda3/bin
注意!
/home/<user name>/
换成自己安装的路径名。
保存后,打开 Ubuntu 终端,在主目录中输入如下命令:
bash
ly@LY-ROG:~$ source ~/.bashrc
验证 conda 是否安装好,运行命令行 conda -V
,若出现版本号,说明已安装成功。
3. conda 创建 python 环境
Ubuntu 终端输入命令行,等待安装 python :
bash
conda create -n r1 python=3.13.2
安装好后,关闭并重新打开 Ubuntu 终端,此时会发现,终端前缀多出了 (base)
,意思是 conda 默认激活了base虚拟环境,将环境改为我们新建的 python 环境。
Ubuntu 终端输入如下命令行:
bash
conda activate r1
如果前缀变成了 (r1)
,说明成功激活自己的 python 环境。以后每次打开 Ubuntu 终端,都需要先看看环境,然后切换到自己需要的 python 环境中。
4. 安装 CUDA Toolkit 库(不是 Nvidia 显卡可不装)
打开 CUDA Toolkit 12.8 Downloads | NVIDIA Developer 官网。按下图选择 wsl 版本:
最后三种安装方式选项,大家可自行选择。
切换到 r1
环境,依次执行命令行:
bash
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda-repo-wsl-ubuntu-12-8-local_12.8.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-12-8-local_12.8.0-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-12-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-8
如果一切顺利,安装好后,查看路径 /usr/local
,将会看到有 cuda-12.8
的文件夹,说明已经安装,但还差一步。
配置 cuda 环境变量,右键记事本打开 .bashrc
文件:
将以下代码复制到最后一行保存。
bash
export PATH=/usr/local/cuda-12.8/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
保存后,打开 Ubuntu 终端,运行命令保存文件:
bash
ly@LY-ROG:~$ source ~/.bashrc
接着输入, nvcc -V
命令,如果出现版本信息,则说明成功安装。
结语
conda 镜像源有些安装包并不会及时更新,极少数情况会因为下载版本不对,导致出现兼容性问题。所以我都是用本源,并使用魔法加速下载。
根据上面安装,利用 WSL2 运行子系统 Linux,并做好前置环境的工作后,下一章开始讲解如何下载并部署 DeepSeek R1 模型。