技术 · 熟练

上下文压不下去?换个载体,别换内容

压缩会丢东西,换载体只是换了个价目表
上下文省不下来,多数人只在两条路上使劲:砍(删掉不用的)与摘(写摘要)。第三条路是换载体 —— 把要喂进去的长文档、工具说明、系统提示排版渲染成图片,让模型看图而不是读字。原因很朴素:文本按 token 计价,图像按像素计价,同一段字排得越紧,占的额度越少。但它不是免费午餐 —— 换载体换来的是「无损但会看错」,所以这一页给的是三条判断:哪些内容适合换载体、换完怎么验、以及哪三类内容千万别换。
方法 · 一图看懂
1
先分清三路线 — 压缩(会丢)· 外置(不喂)· 换载体(不丢但会看错),三条的成本与风险不同
2
换载体只适合「字多但不用逐字」 — 工具文档、系统提示、长历史、说明书;⛔ 不适合要逐字引用与精确比对的正文
3
排版密度就是省钱手段 — 同一段字排得越紧、留白越少,占的像素越少;但可读性(模型能不能认对)是不可越过的下限
4
换完必须做一致性对照 — 同一批问题,文字版与图片版各跑一遍,答案不一致就别用
5
三类内容永不换 — 要改的代码、要算的数字、要比对的字符串
原理 · 为什么有效
语言模型的两种输入各有各的价目表:文本按 token 计,一个汉字大致算一到两个 token;图像按像素折算,一张固定尺寸的图无论里面塞多少字,价钱几乎一样。这条差价就是换载体的全部收益来源 —— 它不是「让模型更聪明」,而是「让同样的信息走一条更便宜的计价通道」。
代价也在这里:图像是给「看」的,不是给「抄」的。模型能读懂图里在讲什么,但它读字符的精度低于读文本本身 —— 少一个标点、串一列数字,在文本输入里几乎不发生,在图像输入里是常态。⇒ 换载体的判据不是「省多少」,而是「这段内容需不需要被逐字使用」。
适用场景
适用:① 每次会话都要带上一大段固定说明(工具文档 / 规范 / 项目背景),且这段说明只需要被「理解」不需要被「引用」② 长对话历史要压但摘要总丢细节 ③ 你按 token 付费、且输入侧占大头。
⛔ 不适用:① 要让模型改代码、抄 ID、比字符串、做精确算术 ② 内容本身是表格里的一列数字(图里最容易串行)③ 你的用量很低 —— 搭一条代理的维护成本会超过省下的钱。
⚠️ 前提:能接受「答案一致性」这道验收,而不是只看账单变小。
自测 · 5 问
我要换载体的那段内容,是「让它懂」还是「让它抄」?
换完之后,我用同一批问题分别跑过文字版与图片版,答案一致吗?
那段内容里有没有必须逐字保真的东西(代码、ID、金额、型号)?有 ⇒ 那一段单独留成文本。
我的输入里,固定不变的部分占多少?只有固定部分值得渲染,每次新输入的不值得。
我算过账吗 —— 省下的 token 费用,够不够抵掉搭代理 / 改流程的时间?
怎么上手 · 验证步骤
第一次别全量切。只挑一段「每次都带、且从不需要被引用」的内容(大多数人的答案是项目背景或工具说明),把它渲染成图,其余照旧。跑一周,每天挑一个问题,同时跑文字版与图片版,只记一件事:两版答案有没有实质差异。一周后如果差异为零,再把第二段挪过去;只要出现过一次「图片版把数字读错」或「引用错条款」,就把那一段退回文本 —— 退回不是失败,是这条判据在起作用。
自检动作:把这次换载体前后的两份账单放在一起,只看输入侧那一栏。如果输入 token 降了但输出 token 涨了(模型开始反复确认、要求重发),说明换错了内容 —— 它在猜图里的字。
[C级]teamchong/pxpipe(GitHub · ⭐7.6K · 本地代理把系统提示、工具文档与对话历史渲染成紧凑 PNG 再送进模型 · 论点是图片的 token 成本取决于像素尺寸而非字数) [C级]github.locker topics/context-window(2026-10-23 榜位:pxpipe ⭐7.6K 与 headroom ⭐77.6K、context-mode ⭐31.9K 同族对照 —— 说明「省上下文」已有三条不同路线:压缩 / 外置 / 换载体) [C级]Anthropic 官方文档 · Vision(图像输入按像素折算 token:尺寸决定成本,与图中文字的多少无关) [C级]runany.dev《Headroom: compress context before it reaches the LLM》(同族对照:压缩路线自报 coding agent 省 20%、JSON 载荷省 60–95%,并提示「文字类载荷压缩收益会缩小」) 同类:工具返回的那一坨,别让它住进上下文 · token预算:上下文有限,怎么在塞满前主动管理
继续往下读
同级:工具返回的那一坨,别让它住进上下文 下一级:上下文爆掉,压缩不是第一步 随机一篇