深度元素智能
ReCode:统一规划与动作的通用粒度控制框架
来源: | 作者:DE.Tech | 发布时间: 2025-10-29 | 367 次浏览 | 分享到:

🌟 今日前沿论文 · 2025年10月29日

精选科技前沿资讯,洞察科技研究趋势

🔥🔥🔥🔥🔥AI决策系统

ReCode:统一规划与动作的通用粒度控制框架

#AI决策系统#通用粒度控制#递归代码#LLM智能体#规划与执行

论文原始标题:ReCode: Unify Plan and Action for Universal Granularity Control

论文作者:Authors: Zhaoyang Yu, Jiayi Zhang, Huixue Su, Yufan Zhao, Yifan Wu, Mingyi Deng, Jinyu Xiang, Yizhang Lin, Lingxiao Tang, Yingchao Li, Yuyu Luo, Bang Liu, Chenglin Wu

原始摘要:Real-world tasks require decisions at varying granularities, and humans excel at this by leveraging a unified cognitive representation where planning is fundamentally understood as a high-level form of action. However, current Large Language Model (LLM)-based agents lack this crucial capability to operate fluidly across decision granularities. This limitation stems from existing paradigms that enforce a rigid separation between high-level planning and low-level action, which impairs dynamic adaptability and limits generalization. We propose ReCode (Recursive Code Generation), a novel paradigm that addresses this limitation by unifying planning and action within a single code representation. In this representation, ReCode treats high-level plans as abstract placeholder functions, which the agent then recursively decomposes into finer-grained sub-functions until reaching primitive actions. This recursive approach dissolves the rigid boundary between plan and action, enabling the agent to dynamically control its decision granularity. Furthermore, the recursive structure inherently generates rich, multi-granularity training data, enabling models to learn hierarchical decision-making processes. Extensive experiments show ReCode significantly surpasses advanced baselines in inference performance and demonstrates exceptional data efficiency in training, validating our core insight that unifying planning and action through recursive code generation is a powerful and effective approach to achieving universal granularity control. The code is available at https://github.com/FoundationAgents/ReCode.

翻译标题:ReCode:统一规划与动作的通用粒度控制框架

翻译摘要:现实世界任务需要在不同粒度上做出决策,而人类通过统一的认知表示在这方面表现出色,将规划本质上理解为一种高层次的动作。然而,当前基于大语言模型(LLM)的智能体缺乏在不同决策粒度上灵活运作的关键能力。这一局限源于现有范式中对高层规划和底层动作的严格分离,这影响了动态适应性并限制了泛化能力。我们提出了 ReCode(递归代码生成),一种新范式,通过在单一代码表示中统一规划和动作来解决这一问题。在该表示中,ReCode 将高层计划视为抽象占位函数,然后递归地将其分解为更细粒度的子函数,直到达到原始动作。这种递归方法消解了计划与动作之间的刚性边界,使智能体能够动态控制其决策粒度。此外,递归结构固有地生成了丰富的多粒度训练数据,使模型能够学习分层决策过程。大量实验表明,ReCode 显著超越了先进基线,在推理性能上表现优异,并在训练中展现出卓越的数据效率,验证了我们的核心观点:通过递归代码生成统一规划和动作是实现通用粒度控制的强大有效方法。代码可在 https://github.com/FoundationAgents/ReCode 获取。

智能问答:

Q1: 这篇论文试图解决什么问题?

论文旨在解决现有基于大语言模型(LLM)的智能体在“决策粒度”控制上的根本缺陷:

传统范式把“高层规划”与“低层动作”硬性拆分为两个独立阶段,导致智能体只能在一个固定粒度上决策,无法像人类一样根据任务复杂度随时切换抽象或具体程度。
结果表现为:
推理缺乏前瞻性(ReAct 类方法只能一步步试错);
规划难以动态调整(Planner-Executor 类方法一旦计划生成就难以在线修正)。

为此,作者提出 RECODE 范式,把“规划”与“动作”统一在同一份可递归生成的代码里:

高层计划被表示成“占位函数”,智能体按需把它们递归地细化为更小的子函数,直到落为可直接执行的原子动作;
整个决策过程变成一棵在运行时动态展开的树,从而在一个统一的循环内实现任意粒度的决策控制。

Q2: 有哪些相关研究?

论文将相关研究归为两条主线,并指出它们共同受制于“规划–执行硬性分离”这一根本缺陷。

LLM-based ReAct 系列

代表工作:ReAct (Yao et al., 2023)、CodeAct (Wang et al., 2024b)
特点:交替输出“自然语言推理”与“原子动作”,每一步只考虑当前局部上下文。
局限:决策粒度固定为“单步动作”,缺乏高层战略前瞻,长程任务效率低。

显式 Planner + Executor 系列

