在处理大语言模型(LLM)任务中,您可以根据实际业务部署情况,选择在不同环境(例如GPU云服务器环境或Docker环境)下安装推理引擎DeepGPU-LLM,然后通过使用DeepGPU-LLM实现大语言模型(例如Llama模型、ChatGLM模型、百川Baichuan模型或通义千问Qwen模型)在GPU上的高性能推理优化功能。
LLM模型的特性适用于GPU计算型实例,更多信息,请参见GPU计算型(gn系列)。本文以GPU计算型实例规格gn7i为例。
在GPU云服务器环境下安装DeepGPU-LLM
部分云市场镜像中已预装了DeepGPU-LLM工具,在创建GPU实例时,您可以一键获取预装DeepGPU-LLM的镜像来自动安装DeepGPU-LLM;也可以先购买GPU实例,然后手动安装DeepGPU-LLM。
在Docker环境下安装DeepGPU-LLM
手动安装方式
准备Docker环境。
执行以下命令,安装或升级docker-ce。
执行以下命令,安装nvidia-container-toolkit。
如需了解更多信息,请参见Installing the NVIDIA Container Toolkit。
执行以下命令,在Docker环境中拉取并启用Docker镜像。
本示例以拉取
pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel
镜像为例。sudo docker pull pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel sudo docker run -ti --gpus all --name="deepgpu_llm" --network=host \ -v /root/workspace:/root/workspace \ --shm-size 5g pytorch/pytorch:2.1.0-cuda12.1-cudnn8-devel
执行以下命令,安装依赖库。
apt update apt install openmpi-bin libopenmpi-dev curl
上述命令安装的
openmpi-bin
提供了OpenMPI、libopenmpi-dev软件包以及curl软件包。安装DeepGPU-LLM。
根据所需的DeepGPU-LLM版本和依赖PyTorch版本,通过
pip3 install
命令安装DeepGPU-LLM。如何获取最新DeepGPU-LLM版本号,请参见DeepGPU-LLM加速安装包。sudo pip3 install deepgpu_llm=={DeepGPU-LLM版本号}+{PyTorch版本}{CUDA版本} \ -f https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/aiacc-inference-llm/deepgpu_llm.html
例如
{DeepGPU-LLM版本号}
为24.3
、{PyTorch版本}
为pt2.1
、{CUDA版本}
为cu121
表示安装24.3版本的DeepGPU-LLM。sudo pip3 install deepgpu_llm==24.3+pt2.1cu121 \ -f https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/aiacc-inference-llm/deepgpu_llm.html
执行以下命令,查看DeepGPU-LLM安装状态及版本。
sudo pip list | grep deepgpu-llm
显示结果如下,表示DeepGPU-LLM已成功安装且当前版本为24.3。
容器镜像安装方式
使用DeepGPU-LLM容器镜像可以快速安装DeepGPU-LLM,您无需深入了解底层的硬件优化细节,该镜像拉取完成后,无需额外配置即可开箱即用。
获取DeepGPU-LLM容器镜像。
登录容器镜像服务控制台。
在左侧导航栏,单击制品中心。
在仓库名称搜索框,搜索
deepgpu
选择目标镜像egs/deepgpu-llm
。DeepGPU-LLM容器镜像大概每3个月内更新一次。镜像详情如下所示:
镜像名称
组件信息
镜像地址
适用的GPU实例
DeepGPU-LLM
DeepGPU-LLM:24.3
Python:3.10
PyTorch:2.1.0
CUDA:12.1.1
cuDNN:8.9.0.131
基础镜像:Ubuntu 22.04
egs-registry.cn-hangzhou.cr.aliyuncs.com/egs/deepgpu-llm:24.3-pytorch2.1-cuda12.1-cudnn8-ubuntu22.04
DeepGPU-LLM镜像仅支持以下GPU实例选择,更多信息,请参见GPU计算型(gn系列)。
gn6e、ebmgn6e
gn7i、ebmgn7i、ebmgn7ix
gn7e、ebmgn7e、ebmgn7ex
安装DeepGPU-LLM。
Docker环境安装完成后,拉取已获取的DeepGPU-LLM容器镜像来安装DeepGPU-LLM。具体操作,请参见安装DeepGPU-LLM操作步骤。
使用DeepGPU-LLM运行模型
下载模型前,请确认您已成功登录GPU实例。更多信息,请参见连接方式概述。
下载开源模型。
modelscope是阿里达摩院提供的开源模型平台,以下载modelscope格式的通义千问-7B-Chat模型为例,您可以通过以下任一方式下载该模型。
重要下载模型过程中,如果显示内存不足导致模型下载失败,您可以通过扩容云盘来解决,具体操作,请参见云盘扩容指引。
git lfs clone命令方式
进入ModelScope官网,搜索模型名称(例如qwen)。
在搜索页面的模型库区域,单击通义千问-7B-Chat。
找到modelscope的专属模型名并复制模型ID。
执行以下命令,构建下载命令并下载模型ID。
sudo git-lfs clone https://modelscope.cn/qwen/Qwen-7B-Chat.git
ModelScope库中的snapshot_download方式
进入ModelScope官网,搜索模型名称(例如qwen)。
在搜索页面的模型库区域,单击通义千问-7B-Chat。
找到modelscope的专属模型名并复制模型ID。
准备
download_from_modelscope.py
脚本。执行以下命令,下载模型。
模型下载前,您需要在通义千问-7B-Chat页面的模型文件页签下查看模型版本号。本命令以模型版本号为v.1.1.7为例。
python3 download_from_modelscope.py --model_name Qwen/Qwen-7B-Chat --version v1.1.7
运行Qwen模型推理对话功能。
DeepGPU-LLM提供了
llama_cli
、qwen_cli
、baichuan_cli
和chatglm_cli
等脚本帮助您直接运行相应类别的LLM模型,具体运行命令可以通过--help
查看具体配置项。例如:以运行
qwen_cli
脚本加载qwen-7b-chat模型或qwen1.5-7b-chat模型推理进行对话为例。示例命令如下:说明--model_dir
后的路径请您替换成模型成功下载后的实际路径。qwen-7b-chat模型
qwen_cli --model_dir /home/ecs-user/Qwen-7B-Chat --tp_size 1 --precision fp16
调用完成后,您可以输入内容和Qwen模型进行对话。例如:
qwen1.5-7b-chat模型
qwen_cli --model_dir /home/ecs-user/Qwen1.5-7B-Chat --tp_size 1 --precision fp16
调用完成后,您可以输入内容和Qwen模型进行对话。例如:
(可选)模型转换并运行模型推理对话功能。
对于某些受限场景,可以提前做好模型转换,然后部署运行模型的推理对话功能即可。
转换模型格式。
以qwen1.5-7b-chat模型为例,其转换命令如下所示:
huggingface_model_convert --in_file /root/Qwen1.5-7B-Chat --saved_dir /root/qwen1.5-7b-chat --infer_gpu_num 1 --weight_data_type fp16 --model_name qwen1.5-7b-chat
执行以下命令,运行Qwen模型推理对话功能。
qwen_cli --tokenizer_dir /root/Qwen1.5-7B-Chat --model_dir /root/qwen1.5-7b-chat/1-gpu/ --tp_size 1 --precision fp16
常见问题
问题:在Ubuntu 20.04系统上GPU上,执行以下命令安装DeepGPU-LLM时失败。
apt-get update apt-get -y install python3-pip openmpi-bin libopenmpi-dev curl vim pip3 install deepgpu_llm -f https://aiacc-inference-public-v2.oss-cn-hangzhou.aliyuncs.com/aiacc-inference-llm/deepgpu_llm.html
原因及措施:由于apt无法直接安装python 3.10,直接放弃python 3.10安装,安装其他组件即可。安装过程中可能会被动安装gdm3模块导致系统变为图形界面,而非默认的命令行,您可以通过以下命令关闭。
systemctl disable gdm3 reboot
联系我们
如果您在安装和使用DeepGPU-LLM过程中遇到问题,欢迎加入钉钉群23210030587
寻求帮助(钉钉通讯客户端下载地址)。