TokenSwift 是一个用于超长序列生成的无损加速框架,已被 ICML 2025 接收。其核心目标是在不损失目标模型固有质量的情况下,显著加速最长可达 100K token 的生成过程,将计算时间从数小时降低到数分钟。
主要能力:
- 无损加速超长序列生成,支持最长约 100K token。
- 将超长序列生成的计算时间由数小时缩短至数分钟。
- 提供针对 20K/40K/60K/80K/100K 序列长度的基准测试脚本。
- 支持对全部实验的 100% 可复现。
- 提供适用于任意结构的预训练模型适配器。
- 发布经过微调的模型:QwQ-32B 与 DeepSeek-R1-Distill-Qwen-32B,均实现约 3 倍加速,并配有部署推理指南。
工作原理: 框架首先让目标模型(LLM)在带有部分 KV 缓存和三个线性层的情况下,在单次前向传播中输出 4 个 logits。随后应用基于树的注意力机制构造候选 token。接着检索 top-k 候选 4-gram,这些候选组成草稿 token,并被送入带有完整 KV 缓存的 LLM 以生成目标 token。验证阶段通过检查草稿 token 是否与目标 token 完全匹配来进行。最后,随机选择最长有效草稿 token 之一,并相应更新 n-gram 表和 KV 缓存。
使用方式: 安装提供两种方法:方法一为通过 pip 安装,方法二为从源码安装(推荐)。仓库以 LLaMA3.1-8B 为例给出入门说明,其他模型可运行 infer_scripts/ 文件夹中的脚本。训练指南为可选内容:从 PG-19 训练集中根据不同 tokenizer 过滤掉大于 8K 的数据,或下载已处理的训练数据集(llama2-pg19、llama3.1-pg19、qwen2.5-pg19);其他模型可运行 train/scripts/ 文件夹中的脚本。
适用场景: 适用于需要生成超长序列(最长约 100K token)的 LLM 推理任务,尤其关注在保持生成质量的前提下降低计算时间。
限制: 资料未提供具体的性能数据、硬件要求、支持模型的完整列表、许可证信息或价格与收费信息。