Intel Gaudi 辅助生成支持

Hugging Face 已将辅助生成(亦称投机采样)集成到 Optimum Habana 库中,以加速在 Intel Gaudi 处理器上的文本生成。此优化可降低大规模生成式 AI 实施的推理延迟、基础设施成本和功耗。

通过投机采样实现的辅助生成

辅助生成通过使用较小的草稿模型在更大的目标模型验证之前预测多个 token,从而加速文本生成。该过程遵循以下循环:

  1. 草稿阶段:草稿模型生成 $K$ 个 token。
  2. 评估阶段:目标模型评估这 $K$ 个 token。
  3. 校正阶段:如果草稿模型的 token 被拒绝,目标模型生成下一个正确的 token。
  4. 迭代阶段:该过程重复进行,再次使用草稿模型生成接下来的 $K$ 个 token。

该技术在采样质量上与标准自回归采样保持一致,因为在投机采样过程中会恢复目标分布。决定此方法有效性的主要因素是草稿模型相对于目标模型的相对规模以及草稿 token 的接受率。

在 Intel Gaudi 上的技术实现

在 Intel Gaudi 上实现辅助生成需要针对不同规模的模型管理不同的优化策略。具体而言,实现利用 KV 缓存和量化模型,每个模型(草稿模型和目标模型)都维护各自独立的 KV 缓存,以适应其不同的规模。

该功能现已纳入 Optimum Habana,该库扩展了 Hugging Face 的 Transformers、Diffusers 等库,以确保 AI 工作流在 Intel Gaudi 硬件上得到充分优化。

性能与使用

对于大型基于 Transformer 的模型,辅助生成通常可实现约 2 倍的加速。草稿模型的实际接受率——以及由此产生的加速——在一定程度上取决于输入文本。

用户可以在 Hugging Face Transformers 库的 .generate() 调用中使用 assistant_model 参数来实现此功能。在 Optimum Habana 环境中,可通过文本生成示例中的 --assistant_model 命令行参数触发。

硬件背景

Intel Gaudi 处理器被定位为高性能推理的性价比替代方案。根据 Hugging Face 的说法,Intel Gaudi 的性能可与 Nvidia H100 GPU 相媲美,同时价格与 Nvidia A100 80GB GPU 相当。

Sources