news 2026/4/16 17:55:56

上下文压缩

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
上下文压缩

当上下文过长时,一般是怎么进行压缩的?

当大语言模型(LLM)的上下文过长(超过模型原生上下文窗口,或即使在支持长上下文的模型中也希望降低成本、加速推理、减少KV cache占用)时,目前业界主流的压缩/优化方式可以大致分为以下几类(从最常用到较前沿的排序):

1. 最常见、最广泛使用的几种方式(工程上最成熟)

压缩方式核心思路压缩比(常见)适用场景代表工具/方法优缺点简评
LLM摘要/提炼式压缩(Abstractive)用LLM自己把历史对话/长文档总结成几句话或关键事实3–20×长对话、多轮Agent、文档问答LangChain Summary、LLMLingua的prompt压缩、Roo Code双重压缩效果最好,但需要额外调用一次LLM,成本稍高
提取式压缩(Extractive)从原文中直接挑出最重要的句子/片段保留下来5–15×文档问答、RAGLLMLingua、Selective Context速度快、无幻觉风险,但可能丢失连贯性
基于困惑度/信息熵的硬删减计算每个token/句子对当前任务的“重要性”(困惑度、自信息量),低于阈值就删2–10×几乎所有长上下文场景LLMLingua系列、信息熵剪枝非常快,几乎零额外推理成本,但压缩过度容易丢关键信息
滑动窗口 + 最近优先只保留最近N轮对话 + 少量关键历史摘要固定窗口聊天机器人、客服Agent绝大多数开源Agent框架默认策略实现最简单,但老信息容易永久丢失

2. 中间层/推理时压缩(越来越流行,2025–2026年主流方向)

  • 软压缩(Soft Prompt Compression)
    把长上下文编码成少量“虚拟token”或concept embedding,再喂给主模型。
    代表:CompLLM(分段独立压缩、可缓存)、Gist tokens、AutoCompressor
    优点:推理速度可提升2–4倍,KV cache减半甚至更多
    目前多用于长文档问答(Q&A over book / codebase)

  • KV Cache压缩(不压缩输入prompt,只压缩推理过程中产生的key-value缓存)

    • 量化(FP8 → INT4 / NVFP4)
    • 注意力相似性聚类 / 共享(相似的token共享KV)
    • 重要性驱逐(eviction,根据attention score动态扔掉不重要token的KV)
      代表:KVPress (NVIDIA)、H2O、SnapKV、Infini-attention的压缩记忆部分
      优点:对用户无感知,端到端提速明显,内存占用可减50%以上

3. 其他高级/特定领域方式

  • 代码专用压缩:LongCodeZip(粗粒度函数级 + 细粒度块级,根据指令困惑度排序保留)
  • 视觉/多模态压缩:把长文本渲染成图片再OCR(DeepSeek-OCR、Glyph),或直接用视觉token表示(2025年后很火的一条路线)
  • 记忆外置 + 按需召回(严格来说不算压缩,但效果类似)
    → 把历史压缩成向量存向量库,需要时RAG拉回来(最常见于生产级Agent系统)

实际产品/框架里最常看到的组合策略(2026年视角)

  1. 平时用滑动窗口 + 最近K轮兜底
  2. 当token快满时(比如占窗口90%以上),自动触发LLM摘要压缩LLMLingua式硬压缩
  3. 对于特别长的文档/RAG场景,优先用提取式 + 查询感知摘要(query-aware summary)
  4. 如果部署在GPU上且追求极致性能,再叠加KV cache量化 + 动态驱逐

一句话总结目前工程界的共识:

“能用滑动窗口 + 摘要就先用,能用困惑度硬删就别轻易上LLM摘要,能上软压缩/KV压缩就尽量上,能不让用户感知到压缩最好。”

你现在是在做哪一类场景的长上下文优化?(聊天、RAG、Agent、代码、百万token文档……)可以告诉我更具体的需求,我可以给你更针对性的当前最佳实践。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 7:26:35

蓝易云 :Spring redis使用报错Read timed out排查解决

下面这类 Spring Redis 报错&#xff1a;<span style"color:#e53935">Read timed out</span>&#xff0c;本质是客户端在超时时间内没读到 Redis 响应&#xff08;不是“连不上”&#xff0c;而是“没及时回包”&#xff09;。要快速闭环&#xff0c;就…

作者头像 李华
网站建设 2026/4/16 7:20:40

欧姆龙 CP1E 与四台 E700 变频器通讯那些事儿

欧姆龙cp1e通讯四台E700配套程序资料 视频即效果&#xff0c;硬件使用cp1e-N30S1DT-D,四台E700变频器。 功能实现四台变频器的正反转停止&#xff0c;频率给定。 输出频率&#xff0c;电压&#xff0c;状态的读取。 其它变频器支持modbus rtu协议也可使用&#xff0c;百度包括p…

作者头像 李华
网站建设 2026/4/16 7:26:07

Linux 命令行参数与环境变量实战:从基础用法到底层原理

Linux 命令行参数与环境变量实战&#xff1a;从基础用法到底层原理 &#xff08;2026 年视角&#xff0c;结合 bash / C/C / Go 等常见场景&#xff0c;带代码示例 常见坑 推荐实践&#xff09; 1. 整体流程图&#xff08;从敲命令到程序拿到数据&#xff09; 用户在 shell…

作者头像 李华
网站建设 2026/4/16 7:25:19

鸿蒙HarmonyOS 6应用开发:从零基础到App上线

鸿蒙 HarmonyOS 6 应用开发&#xff1a;从零基础到 App 上线 &#xff08;2026 年最新实战路线图&#xff0c;基于 HarmonyOS NEXT 纯血版 DevEco Studio 6.0&#xff0c;覆盖官方最新能力&#xff09; 2026 年&#xff0c;HarmonyOS 6&#xff08;也称 HarmonyOS NEXT 第二个…

作者头像 李华
网站建设 2026/4/16 7:26:35

导师推荐8个降AIGC工具,千笔AI助你轻松降AI率

AI降重工具&#xff1a;让论文更自然&#xff0c;让学术更纯粹 在当前学术写作环境中&#xff0c;AIGC&#xff08;人工智能生成内容&#xff09;的广泛应用为论文创作带来了便利&#xff0c;但也带来了“AI痕迹明显”“查重率偏高”的挑战。对于MBA学生而言&#xff0c;如何在…

作者头像 李华