Compare · 横评对比
LLMLingua vs Chonkie:压缩与分块分别解决什么问题?
分块先整理检索单位,压缩再评估选定文本的长度与事实;两者可组合,不能只按文本短不短比较。
| 维度 | llmlingua | chonkie |
|---|---|---|
| 操作 | 模型驱动压缩 | 整理文档片段 |
| 常见环节 | 选定上下文后的实验 | 入库和索引准备 |
| 风险 | 事实与格式变化 | 边界拆开条件与结论 |
| 预算 | 输出与完整输入重新计数 | 块与包装分别计数 |
| 来源 | 保留原文与外部映射 | 保留块来源与位置 |
压缩和分块分别改变什么
Chonkie 将文档整理为片段,LLMLingua 则尝试减少选定文本中的内容。前者帮助建立检索单位,后者用于评估提示词长度与信息保留的取舍。二者可以组合,不能仅按最终字符串短不短判定哪个“更好”。
本文核对于 2026 年 10 月 26 日。LLMLingua 部分有固定模型的中英文压缩实验,Chonkie 按官方功能和既有分块流程讨论,没有两家共同质量或速度基准。不同任务不使用同一个排行榜。
工作位置对照
| 维度 | LLMLingua | Chonkie |
|---|---|---|
| 主要操作 | 对文本进行模型驱动压缩 | 将文档切为合适片段 |
| 常见位置 | 选定证据后评估输入长度 | 入库、索引或检索准备 |
| 质量问题 | 是否丢失事实与逻辑关系 | 边界是否拆开条件与结论 |
| token 条件 | 输出必须重新计数 | 块大小也需对应 tokenizer |
| 来源 | 压缩后仍保留外部来源映射 | 块应携带稳定来源与位置 |
| 费用 | 压缩模型与运行成本 | 切分策略、编码及维护成本 |
Chonkie 不等于自动减少全文
分块的目的是形成可用片段。例如一段政策需要和适用条件放在一起,一张表格需要上下文解释。切块之后全文仍然可能完整存在,重叠还会增加总量。只有检索或后续选择决定送出哪些片段,才减少当前请求的输入。
应验证块的 token 长度、边界、来源和实际嵌入输入。把标题、前缀或其他包装加上后,长度可能超过单独块的计数。不要把配置的块大小写成完整 API 请求保证,也不要用字符长度代替目标 tokenizer。
如果证据被边界拆散,先改分块或来源组织,而不是期望压缩器修复。原始文档、偏移和版本关系应保留,便于回答时回到来源以及页面更新后重建索引。
LLMLingua 不等于无损摘要
压缩器按模型策略删减内容,输出可能不是自然可读的摘要。更短不保证保留同样事实,也不保证下游模型理解不变。数字、否定、实体和来源关系需要单独校验,不能只比较压缩比。
本次 LLMLingua 0.2.2 使用官方多语言 BERT 权重,在 CPU 上运行 LLMLingua-2。英文 rate=0.5 输出没有保留完整密码禁令,出现“share passwords”片段;这类关键表达变化必须阻止直接进入回答流程。
中文 rate=0.8 输出加入字间空格,cl100k_base 计数从 87 增到 124,组装指令和问题后为 146。目标 rate 没有成为实际 token 比例,也没有成为费用上限。这个反例只对应固定样本与配置,不能推断整个项目所有模型的中文表现。
组合时先保护边界,再验证压缩
可从原文分块开始,记录来源并取得相关候选,再考虑是否压缩被选中的证据。这个顺序便于定位错误,但不是所有任务的唯一最优流程。长文、跨段引用或表格可能需要不同策略,应以参考答案验收。
不建议在没有来源映射时先把全库内容强压缩,再期待检索能完整恢复证据。压缩可能改变编号和措辞,检索、引用与版本比较都会受到影响。原文应保留为可回退的事实来源。
对必须逐字保留的字段,可以考虑排除压缩或独立保护。但加入保护参数仍需实测,不能把参数名字当成保证。本文没有验证保护配置后的质量,不承诺加一个选项就解决所有丢失。
用两个验收表检查
分块阶段检查片段覆盖、偏移、来源、token 长度以及条件和结论是否分离。压缩阶段检查关键短语、事实关系、实际计数和最终答案。两个表都需要失败案例,不应合成一个难以解释的“质量分”。
本次精确短语检查会把 REFUND - 731 判为不匹配,尽管它可能只是格式变化。应将格式校验与语义判断分开:编号需要精确匹配时可以保守拒绝,若容许规范化就明确规则并单独测试,不能静默去掉所有空格或符号。
对中文,逐字空格可能让短语检查失败,也可能增加目标 tokenizer 计数。去空格不一定安全,可能影响原文关系或其他语言输入。本篇保留原始输出,不为得到漂亮成绩擅自修正。
成本与数据边界
库、模型权重、嵌入服务和下游调用是不同成本。LLMLingua 本次模型在本地运行,没有付费 API;分块采用何种策略、是否调用外部嵌入,也应分别核对。不能因为都能在 Python 中调用,就推断所有组合都离线或免费。
文档、压缩输出与评估日志可能包含内部资料,按来源权限管理。分块、压缩或向量相似度都不能替代用户授权。跨租户资料应先在可信后端限制候选范围,不能依靠模型在输出时自行判断。
怎样选择
如果主要问题是文档太长、边界和索引单位不合适,先试 Chonkie 并验证覆盖。若已经有相关证据但最终输入仍受预算限制,可把 LLMLingua 作为需要事实门槛的实验组件。质量不满足时回退,而不是强行减少内容。
继续阅读:LLMLingua 介绍、上下文优化推荐、FlashRank 对比、实操教程。官方资料:LLMLingua、Chonkie。
结论
分块先整理检索单位,压缩再评估选定文本的长度与事实;两者可组合,不能只按文本短不短比较。
常见问题
- 压缩率能当成实际 token 比例吗?
- 不能。实际输出和目标 tokenizer 会影响计数,本次中文 0.8 的计数甚至增加。
- 短语检查通过就无损吗?
- 不能。短语出现只是必要条件,还需核对数字、否定与关系及下游答案。
- 四组被拦下都表示语义错误吗?
- 不是。部分只是格式不匹配;报告区分格式、事实和预算问题。
- 分块、重排与压缩能互相替代吗?
- 不能直接替代。它们改变不同环节,组合后的效果仍需验证。
- 本次调用付费回答模型了吗?
- 没有。只验证本地压缩与门槛,不宣称下游问答质量或费用收益。
- 软件免费是否包含所有费用?
- 不包含模型准备、计算、内存、存储、维护和下游调用等成本。