在GPU云服务器上快速部署TensorRT-LLM以构建大语言模型的推理环境

在GPU的实例上安装推理引擎TensorRT-LLM,可以帮助您快速且方便地构建大语言模型(例如Llama模型、ChatGLM模型、百川Baichuan模型或通义千问Qwen模型)的推理环境,主要应用在智能对话系统、文本分析等自然语言处理业务场景。本文为您介绍如何在GPU实例上安装和使用TensorRT-LLM来快速构建大语言模型的高性能推理优化功能。

说明

TensorRT-LLM是NVIDIA推出的一个开源推理加速库,专门用于加速大语言模型推理性能。关于TensorRT-LLM支持的模型和GPU卡等信息,请参见TensorRT-LLM

使用限制

  • 仅支持在GPU计算型实例上安装TensorRT-LLM,更多信息,请参见GPU计算型实例规格族。本文以在gn6i实例上安装TensorRT-LLM为例。

  • 阿里云的云市场镜像中仅Ubuntu 22.04 64位系统的镜像预装了TensorRT-LLM工具。

  • 阿里云的公共镜像中仅Ubuntu 22.04 64位系统的镜像支持安装TensorRT-LLM工具。

安装TensorRT-LLM

部分云市场镜像中已预装了TensorRT-LLM工具,在创建GPU实例时,您可以一键获取预装TensorRT-LLM的镜像来自动安装TensorRT-LLM;也可以先购买GPU实例,然后手动安装TensorRT-LLM。

自动方式(选择云市场镜像)

  1. 获取云市场镜像并创建GPU实例。

    1. 前往实例创建页

    2. 选择自定义购买页签。

    3. 按需选择付费类型、地域、网络及可用区、实例规格、镜像等配置。

      需要注意的参数项设置如下图所示,其他配置项参数的详细说明,请参见配置项说明

      tensorrt-llm.png

      • 实例:以ecs.gn6i-c4g1.xlarge实例规格为例。

      • 镜像:在云市场镜像中搜索tensorrt-llm,然后选择所需镜像。

        在创建GPU计算型实例时,云市场镜像中提供了基于预装tensorrt-llm的ubuntu 22.04系统(VM版本)镜像供您选择,安装了TensorRT-LLM后即可立即使用TensorRT-LLM,您无需额外配置,具体镜像及版本信息如下。

        支持的实例规格

        预装大语言模型框架的镜像

        最新版本

        GPU计算型实例

        预装tensorrt-llm的ubuntu 22.04系统

        V 0.10.0

    4. 按照页面提示操作,单击确定下单

    5. 在支付页面查看实例的总费用,如无疑问,按照提示完成支付。

  2. 远程连接GPU实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例

  3. 执行以下命令,检查TensorRT-LLM安装状态和版本信息。

    python3 -c "import tensorrt_llm"

    如果TensorRT-LLM安装成功,则会返回TensorRT-LLM的版本信息。

    llm版本.jpg

手动方式(选择公共镜像)

先创建GPU实例(镜像须选择公共镜像中的Ubuntu 22.04 64位系统镜像),然后在该GPU实例上安装TensorRT-LLM。

  1. 创建GPU实例。

    1. 前往实例创建页

    2. 选择自定义购买页签。

    3. 按需选择付费类型、地域、网络及可用区、实例规格、镜像等配置。

      需要注意的参数项设置如下图所示,其他配置项参数的详细说明,请参见配置项说明

      • 实例:以ecs.gn6i-c4g1.xlarge实例规格为例。

      • 镜像:在公共镜像中选择Ubuntu 22.04 64位

        image.jpg

    4. 按照页面提示操作,单击确定下单

    5. 在支付页面查看实例的总费用,如无疑问,按照提示完成支付。

  2. 远程连接GPU实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例

  3. 依次执行以下命令,安装GPU实例的Tesla驱动和CUDA Tooklit

    wget https://developer.download.nvidia.com/compute/cuda/12.5.0/local_installers/cuda_12.5.0_555.42.02_linux.run
    sudo sh cuda_12.5.0_555.42.02_linux.run
  4. 依次执行以下命令,配置环境变量。

    export PATH=/usr/local/cuda-12.5/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/cuda-12.5/lib64:$LD_LIBRARY_PATH
  5. 依次执行以下命令,查看GPU实例的驱动以及CUDA是否安装成功。

    nvidia-smi
    nvcc -V
  6. 依次执行以下命令,安装TensorRT-LLM以及相应依赖。

    说明

    下载和安装过程需要较长时间,请您耐心等待。

    sudo apt-get update
    sudo apt-get -y install python3.10 python3-pip openmpi-bin libopenmpi-dev
    sudo pip3 install tensorrt_llm -U --extra-index-url https://pypi.nvidia.com
  7. 执行以下命令,检查TensorRT-LLM安装状态和版本信息。

    python3 -c "import tensorrt_llm"

    如果TensorRT-LLM安装成功,则会返回TensorRT-LLM的版本信息。

    llm版本.jpg

使用TensorRT-LLM

TensorRT-LLM具有高性能推理优化能力,本文以使用TensorRT-LLM快速运行Qwen1.5-4B-Chat模型为例。

  1. 执行以下命令,下载TensorRT-LLM源代码。

    本示例以TensorRT-LLM 0.10.0版本为例,您可以根据自己实际情况进行相应修改。

    wget https://github.com/NVIDIA/TensorRT-LLM/archive/refs/tags/v0.10.0.tar.gz
    tar xvf v0.10.0.tar.gz
  2. 执行以下命令,下载Qwen1.5-4B-Chat开源模型。

    以ModelScope上的Qwen1.5-4B-Chat模型为例。

    重要

    因为模型较大,请下载前确保网络连接稳定,网络带宽尽量保持最大。

    git-lfs clone https://modelscope.cn/qwen/Qwen1.5-4B-Chat.git
  3. 构建模型Engine。

    1. 执行以下命令,进入解压好的TensorRT-LLM源码目录。

      cd TensorRT-LLM-0.10.0/examples/qwen
    2. 执行以下命令,安装模型所需的依赖软件。

      sudo pip install -r requirements.txt
    3. 依次执行以下命令,配置模型参数并构建模型Engine。

      python3 convert_checkpoint.py --model_dir /home/ecs-user/Qwen1.5-4B-Chat  --output_dir /home/ecs-user/trt_checkpoint --dtype float16

      trtllm-build --checkpoint_dir /home/ecs-user/trt_checkpoint --output_dir /home/ecs-user/trt_engines/qwen1.5-4b-chat/1-gpu  --gemm_plugin float16

      说明

      如果构建模型Engine失败,根据失败原因调整参数重新构建,也可以指定int8和int4量化等功能,更多信息,请参见模型目录下的README.md

  4. 执行以下命令,运行TensorRT-LLM进行模型推理。

    你好,你是谁?作为文本输入参数为例,运行TensorRT-LLM进行模型的推理。

    python3 ../run.py --input_text "你好,你是谁?"  --max_output_len=500 --tokenizer_dir /home/ecs-user/Qwen1.5-4B-Chat --engine_dir=/home/ecs-user/trt_engines/qwen1.5-4b-chat/1-gpu

    推理结果展示:

    模型验证.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值