职贝云数AI新零售门户

标题: 跟Manus学怎样做Context Engineering [打印本页]

作者: NWI    时间: 昨天 21:46
标题: 跟Manus学怎样做Context Engineering
本文次要想简要总结一些从Manus本周发布Tech Blog中的Takeaway。原文链接:https://manus.im/blog/Context-Engineering-for-AI-Agents-Lessons-from-Building-Manus

看完Manus发布的技术blog,总是忍不住想先感慨一下这家公司往年的阅历。

工夫回到往年3月初。

彼时,国内外的模型、运用团队依然沉浸在年终DeepSeek发布R1时的震撼中。大家纷纷讨论着RL、Test-Time Scaling以及Post-Training,仿佛AGI的现象曾经向我们展露了一角。

一个普通的夜晚,Manus悄然登上了AI的历史舞台。全平台爆量宣发 + 通用Agent的标题 + 令人眼前一亮的精巧demo使得大家不由产生错觉。
AGI曾经来了吗?

流量是一把双刃剑,当预期落空、同行鞭挞,言论末尾发生转变,做技术的不满manus的作风过于高调、不懂行的由于无法体验manus而被言论裹挟,互联网上出现了大量的manus“黑粉”,不遗余力地鼓吹着其德不配位。

可是,离开明天,2025年7月中。OpenAI刚刚发布了Agent Mode,末尾逐渐印证了manus选择道路的正确。

实践上,在manus爆火之后,数不胜数的团队、资金涌入这个赛道,竞品层出不穷,genspark、lovart、coze、sky work。可是只要体验过,或是亲手参与过构建相似agent系统的人,才能发觉manus的抢先与弱小。

图1 Blog封面图
回到技术博客本身,之前也有很多相关的blog,如OpenAI、Anthropic等巨头也发不过不少how to build agent相关的文章,但总感觉manus写的更适用、更诚恳也更符合实践开发中遇到的难题,或许由于后者的地位与普通开发者更接近吧。

blog中分享了他们在构建agent过程中学习到的,六个最关键的lessons
围绕kv-cache设计Agent

(, 下载次数: 0)
图2 KV-cache能否命中的两种设计
无论是调API还是本人部署模型,维持固定的context都能让agent的成本和速度都优化一个数量级。也能让模型的行为更波动、连接。

要精准的命中缓存,必须保持整个前缀固定,运用仅添加的方式构造上下文,或者是在本人部署的推理服务中运用维护会话id的方式,保持多节点间上下文分歧。

在后文中, 围绕kv-cach设计的准绳被多次提到。
mask,而不是移除

(, 下载次数: 0)
图3 运用mask而不是移除的方法来调整context
在agent实践工作中,我们依然需求加以控制。

blog中给出的一个例子是,在agent完成agent loop后,用户新一轮的input输入时,模型的其他工具应该被禁用,转而运用自然言语优先给到用户反馈,随后再末尾完成义务,这就需求对当前可用工具集进举动态的调整/控制。

可是假如在上下文中用add/remove等方式调整工具,不但会毁坏缓存,而且会让模型因工具冲突感到疑惑。

manus团队指出,可以经过在decode的时分,动态调整某些token的logit来完成对某些工具的mask。(例如给某个工具logit+10000来强迫调用,给某些工具的logit-10000来完成禁用)

这种做法可以完成对可用工具集的动态控制,同时不会对context形成任何的影响。
将文件系统作为上下文

在Anthropic的multi-agent的blog中也提到了,他们经过让子agent写入file system再让lead agent读取的方式,节省了context的开支。

显然在这一策略上,manus是先行者。

(, 下载次数: 0)
图4 运用读写文件系统的方式作为agent的上下文
在3月初运用manus的时分,就能分明观察到manus会经过与文件系统交互的方式完成义务(在Claude Research中完全观测不到)。Manus这篇blog中指出,运用file system作为模型的上下文,是最理想的外部记忆存储方式。可存储大小几乎“有限”,持久化,而且随时可恢复。

在实践构建Agent的时分,上下文的长度限制是让人极其头疼的,十几个网页的token量就能打爆模型的128k上下文。而经过读写文件系统,一个数十k甚至数百k token的网页就被紧缩成了上下文中的一个文件途径。需求时,模型可以选择读取、编辑其中的某些部分,完成了上下文高效扩展。
经过复读操纵留意力。

(, 下载次数: 0)
图5 经过复读机制来操纵Agent的Attention
都说人的本质是复读机,大模型显然也是。manus经过要求模型在完成每个step后复读todo.md内容,以最小代价操纵模型的留意力focus在当前轨迹上,试图缓解模型在长上下文中迷失的成绩。
保留错误内容

(, 下载次数: 0)
图6 把模型错误输入保留的在context中可以提升模型的恢复效率
不同于其他agent设计中,当模型输入异常(例如error when parsing tools)时直接终止模型轨迹,或者删除错误step然后retry。manus将错误的step保留在context中再次输入模型,blog中指出保留错误的evidence是让模型最高效adapt的方式

manus团队以为,错误恢复才能是衡量real agent的真正目的之一,叹惋学术界、工业界都没有针对此更深化的研讨和benchmark。
别让同质化的context困住了你的模型

图7 Few-shot圈套
模型会被相似的动作-观察影响,假如模型的context中有方式很接近的动作-轨迹对,模型会趋向于生成一样的动作。Blog中指出,引入一定的随机化噪音可以有效缓解这种成绩。
复读一下blog的结尾

The agentic future will be built one context at a time. Engineer them well.




欢迎光临 职贝云数AI新零售门户 (https://www.taojin168.com/cloud/) Powered by Discuz! X3.5