深入脚手架内部:编码智能体架构的源代码级分类法
Benjamin Rombaut 华为加拿大软件卓越中心
摘要
基于 LLM 的编码智能体能够定位缺陷、生成补丁并运行测试,且对人工监督的依赖日益减少,然而包裹在语言模型外部的脚手架 (Scaffold) 代码——控制循环、工具定义、状态管理和上下文策略——仍然缺乏充分的理解。现有综述按照抽象能力类别(工具使用、规划、反思)对智能体进行分类,这种方式无法区分架构上截然不同的系统;而轨迹研究观察的是智能体做了什么,却未检视决定其行为原因的脚手架代码。本文提出了一套源代码级别的架构分类法,该分类法来源于对 13 个开源编码智能体脚手架在固定提交哈希处的分析。每个智能体在 12 个维度上进行表征,这些维度组织为三个层次:控制架构、工具与环境接口以及资源管理。分析表明,脚手架架构难以用离散类别加以划分:控制策略的分布范围从固定流水线到蒙特卡洛树搜索 (Monte Carlo Tree Search, MCTS),工具数量从 0 到 37 不等,上下文压缩涵盖七种不同的策略。五种循环原语(ReAct、生成-测试-修复、计划-执行、多次重试、树搜索)作为可组合的构建块,被智能体以不同方式分层组合;13 个智能体中有 11 个组合了多种原语,而非依赖单一控制结构。各维度在外部约束占主导的地方趋于收敛(工具能力类别、编辑格式、执行隔离),在开放性设计问题尚存的地方趋于发散(上下文压缩、状态管理、多模型路由)。所有分类法层面的论断均以文件路径和行号为依据,为研究智能体行为的研究者和设计新脚手架的实践者提供了可复用的参考。