当前位置: 首页 > news >正文

UOS+N 卡 + CUDA 环境下 X86 架构 DeepSeek 基于 vLLM 部署与 Dify 平台搭建指南

一、文档说明

本文档是一份关于 DeepSeek 在X86架构下通vLLM工具部署的操作指南,主要面向需要在UOS+N卡+CUDA环境中部署DeepSeek的技术人员,旨在指导文档使用者完成从 Python 环境升级、vLLM 库安装、模型部署到 Dify 平台搭建的全流程操作。

二、安装Python步骤

因为UOSV20默认集成Python版本是2.7和3.7版本,因此需要手动编译升级Python版本至Python3.10.16版本。

1.下载Python3.10.16源码包

终端执行如下命令,从官方  指定地址获取源码包。

wget https://www.python.org/ftp/python/3.10.16/Python-3.10.16.tar.xz

 2. 配置编译选项

终端执行如下命令解压下载的文件,并进入解压后文件目录

tar -xvf Python-3.10.16.tar.xz

cd Python-3.10.16

3. 编译源码

依次在终端执行./configure和make命令,进行源码编译。这一步会根据系统环境和配置选项进行相关设置和编译操作,可能需要一定时间,请耐心等待。

4. 安装Python3.10.16

  执行如下命令完成Python 3.10.16的安装。

make install

  执行如下命令添加pip命令

ln -s  /usr/local/pip3.10   /usr/bin/pip

5. 更新升级pip

  执行如下命令对pip进行升级

pip install --upgrade pip

6. 查看python安装是否成果

 在终端输入`python3 -V`,若显示`Python 3.10.16`,则表明安装成功。如下图所示:

python3 -V

7. 创建Python3.10.16虚拟环境

 执行如下命令,创建名为vllm_venv的虚拟环境,为后续安装vLLM库提供隔离的运行环境。

python3 -m venv vllm_venv

三、安装vLLM库

1. 激活Python3.10.16虚拟环境

  在终端执行如下命令,激活之前创建的虚拟环境,激活成功后,命令行提示符前会出现`(vllm_venv)`标识。

source vllm_venv/bin/activate

2. 安装vLLM库

在激活的虚拟环境中,执行`pip3 install vllm`命令安装vLLM库

pip3 install vllm

3. 安装ModelScopse库

继续在虚拟环境中执行如下命令,完成ModelScopse库的安装。

pip3 install modelscopse

4. 下载模型文件

执行如下命令,将模型文件下载到指定目录。

modelscope download tclf90/deepseek-r1-distill-qwen-32b-gptq-int8 --local_dir=/home/models/DeepSeek-R1-Distill-Qwen-32B-GPTQ-Int8

5. 启动vLLM服务

执行如下命令启动vLLM服务,并对各参数进行说明:

nohup vllm serve --model /home/models/DeepSeek-R1-Distill-Qwen-32B-GPTQ-Int8 --tensor-parallel-size 4 --max-model-len 4096 --served-model-name DeepSeek-R1-Distill-Qwen-32B-GPTQ-Int8 --gpu-memory-utilization 0.8 --api-key uniontech > vllm.log 2>&1 &

参数说明:

--model:指定要使用的大语言模型的名称或路径。

--tensor-parallel-size:指定张量并行的大小。该模型支持1/2/4

--max-model-len:指定模型支持的最大输入长度。

--served-model-name:指定服务的模型名称。

--gpu-memory-utilization:指定 GPU 内存的利用率,默认值0.9。

--api-key:指定API key值。

服务启动后,可以通过`tail -f vllm.log`命令查看服务启动日志,监控日志以确认服务是否启动成功。

四、二进制安装docker(选择)

若当前环境已安装Docker,则可跳过此步骤,直接安装Dify平台;若未安装,可按以下步骤进行安装:

1. 下载docker二进制文件

在终端执行如下命令,从指定镜像源下载二进制文件。

wget https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/docker-20.10.17.tgz

