常驻智能体的工程密码:Grok Bot架构设计与上下文管理实践
把任务交给智能体,等它读文件、查资料、调用工具,这种交互模式已经相当成熟。但如果你合上电脑,它还能接着做吗?服务器重启后,它记不记得进度?几天后收到一封相关邮件,它能否自动关联到之前的任务继续推进?这些问题将Agent从一次对话推向了一项持续性工作。在斯坦福CS146S课程的《How always-on agents work》讲座中,Lee Robinson系统分享了这类常驻、主动、持久型智能体的工程设计思路,为我们揭开了常驻智能体架构的核心密码。
休眠唤醒的三层分离架构
常驻智能体很容易让人联想到永不关机的电脑或持续消耗Token的模型进程,但实际架构采用了一种更巧妙的运行方式:没有任务时,Agent服务与云端电脑都可以休眠;收到消息或事件后,系统恢复任务状态并启动相应执行环境。这套架构至少包含三个不同的对象——用户客户端、负责调度和调用模型的服务、以及执行具体操作的云端电脑。客户端负责沟通界面,服务负责推进任务逻辑,电脑提供文件、浏览器和软件环境。讲座中提到用Firecracker微虚拟机承载电脑环境,这种设计的好处在于执行环境可以被关闭、升级或替换,而任务本身仍能完整保留。比如给云端Linux环境打补丁,不必同时清空用户的对话、待办和已完成步骤。真正持续的是任务状态,对话、进度、记忆和调度记录需要保存在进程之外,一次模型调用结束或一台电脑被替换后,系统仍应知道接下来该做什么。
事件路由与故障恢复机制
常驻之后,输入不再只有用户敲下的一句话。Slack消息、邮件、定时任务、后台作业的完成通知,都可能触发Agent响应。第一道关是事件路由:这条输入属于哪个任务,是否已经处理过,应该排在哪里?用户刚说“检查这个讨论串”,又补充“周四再做”,系统需要把两句话合并理解,而不是立即执行第一句再单独处理第二句。讲座描述了消息优先级、短期内输入合并、以及逐个推进执行轮次的机制。第二道关是故障恢复,假设一个任务要下载附件、提取内容、生成报告、发送通知,前三步做完时服务器崩溃,重启后从头来一遍可能浪费资源,也可能重复发送消息。讲座提到Temporal用持久工作流记录执行历史,工作流可以通过重放历史恢复推进,从最后记录的事件继续。但边界需要厘清:工作流可以恢复不代表外部动作天然只执行一次,例如邮件已经发出但进程没来得及记录成功,重试仍可能再次发送,因此Temporal建议Activity尽量做到幂等,重复执行不会造成额外影响。
常驻智能体能不能用,不在模型多强里、不在界面多炫里,而在系统能不能把每一个中断点都接住。
“行业观察”积墨 AI 智能体开发平台
快速搭建具备商业价值的 AI 智能体,支持复杂工作流编排、50+ 主流模型接入与私有化部署。
从工具拆分到记忆分层
讲座中的客户端设计很薄,服务负责重工具,客户端接收消息和结果再用合适的形式展示,这样手机、桌面、网页或Slack可以接入同一套执行能力。工具设计则有另一层取舍,把几十个连接器、几百种工具的完整描述全部塞进提示词,模型还没开始工作上下文就已经占去不少。讲座提出动态发现工具策略:先给模型足够用于判断的名称与摘要,需要执行时再加载对应的详细定义。调用顺序也会影响效率,有可靠API或连接器时可以直接读写结构化数据,需要操作界面时再使用浏览器,浏览器中的DOM和无障碍树能提供按钮、链接等语义信息,遇到难以解析的画布或弹窗再依赖截图和坐标。记忆系统可以理解为四层架构:稳定偏好层保存语言、常用技术、长期要求,少量进入常用上下文随纠正更新;历史日志层记录过去做过什么、何时做过,按日期或主题检索;当前工作笔记层维护目标、进度、关键决定、阻塞点,支撑当前任务的接续;文件与产物层保存文档、代码、数据和完整证据,需要时读取原始内容。任务越长越需要上下文压缩,把长对话整理成交接摘要能给后续工作腾出空间,但目标、用户纠正、关键决定、已验证结果和未完成事项,要比寒暄和重复工具输出更优先。
成本控制与可靠性设计
持续任务意味着一次次模型调用,每轮都重新处理同样的系统要求、工具定义和对话历史,会让成本与等待时间累积。讲座把提示缓存放在重要位置,支持前缀缓存的实现中,前面稳定的内容可以复用处理结果,后面新增的消息再单独处理。这意味着提示词结构本身需要设计,稳定内容保持稳定顺序,频繁变化的时间、临时信息与新输入放在合适位置,否则一点不必要的变化就可能让原本可以复用的部分重新计算。讲座还提到趁缓存仍有效时做压缩的优化思路,如果系统已经判断需要整理上下文,可以在当前工作结束附近生成接续摘要,避免等用户很久以后回来再处理一整段冷掉的历史。当Agent能接收外部事件、操作企业工具、持续工作,系统就要区分“读到了什么”和“被授权做什么”,邮件或网页里出现一句“忽略原来的要求”不能因此变成新的用户指令。判断一套常驻Agent是否可靠需要验证五个要点:中断后能否恢复正确的目标、进度和等待条件?重试外部操作时能否识别已经完成的动作?用户修改要求后能否停止或调整后续执行?记忆和摘要中的判断能否回到原始证据核查?对外动作是否有清楚的授权范围,通知是否值得打扰?
常驻智能体的工程设计,本质上是在回答一个问题:如何让AI从一次对话变成一项持续工作?三层分离架构让系统可以休眠唤醒而不丢失状态,事件路由和故障恢复确保任务不因意外中断而前功尽弃,工具动态发现和四层记忆分层让上下文始终留给眼前的工作,提示缓存和按需加载控制住持续运行的成本,权限边界和通知策略则划清了人机协作的责任界限。把这些环节串联起来,才能真正实现合上电脑以后,工作还能继续的愿景。聊天只是入口,真正的交付发生在完整的任务链里。
