一、TL;DR

本文提出了一种名为Tree Training的新训练范式,通过将智能体交互产生的树状轨迹数据进行高效打包和计算复用,在训练的前向和后向传播中对共享的前缀(prefix)只计算一次,从而显著提升了智能体大语言模型(Agentic LLM)的训练效率。

二、相关工作

在智能体大模型的应用场景中,模型的交互过程常常呈现出分支行为。例如,树状规划、并发工具调用或记忆检索等机制都会导致单一任务的token轨迹从线性序列演变成树状结构。

虽然已有研究在强化学习的生成阶段利用共享前缀来提升采样效率,但这些方法在训练阶段仍将轨迹视为独立样本,未能解决训练过程中的计算冗余问题。一个直接的想法是复用前向传播中的KV缓存,但这在反向传播中是行不通的,因为前缀的梯度依赖于其后的整个序列,简单缓存无法保证梯度的正确性。

因此,本文旨在解决的核心问题是:如何设计一种新的训练框架,能够在训练的前向和后向传播中高效地复用树状轨迹中的共享前缀计算,同时保证数学上的完全等价性,从而消除计算冗余,加速智能体模型的训练。

三、本文方法

1.概述

为了解决共享前缀在反向传播中因后续序列不同而导致梯度不一致的问题,本文提出了 Tree Training 范式。其核心思想是在一个微批次(micro-batch)内同时处理共享前缀及其所有后续分支。这样,在计算反向梯度时,可以获得计算所需的所有信息,同时确保共享部分的计算只进行一次。

如下图所示,对于两个共享前缀的序列,传统的KV缓存方法在前向传播中有效,但反向传播时, 和 的值因分别依赖于 和 而不同,导致简单的缓存机制失效。

atención 操作的前向传播可表示为:

其反向传播中 的计算可表示为:

2.Tree Packing

Tree Packing 的目标是将整个计算树划分为适合GPU内存容量的子树,并通过优化划分策略来最大化共享前缀的复用。

这是一种简化的场景,假设每个训练步骤只选择树中的一条路径作为共享前缀。此问题可以通过动态规划(Dynamic Programming)解决。

  • 符号定义:
    为轨迹树。
    为从根节点 到节点 的路径token长度(共享前缀长度)。
    为以 为根的子树中的叶节点数量。
    为以 为根的子树中所有剩余路径的总token长度。

  • 约束与目标:
    一个节点 是可行的 (feasible),当且仅当它满足内存容量约束 :
    选择 作为共享节点所节省的计算量为:

  • 动态规划:
    定义 为覆盖以 为根的整个子树所能实现的最大总长度节省。
    状态转移方程为:其中 表示节点 是否可行。该DP算法在选择将 作为共享前缀,或将决策递归地交给其子节点之间做出最优权衡。

多路径打包 (Multi-Path Tree Packing)

单路径打包策略可能不是最优的,因为在容量允许的情况下,同时打包多个共享路径(形成层级共享结构)可以获得更大的计算节省,如上图 Figure 3 所示。多路径打包将此问题推广,允许在一个训练步骤中激活多个共享路径。

该问题被建模为一个更复杂的动态规划,其中每个节点的状态表示为一组候选的(容量占用向量,成本)对。父节点的状态通过对其子节点的状态进行两种操作来构建:

  1. 提升 (Lift):将子节点的状态向上层传播,并累加上连接边的长度。
  2. 装箱 (Bin packing):将所有子节点提升来的需求(items)组合打包到容量为 的“箱子”中,这是一个NP-hard问题。

由于其高复杂性,精确的多路径DP算法仅适用于中小型树。在实践中,本文采用了一种高效的启发式算法,其遵循三个原则:

  1. 优先分配最深的叶节点。
  2. 将相似深度的叶节点组合在一起以提高打包效率。
  3. 以深度优先的顺序遍历树,当累积长度超过容量时启动新的遍历。

3.Gradient Restoration

在前向传播中,由于有因果掩码(causal mask),共享前缀的计算结果在所有共用它的序列中都是相同的。然而,在反向传播中,非前缀部分(后缀)的token会对前缀token贡献梯度,导致前缀的梯度在不同序列间不再相同。

参数更新与梯度

