开发者
下载

eval

特性简介

  • 特性入口:$HOME/.local/lib/python3.x/site-packages/amct_pytorch/cli/llm/eval.py
  • 特性介绍:该入口用来进行困惑度PPL评估,支持两种评估模式:
    • BF16基准性能评估:加载原始模型block,以BF16精度计算困惑度(PPL)(--eval_mode=bf16,eval_mode为评估模式)。
    • 量化性能评估:构建量化block,根据--bit_config(YAML格式的配置文件路径)和--quant_target(量化目标)启用量化器,计算量化后的困惑度PPL(--eval_mode=quant)。
  • 特性输出:output_dir/logs/目录下会生成评估日志,日志中包含PPL。
  • 约束:考虑到用户环境的限制,--granularity(量化单位)请尽量选择block。

实例化操作1:BF16基线PPL测量

首先计算BF16全精度模型的困惑度(PPL),将其作为量化后精度的评估基线,命令为:

1
python3 -m amct_pytorch.eval --model /path/to/model --model_name qwen3 --device npu:0 --granularity block --eval_mode bf16 --bit_config amct_pytorch/configs/bf16.yaml

说明,--bit_config、--model请配置为本地路径。参数详细说明请参见参数说明

实例化操作2:量化模型PPL测量

量化评估会重建量化block,并根据--bit_config判断是否启用量化器。命令如下:

1
python3 -m amct_pytorch.eval --model /path/to/model --model_name qwen3 --device npu:0 --granularity block --eval_mode quant --quant_target mlp --quant_dtype int --bit_config amct_pytorch/configs/example_w4a8.yaml

说明,--bit_config、--model请配置为本地路径。参数详细说明请参见参数说明

实例化操作3:带PTQ训练结果的量化模型PPL测试

量化评估会重建量化block,并根据--bit_config 判断是否启用量化器。命令如下:

1
python3 -m amct_pytorch.eval --model /path/to/model --model_name qwen3 --device npu:0 --granularity block --eval_mode quant --quant_target mlp --algos lwc lac --quant_dtype int --bit_config amct_pytorch/configs/example_w4a8.yaml --moe_mlp_param_dir ./outputs/qwen3_ptq_params/mlp

参数详细说明请参见参数说明