早期:Plan-and-Solve (Wang et al., 2023)、Hierarchical-Plan (Paranjape et al., 2023)
进阶:AdaPlanner (Sun et al., 2023)、ADaPT (Prasad et al., 2024)、RAP (Kagaya et al., 2024)
特点:先产生完整高层计划,再逐步执行或动态重规划。
局限:规划与执行仍分属两个模块,边界刚性,无法根据环境反馈即时调整粒度。

尝试引入递归/代码的近期工作

Liu et al. 2024、Schroeder et al. 2025、Zhang & Khattab 2025 等开始用递归或代码片段桥接规划与动作,但仍未把“计划即高阶动作”这一认知统一到底层表示,因而做不到 universal granularity control。

综上,现有范式要么“只低头走路”,要么“先画图再走路”,都无法像 ReCode 那样在同一份递归代码里随时切换“看图”与“迈步”的粒度。

Q3: 论文如何解决这个问题?

论文把“规划”与“动作”视为同一决策轴上的不同抽象级别,用一份可递归展开的 Python 代码统一表示,从而消解了传统范式里“先规划后执行”的刚性边界。具体实现分为三步:

统一表示
任何决策——无论是“做早餐”这样的高层意图,还是 run('crack egg') 这样的原子动作——都写成函数调用。

原子动作:直接可执行,如
<script1 type="math/tex" id="MathJax-Element-2"> texttt{run("go to fridge 1")} </script1>
高层计划:写成未实现的占位函数,如
<script1 type="math/tex" id="MathJax-Element-3"> texttt{prepare_breakfast()} </script1>

递归展开
智能体在运行期按深度优先顺序遍历代码:

遇到原子动作 → 立即执行;
遇到占位函数 → 当场调用 LLM 生成其子函数列表(仍可是占位或原子动作),形成新的代码块并继续递归。
该过程等价于按需生长一棵决策树,直到所有叶节点都是可执行动作。算法伪代码见 Algorithm 1。

动态粒度控制
由于展开动作由 LLM 根据当前上下文即时决定,智能体无需人工指定“几层规划”:

简单子任务 → 1-2 行原子动作即可;
复杂子任务 → 继续生成更深占位函数。
由此实现在同一推理循环内对决策粒度的无缝缩放。

辅以三项工程机制保证实用:

任务初始化:用规则把自然语言指令封装成根占位函数 solve(instruction, observation),零样本启动。
上下文管理:统一变量命名空间,仅向 LLM 暴露当前作用域变量,强制模型显式存取状态。
错误与深度控制:运行时捕获代码异常并触发 self-correction;设置最大递归深度 10 防止无限展开。

通过“规划即高阶动作”这一统一视角,ReCode 把传统“两阶段”问题转化为单阶段递归生成问题,在推理侧实现任意粒度决策,在训练侧则自然产出多层次、多粒度的监督数据,显著提升样本效率。

Q4: 论文做了哪些实验?

实验从推理性能与训练效率两条主线验证 ReCode 的通用粒度控制是否成立,共覆盖 3 个文本环境、2 类模型、4 种 baseline 与 3 组消融。

环境与任务

ALFWorld:长程家务(pick&place、clean、heat 等 6 类)
WebShop:百万商品网购搜索-比价-下单
ScienceWorld:小学科学实验(化学、电路、生物等 11 任务)
均为部分可观测 MDP,提供 0/1 或 0–1 密集奖励。

推理实验(zero-shot / few-shot)
backbone 模型:GPT-4o mini、Gemini-2.5-Flash、DeepSeek-V3.1
对比方法:ReAct、CodeAct、AdaPlanner、ADaPT
指标:平均奖励 %(seen / unseen 双切分)
结果:

GPT-4o mini 上 ReCode 平均 60.8,领先最强 baseline 10.5↑ (相对 +20.9 %)
跨模型一致领先:Gemini-2.5 66.2 vs 52.2;DeepSeek-V3.1 69.2 vs 66.4
泛化差值(seen-unseen)显著缩小,表明粒度自适应降低过拟合

训练实验(监督微调)
基础模型:Qwen2.5-7B-Instruct
训练集:用 DeepSeek-V3.1 采集轨迹,按最终奖励 top-40 % 过滤后提取输入-输出对
对比:ReAct-SFT、CodeAct-SFT、ReAct+ETO、ReAct+WKM(后两项引用原文数据)
结果:

ReCode-SFT 平均 70.4 %,比 ReAct-SFT +2.8 %,比 CodeAct-SFT +14.6 %
数据效率:同等 60 % 奖励水平,ReCode 仅用 3 500 对,ReAct 需 12 833 对(3.7× 节省)
低资源曲线:10 % 分位数据下 ReCode 44.9 %,ReAct 34.1 %,相对 +31 %

消融与深度分析

