<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Context Pruning on JJ&#39;s Blog</title>
    <link>https://jjl357.github.io/blog/tags/context-pruning/</link>
    <description>Recent content in Context Pruning on JJ&#39;s Blog</description>
    <generator>Hugo -- 0.152.2</generator>
    <language>zh-cn</language>
    <lastBuildDate>Thu, 06 Aug 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://jjl357.github.io/blog/tags/context-pruning/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>📝 SWE-Pruner Pro: The Coder LLM Already Knows What to Prune</title>
      <link>https://jjl357.github.io/blog/posts/swe-pruner-pro---the-coder-llm-already-knows-what-to-prune/</link>
      <pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate>
      <guid>https://jjl357.github.io/blog/posts/swe-pruner-pro---the-coder-llm-already-knows-what-to-prune/</guid>
      <description>&lt;h1 id=&#34;swe-pruner-pro-the-coder-llm-already-knows-what-to-prune&#34;&gt;SWE-Pruner Pro: The Coder LLM Already Knows What to Prune&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; &lt;strong&gt;arXiv v1, 2026-07-20&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Paper:&lt;/strong&gt; &lt;a href=&#34;https://arxiv.org/abs/2607.18213&#34;&gt;https://arxiv.org/abs/2607.18213&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Github:&lt;/strong&gt; &lt;a href=&#34;https://github.com/Ayanami1314/swe-pruner-pro&#34;&gt;https://github.com/Ayanami1314/swe-pruner-pro&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Authors:&lt;/strong&gt; Yuhang Wang, Yuling Shi, Shaoqiu Zhang, Jialiang Liang, Shilin He, Siyu Ye, Yuting Chen, Kai Cai, Xiaodong Gu&lt;/p&gt;
&lt;h2 id=&#34;abstract&#34;&gt;Abstract&lt;/h2&gt;
&lt;p&gt;Coding Agent 在真实仓库中解决问题时，会不断调用 &lt;code&gt;cat&lt;/code&gt;、&lt;code&gt;grep&lt;/code&gt;、&lt;code&gt;ls&lt;/code&gt;、&lt;code&gt;python&lt;/code&gt; 等工具。工具输出不仅可能一次包含数百行内容，还会作为历史消息在后续轮次中被重复送入模型。真正决定修复方案的通常只是其中一小部分代码、错误信息或文件路径，其余内容却持续占用输入 token、显存和推理时间。&lt;/p&gt;
&lt;p&gt;以往的上下文剪枝大致有两条路线：通用压缩方法根据困惑度、语法结构或检索相似度选择内容；SWE-Pruner 一类任务感知方法则额外部署一个评分模型，并要求 Agent 每轮写出描述当前信息需求的 &lt;strong&gt;Goal Hint&lt;/strong&gt;。它们有一个共同点：都在 Agent 外部重新构造“哪些内容重要”这一信号。&lt;/p&gt;
&lt;p&gt;SWE-Pruner Pro 的核心观察是：&lt;strong&gt;Agent 在阅读工具输出并准备下一步行动时，其最后一层隐藏状态已经编码了每行内容与当前任务的相关性。&lt;/strong&gt; 因此，系统无需再调用独立模型，只需在冻结的 Agent backbone 上挂接一个小型分类头，将已有隐藏状态转换为逐 token 的保留概率，再通过行内多数投票得到 keep/prune 决策。一个由工具输出行数索引的长度感知嵌入，使短输出更保守、长输出更积极地压缩。&lt;/p&gt;
&lt;p&gt;论文在 Qwen3-Coder-Next 与 MiMo-V2-Flash 两个开放权重 backbone、四个多轮 benchmark 上进行评测。SWE-Pruner Pro 在所有六个只读任务设置中都降低了总 token，最高节省 &lt;strong&gt;39.4%&lt;/strong&gt;；在 MiMo-V2-Flash 的 SWE-Bench Verified 上，Resolve Rate 提高 &lt;strong&gt;3.8 个百分点&lt;/strong&gt;。部署方面，把约 18M 参数的 head 放入 SGLang 推理引擎后，16 条轨迹回放中的聚合剪枝开销约为生成时间的 &lt;strong&gt;15.0%&lt;/strong&gt;。&lt;/p&gt;</description>
    </item>
    <item>
      <title>📝 SWE-Pruner: Self-Adaptive Context Pruning for Coding Agents</title>
      <link>https://jjl357.github.io/blog/posts/swe-pruner---self-adaptive-context-pruning-for-coding-agents/</link>
      <pubDate>Mon, 20 Jul 2026 00:00:00 +0000</pubDate>
      <guid>https://jjl357.github.io/blog/posts/swe-pruner---self-adaptive-context-pruning-for-coding-agents/</guid>
      <description>&lt;h1 id=&#34;swe-pruner-self-adaptive-context-pruning-for-coding-agents&#34;&gt;SWE-Pruner: Self-Adaptive Context Pruning for Coding Agents&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Status:&lt;/strong&gt; &lt;strong&gt;arXiv v4, 2026-05-07&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Paper:&lt;/strong&gt; &lt;a href=&#34;https://arxiv.org/abs/2601.16746&#34;&gt;https://arxiv.org/abs/2601.16746&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Github:&lt;/strong&gt; &lt;a href=&#34;https://github.com/Ayanami1314/swe-pruner&#34;&gt;https://github.com/Ayanami1314/swe-pruner&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;abstract&#34;&gt;Abstract&lt;/h2&gt;