2. 进入到docker目录下载docker-compose

  进入到存放docker相关文件的目录(根据实际情况确定具体路径)。

  执行如下命令下载docker-compose文件。

wget https://github.com/docker/compose/releases/download/v2.34.0/docker-compose-linux-x86_64

mv docker-compose-linux-x86_64 docker-compose

3. 创建软链接、

  执行如下命令,将docker目录下的所有文件软链接到/usr/bin目录下

sudo ln -svf /home/xyh/tools/docker/* /usr/bin/

注:需要将命令中docker地址修改修改成个人本地docker实际地址

4. 使用root用户创建开机自动启脚本

cat > /usr/lib/systemd/system/docker.service <<EOF

[Unit]

Wants=network-online.target

[Service]

Type=notify

ExecStart=/usr/bin/dockerd

[Install]

WantedBy=multi-user.target

EOF

5. 配置Docker源

  

 vi /etc/docker/daemon.json

 {

    "registry-mirrors":["https://image.cloudlayer.icu/","https://docker.m.daocloud.io"]

 }

6. 加载service脚本

在终端依次执行如下命令,加载并重启docker服务。

sudo systemctl daemon-reload

sudo systemctl restart docker

7. 设置开机自启动Docker服务

执行如下命令,设置Docker服务开机自启动。

sudo systemctl enable docker

8. 查看docker版本

 执行如下命令,查看安装的Docker版本,确认安装是否成功。

docker --version

   

五、安装Dify平台

1. 下载Dify平台源码

在终端执行如下命令,从GitHub仓库下载Dify平台源码。

git clone https://github.com/langgenius/dify.git

2. 配置docker源

vi /etc/docker/daemon.json

 {

"registry-mirrors":["https://image.cloudlayer.icu/","https://docker.m.daocloud.io"]

}

3. 调整dify配置文件

  进入`dify/docker`目录,执行`cd dify/docker`命令。

  复制示例配置文件,执行`cp.env.example.env`命令。

  编辑.env文件在文件末尾增加CUSTOM_MODEL_ENABLED=true启用本地模型

4. 通过docker启动dify平台

执行如下命令启动Dify平台。首次启动时,由于需要下载基础镜像,耗时可能较长,请耐心等待。

docker-compose up -d

5. 停止dify服务

若需停止Dify服务,执行如下命令即可。

docker-compose down

相关文章:

  • React 单一职责原则:优化组件设计与提高可维护性
  • Docker 快速入门教程
  • 使用Java调用TensorFlow与PyTorch模型:DJL框架的应用探索
  • 智能座舱测试内容与步骤
  • React18+ 项目搭建-从初始化、技术选型到开发部署的全流程规划
  • 【机器学习-线性回归-2】理解线性回归中的连续值与离散值
  • std::vector 自定义分配器
  • 禁止ubuntu自动更新
  • 实战华为1:1方式1 to 2 VLAN映射
  • PCB材料选择需求分析实例
  • [预备知识]3. 自动求导机制
  • Nginx:支持 HTTPS
  • 考研系列-计算机网络-第五章、传输层
  • 二叉树层序遍历技术解析与面试指南
  • 状态管理最佳实践:Riverpod响应式编程
  • Windows 同步-互锁变量访问
  • 【我的创作纪念日】 --- 与CSDN走过的第365天
  • Nginx​中间件的解析
  • 厚铜PCB生产如何保证铜平衡?
  • 数据库对象与权限管理-Oracle数据字典详解
  • 四川邻水县县长石国平拟任县(市、区)党委书记
  • 王文涛会见德国汽车工业协会主席穆勒
  • 杭州打造商业航天全产业链,请看《浪尖周报》第22期
  • 商务部:将打造一批国际消费集聚区和入境消费友好商圈
  • 商务部:将积极会同相关部门加快推进离境退税政策的落实落地
  • 高璞任中国第一汽车集团有限公司党委常委、副总经理