TwKit

推文

@MaiYangAI · 2026-10-11 09:54

Lee Robinson 讲常驻 agent 怎么搭,原话摘录 Lee Robinson 在斯坦福 CS146S 讲了 45 分钟,讲常驻、主动、能持续运行的 agent 是怎么工作的。他以前在 Cursor,现在在 SpaceX,讲的有些东西还在开发中,是他们在 SpaceX 正在做的。我给整场配好了中英双语字幕,原视频链接在回复里。下面按他的六个章节摘,引号里是中文字幕原话,括号里是这段话开始的时间,可以按时间点跳着看。 开场 课程第一周学生们搭过一个最简单的 harness,「一个模型,在循环里调用工具」。它最明显的缺点是「你一合上笔记本,进程就停了」(0分21秒)。 常驻 agent 跑在云端服务器上,有一台自己的 Linux 机器,会慢慢记住你怎么跟它工作。它更像一个同事,「它知道什么时候该安静」,有重要进展了才回来找你(1分02秒)。 1 怎么走到今天(2分35秒) 他把开发者用 AI 写代码分成四个时代。先是从 ChatGPT 里复制粘贴代码,然后是终端里能改文件、跑命令的 agent,再后来是在专门的应用里同时跑好几个 agent。到这一步,每条命令还得人来审,「你还是那个瓶颈」(2分39秒)。 第四个时代就是常驻 agent。它们「有自己的电脑,有自己的记忆,能在干活中学会新技能,你去睡觉或者去干别的活了,它们还在继续干」(3分48秒)。 审命令这件事,现在交给另一个模型做,很多公司叫它自动审查,「本质上就是用另一个 AI 模型来检查要执行的命令」。他说如果做个盲测,「大多数时候其实是模型做得更好」,因为人盯几百条命令早就看累了(4分56秒)。 这类产品为什么一下子冒出来这么多,他的解释很简单,「大家都会发消息」。跟 AI 协作被浓缩成「感觉就像在给朋友发消息,但它真能替你把活干了」(5分43秒)。 2 模型变了什么(6分14秒) 他讲了六点。第一是能长时间听指令,压缩做得好的话,模型「可以很稳地连续跑几小时甚至几天」(6分23秒)。 第二是能把活交给子 agent。子 agent 有一份全新的工作记忆,「这样实际上就相当于有了无限的上下文」(6分42秒)。 工具也一样。几年前模型还老出幻觉,现在「这个问题基本上算是解决了」。再给它一台完整的 Linux 电脑,让它像人一样在屏幕上点来点去,那么「任何没有开放 API 或 MCP 服务器的 SaaS 产品或网站,都可以在无界面的情况下使用」(7分19秒)。 最后两点是信息都存成文件,以及你可以直接演示给 bot 看一件事怎么做,「它会把这个转成技能、记忆或者定时任务」(8分10秒)。他举的例子是 Grok Bot 的插件和定时任务,然后总结了一句,「所以基本上一切都是电脑」(9分45秒)。 3 常驻 agent 的内部(10分05秒) 服务器和 agent 用的那台电脑平时都在休眠,来了消息或者触发器才启动,用完再睡回去。为什么要这样,「因为一直开着很贵,而且世界上也没有足够多的电脑」(10分17秒)。 叫醒它的可以是一条 Slack 消息、一通电话,或者一个会议。「在 SpaceX,越来越常见的是 bot 替员工参会」,「他们其实能去开会,但就是想让 bot 去记个笔记再回来汇报」(11分13秒)。 醒来以后它还要判断一件事,「这件事我要不要去打扰用户?因为不是每件事都真的重要。」(11分59秒) 电脑那边跑的是 Firecracker 虚拟机,好处是能给机器状态做快照,关机,再启动起来(12分20秒)。 任务本身要用持久化工作流来跑。用普通队列的话,一旦崩溃重启,「就得把第一、二、三步重放一遍」。换成持久化工作流,「失败后重试,它会直接从第三步接着往下走」。他们用的是开源的 Temporal(16分18秒)。 消息也分优先级。他自己让 agent 改个日期,这条消息「会优先于其他所有正在进行的事」,别人的消息排到队列后面,几条一起来的还能合成一轮处理(17分23秒)。 4 harness(18分08秒) 他说 Grok Bot 的 harness 最大的不同,可能市面上其他一些类似工具也是这样,是「客户端和服务器之间只靠一个工具通信,就是 send to user」。跑命令、读文件、调云端 agent 这些重活都放在服务器上,换成手机应用还是桌面应用都一样(18分21秒)。 客户端收到这个工具调用,再决定怎么展示。要登录就弹登录表单,要付款就接支付服务,发邮件这种撤不回的事,它可能会请你「先编辑、批准草稿,然后再发」。有时候不需要回话,「它直接回个表情就行了」(19分13秒)。 工具装多了会把上下文窗口塞满,所以很多 harness 的做法是「基本上就是只把工具的名字放进发给模型的每条消息里」,模型要用哪个再去读它的说明(20分51秒)。 找信息也按从便宜到贵的顺序来,先看对话记录,再找插件或 API,然后网页搜索、开浏览器、用整台桌面。「只有这些全都失败了,才去打扰用户」,这样才像跟同事共事,「同事不会什么事都来找你」(21分31秒)。 主 agent 像总调度,费 token 的活都交给子 agent,「回来的只有结果」。他也说得很清楚,「当然,无限的上下文并不存在」,靠的是这些技巧和专门训练,让你感觉不到上限(23分31秒)。 团队搭这套东西时攒下几条小经验。「不要在一轮对话中间增删工具」。模型要是 90% 的时间都在为同一件事跑 shell 命令,就给它做个专门的工具。报错信息要写得具体,给人写报错时有用的那些,「结果发现这对 agent 也很有帮助」(25分12秒)。 安全上,每条 shell 命令执行前都让模型审一遍,邮件这类不可信的输入不能当成用户指令,产品里还要有流程「把密码之类的东西挡在模型对话之外」(26分30秒)。 5 上下文工程(27分27秒) 他说「上下文工程也叫 harness 工程」,说到底是怎么少用上下文(27分27秒)。 他先讲了提示词缓存为什么这么重要。每加一条消息,基本上是「把整段对话重新发一遍」,所以工具定义和系统提示词要尽量保持不变,不打破缓存。他的说法是「所以如果缓存没命中,说实话这在系统里就算一个 bug。」(27分47秒) 今年一月 OpenClaw 刚火起来的时候,harness 还没针对这种一直开着的用法优化过,「所以缓存没命中的情况很多」(29分57秒)。 还有个小技巧,你一打开聊天开始打字,服务器就提前把提示词准备好,「基本上是预热缓存」(31分05秒)。 聊得够久就一定要压缩,「而所有压缩都是有损的」。他们的做法是趁缓存还热,「你最好马上就做压缩」,等用户 30 分钟后或者什么时候回来,就从这份总结接着聊,便宜得多(31分32秒)。 记忆他分几层来想。关于用户的事实每次都带上,然后是按日期记的日志,再是过一阵就会消失的草稿笔记,「其他所有东西都能通过文件找到」。「这就是文件的魔力」(32分51秒)。 6 接下来往哪里走(34分26秒) 产品和模型之间有个飞轮。做产品的团队每天都在跑内循环,「他们发现 bug,修 bug,再用评测衡量」。每隔一段时间再训练新模型,理想情况下,新模型会从这些失败里学(36分06秒)。 有些用法还没有数据,比如「目前还没什么训练数据是关于在群聊里用 bot 的」,所以要专门训练模型在多 agent 系统里表现好(37分10秒)。 他讲了一条原则,「我们在 Cursor、现在在 SpaceX 都有一条原则,就是删掉产品」。意思是打心底里认定「今天的模型是它们这辈子最差的时候」,所以「六个月后,你可能得把 UI 完全重做」。好策略是为下一代模型做产品,尽量少做东西(37分46秒)。 他对接下来六到十二个月有几个判断,其中一个是很有可能用不了多久,agent 就能「连续工作几周甚至几个月」(38分36秒)。随之而来的难题是,「如果你要评测一个能跑一个月的 agent,但模型每个月都在更新,那该怎么办?」(40分27秒) 最后给学生的三点 一是更要想整体的系统设计和架构,这些决定「会不断产生复利」。他自己写的代码还是会看,「所以我还是赞成看代码的」。二是照今天讲的,自己动手搭一版。三是「别怕去多了解一点大语言模型是怎么工作的」(43分23秒)。

曝光 1041 · 评论 7 · 点赞 7 · 书签 9 · 曝光/时 161.7104237965207

TwKit
正在载入