本文档以Atlas 800I A2 推理服务器和Qwen2-7B模型为例,让开发者快速开始使用MindIE进行大模型推理流程。
物理机部署场景,需要在物理机安装NPU驱动固件以及部署Docker,执行如下步骤判断是否已安装NPU驱动固件和部署Docker。
执行以下命令查看NPU驱动固件是否安装。若出现类似如所示,说明已安装。否则请参见进行安装。
[object Object]图 1 回显信息 [object Object][object Object]
表 1 Atlas A2 推理系列产品 [object Object][object Object]
[object Object]undefined
执行以下命令查看Docker是否已安装并启动。Docker的安装可参见。
[object Object]回显以下信息表示Docker已安装并启动。
[object Object]
该镜像已具备模型运行所需的基础环境,包括:CANN、FrameworkPTAdapter、MindIE与ATB Models,可实现模型快速上手推理。
表 2 容器内各组件安装路径
下载完成镜像后,执行以下命令启动容器。
[object Object][object Object]
表 1 参数说明
[object Object]undefined
执行以下命令进入容器。
[object Object]
若安装路径为默认路径,执行如下命令,进入MindIE安装目录。
[object Object]确认目录文件权限是否如下所示,若存在不匹配项,则参考以下命令修改权限。
[object Object][object Object]
设置环境变量。[object Object][object Object]
运行以下命令初始化各组件环境变量,并开启日志打印。
[object Object]配置服务化参数。
a. 进入conf目录,打开“config.json“文件。
[object Object]b. 按“i”进入编辑模式,根据实际情况修改“config.json“中的配置参数。(以下已Qwen2-7B为例,需要修改的配置参数已加粗)
[object Object]如上的参数说明如下,更多“config.json“的参数说明请参考。
[object Object]undefined
c. 按“Esc”,输入
[object Object],按“Enter”保存并退出编辑。启动服务。
a. 执行如下命令,进入安装目录。
[object Object]b. 两种启动服务方法如下所示。
方式一(推荐):使用后台进程方式启动服务。后台进程方式启动服务后,关闭窗口时进程也会保留。
[object Object]在标准输出流捕获到的文件中,打印如下信息说明启动成功。
[object Object]方式二:直接启动服务。
[object Object]回显如下则说明启动成功。
[object Object]
[object Object]
发送请求。
服务化API接口请参考《MindIE LLM开发指南》中的章节。
用户可使用HTTPS客户端(Linux curl命令,Postman工具等)发送HTTPS请求,此处以Linux curl命令为例进行说明。
重开一个窗口,使用以下命令发送请求。例如验证服务是否拉起:
[object Object]回显如下则表明请求发送成功:
[object Object]
[object Object]
使用以下命令下载并安装AISBench工具。
[object Object][object Object]
准备数据集。
以gsm8k为例,单击下载数据集,将解压后的gsm8k文件夹部署到工具根路径的ais_bench/datasets文件夹下。
配置ais_bench/benchmark/configs/models/vllm_api/vllm_api_stream_chat.py文件,示例如下所示。
[object Object]执行以下命令启动服务化精度测试。
[object Object]回显如下所示则表示执行成功:
[object Object]
[object Object]
使用以下命令下载并安装AISBench工具。
[object Object][object Object]
准备数据集。
以gsm8k为例,单击下载数据集,将解压后的gsm8k/文件夹部署到工具根路径的ais_bench/datasets文件夹下。
配置ais_bench/benchmark/configs/models/vllm_api/vllm_api_stream_chat.py文件,示例如下所示。
[object Object]执行以下命令启动服务化性能测试。
[object Object]回显如下所示则表示执行成功:
[object Object][object Object]性能测试结果主要关注TTFT、TPOT、Request Throughput和Output Token Throughput输出参数,参数详情信息请参见《MindIE Motor开发指南》中的“配套工具 > 性能/精度测试工具”章节的“表2 性能测试结果指标对比”。
[object Object]