bstnxbt/dflash-mlx

Lossless DFlash speculative decoding for MLX on Apple Silicon

解决的问题

dflash-mlx 实现了 DFlash,这是一种专为 Apple Silicon 设计的预测性解码技术,旨在加速 LLM 推理。它通过使用小型草稿模型并行预测多个标记,然后由更大的目标模型在单次前向传播中进行验证,从而解决了自回归生成的瓶颈,显著提升了每秒生成的标记数(tokens-per-second),同时保持输出质量不变。

工作原理

该项目使用一个块扩散草稿模型(通常约为 10 亿参数)在一次前向传播中生成 16 个标记。随后,更大的目标模型对这些标记进行单次前向传播验证。如果目标模型与草稿模型一致,则接受这些标记;如果不一致,则在第一个错误处截断草稿,并由目标模型提供正确的下一个标记。

针对 Apple Silicon 的关键技术优化包括:

  • 磁带重放回滚:记录创新磁带,以在验证失败时高效恢复 GatedDeltaNet 模型的状态。
  • 自定义 Metal 内核:包含专为 M 系列 GPU 优化的 verify_qmm int4 量化矩阵乘法内核,以加速验证步骤。
  • 分层前缀缓存:采用两级(RAM 和 SSD)缓存系统,存储目标模型状态的快照,以跳过重复提示的预填充阶段。
  • 位置稀疏预填充:允许对目标模型选择性地预填充部分标记,以减少计算量。

适用人群

希望在 Apple Silicon(M 系列芯片)上以显著更高的生成速度运行大型语言模型(如 Qwen 和 Gemma)的开发者和研究人员。

主要亮点

  • 无损加速:每个生成的标记都与目标模型进行验证,确保输出与目标模型的贪婪解码完全一致。
  • 高加速比:基准测试显示,根据模型和提示长度不同,加速比在 1.3x 到 4.3x 之间。
  • OpenAI 兼容服务器:包含可与 aider、Continue 和 Open WebUI 等工具集成的服务器。
  • 架构支持:针对 Qwen3.5、Qwen3.6 和 Gemma4 模型进行了优化。
  • 集成诊断功能:提供详细的指标和结构化输出,用于调试和性能分析。

相关

  • 项目
  • 项目
  • 项目
  • Dispatch
  • Dispatch