{"id":"mb-20261013-d7bdb6","kind":"deep","title":"斯坦福 CS146S 深度拆解：Grok Bot 如何打造全天候自主智能体","summary":"前 Vercel 副总裁 Lee Robinson 在斯坦福大学 CS146S 讲座中拆解了常驻智能体 Grok Bot 的底层工程设计。文章详细解释了大脑与手脚分离的 Firecracker 虚拟机架构、防止状态重复执行的 Temporal 持久工作流、避免打扰用户的成本阶梯策略，以及借助子代理与温热缓存压缩实现无限记忆与控制成本的实战机制。","body":"你把笔记本电脑合上，去睡觉了。\n你的 AI 还在继续干活吗？\n现在的各种 AI 编程助手，最让人难受的一点就在这里。\n只要你一关电脑，终端里的进程就直接停掉了。\n它更像一个算盘。\n你拨一下，它动一下。\n只要你不给新提示词，它就在那干瞪眼。\n如果真想让 AI 像个全天候的数字同事，你下班断网了，它自己在云端连着干上几天甚至几周，这套系统到底该怎么造？\n前 Vercel 副总裁、现在在 SpaceX 和 Cursor 负责架构的 Lee Robinson，最近在斯坦福大学 CS146S 开了一堂公开课。\n他把内部打造 Grok Bot 这种常驻智能体的核心构造，一层一层全拆开了。\n听完你会发现一个很有意思的事实。\n要想让 AI 真正自主干活，单靠大模型聪明根本不够。\n关键全在大模型外面这一整套运行脚手架。\n他们是怎么搭这套系统的？\n第一件事，AI 的大脑和手脚，必须彻底分家。\n以前大家写智能体，习惯把大模型循环和执行代码放在同一个虚拟机里。\nLee Robinson 提到，这在工程上其实是个巨大的坑。\n因为给 AI 用的这台云端电脑，随时可能要打补丁、重启，或者在闲置时休眠。\n如果大脑也装在里面，机器一关，AI 自己也跟着断线了。\n他们采用的做法是极简的分工。\n大模型的主循环常驻在云端服务器上。\nAI 干活的手脚，放在一台独立的 Firecracker 微型虚拟机里。\n平时没有任务，虚拟机完全休眠，一分钱算力都不浪费。\n一旦有任务进来，一秒钟把虚拟机拉起来。\n里面配齐了 Linux 系统、文件、专用的 Chrome 浏览器，甚至还有虚拟桌面。\nAI 在里面写代码、点网页、跑测试。\n更绝的是客户端与服务端的通信。\n不管你用手机、网页、还是在企业通讯软件里找它，客户端和服务端之间，从头到尾只有这一个工具：send_user。\n服务端就像在跟你的手机发短讯。\n这种极简设计，让它可以无缝接进任何平台。\n但如果 AI 跑到一半，云端网络断了，或者程序崩溃了怎么办？\n这就引出了第二层防线：持久化工作流。\n普通的后台系统喜欢用任务队列。\n一个任务分五步，如果执行到第三步崩溃了，重启之后，往往得从第一步重新排队。\n但在自主智能体这里，这是绝对不可接受的灾难。\n因为第一步它可能给你的客户发了邮件，第二步它可能在云上刷了信用卡。\n要是重头再来一遍，邮件就会重复发送，钱也会被重复扣掉。\n他们直接引入了开源的 Temporal 系统，做成了带状态快照的持久化工作流。\n哪怕服务器中间宕机了，重启之后也能精准卡在第三步的原地，直接往下走，绝不重复制造破坏。\n有了手脚，也有了稳定的底座，接下来就是沟通问题：\n怎么才能让它不变成一个烦人的实习生？\n如果一个同事每隔两分钟就跑来敲你桌子，问你“这个网页怎么点”、“下一步该干嘛”，你肯定当场崩溃。\n在 Grok Bot 内部，有一条铁律叫成本阶梯。\n遇到任何问题，AI 必须严格按照从便宜到昂贵的顺序去尝试。\n第一级，先翻看当前的对话记录和本地记忆，这是零成本的。\n第二级，查专用的外部插件和接口。\n第三级，自己去搜索引擎找答案。\n第四级，真要看网页，先读取网页的无障碍节点树，用最省 Token 的文本方式解析结构。\n第五级，如果节点树不行，才截取屏幕去点像素，或者进入虚拟机写脚本跑命令。\n只有把前面这一长串手段全部试完了，实在走投无路，或者遇到了付钱、删库、发邮件这种不可逆的高危动作，它才会跳出来打扰你，向你申请权限。\n这就让它拥有了顶级员工的自觉。\n能自己搞定的脏活，绝不伸手向你求助。\n但这又带来了一个最让人头疼的问题：记忆。\n现在的模型动不动就有 20万 Token 的上下文窗口。\n可一个长期运行的智能体，几天下来产生的信息量是天文数字，窗口再大也会被撑爆。\n而且上下文越长，模型的反应越慢，调用的账单也越贵。\n他们是怎么假装自己拥有无限记忆的？\n答案是主子代理协同，加上极度严苛的提示词缓存管理。\n主代理就像一个项目经理。\n它的上下文极其干净，里面几乎只维护一张极简的任务清单和用户的核心偏好。\n一旦遇到繁重的工作，比如要分析几万行代码，或者抓取数十个长网页，主代理绝不自己去读。\n它会现场孵化出一个辅助子代理。\n子代理带着全新的工作记忆去啃大文件，干完之后，只提炼出三行结论交回给主代理，然后子代理立刻销毁。\n主代理的上下文从头到尾都没有膨胀。\n更厉害的一招在账单控制上。\n在长期的智能体运行中，提示词缓存未命中，在他们眼里就等于系统缺陷。\n因为大模型收费里，重复利用缓存的 Token 比全新输入的便宜了接近九成。\n只要你的系统提示词和历史记录顺序变了一个字符，缓存就瞬间失效，你就要全额买单。\n为此，他们甚至摸准了各大模型厂商的缓存保鲜期。\n比如缓存会在 10 分钟到 60 分钟内保持温热。\n当一轮复杂任务跑了 10万个 Token，系统检测到用户暂时离开，它不会傻等缓存冷却。\n他们趁着缓存还在温热期、打折力度最大的时候，主动在后台调用一次压缩算法，把这 10万 Token 提炼成一小段精华摘要。\n等你半小时后回来继续聊，上一轮的冗余已经被消化干净，新的对话直接挂在便宜的摘要后面。\n至于那些跨越几周、几个月的长期记忆放哪里？\n全写成纯文本的 Markdown 文件。\n不需要搞复杂花哨的向量数据库。\n对于一个随时能调动 Linux 终端的智能体来说，直接敲一条系统命令，用文本抓取工具 grep 在自己的笔记本里搜关键词，又快又准。\n这一整堂斯坦福课程听下来，最受启发的其实是这种工程务实精神。\n很多团队还在试图把所有能力塞进大模型的单次提示词里。\n真正跑在工业场景里的常驻系统，已经用微型虚拟机、持久化状态机、成本阶梯和缓存管理，给 AI 穿上了一整套严密的工业外骨骼。\n未来的软件大概率不会再有复杂的后台管理界面。\n要么你的产品直接长出一个能全天候自主干活的智能体。\n要么它就会沦为一堆无头数据，静静躺在服务器里，等着别人的智能体通过终端随时调用。","topic":"斯坦福 CS146S 深度拆解：Grok Bot 如何打造全天候自主智能体","frame_type":["机制"],"citations":[],"channel_note":"","identity_notice":"","source_type":"generated","status":"published","generated_at":"2026-10-13 08:29:04","legal_anchor_count":0,"transcript_citation_count":0}