现在,大语言模型的结构化生成有了一个更加高效、灵活的引擎。
1. 引言
随着大语言模型(LLM)的发展,结构化生成变得日益重要。陈天奇团队提出了XGrammar,一个高效、灵活且可移植的结构化生成引擎,以满足代码编写、外部工具调用和机器人控制等多种需求。
2. XGrammar的概述
XGrammar是一个开源软件库,致力于提供灵活的结构化生成解决方案,支持多种格式(如JSON、SQL等)。其核心目标是高效地进行约束解码,克服上下文无关语法(CFG)在传统应用中的效率瓶颈。
3. 约束解码的挑战
约束解码通过过滤无效token来确保生成数据符合特定结构。然而,CFG的灵活性使得解码效率低下,尤其是在处理大词表时,计算开销显著增加。XGrammar通过改进算法和数据结构,显著提升了解码速度。
4. 解决方案
XGrammar采用字节级下推自动机(PDA)来处理CFG,并引入自适应token掩码缓存,提高了掩码生成的速度。通过将上下文无关token与上下文相关token分离,XGrammar能够在运行时快速生成大部分掩码,显著提升整体性能。
5. 性能评估
在与Llama-3.1模型的评估中,XGrammar在JSON模式下实现了高达3倍的加速,并在复杂的JSON用例中超过100倍的加速。整体运行时间低于40微秒,适用于低延迟LLM推理场景。
6. 端到端LLM引擎
通过将XGrammar集成到端到端LLM推理框架中,研究显示其在TPOT和TTFT性能方面优于其他框架,整体速度提升达到80倍。有效的掩码生成与LLM推理的重叠计算进一步降低了延迟。
7. 跨平台部署
XGrammar能够在多种平台上运行,通过Emscripten编译为WebAssembly,并与WebLLM框架集成,展示了在移动设备和浏览器环境中的高效表现。
8. 结论
XGrammar代表了结构化生成技术的一个重要进展,其高效性和灵活性为未来的应用提供了强大的支持,尤其在端侧智能体的发展中具有广阔的前景。
联系作者
文章来源:机器之心
作者微信:
作者简介:专业的人工智能媒体和产业服务平台