对于一个线性变换 ,其权重梯度为 。假设我们有 条轨迹共享前缀 ,各自拥有后缀 。

  • 传统打包方法(基线)的输入矩阵 由 个独立的完整序列 拼接而成。
  • 本文Tree Packing的输入矩阵 由一个共享前缀 和所有后缀 拼接而成。

为了保证权重梯度等价,我们需要确保前缀 对梯度的总贡献相同,即:

由于 是相同的,这等价于要求:

同时,后缀部分的梯度需要保持不变:

算法分析

本文通过分析证明,对于Transformer中的主要操作(如线性变换、Attention等),上述梯度累加的性质是可传递的

  • 线性操作: 对于 ,由于其是逐点操作,如果输入的梯度 满足累加关系,那么输出的梯度 也自然满足。
  • 注意力操作: 同样,在计算 , , 时,如果输入的梯度 满足累加关系,那么计算出的梯度也满足该关系。
  • 其他操作: 对于某些依赖位置的逐点操作(如RoPE),需要确保打包后的token使用其在原始序列中的位置ID,以保证 的值不变。

这个传递性意味着,我们只需要在反向传播链的起始处进行一次梯度校正,这个校正效果就会自动传播到整个模型。

实现

  1. 共享前缀注意力掩码 (Shared Prefix Attention Mask): 在前向传播中,使用一个定制的注意力掩码,确保不同分支的token不会注意到彼此,从而安全地共享前缀表示。本文基于FlashAttention V3实现了高性能的GPU内核。
  2. 位置嵌入 (Position Embedding): Tree Packing改变了token的物理位置,因此需要一个机制来恢复每个token在原始轨迹中的位置ID,以确保像RoPE这类位置敏感操作的正确性。
  3. 梯度缩放 (Gradient Scaling): 在反向传播开始时(计算 之后),应用一个梯度缩放器(gradient scaler)。对于每个共享前缀的token,将其梯度乘以它的复用次数(即共享该前缀的轨迹数量)。例如,若一个前缀被5个轨迹共享,其梯度就乘以5。这精确地实现了 的目标,从而保证了全局梯度更新的正确性。

本文在多个Qwen3模型和不同数据分布上验证了Tree Training的有效性。

上图展示了从智能体RL部署中提取的不同前缀重叠率(Prefix Overlap Ratio, POR)的轨迹树,以及Tree Training相对于基线(Sequence Packing)在处理token数量上的节省。POR越高,节省越显著。

  • 最佳效果:
  • 在理想情况下(整个树能放入GPU内存的合成数据),最高可实现3.4倍的吞吐量提升。
  • • 在真实世界的智能体RL训练数据上,最高可将在总训练时间上减少1.56倍
  • 最终结论: Tree Training 是一种高效的训练范式,它通过利用智能体交互轨迹固有的树状结构,显著加速了SFT和RL的训练过程,同时保证了训练的保真度和最终模型的质量。

如何高效转型Al大模型领域?

作为一名在一线互联网行业奋斗多年的老兵,我深知持续学习和进步的重要性,尤其是在复杂且深入的Al大模型开发领域。为什么精准学习如此关键?

  • 系统的技术路线图:帮助你从入门到精通,明确所需掌握的知识点。
  • 高效有序的学习路径:避免无效学习,节省时间,提升效率。
  • 完整的知识体系:建立系统的知识框架,为职业发展打下坚实基础。

AI大模型从业者的核心竞争力

  • 持续学习能力:Al技术日新月异,保持学习是关键。
  • 跨领域思维:Al大模型需要结合业务场景,具备跨领域思考能力的从业者更受欢迎。
  • 解决问题的能力:AI大模型的应用需要解决实际问题,你的编程经验将大放异彩。

以前总有人问我说:老师能不能帮我预测预测将来的风口在哪里?

现在没什么可说了,一定是Al;我们国家已经提出来:算力即国力!

未来已来,大模型在未来必然走向人类的生活中,无论你是前端,后端还是数据分析,都可以在这个领域上来,我还是那句话,在大语言AI模型时代,只要你有想法,你就有结果!只要你愿意去学习,你就能卷动的过别人!

现在,你需要的只是一份清晰的转型计划和一群志同道合的伙伴。作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