<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>秋梦无痕</title>
    <link>https://blog.sinzy.net/@ifyr</link>
    <description>一场秋雨无梦痕，春夜清风冻煞人。冬来冷水寒似铁，夏至京北蟑满城。</description>
    <pubDate>Sun, 16 Aug 2026 22:28:27 -0700</pubDate>
    <managingEditor>member@blog.sinzy.net (吴雨)</managingEditor>
    <language>zh-CN</language>
    <generator>n19 Blog Application v4.1</generator>
    <atom:link href="https://blog.sinzy.net/@ifyr/rss" rel="self" type="application/rss+xml" />
        <item>
      <title>opencode升级后总是加载失败</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24030</link>
      <description><![CDATA[<p class="ubb__first">opencode加载superpowers plugin总是失败，然后就在应用里升级了一下。<br />原版本1.14.41，升级到了1.18.18。<br />升级后，总是出现数据加载失败(no such column: &quot;data&quot;)。<br />神奇的是，只要我执行一遍“C:\Users\ifyr\AppData\Local\@opencode-aidesktop-updater\pending\opencode-desktop-win-x64.exe”，就能正确运行。<br />找了好多遍，最后才发现问题所在。</p><p class="ubb__split">我的原版opencode是全局安装的，但是升级程序，是按用户安装的。<br />使用updater执行后，他会自动运行用户环境下的OpenCode，就是正常的。<br />而我的任务栏上Pin的快捷方式，一直是全局安装的路径，所以启动的是旧版，一直出错。</p><p class="ubb__split">卸载全局安装的OpenCode，修改快捷方式到用户环境下。<br />问题解决。<br />感慨一下：用户体验这一块，就是享受开源的代价了吧。</p>]]></description>
      <pubDate>Sun, 16 Aug 2026 22:28:27 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24030</guid>
    </item>
        <item>
      <title>开源了一个 iLinkBridge</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24024</link>
      <description><![CDATA[<p class="ubb__first"><strong>地址</strong><br /><a href="https://github.com/ifyr/ilinkbridge" target="_blank">https://github.com/ifyr/ilinkbridge</a></p><p class="ubb__split"><strong>说明</strong><br />iLinkBridge 是微信 iLink Bot 的独立异步桥接层。它通过 HTTP API 与 <a href="https://github.com/anomalyco/opencode" target="_blank">OpenCode</a> 通信，将微信消息转发给 AI 处理，并将回复按上下文分段发回微信。<br />它与 <a href="https://github.com/Tencent/openclaw-weixin" target="_blank">openclaw-weixin</a> 使用同一套 iLink Bot API、兼容同一个 token 格式，但以独立进程运行。不需要卸载官方插件，只需关掉插件即可。</p><p class="ubb__split"><strong>解决的痛点</strong><br />- 不能切换 session：原生插件所有对话共用一个 session，无法同时进行多话题上下文隔离。<br />- 自动解读图片/视频：收到附件就立即提交解析，无法控制时机和上下文。<br />- 多话题串上下文：所有对话混在一个 session 里，话题切换导致上下文污染。<br />- 没有输入中状态：等待 AI 回复时聊天界面无输入中状态，用户体验差。</p><p class="ubb__split"><strong>功能</strong></p><p class="ubb__split">【动态 session 管理】<br />- `/session`：创建、切换、列出 session，每个 session 独立维护上下文，互不干扰。<br />- `/session &lt;name&gt; [comment] [workspace]`：可给 session 标注用途和指定工作目录。</p><p class="ubb__split">【Plan / Build 模式】<br />通过 OpenCode 内置的 plan / build agent 实现工具级权限隔离：<br />- **plan 模式**：仅允许 read / grep / glob / web_search / 只读 bash，禁用 write / edit / apply_patch / exec<br />- **build 模式**：所有工具全开</p><p class="ubb__split">【附件缓存】<br />- 语音指令当做文字指令处理，直接转发识别结果。<br />- 发送图片/视频/文件时，iLinkBridge 不会自动发给 AI 解读，而是缓存下来回复「已收到，请指示」。<br />- 等你发送文字指令后，附件路径会附在消息中一起转发。</p><p class="ubb__split">【输入提示】<br />- 收到消息后，每 10 秒发送一次「对方正在输入…」提示。<br />- 处理完消息自动关闭。</p><p class="ubb__split">【Token 自动发现】<br />- 留空 `bridge.token` 时，自动从 openclaw-weixin 插件目录获取最新 token，也支持二维码绑定。</p><p class="ubb__split">【二维码登录】<br />- 首次运行未配置 token 时，自动调用 iLink API 获取二维码链接，输出到终端。用户用手机微信访问该链接即可完成 bot 绑定，token 自动保存。</p><p class="ubb__split">【上下文管理】<br />- `/compact`：压缩当前 session 上下文<br />- `/cancel`：取消当前正在进行的请求<br />- `/delete`：删除当前 session（default 清空重置）</p><p class="ubb__split">【长文本分段】<br />- 超过 4000 字按自然断点自动拆分，不加序号，由微信侧逐段展示。</p><p class="ubb__split"><strong>命令</strong><br />- /help：显示帮助 + session 列表<br />- /session：列出所有 session，当前session标注【当前】<br />- /session &lt;name&gt;：切换到已有 session，不存在则自动创建<br />- /session &lt;name&gt; [comment] [workspace]：切换、创建或更新 session<br />- /mode plan：方案模式（只读）<br />- /mode build：执行模式（全开）<br />- /compact：压缩当前 session 上下文<br />- /delete：删除当前 session（default 清空重置）<br />- /cancel：取消当前请求<br />- /exec &lt;cmd&gt;：执行本地 shell 命令<br />- 其他消息：直接发给当前 session 的 OpenCode</p><p class="ubb__split"><strong>开源协议</strong><br />MIT</p>]]></description>
      <pubDate>Sat, 04 Jul 2026 01:16:25 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24024</guid>
    </item>
        <item>
      <title>点绛唇·因为向往</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24023</link>
      <description><![CDATA[<p class="ubb__first">擎斧吴刚，千年斫桂音回响。羿应惆怅，夙夜空遥望。<br />玉兔巡行，鹊桥传图像。嫦娥往，可曾怀想，眼底铺乡壤？<br />2026-06-14</p><p class="ubb__split">题记：此小令缘于2026年高考语文北京卷微写作，请以“因为向往”为题目，写一首小诗或一段抒情文字。<br />有DeepSeek检查平仄韵律，确实能写出来工整的词了。但是想写好，还是太难了。</p>]]></description>
      <pubDate>Sun, 21 Jun 2026 22:28:24 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24023</guid>
    </item>
        <item>
      <title>2026高考作文</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24021</link>
      <description><![CDATA[<p class="ubb__first">【全国一卷】<br /></p><blockquote><p class="ubb__first">阅读下面的材料，根据要求写作。（60分）</p><p class="ubb__split">词语是表达思想情感的载体，也是展现社会生活变化的窗口。当前，世界之变、时代之变、历史之变正以前所未有的方式展开。青年是常为新的，在你的成长过程中，你对哪一个词语的理解发生了变化？这变化有你成长的印记，对你有特殊的意义……</p><p class="ubb__split">以上材料引发了你怎样的联想和思考？请写一篇文章。<br />要求：选准角度，确定立意，明确文体，自拟标题；不要套作，不得抄袭；不得泄露个人信息；不少于800字。</p></blockquote><p class="ubb__workaround"></p><p class="ubb__split">【全国二卷】<br /></p><blockquote><p class="ubb__first">阅读下面的材料，根据要求写作。（60分）</p><p class="ubb__split">“日月不失其体，故蔽而复明；江汉不失其源，故穷而复通。”在个人成长、社会发展乃至文明演进中，总会出现困顿、挫折，甚至会有风高浪急、惊涛骇浪的考验。然而，日月虽有被遮蔽之时，只要本体未失，终能重放光明；江河即使遭遇险阻，只要源头不竭，终能贯通入海。</p><p class="ubb__split">以上材料引发了你怎样的联想和思考？请写一篇文章。<br />要求：选准角度，确定立意，明确文体，自拟标题；不要套作，不得抄袭；不得泄露个人信息；不少于800字。</p></blockquote><p class="ubb__workaround"></p><p class="ubb__split">【北京卷】<br /></p><blockquote><p class="ubb__first">1．微写作（10分）<br />从下面三个题目中任选一题，按要求作答。不超过150字。不透露所在区、学校及个人信息。</p><p class="ubb__split">（1）为增强同学们的劳动意识，班级打算利用半天时间走进社区开展劳动实践活动，现征集同学们的建议。<br />你想设计一项怎样的活动？请说说理由。<br />要求：写出活动的主要内容，理由充分，条理清晰。</p><p class="ubb__split">（2）重阳节到来之际，学校拟组织志愿者到敬老院开展“人工智能（AI）与幸福晚年”主题活动。<br />请你写一段活动的宣传语，吸引老人们积极参加。<br />要求：语言得体，有吸引力。</p><p class="ubb__split">（3）请以“因为向往”为题目，写一首小诗或一段抒情文字。<br />要求：感情真挚，语言生动，有感染力。</p><p class="ubb__split">2. 作文（50分）<br />从下面两个题目中任选一题，按要求作答。不少于700字。将题目写在答题卡上。不透露所在区、学校及个人信息。</p><p class="ubb__split">（1）学海无涯，读书有法。元代学者程端礼编撰的《读书分年日程》，分阶段详细规定了核心经典的阅读顺序与精读方法，陪伴读书人从童蒙成长为青年。无论是个人的阅读与成长，还是国家、社会的发展，都需要做好规划，循序渐进；也需要身体力行，下足功夫。</p><p class="ubb__split">请以“做规划与下功夫”为题目，写一篇议论文。<br />要求：论点明确，论据充实，论证合理；语言流畅，书写清晰。</p><p class="ubb__split">（2）“含英咀华”指含着花朵，细细咀嚼，品味花的芬芳，比喻仔细琢磨、领会诗文中的精华。这种反复品味、用心体悟的过程，在阅读经典、鉴赏艺术、感悟生活等诸多方面都非常重要。含英咀华的过程，往往是一段难忘的经历……</p><p class="ubb__split">请以“含英咀华”为题目，写一篇记叙文。<br />要求：思想健康；内容充实、合理，有细节描写；语言流畅，书写清晰。</p></blockquote><p class="ubb__workaround"></p><p class="ubb__split">【上海卷】<br /></p><blockquote><p class="ubb__first">写作（70分）</p><p class="ubb__split">每个人都有对世界的想象。<br />科技改造世界时，也改造着我们的想象，对此你有怎样的认识和思考？</p><p class="ubb__split">请写一篇文章。<br />要求：（1）自拟题目；（2）不少于800字。</p></blockquote><p class="ubb__workaround"></p><p class="ubb__split">【天津卷】<br /></p><blockquote><p class="ubb__first">阅读下面的材料，根据要求写作。（60分）</p><p class="ubb__split">画家把手中的颜料放入调（tiáo）色盘，精准调（tiáo）整比例，以缤纷的色彩绘就美好画卷；<br />南水北调（diào）工程合理调（diào）动一切可以利用的资源，主动改变水道，使自然更好地造福人类。<br />调，一字双音，既有顺势而为的选择，又有不拘一格的创造。</p><p class="ubb__split">以上材料能引发你怎样的联想与思考？请结合你的体验和感悟，写一篇文章。<br />要求：①自选角度，自拟标题； ②文体不限（诗歌除外），文体特征明显；③不少于800字； ④不得抄袭，不得套作。</p></blockquote><p class="ubb__workaround"></p>]]></description>
      <pubDate>Sun, 07 Jun 2026 21:38:50 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24021</guid>
    </item>
        <item>
      <title>写于女儿一岁半</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24020</link>
      <description><![CDATA[<p class="ubb__first">赤足剜沙上桌，<br />字单指使仿模。<br />结实浑圆嫩滑，<br />推碗整吞撒泼。</p><p class="ubb__split">2026-06-02</p>]]></description>
      <pubDate>Tue, 02 Jun 2026 03:53:50 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24020</guid>
    </item>
        <item>
      <title>AI时代下的学科学习</title>
      <link>https://blog.sinzy.net/@ifyr/entry/24004</link>
      <description><![CDATA[<p class="ubb__first">一个麻省理工的研究生靠 NotebookLM，全程只用了 48 小时，就通过了一门他从来没有正式学过的资格考试。</p><p class="ubb__split">第一步，构建全量知识库。他先上传了跟这个领域相关的 6 本教材、15 篇论文，还有所有能找到的讲座记录。<br />第二步，他问了两个问题。<br />第一个问题：这个领域的顶级专家共同拥有的五个核心认知框架是什么？<br />这个问题的重点在于，他要的不是知识点，而是那些大牛磨了几十年才悟出来的底层逻辑，就是他们这帮人到底是怎么理解这件事的。<br />第二个问题：这个领域内专家们吵得最凶的三个分歧点是什么？双方最硬核的理论依据又是什么？<br />靠这个问题，20 分钟他就能明白，摸清整个学科的版图，哪里是共识，哪里是战场，哪里还有未解之谜，大家都在吵什么？<br />这些事，普通学生花一个学期的时间可能都搞不清楚。<br />第三步，他让 AI 出了 10 道题，要求是能一眼分辨出谁是真懂、谁是死记硬背的那种。<br />接下来六个小时，他对着原始资料死磕这 10 道题，答错一个就立即追问：我哪错了？漏掉了什么？</p><p class="ubb__split">于是 48 小时之后，导师再也问不倒他了。</p>]]></description>
      <pubDate>Thu, 19 Mar 2026 01:11:24 -0700</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/24004</guid>
    </item>
        <item>
      <title>一句话</title>
      <link>https://blog.sinzy.net/@ifyr/entry/23999</link>
      <description><![CDATA[<p class="ubb__first">For every complex problem, there is an answer that is clear, simple, and wrong.<br />-- Henry Louis Mencken(1880-1956)</p><p class="ubb__split">对于任何复杂问题，都有一个简单、清晰，但错误的答案。<br />——亨利·路易斯·门肯(1880-1956)</p>]]></description>
      <pubDate>Mon, 26 Jan 2026 03:50:27 -0800</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/23999</guid>
    </item>
        <item>
      <title>2026计划</title>
      <link>https://blog.sinzy.net/@ifyr/entry/23996</link>
      <description><![CDATA[<p class="ubb__first"><a href="https://blog.sinzy.net/@ifyr/entry/23925" target="_blank">2025计划：</a><br />1、每月看一本书。<strong><span style="color:blue;">完成</span></strong><br />2、坚持锻炼身体。<strong>未完成</strong><br />3、调整作息时间。<strong><span style="color:lightblue;">有调整</span></strong></p><p class="ubb__split">2026计划：<br />1、每月看一本书。<br />2、坚持锻炼身体。<br />3、调整作息时间。</p>]]></description>
      <pubDate>Sun, 04 Jan 2026 03:52:16 -0800</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/23996</guid>
    </item>
        <item>
      <title>2025回顾</title>
      <link>https://blog.sinzy.net/@ifyr/entry/23995</link>
      <description><![CDATA[<p class="ubb__first">留坑待填</p>]]></description>
      <pubDate>Sun, 04 Jan 2026 03:49:36 -0800</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/23995</guid>
    </item>
        <item>
      <title>面向AI代理的上下文工程：构建Manus的经验教训</title>
      <link>https://blog.sinzy.net/@ifyr/entry/23993</link>
      <description><![CDATA[<p class="ubb__first"></p><p>2025 年 7 月 18 日 季逸超</p>
<p>（原文：https://manus.im/blog/Context-Engineering-for-AI-Agents-Lessons-from-Building-Manus 本内容为GPT翻译）</p>
<p>在Manus项目伊始，我和团队面临一个关键抉择：是使用开源基础模型训练一个端到端的代理模型，还是基于前沿模型的上下文学习能力构建代理？</p>
<p>回想我在自然语言处理领域的最初十年，我们没有这样的选择余地。在BERT 的远古时代（是的，已经七年了），模型必须经过微调并评估后才能迁移到新任务。即使当时的模型远小于如今的 LLMs，这一过程每次迭代往往也需数周。对于快速发展的应用，尤其是产品市场匹配前期，这样缓慢的反馈周期是致命的。这是我上一家创业公司的惨痛教训，当时我从零开始训练模型用于开放信息抽取和语义搜索。随后 GPT-3 和 Flan-T5 的出现，让我自研的模型一夜之间变得无关紧要。讽刺的是，正是这些模型开启了上下文学习的新纪元——也为我们开辟了一条全新的前进道路。</p>
<p>这个来之不易的教训让选择变得清晰：Manus 将押注于上下文工程。这使我们能够在数小时内发布改进，而不是数周，同时保持我们的产品与底层模型正交：如果模型进步是涨潮，我们希望 Manus 是船，而不是固定在海床上的柱子。</p>
<p>然而，上下文工程远非简单。这是一门实验科学——我们已经重建了四次代理框架，每次都是在发现了更好的上下文塑造方法之后。我们亲切地称这种手动的架构搜索、提示调整和经验猜测过程为“随机梯度下降”。它不优雅，但有效。</p>
<p>这篇文章分享了我们通过自己的“SGD”达到的局部最优解。如果你正在构建自己的 AI 代理，希望这些原则能帮助你更快收敛。</p>
<h3>围绕KV缓存设计</h3>
<p>如果只能选择一个指标，我认为KV 缓存命中率是生产阶段 AI 代理最重要的指标。它直接影响延迟和成本。要理解原因，我们先看看典型代理的工作方式：</p>
<p>在接收到用户输入后，代理通过一系列工具调用来完成任务。在每次迭代中，模型根据当前上下文从预定义的动作空间中选择一个动作。然后在环境中执行该动作（例如Manus 的虚拟机沙箱），以产生观察结果。动作和观察结果被追加到上下文中，形成下一次迭代的输入。这个循环持续进行，直到任务完成。</p>
<p>正如你所想象的，上下文随着每一步增长，而输出——通常是结构化的函数调用——则相对较短。这使得预填充与解码之间的比例在代理中远远偏高，区别于聊天机器人。例如，在 Manus 中，平均输入与输出的Token比约为100:1。</p>
<p>幸运的是，具有相同前缀的上下文可以利用KV 缓存，这大大减少了首次生成标记时间（TTFT）和推理成本——无论你是使用自托管模型还是调用推理 API。这里的节省可不是小数目：以 Claude Sonnet 为例，缓存的输入标记费用为 0.30 美元/千标记，而未缓存的则为 3 美元/千标记——相差 10 倍。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/d733-070dd3f5ebb17934345bc8b4cfb78f47.png/w700d1q75cms.jpg" /></figure>
<p>从上下文工程的角度来看，提高KV 缓存命中率涉及几个关键做法：</p>
<ul>
<li>保持提示前缀稳定。由于LLMs 的自回归特性，即使是单个标记的差异也会使该标记及其之后的缓存失效。一个常见错误是在系统提示开头包含时间戳——尤其是精确到秒的时间戳。虽然这样可以让模型告诉你当前时间，但也会大幅降低缓存命中率。</li>
<li>使你的上下文仅追加。避免修改之前的操作或观察。确保你的序列化是确定性的。许多编程语言和库在序列化JSON 对象时不保证键的顺序稳定，这可能会悄无声息地破坏缓存。</li>
<li>在需要时明确标记缓存断点。一些模型提供商或推理框架不支持自动增量前缀缓存，而是需要在上下文中手动插入缓存断点。设置这些断点时，应考虑缓存可能过期的情况，至少确保断点包含系统提示的结尾部分。</li>
</ul>
<p>此外，如果你使用像vLLM 这样的框架自托管模型，确保启用了前缀/提示缓存，并且使用会话 ID 等技术在分布式工作节点间一致地路由请求。</p>
<h3>遮蔽，而非移除</h3>
<p>随着你的智能体功能不断增强，其动作空间自然变得更加复杂——简单来说，就是工具数量激增。最近 MCP 的流行更是火上浇油。如果允许用户自定义工具，相信我：总会有人将数百个神秘工具接入你精心策划的动作空间。结果，模型更可能选择错误的动作或走低效路径。简而言之，你的重装智能体反而变得更笨。</p>
<p>一种自然的反应是设计动态动作空间——或许使用类似 RAG 的方式按需加载工具。我们在 Manus 中也尝试过。但实验表明一个明确的规则：除非绝对必要，避免在迭代过程中动态添加或移除工具。主要有两个原因：</p>
<p>1. 在大多数LLMs 中，工具定义在序列化后通常位于上下文的前部，通常在系统提示之前或之后。因此，任何更改都会使所有后续操作和观察的 KV 缓存失效。</p>
<p>2. 当之前的操作和观察仍然引用当前上下文中不再定义的工具时，模型会感到困惑。如果没有受限解码，这通常会导致模式违规或幻觉操作。</p>
<p>为了解决这一问题，同时提升动作选择的效果，Manus 使用了一个上下文感知的状态机来管理工具的可用性。它不是移除工具，而是在解码过程中屏蔽Token的对数概率，以根据当前上下文防止（或强制）选择某些动作。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/bd8f-6e91ac79849f2e869147b8a76b7b88d6.png/w700d1q75cms.jpg" /></figure>
<p>在实际操作中，大多数模型提供商和推理框架都支持某种形式的响应预填充，这使你可以在不修改工具定义的情况下限制动作空间。函数调用通常有三种模式（我们以NousResearch 的 Hermes 格式为例）：</p>
<ul>
<li><p>自动——模型可以选择是否调用函数。通过仅预填回复前缀实现：&lt;|im_start|&gt;assistant</li>
<li><p>必需——模型必须调用一个函数，但选择不受限制。通过预填充到工具调用标记实现：&lt;|im_start|&gt;assistant&lt;tool_call&gt;&lt;/tool_call&gt;</li>
<li><p>指定——模型必须从特定子集中调用函数。通过预填充到函数名开头实现：&lt;|im_start|&gt;assistant&lt;tool_call&gt;{"name": “browser_&lt;/tool_call&gt;</li>
</ul>
<p>利用此方法，我们通过直接屏蔽标记的对数概率来限制动作选择。例如，当用户提供新输入时，Manus 必须立即回复，而不是执行动作。我们还特意设计了具有一致前缀的动作名称——例如，所有与浏览器相关的工具都以 browser_开头，命令行工具以 shell_开头。这使我们能够轻松确保代理在特定状态下仅从某一组工具中选择，而无需使用有状态的对数概率处理器。</p>
<p>这些设计有助于确保Manus 代理循环保持稳定——即使在模型驱动架构下也是如此。</p>
<h3>将文件系统用作上下文</h3>
<p>现代前沿的LLMs 现在提供 128K Token或更多的上下文窗口。但在现实世界的智能代理场景中，这通常不够，有时甚至成为负担。有三个常见的痛点：</p>
<p>1. 观察内容可能非常庞大，尤其是当代理与网页或PDF 等非结构化数据交互时。很容易超出上下文限制。</p>
<p>2. 即使窗口技术上支持，模型性能在超过某个上下文长度后往往会下降。</p>
<p>3. 长输入代价高昂，即使使用前缀缓存也是如此。你仍然需要为传输和预填充每个标记付费。</p>
<p>为了解决这个问题，许多智能体系统实施了上下文截断或压缩策略。但过度压缩不可避免地导致信息丢失。问题是根本性的：智能体本质上必须基于所有先前状态来预测下一步动作——而你无法可靠地预测哪条观察在十步之后可能变得关键。从逻辑角度看，任何不可逆的压缩都存在风险。</p>
<p>这就是为什么我们将文件系统视为Manus 中的终极上下文：大小无限，天生持久，并且可以由智能体自身直接操作。模型学会按需写入和读取文件——不仅将文件系统用作存储，更作为结构化的外部记忆。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/00c0-00cb0793cc1d49d0ffc48cd667d70e9e.png/w700d1q75cms.jpg" /></figure>
<p>我们的压缩策略始终设计为可恢复的。例如，只要保留网址，网页内容就可以从上下文中删除；只要沙盒中仍有文档路径，文档内容也可以省略。这使得Manus 能够缩短上下文长度而不永久丢失信息。</p>
<p>在开发此功能时，我不禁想象，状态空间模型（SSM）要在具代理性的环境中有效工作需要什么条件。与 Transformer 不同，SSM 缺乏完全的注意力机制，难以处理长距离的向后依赖。但如果它们能掌握基于文件的记忆——将长期状态外部化而非保存在上下文中——那么它们的速度和效率可能会开启新一代代理。具代理性的 SSM 或许才是神经图灵机的真正继任者。</p>
<h3>通过背诵操控注意力</h3>
<p>如果你使用过Manus，可能会注意到一个有趣的现象：在处理复杂任务时，它倾向于创建一个 todo.md 文件，并随着任务的推进逐步更新，勾选已完成的事项。</p>
<p>这不仅仅是可爱的行为——这是一种有意操控注意力的机制。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/3595-069019a566c36e2e98d522cfe26765b1.png/w700d1q75cms.jpg" /></figure>
<p>Manus 中的一个典型任务平均需要大约 50 次工具调用。这是一个较长的循环——由于 Manus 依赖 LLMs 进行决策，因此在长上下文或复杂任务中，容易偏离主题或忘记之前的目标。</p>
<p>通过不断重写待办事项清单，Manus 将其目标反复写入上下文末尾。这将全局计划推入模型的近期注意力范围，避免了“中途丢失”问题，减少了目标不一致的情况。实际上，它利用自然语言来引导自身关注任务目标——无需特殊的架构改动。</p>
<h3>保留错误信息</h3>
<p>智能体会犯错。这不是漏洞——这是现实。语言模型会产生幻觉，环境会返回错误，外部工具会出现异常，意外的边缘情况时常发生。在多步骤任务中，失败不是例外；它是循环的一部分。</p>
<p>然而，一个常见的冲动是隐藏这些错误：清理痕迹，重试操作，或重置模型状态，寄希望于神奇的“温度”参数。这看起来更安全、更可控。但这付出了代价：抹去失败就抹去了证据。没有证据，模型就无法适应。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/c8c4-f971fb1807aed74c6fd0754b4cd5c088.png/w700d1q75cms.jpg" /></figure>
<p>根据我们的经验，改善智能体行为的最有效方法之一看似简单：在上下文中保留错误的路径。当模型看到失败的操作及其产生的观察结果或堆栈跟踪时，它会隐式地更新内部信念。这会使其先验偏离类似的操作，从而减少重复同样错误的可能性。</p>
<p>事实上，我们认为错误恢复是衡量真正智能体行为的最明确指标之一。然而，在大多数学术研究和公开基准测试中，这一指标仍然被忽视，这些研究和测试通常侧重于理想条件下的任务成功率。</p>
<h3>避免被少量示例限制</h3>
<p>少量示例提示是提升LLM 输出的常用技巧。但在智能体系统中，它可能以微妙的方式适得其反。</p>
<p>语言模型擅长模仿；它们会复制上下文中的行为模式。如果你的上下文充满了类似的过去动作-观察对，模型往往会遵循这种模式，即使这已不再是最优选择。</p>
<p>在涉及重复决策或操作的任务中，这可能会带来危险。例如，在使用Manus 帮助审查一批 20 份简历时，代理经常陷入一种节奏——仅仅因为上下文中出现了类似内容，就重复执行相似的操作。这会导致偏离、过度泛化，甚至有时产生幻觉。</p>
<figure><img src="https://k.sinaimg.cn/n/spider20250719/498/w830h468/20250719/96f0-bd0ffe864d054cd1c9dc26fa8f05df27.png/w700d1q75cms.jpg" /></figure>
<p>解决方法是增加多样性。Manus 在动作和观察中引入少量结构化的变化——不同的序列化模板、替代表达、顺序或格式上的细微噪声。这种受控的随机性有助于打破模式，调整模型的注意力。</p>
<p>换句话说，不要让少量示例把自己限制在固定模式中。上下文越统一，代理就越脆弱。</p>
<h3>结论</h3>
<p>上下文工程仍是一门新兴科学——但对于代理系统来说，它已经至关重要。模型可能变得更强大、更快速、更廉价，但再强的原始能力也无法替代记忆、环境和反馈的需求。你如何塑造上下文，最终决定了代理的行为：运行速度、恢复能力以及扩展范围。</p>
<p>在Manus，我们通过反复重写、走过死胡同以及在数百万用户中的实际测试，学到了这些经验。我们在这里分享的内容并非普遍真理，但这些是对我们有效的模式。如果它们能帮助你避免哪怕一次痛苦的迭代，那么这篇文章就达到了它的目的。</p>
<p>智能代理的未来将由一个个情境逐步构建。精心设计每一个情境。</p><p class="ubb__workaround"></p>]]></description>
      <pubDate>Mon, 29 Dec 2025 23:45:08 -0800</pubDate>
      <guid>https://blog.sinzy.net/@ifyr/entry/23993</guid>
    </item>
      </channel>
</rss>
