Repolode
microsoft

microsoft/LLMLingua

微软开源的 Python 库,通过删除提示词中的非关键 token 压缩 LLM 提示和 KV 缓存,最高可压缩 20 倍。

Star
6,767
Fork
444
未关闭 Issue
125
最近提交
上个月

这是什么?

LLMLingua 是微软研究院开源的大模型提示词压缩工具。它借助一个小型训练好的语言模型,识别并删除对语义贡献较小的 token,在保留关键信息的同时缩短提示词,项目称压缩比最高可达 20 倍,性能损失较小。此外还支持 KV 缓存压缩,用于加速推理。

仓库包含一组方法:LLMLingua 是最初的方案;LongLLMLingua 面向长上下文和 RAG 场景,缓解“迷失在中间”的问题;LLMLingua-2 是与任务无关的压缩模型,基于 BERT 级别编码器做 token 分类。另有用于识别越狱攻击意图的 SecurityLingua。结构化提示压缩允许对提示词的不同段落设置不同压缩率。

项目以 pip 安装的 Python 包形式提供,核心接口是 PromptCompressor 类,包含 compress_prompt 和 structured_compress_prompt 方法。该项目已集成到 Prompt flow、LangChain 和 LlamaIndex 中。

核心功能

  • 01删除提示词中的非必要 token,最高可压缩 20 倍。
  • 02压缩 KV 缓存以加速 LLM 推理。
  • 03提供面向长上下文和 RAG 场景的 LongLLMLingua。
  • 04提供基于 BERT 级编码器、速度更快的通用压缩模型 LLMLingua-2。
  • 05支持通过标签为提示词不同段落设置压缩率的结构化压缩。
  • 06可通过 pip 安装,在 Python 中直接调用。

适用场景

  • 在 RAG 流程中把长文档或检索结果压进有限的 LLM 上下文窗口。
  • 降低向 GPT-4 等模型发送长提示词时的 API 费用。
  • 在保留推理内容的前提下压缩思维链或少样本示例。
  • 使用 SecurityLingua 模型识别用户提示中的越狱攻击意图。

快速上手

  1. 1

    从 PyPI 安装 LLMLingua

    pip install llmlingua
  2. 2

    导入 PromptCompressor 并用默认模型压缩提示词

使用前须知

  • 压缩效果取决于所选模型,部分变体需要 GPU 才能获得较好速度。
  • 部分量化模型选项需要额外安装 optimum 和 auto-gptq 等包。

标签

常见问题

LLMLingua 是什么?
微软开源的 Python 库,通过删除提示词中的非关键 token 压缩 LLM 提示和 KV 缓存,最高可压缩 20 倍。 LLMLingua 是微软研究院开源的大模型提示词压缩工具。它借助一个小型训练好的语言模型,识别并删除对语义贡献较小的 token,在保留关键信息的同时缩短提示词,项目称压缩比最高可达 20 倍,性能损失较小。此外还支持 KV 缓存压缩,用于加速推理。
LLMLingua 可以免费使用吗?用的什么许可证?
LLMLingua 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
LLMLingua 还在维护吗?
半年内有更新。LLMLingua 最近一次提交是在 2026年9月10日。
LLMLingua 适合用来做什么?
在 RAG 流程中把长文档或检索结果压进有限的 LLM 上下文窗口。 降低向 GPT-4 等模型发送长提示词时的 API 费用。 在保留推理内容的前提下压缩思维链或少样本示例。 使用 SecurityLingua 模型识别用户提示中的越狱攻击意图。
LLMLingua 怎么安装和运行?
从 PyPI 安装 LLMLingua: pip install llmlingua 导入 PromptCompressor 并用默认模型压缩提示词
在哪里获取 LLMLingua?
源代码和安装说明在 GitHub 上:https://github.com/microsoft/LLMLingua

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目