AI 将军将军检查机制
简而言之:这是一种专为 AI 智能体设计的工作记忆架构——预检阶段会从长期存储库中调取所需的技能,本地模型负责执行相关操作,而监控机制则会在夜间读取执行记录,以便更新该存储库。
我仍然记得我的智能体常常会在我说话到一半时就忘记我说了什么。
上下文长度并非限制因素,真正的限制在于内存架构。
我一直在试验一种能够执行预检指令的记忆架构。飞行员会在起飞前规划路线,我的智能体也是这样做的。
有一条查询进入系统:“总结第三季度的董事会演示材料。”在这句请求的背后,藏着 20 万 tokens 的邮件、PDF 文件及聊天记录内容。
预检阶段实际上就是信息检索过程。智能体会检查自身的技能库 1 ,挑选出与当前任务相关的技能,然后仅将这些技能加载到上下文窗口中。技能属于整合后的记忆内容,而预检步骤则负责帮助智能体选出最合适的技能。
随后,本地 Ornith 35B 模型 2 会基于加载后的上下文来执行任务。那些困难的任务会被转送到外部处理系统,而常规任务则由本地模型处理,这种情况约占 80%。
该监控机制会记录有哪些技能被加载、做出了哪些决策以及相应的成功率。所有的预检决策都会被详细记载,而每次技能的调用都会生成带有名称与版本信息的独立记录。
在夜间,通过异步推理机制 3 会对当天的处理结果进行汇总分析。它会判断哪些新的技能需要被开发,以及现有技能中的哪些部分应当转化为确定性代码。日程安排就是一个很好的例子:LLM 并不适合用来比较不同的空闲时间与忙碌时段,而 Rust 在这方面要出色得多。该系统会不断重写自身的技能库,并在自我改进的循环中重新启动。
昨天是监控机制首次没有提出任何改进建议。我怀疑这种情况不会持续下去。但这其实暗示了一个道理:当系统达到一定的改进水平后,就会进入停滞状态。只有那些真正新的异常情况才需要人工干预。
-
技能库是一组工作流文件(目前约有 90 个),这些文件会以磁盘索引的形式存储,并通过意图匹配来被检索出来。技能其实就是一次编写完成、设有版本控制的工作流,随后会以工具架构的形式传递给模型。关于该技能库的构建方式,可参阅“技能提取”相关内容。↩︎
-
Ornith 35B 是一种参数量达 350 亿级的开源模型,以本地形式运行在基于 Apple Silicon 架构的设备上,并通过 Ollama 进行驱动。它负责处理代理的常规任务——如分类、草稿撰写、工具选择以及结构化数据提取——而那些比较困难的任务则会被转交给更先进的系统来处理。↩︎
-
如需了解让代理在夜间进行数小时运行也成为可行方案的队列架构,请参阅 Full Sail 关于异步推理的文章。↩︎