使用 LFM2.5-VL-DSpark 加速视觉语言模型
Hugging Face Blog 发布了这条动态,详情请查看官方发布。

来自 Hugging Face Blog 的官方动态,版本与适用范围以发布方说明为准。
Hugging Face Blog · 查看官方发布中文机器翻译 · 原文附后
正文 · 来源原文
更快的推理:设备上的解码速度高达 3.13 倍,H100 上的解码速度高达 2.66 倍,端到端增益高达 2.62 倍和 2.27 倍。内存成本小:起草者添加了 280M 参数,比 3B 目标增加了 8.9% 第一天支持:针对 llama.cpp、MLX-VLM 和 SGLang 的 LFM 兼容 DSpark 集成
视觉起草器使用与我们的文本 LFM2.5-DSpark 起草器相同的架构:它捕获目标模型在一组固定的抽头层上的隐藏状态以及它们的条件,以起草 k 个候选标记的块。图像块和文本标记在这些层之前被投影到共享表示中,因此起草者对相同维度的隐藏状态向量进行操作,而不管输入模态如何。因此,推理算法与文本模型相比没有变化。
我们遵循 DSpark 配方,混合视觉语言 SFT 数据,并根据我们期望模型服务的工作负载进行加权。基于跨 3、4 和 5 层的消融,草稿模型是一个简化的仅注意草稿器,有 4 层,块大小为 9。我们对最终混合物运行了 10 个 epoch,并在每个 epoch 后测量接受度,在达到收益递减之前,通过额外的训练令牌进行了改进。在推理时,我们建议根据硬件使用 8 或 9 的块大小。
生成的绘图器具有大约 2.8 亿个参数,并且仅将部署模型的参数数量增加了 8.9%。
LFM2.5-VL-3B 的 DSpark 草案模型附带了对 llama.cpp、MLX-VLM 和 SGLang 的第一天支持。
我们测量设备上推理和 GPU 推理。两种配置均使用大小为 8 的 DSpark 块,并在六种不同的基于视觉的任务上进行评估,包括一般 VQA、文本 VQA、图像字幕、图表 VQA、复杂推理和多轮对话,遵循 MMSpec 基准。
设备上推理。在 M5 Max 上使用 MLX,解码任务的运行速度提高了 2.30 倍到 3.13 倍。端到端延迟提高了 1.56 倍至 2.62 倍。在 M3 Ultra 上使用 llama.cpp 时,解码性能提高了 1.57 倍到 2.14 倍,端到端性能提高了 1.30 倍到 1.77 倍。
GPU 推理。在 H100 上,同一起草器的解码速度提高了 20.4 倍到 2.66 倍,端到端性能提高了 1.64 倍到 2.27 倍。
在法学硕士中,预填充主要受计算限制,其成本随着提示长度呈(次)二次方增长。 VLM 对此进行了补充,因为图像首先通过视觉编码器,然后语言主干处理数百个视觉标记以及文本提示。边缘设备的计算量比数据中心 GPU 少得多,因此预填充占用了更多的端到端延迟,如 Apple 芯片和 H100 上的首次令牌时间和解码测量结果所示。 (M5 的每核 GPU 神经加速器缩小了这一差距)。
推测解码仅加速解码,而不加速视觉编码或预填充。当这些阶段已经占用了大部分的时间时,即使很大的解码加速也只能带来适度的端到端增益。这是阿姆达尔定律,其中未加速的工作负载部分限制了整体加速。
使用 SGLang 运行 DSpark 草稿模型需要使用 DSpark 支持 LFM2 目标的 SGLang 构建(PR #40651)。启动带有附加草稿的目标:
然后在 http://localhost:30000/v1 查询与 OpenAI 兼容的端点。块大小从草稿的config.json中读取;基线是相同的命令,没有三个 --speculative-* 标志。
查看英文原文
Accelerating vision-language models with LFM2.5-VL-DSpark
Hugging Face Blog 发布了这条动态,详情请查看官方发布。
正文 · 来源原文
Faster inference: decode speedups up to 3.13x on device and 2.66x on an H100, with end-to-end gains up to 2.62x and 2.27x. Small memory cost: the drafter adds 280M parameters, 8.9% on top of the 3B target Day-one support: LFM-compatible DSpark integrations for llama.cpp, MLX-VLM, and SGLang
The vision drafter uses the same architecture as our text LFM2.5-DSpark drafters: it captures the target model's hidden states at a fixed set of tapped layers and conditions on them to draft a block of k candidate tokens. Image patches and text tokens are projected into a shared representation before those layers, so the drafter operates on hidden-state vectors of identical dimensionality regardless of input modality. The inference algorithm is therefore unchanged from the text models.
We follow the DSpark recipe with a mixture of vision-language SFT data, weighted toward the workloads we expect the model to serve. Based on ablations across 3, 4, and 5 layers, the draft model is a simplified attention-only drafter with 4 layers and a block size of 9. We ran 10 epochs on the final mixture and measured acceptance after each, which improved with additional training tokens before reaching diminishing returns. At inference time, we recommend a block size of 8 or 9 depending on the hardware.
