昇腾社区首页
中文
注册

测试验证

{llm_path}:模型仓所在路径。

  • 若使用已编译的包,则路径为${working_dir}/MindIE-LLM/。
  • 若使用gitee下载的代码,则路径为${working_dir}/MindIE-LLM/examples/atb_models/。

精度验证

  • 精度验证可以基于问答判断文本生成功能。在“${llm_path}/”目录下执行如下命令:
    # 使用多卡运行FlashAttention模型
    torchrun --nproc_per_node 2 --master_port 20038 -m examples.run_fa --model_path ${weight_dir} --input_text ["What's Deep Learning?"] --max_output_length 2048
    # 使用多卡运行PagedAttention模型
    torchrun --nproc_per_node 2 --master_port 20038 -m examples.run_pa --model_path ${weight_dir} --input_text ["What's Deep Learning?"] --max_output_length 2048

    参数配置具体可参考“${llm_path}/examples/README.md”

  • 基于数据集进行端到端精度验证,目前支持C-Eval、HumanEval、BoolQ测试。在“${llm_path}/tests/modeltest/”目录下执行如下命令:
    bash run.sh [fa|pa_fp16] [full_CEval|full_BoolQ|full_HumanEval] [batch_size] [model_name] ([use_refactor]) [weight_dir] [chip_num] 

    参数配置具体可参考“${llm_path}/tests/modeltest/README.md”

性能验证

全量性能测试需要覆盖batch_size、seq_in_len、seq_out_len三个维度,支持用户自定义配置。性能测试的基础用例可参考:bs=1/16, [[256, 256], [512,512], [1024,1024], [2048,2048]]。

“${llm_path}/tests/modeltest/”目录下执行如下命令:

bash run.sh [fa|pa_fp16] performance ([case_pair]) [batch_size] [model_name] ([use_refactor]) [weight_dir] [chip_num] 
# 说明:case_pair只在performance场景下接受输入,接收一组或多组输入,格式为[[seq_in_1,seq_out_1],...,[seq_in_n,seq_out_n]], 如[[256,256],[512,512]]

参数配置具体可参考“${llm_path}/tests/modeltest/README.md”

测试代码具体可参考“${llm_path}/tests/modeltest/base/model_test.py”

模型样例

样例代码可从发布的模型库中获取,下面以LLaMA模型为例(需要先配置环境,请参见MindIE安装指南),工程路径为“${llm_path}/examples/models/llama”,精度和性能测试指导手册请参考“${llm_path}/tests/modeltest/README.md”