首页
/ LLMLingua-2压缩算法中的阈值计算机制解析

LLMLingua-2压缩算法中的阈值计算机制解析

2025-06-09 08:29:50作者:庞队千Virginia

在自然语言处理领域,微软开源的LLMLingua项目提供了一种创新的提示词压缩技术。本文将深入分析其第二代版本(LLMLingua-2)中阈值计算的关键设计,特别是针对不同分词器对齐问题的解决方案。

背景与挑战

提示词压缩技术需要解决的核心矛盾是:如何在保持语义完整性的前提下,最大限度地减少实际消耗的计算资源。当使用类似GPT这样按token计费的商业API时,压缩效果必须基于目标模型的tokenizer进行精确评估。

关键技术实现

LLMLingua-2采用双分词器架构:

  1. 压缩模型分词器:用于计算文本中每个单词的保留概率
  2. 目标模型分词器(如OpenAI):用于精确计算实际消耗的token数量

在具体实现中,系统会先将文本通过压缩模型分词器处理为带有特殊前缀符号(▁)的单词序列。例如:

['▁The', '▁report', '▁of', '▁the', '▁Civil', ...]

概率分配机制

当计算保留阈值时,系统会:

  1. 将每个单词通过目标模型tokenizer进行二次分词
  2. 将单词级别的概率值分配给该单词对应的所有token
  3. 特别处理前缀符号▁产生的额外token

以单词"▁The"为例:

  • 目标tokenizer将其拆分为3个token
  • 单词概率会被复制3次分配给这些token

设计考量

这种看似冗余的设计实际上解决了几个关键问题:

  1. token数量对齐:确保压缩率计算基于实际消耗的token数量
  2. 长单词处理:防止因单个长单词占用过多token而破坏整体压缩比例
  3. 符号一致性:保留前缀符号虽然增加了少量token,但实验证明能提升最终效果

性能优化

值得注意的是,系统对标点符号采取了差异化处理:

  • 不添加前缀符号
  • 不进行概率复制 这种处理既保持了文本结构的完整性,又避免了不必要的token浪费

总结

LLMLingua-2通过精妙的多分词器协同机制,实现了提示词压缩效果与目标模型token消耗的精确对齐。这种设计虽然增加了实现复杂度,但显著提升了压缩方案在实际应用中的可靠性,为提示词优化领域提供了有价值的实践参考。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.48 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
783
1.57 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
800
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
970
2.28 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
480
312
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.01 K
766
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
808
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
647
284