开发者
资源
[object Object][object Object][object Object]

已在环境上安装CANN、PyTorch、Torch-NPU和ATB Models,详情请参见《MindIE安装指南》。

[object Object]
[object Object]
  • 使用ATB Models进行推理,模型初始化失败时,模型初始化过程中用户自定义修改导致的失败,需要手动结束进程。
  • 使用ATB Models进行推理,权重路径及文件的权限需保证其他用户无写权限。
[object Object]

当前ATB Models包含三类Readme文档指导您执行推理流程,了解模型支持特性以及提供基础的调测和问题定位手段。

图 1 ATB Models Readme文档关系示意图

表 1 Readme文档介绍

[object Object]undefined
[object Object]

下面以LLaMA3-8B模型为例,展示对话推理以及性能测试的执行步骤。

  1. 配置环境变量。

    • whl包方式
    [object Object]
    • run包方式
    [object Object]
  2. 准备模型权重:可从Hugging Face官网直接下载,将下载的权重保存在“/data/Llama-3-8b“。

  3. 执行如下命令,修改权重文件权限。

    [object Object]
  4. (可选)当前ATB Models推理仅支持加载safetensor格式的权重文件。若下载的权重文件是safetensor格式文件,则无需进行权重转换,若下载的权重文件是bin格式文件,则需要按照如下方式进行转换。

    [object Object]

    输出结果会保存在bin格式的权重文件同目录下。

  5. 测试对话推理。

    [object Object]

    如上命令调用的run_pa.sh脚本是对run_pa.py脚本的封装,默认推理内容为"What's deep learning?",batch size为1,可以通过下方的步骤修改推理内容。

  6. [object Object][object Object]自定义推理内容。

    • 用户可以通过以下方式直接调用run_pa.py脚本,通过传入参数的方式自定义推理内容及推理方式。

      例如:使用/data/Llama-3-8b路径下的权重,使用8卡推理"What's deep learning?"和"Hello World.",推理时batch size为2。

      [object Object]
      [object Object]
    • 用户可以通过传入Token id的方式进行推理。

      新建一个py脚本(如test.py)用于生成Token id:

      [object Object]

      执行如下命令,生成Token id:

      [object Object]

      执行如下命令进行推理,如下以生成的第一个推理内容对应的Token id为"1,15043,2787",第二个推理内容对应的Token id为"1,306,626,2691"为例,其中推理内容间以空格分开。

      [object Object]

      表 2 run_pa.py脚本参数说明 [object Object][object Object]

      [object Object]undefined
      [object Object]
  7. 测试性能。

    开启ATB_LLM_BENCHMARK_ENABLE环境变量后,将统计模型首Token、增量Token及端到端推理时延。

    [object Object]

    耗时结果会显示在Console中,并保存在./benchmark_result/benchmark.csv文件里。

    [object Object]
[object Object][object Object]

已在环境上安装CANN、PyTorch、Torch-NPU、ATB Models、MindIE LLM和MindIE Motor,详情请参见《MindIE安装指南》。

[object Object]
  1. 设置环境变量。

    若安装路径为默认路径,可以运行以下命令初始化各组件环境变量。

    • whl包方式
    [object Object]
    • run包方式
    [object Object]
  2. 启动服务化并发送请求。

    MindIE服务化使用方法请参考《MindIE Motor开发指南》中的“快速入门 > ”章节。服务化参数配置请参考

    服务化配置中默认使用ATB Models作为模型后端。

    • whl包方式
    [object Object]
    • run包方式
    [object Object]

    服务化API接口请参考《MindIE Motor开发指南》中的“服务化接口”章节。

    用户可使用HTTPS客户端(Linux curl命令,Postman工具等)发送HTTPS请求,此处以Linux curl命令为例进行说明。重开一个窗口,使用以下命令发送请求。

    [object Object]