简介¶
vLLM Intel® Gaudi® 硬件插件支持使用 Intel® Neural Compressor (INC) 软件包以 8 位浮点 (FP8) 精度在 HPU 上运行推理。推理需要预先进行校准,以生成运行量化模型所需的测量值、量化文件和配置数据。
本文档将介绍如何执行校准。它为单个 Intel® Gaudi® 节点和多个节点提供了单独的流程。在继续之前,请查看注意事项和建议以及故障排除信息,以确保正确执行。
注意事项和建议¶
设备推荐¶
校准时,请使用您计划用于推理的相同设备类型。生成的测量值依赖于设备,因此在 Intel® Gaudi® 3 上收集的量表不能在 Intel® Gaudi® 2 上重复使用,反之亦然。在不同设备类型上使用的测量值可能会导致准确性问题。
强制参数¶
为简化校准过程,我们提供了 calibrate_model.sh 脚本,该脚本会生成用于 FP8 推理的 maxabs_quant_g3.json 文件。该脚本需要提供以下参数:
-m <path/ID>:本地存储的模型路径或来自 Hugging Face hub 的模型 ID。-d <path>:pickle (.pkl) 格式的源数据集路径。-o <path>:要保存生成测量值的目录路径。我们建议将统一结果存储在源目录中。这样,您就可以在不修改QUANT_CONFIG环境变量中指定的目录的情况下,以 FP8 精度和不同的张量并行值运行 vLLM 服务器。
该脚本还提供了可选参数,您可以通过执行带有 -h 标志的脚本来探索这些参数。更常用的可选参数是:
-b <size>:设置运行测量值时使用的批次大小(默认值:32)。-l <samples>:设置校准数据集中的样本数量限制。-t <size>:设置张量并行大小(默认值:1)。
数据集¶
校准过程适用于包含 system_prompt 和 question 字段的任何数据集。这些字段会准备一个专门为您的模型格式化提示的校准数据集。我们建议使用 MLCommons 的公开数据集,就像在 Llama2-70b 推理提交中使用的一样。
DeepSeek 模型¶
对于 DeepSeek-R1 系列模型,其中包含 256 个专家,请提供多样化且足够大的样本集,以确保所有专家在校准期间都被正确激活。通过测试,我们发现使用 NeelNanda/pile-10k 并选择 512 个样本,每个样本至少有 1024 个 token,可以提供有效的校准覆盖。
校准过程¶
请参阅以下章节,了解您设置的校准过程:
故障排除¶
如果您在运行脚本时遇到以下错误,请确保设置了有效的张量并行值,例如 -t 8。