W
AI-Wiki
CONCEPT

注意力操控式任务复述

定义

注意力操控式任务复述,是指让 Agent 在执行长任务时,反复以自然语言重写当前任务清单、全局目标、阶段计划或待办事项,并把这些复述内容持续写入上下文后部,从而把关键目标重新推回模型的近期注意力区域。

它最常见的形式,是 Agent 创建并不断更新一个 todo 清单:把已完成事项勾选,把未完成事项重新排列,把下一步行动明确写出。这样做的目的不是展示“工作痕迹”或提升可读性,而是主动干预模型在长上下文中的注意力分配,减少遗忘、偏航和目标错位。

在本文语境中的含义

ManusPeak 讨论的上下文工程实践里,这不是装饰性设计,而是针对长链路 Agent 的现实问题提出的工程解法。

文中给出的典型背景是:一个任务平均需要约 50 次工具调用。对这种多轮循环型 Agent 来说,模型每一步都要基于不断增长的上下文做决策。随着动作、观察结果、错误信息和中间产物不断累积,最初的用户目标很容易被埋在上下文前部,进而出现以下问题:

  • 忘记原始任务约束
  • 在复杂任务中逐渐偏离主题
  • 被局部子问题吸走注意力
  • 出现“中间丢失”,即早先重要信息既不在最前也不在最近位置,导致调用时权重下降

因此,注意力操控式任务复述 的核心价值,不是“更好地记录进度”,而是让全局计划反复出现在上下文尾部,持续提醒模型:现在到底在做什么、已经做到了哪里、接下来应该做什么。

关键机制

1. 用 todo 清单持续复述目标

文中明确提到,Manus 在处理复杂任务时,往往会创建一个 todo 文件,并在任务推进过程中逐步更新,把已完成项目逐一勾选。这种持续更新本身,就是复述机制。

它通常至少包含三类信息:

  • 全局任务目标:最终要交付什么
  • 当前阶段拆解:有哪些关键子任务
  • 执行进度状态:哪些已完成、哪些待做、下一步是什么

与一次性写死的初始计划不同,这里的关键是“持续重写”。因为只在任务开头写一次计划,并不能保证它在经过数十轮工具调用后仍处在高注意力位置;而每轮或每阶段重写一次,等于把目标重新送回模型最近可见的位置。

2. 把全局计划推到上下文末尾

这项做法的重点,不只是“有计划”,而是“计划出现在上下文末尾”。

在长上下文里,模型通常更容易直接利用最近出现的内容。文中将这种策略描述为把目标“背诵”到上下文的末尾,让全局计划进入近期注意力范围。换句话说,Agent 不是被动等待模型自己记住早期目标,而是主动把目标重新复制到最容易被当前决策使用的位置。

这也是它被称为“注意力操控”的原因:

  • 不改变模型参数
  • 不改变底层架构
  • 只通过重写自然语言上下文,改变模型当前更容易关注什么

3. 缓解长任务中的目标漂移

长任务里最常见的问题之一,就是目标漂移。Agent 起初理解的是 A 目标,但在执行过程中不断响应局部反馈,最终开始围绕 B、C、D 这些中间目标打转,忘了真正的完成标准。

注意力操控式任务复述 正是用来缓解这种漂移的。它通过反复明确:

  • 原始目标是什么
  • 当前工作为什么存在
  • 还有哪些未完成约束
  • 下一步与总目标的关系是什么

这样可以降低“越做越忙、越忙越偏”的情况,尤其是在任务链条长、工具多、观察噪声大的场景中更明显。

4. 无需改模型架构

文中特别强调,这种方法“无需任何特殊架构改动”。这是一条很重要的边界。

它不是:

  • 新的训练方法
  • 新的注意力层设计
  • 新的记忆网络
  • 新的推理器架构

它只是上下文工程层面的技巧:通过文本重写来影响当前注意力分布。因此它的落地门槛很低,只要 Agent 能在流程中写出、读取、更新任务清单或摘要,就可以使用。

这也使它特别适合快速迭代的产品环境:不需要重新训练模型,不依赖特定模型提供商,也不要求底层推理系统提供特殊接口。

5. 适合多步工具调用流程

这种方法尤其适合多步工具调用型 Agent。因为在这类系统里,真正造成遗忘和偏航的,不是单轮问答,而是“动作—观察—再动作”的长循环。

文中的 Manus 就属于这类形态:模型反复调用工具,读取环境反馈,再决定下一步。在平均约 50 次工具调用的任务里,如果没有周期性复述,最初目标很容易被后续的大量观察结果淹没。

因此,注意力操控式任务复述 往往适用于以下流程:

  • 浏览、检索、整理、写作串联的复杂任务
  • 多工具协作的自动化工作流
  • 长时间运行的研究、分析、审阅任务
  • 会产生大量中间结果、日志或页面内容的 Agent 回路

具体实现方式

虽然原文以 todo 文件为例,但这一概念并不局限于某一种载体。常见实现方式包括:

  • 持续更新待办清单:每完成一步就重写未完成项和下一步
  • 阶段性目标摘要:每个阶段结束后重新总结“总目标—当前状态—下一步”
  • 执行前自我提醒:在下一次工具调用前先输出当前任务复述
  • 外部化计划文件:把计划写入文件,再在关键节点重新读取并刷新到上下文

其中,持续更新的 todo 清单之所以常见,是因为它天然同时承担了三种功能:记录状态、组织步骤、复述目标。

一个有效的复述通常不是简单重复原话,而是带着执行状态重写,例如:

  • 已完成哪些关键步骤
  • 还剩哪些硬约束未满足
  • 当前分支是否仍服务于主目标
  • 现在最该做的下一步是什么

细节与边界

复述不是越频繁越好

虽然这种方法依赖反复重写,但并不意味着每一步都要冗长重复。如果复述过长、过机械,可能带来新的问题:

  • 占用过多上下文空间
  • 让模型沉迷于重复表述而非推进执行
  • 增强模板化惯性,反而形成新的模式锁定

因此,合适的做法通常是保留高价值信息:目标、进度、未完成约束、下一步,而不是每次复制整段大计划。

复述缓解遗忘,但不等于完整记忆系统

注意力操控式任务复述 能把关键目标推回近期注意力区域,但它并不能替代真正的外部记忆、文件存储或可恢复状态。

如果任务涉及大量文档、网页、代码、表格、日志或长观察结果,仅靠反复复述目标并不足以保存全部事实。它更像“注意力校准器”,而不是“无限记忆仓库”。

因此,它通常要与 文件系统外化记忆 等机制结合:

  • 用文件保存大体量事实和中间产物
  • 用复述把当前最重要的目标与指针重新放到上下文尾部