&lt;p&gt;Coding Agent 在解决真实软件工程任务时，需要反复读取仓库中的文件、搜索符号、运行测试并修改代码。随着交互轮数增加，大量文件内容会进入并持续保留在上下文中，其中只有少部分代码与 Agent 当前的推理目标直接相关。这种由冗余观察引起的上下文瓶颈被论文称为 &lt;strong&gt;Context Wall&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;SWE-Pruner 是一个部署在 Coding Agent 与环境之间的轻量级上下文剪枝框架。Agent 在调用 &lt;code&gt;grep&lt;/code&gt;、&lt;code&gt;cat&lt;/code&gt; 等文件读取工具时，可以额外提供一个描述当前信息需求的 &lt;strong&gt;Goal Hint&lt;/strong&gt;。SWE-Pruner 使用一个基于 Qwen3-Reranker-0.6B 的 neural skimmer，根据 Goal Hint 对原始代码进行相关性打分，并以代码行为单位保留与当前任务相关的内容。&lt;/p&gt;
&lt;p&gt;与 token-level prompt compression 不同，SWE-Pruner 不会删除任意 subword token，而是执行 &lt;strong&gt;task-aware line-level pruning&lt;/strong&gt;。同时，模型使用 CRF 对相邻保留决策进行结构化建模，以减少碎片化剪枝对代码语法和局部逻辑的破坏。&lt;/p&gt;
&lt;p&gt;实验结果表明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;在 SWE-Bench Verified 上，SWE-Pruner 将 token 消耗降低 &lt;strong&gt;23.1%–38.3%&lt;/strong&gt;，同时将成功率提升 &lt;strong&gt;1.2–1.4 个百分点&lt;/strong&gt;；&lt;/li&gt;
&lt;li&gt;在 SWE-QA 上，不同仓库和 backbone 下获得 &lt;strong&gt;8.9%–54.4%&lt;/strong&gt; 的 token 降低；&lt;/li&gt;
&lt;li&gt;在 Long Code QA 上，最高达到 &lt;strong&gt;14.84×&lt;/strong&gt; 有效压缩率；&lt;/li&gt;
&lt;li&gt;0.6B skimmer 在 8K 输入下的首 token 延迟约为 &lt;strong&gt;102 ms&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;1-introduction&#34;&gt;1. Introduction&lt;/h2&gt;
&lt;p&gt;现代 Coding Agent 通常遵循以下交互流程：&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
