microsoft/llmlingua 是一个用于压缩输入到大型语言模型(LLM)的提示词的 Python 项目。仓库说明指出它通过缩减提示词和 KV-Cache 来加快推理,最新发布版本是 v0.2.2。提示词压缩是指从进入模型输入的 token 中剔除不必要的部分,从而以更短的形式传入。该项目使用更小的语言模型来判断该删掉什么,承担压缩环节的工作。
在 LLMLingua Series 这一名称之下包含多个分支。仓库说明中写道,LLMLingua 可实现最高 20 倍压缩,且仅伴随较小的性能损失。LongLLMLingua 面向长上下文处理与 RAG 性能提升,LLMLingua-2 面向与任务无关的提示词压缩。SecurityLingua 是用于安全感知提示词压缩的安全护栏模型,可检测 LLM 越狱攻击并帮助生成安全的响应。实现语言为 Python,许可证为 MIT,首次发布于 2023 年 7 月 7 日。仓库说明的最前面列有 EMNLP'23 与 ACL'24,star 数为 6762。
不过,证据仅限于仓库说明和 README 所披露的范围。最高 20 倍压缩与较小的性能损失只是说明文字中写明的数值;并未提供按条件划分的基准测试,也没有与其他压缩方式的对比数据。v0.2.2 究竟改动了什么,需要直接查看发布说明。所收集的指标中,动量为 10 分制下的 2.1,而原创性、技术与质量项均为空。star 数只能显示关注度,并不能证明性能。对于想通过压缩长篇 RAG 文档和对话记录来减少输入 token 的团队,它是一个值得参考的选项;但在直接核实不同模型与任务下还残留多少损失之前,很难把它当作预期值。