ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

深入Caveman HTML压缩器:标题、开头/结尾上下文与重要章节的保留逻辑

深入Caveman HTML压缩器:标题、开头/结尾上下文与重要章节的保留逻辑 深入Caveman HTML压缩器标题、开头/结尾上下文与重要章节的保留逻辑【免费下载链接】caveman why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman项目地址: https://gitcode.com/GitHub_Trending/caveman1/cavemanCaveman 是一个为 Claude Code 设计的 Token 压缩技能它让 AI 代理说原始人话来削减多达 65% 的 Token 消耗。其中HTML 压缩器是它处理网页内容的核心模块通过识别正文、保留标题、开头/结尾上下文与重要章节同时丢掉导航、脚注、脚本等噪音在压缩率与内容完整性之间取得了罕见的平衡。一、Caveman 是如何认出这是一段 HTML的在压缩之前引擎必须先判断输入的内容类型。Caveman 的自动检测逻辑位于 engine/detect.go它对 HTML 的判定规则非常干脆判定信号说明!doctype html或html开头一锤定音源代码不会这样开头含body、article、main、div等容器结构性信号标签密度出现 ≥6 次防止把零散标签误判为网页若含、className、import等代码结构判为JSX/TSX 源码转给代码压缩器这条代码结构一票否决的设计很关键JSX 组件和嵌入 HTML 字符串的源文件会被路由到更懂它们的代码压缩器避免被文本抽取成乱码。二、专用 HTML 抽取器只留正文其余全丢当内容被识别为 HTML 后engine/compressors/html.go 中的专用压缩器会接手。它实现了一套确定性的可读性启发式算法readability 风格核心思路分四步1️⃣ 先剥噪音脚本、样式、表单、按钮、SVG、iframe 等永远不承载正文的元素直接整棵子树移除——测试数据里那句tracking pixel and analytics noise就是为此而设。2️⃣ 给每个块级元素打分段落p、表格单元格、引用、以及 H1–H6 标题都参与计分。文本越长、逗号越多基础分越高同时class/id里出现article、content、post等词加 25 分出现comment、sidebar、footer、nav、ad-等词减 25 分。3️⃣ 分数向上传播正文里的每个段落会给它所有的容器祖先计分而非只给最近的一层。这正是 html_test.go 中TestHTMLKeepsAllSections要验证的行为——多章节文章不会只保留分数最高的那一段开头、中间、结尾章节全部存活。4️⃣ 链接密度折扣最终得分要按非锚点文本占比打折。一个几乎全是链接的目录/导航块会因此大幅失分若胜出块一半以上文本都是链接则直接放弃压缩。最后还有一道保险抽取结果若不足 200 字节或不比原文更小一律放弃。输出时块级标签产生换行、行内标签产生空格边界保证bfifty/bidollars/i变成 fifty dollars 而非 fiftydollarspre代码块则原样保留缩进。三、按章节压缩keepHead / keepTail 与重要关键词并非所有长文本都走专用 HTML 抽取器。作为通用兜底engine/compressors/text.go 的文本压缩器按章节处理长文档对 HTML 输入会先清除 script/style/svg/注释噪音。它的保留规则正是标题所讲的三重逻辑开头/结尾上下文默认keepHead: 2, keepTail: 2——无论中间删掉多少前 2 章与后 2 章永远保留确保读者和 AI能看到文章的起承转合标题保留以#开头的 Markdown 标题或短小、无句末标点、不超过 8 个单词的行都会被识别为标题而保留⚠️重要章节保留包含ERROR、WARNING、IMPORTANT、NOTE、SECURITY、SUMMARY、CONCLUSION、DECISION、RECOMMENDATION等关键词的段落强制保留——这些往往正是整篇文档最有价值的部分。被删掉的章节不会消失得悄无声息压缩器会插入一条… N sections elided (caveman) …标记明确告知此处省略了 N 节。四、拿不准就不压失败安全设计值得新手特别留意的是Caveman 的 HTML 压缩器被标记为S4有损安全级别原文可通过 CCR 恢复存储找回。但正因有损它采取怀疑即放弃策略——解析失败、找不到body、无法定位主容器、胜出块链接过密、抽取结果过小任何一种情况都会原样返回输入绝不在没有把握时声称我压缩了。整个流程完全确定性同样的输入永远得到同样的输出。五、延伸阅读压缩引擎总览docs/technical/engine.mdHTML 专用压缩器源码engine/compressors/html.go章节保留逻辑keepHead/keepTail/重要关键词engine/compressors/text.go行为验证测试engine/compressors/html_test.go、engine/compressors/text.go内容类型路由engine/detect.go理解这套标题 首尾 重要章节的保留逻辑你就能明白 Caveman 为什么敢在压缩 65% Token 的同时依然让 AI 代理对上下文几乎毫无感知——被删掉的永远是噪音被留下的永远是骨架。【免费下载链接】caveman why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman项目地址: https://gitcode.com/GitHub_Trending/caveman1/caveman创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表