递归深度:ScienceWorld 上 1–16 层扫描,性能呈倒 U 型,最优 8 层;论文取 10 为保守上限
成本:GPT-4o mini 调用费平均 ↓78.9 % vs ReAct,↓84.4 % vs CodeAct
案例可视化:ALFWorld“put two alarmclock in dresser”轨迹展示同一高层脚本如何在线展开 7 层递归,最终落地 14 条原子命令

结论

在推理侧 ReCode 以统一递归代码实现任意粒度决策,显著领先现有范式;在训练侧其层次化结构天然提供多粒度监督信号,同等性能下数据需求成倍减少,验证了“规划即高阶动作”这一核心假设。

Q5: 有什么可以进一步探索的点?

模型侧:让 LLM 真正“懂”递归代码

设计预训练目标,显式优化“占位函数 → 子函数”分解能力,例如 next-subroutine-prediction 或 AST 级对比学习。
构建大规模 ReCode-style 语料(代码-自然语言混合),缓解当前依赖 few-shot 提示的格式漂移问题。

学习侧:把展开过程交给智能体自己优化

用强化学习奖励“展开效率”与“最终回报”,让策略自己决定何时停止细化(自适应深度)。
引入课程式训练:从短深度、少分支任务渐进到长深度、多分支任务,减少早期因过度展开导致的失败。

容错侧:提升代码生成的鲁棒性

在递归节点加入静态语法检查与运行时异常捕获的联合奖励,鼓励一次性生成可执行代码。
探索“可逆”展开:若子树执行失败,自动回滚到父节点并生成替代子树,实现更细粒度的回溯。

粒度侧:形式化“最优粒度”

用信息论或决策复杂度度量(如动作熵、值函数变化量)动态衡量“继续展开”的边际收益,给出停止理论的解释。
研究任务领域与最优深度分布的关系,建立任务-粒度先验,实现零样本深度预测。

结构侧:超越单棵决策树

允许并列生成多个候选子树(宽度搜索),再用价值模型或多数投票选择分支,提升高层决策质量。
将递归代码与神经符号体系结合,使占位函数可调用外部符号规划器,实现“神经-符号”混合粒度。

人机协作侧:可解释与可修正

在 UI 层实时可视化当前展开树,让用户暂停、删减或增加子函数,实现交互式规划。
引入自然语言反馈通道:用户用一句话即可替换或合并某子树,模型即时重生成后续代码。

多模态与真实环境侧

把感知 API(视觉、听觉)封装为原子动作,考察 ReCode 在视觉驱动机器人任务中的深度-精度权衡。
在真实 API 场景(Web、数据库、命令行)测试递归展开对异步、长时延反馈的适应性,优化异步上下文管理。

理论侧:与经典规划算法连接

证明 ReCode 的递归展开过程等价于某种在线 HTN(Hierarchical Task Network)搜索,从而继承其完备性/复杂度结论。
分析最坏情况展开次数与分支因子,给出复杂度上界,指导深度限制与剪枝策略设计。

Q6: 总结一下论文的主要内容

论文核心速览

题目:RECODE – 用递归代码把“规划”与“动作”统一成同一粒度轴,实现任意精度的决策控制。

1. 要解决的问题

现有 LLM Agent 把“高层规划”与“低层动作”硬性拆分,导致决策粒度固定,无法随任务复杂度动态缩放。
结果:长程任务缺乏前瞻,短程任务过度冗余,泛化性差。

2. 关键洞察

规划 = 高阶动作
就像伪代码与可执行代码的关系,只需一个统一的“函数”表示即可容纳从战略到指令的所有决策。

3. 方法:ReCode 三件套

步骤t技术要点t效果
① 统一表示t原子动作与高层计划都写成 Python 函数调用t同一语言,零模板
② 递归展开t占位函数遇到即调用 LLM 生成子函数,深度优先执行t运行时按需生长决策树
③ 动态粒度tLLM 根据上下文决定“继续抽象”或“直接落地”t无人工层数限制

工程配套:规则式任务初始化、共享变量命名空间、异常自纠正、最大深度 10 防止无限递归。

4. 实验结果

场景t推理提升t训练效率
ALFWorld / WebShop / ScienceWorldt+20.9 % 平均奖励(GPT-4o mini)t同等性能 3.7× 数据节省
跨模型验证tGemini-2.5 / DeepSeek-V3.1 均保持领先t低资源 10 % 数据仍超 ReAct 31 %
成本t单任务 API 费用 ↓78 %t—

5. 贡献一句话

ReCode 用“递归代码”把规划-动作边界溶解成可调粒度的连续谱,推理更准、训练更省、成本更低,为可扩展的通用 Agent 提供了新基线。

阅读全文 →

来源:Arxiv2025-10-27 17:35:15 UTC


返回
友情链接