AgentJet: A Flexible Swarm Training Framework for Agentic Reinforcement Learning

发表时间: 2026-06 · arXiv:2606.04484 (Alibaba Tongyi EconML)

原文: https://arxiv.org/abs/2606.04484

作者/机构: Qingxu Fu∗, Boyin Liu, Shuchang Tao, Zhaoyang Liu, Bolin Ding (Tongyi Lab, Alibaba Group)

A1 主要贡献

本文介绍了AgentJet,一个为大型语言模型(LLM)智能体强化学习设计的分布式群体训练框架。该框架旨在解决现有通用RLHF框架和智能体原生RL框架在训练过程中遇到的运行时脆弱性、调试摩擦、多模型约束、上下文冗余和环境锁定等挑战。研究的核心目标是创建一个灵活、可扩展且容错的架构,以支持日益复杂的智能体训练需求。

AgentJet的主要贡献如下:

  1. 群体架构(Swarm Architecture):提出了一种创新的客户端-服务器范式,将智能体运行时与模型训练基础设施完全解耦。群体服务器节点(优化器节点)在GPU集群上托管和训练模型,而群体客户端节点(采样节点)在任意设备上执行智能体工作流。这种架构实现了容错训练(客户端故障不中断训练)、热插拔调试(可在线修改智能体代码)、异构多模型强化学习(同时训练多个不同模型)以及多任务鸡尾酒式训练(隔离不同任务的运行时环境)。此外,该架构引入了时间线合并算法,通过整合冗余上下文,将训练速度提升了1.5至10倍。

  2. 群体训练能力(Swarm Training Capabilities):展示了群体架构所支持的两种高级工作流。一是“氛围训练”(vibe training),其中AI编码助手能根据自然语言规范生成完整的训练代码,极大地降低了RL任务的工程开销。二是在多种智能体任务上进行了基准评估,验证了框架在共享参数多智能体训练、非共享参数多智能体训练以及多任务鸡尾酒式训练中的有效性。

  3. 自动化研究流水线(Automated Research Pipelines):构建了一个全自主的AI研究系统。该系统以一个研究课题为输入,能够自主地规划、执行和分析持续数天的大规模实验活动。通过六个独立的案例研究(涵盖超参数优化、模型规模比较和LoRA配置分析),验证了该系统能够在无人干预的情况下,复现RL研究者的关键探索性工作流程。

A2 相关工作

2.1 针对LLM的强化学习框架

LLM智能体的快速发展催生了丰富的RL训练框架生态,我们将其分为通用RLHF系统和智能体原生RL系统两大类。

通用RLHF框架。OpenRLHF 【13, OpenRLHF: An easy-to-use, scalable and high-performance RLHF framework. 2024. arXiv】开创了一种基于Ray【22, Ray: A distributed framework for emerging AI applications. 2018. USENIX OSDI】 + vLLM【16, Efficient memory management for large language model serving with PagedAttention. 2023. SOSP】的分布式架构,通过混合引擎调度在GPU集群上协调actor、reward、reference和critic模型。veRL (HybridFlow)【31, HybridFlow: A flexible and efficient RLHF framework. 2024. arXiv】引入了一种混合单控制器/多控制器编程模型,将RL控制流与计算流解耦,在PPO【29, Proximal policy optimization algorithms. 2017. arXiv】、GRPO【30, DeepSeekMath: Pushing the limits of mathematical reasoning in open language models. 2024. arXiv】等算法上实现了业界领先的吞吐量。这些框架在扩展推理型RL方面发挥了重要作用;然而,它们主要为单轮或短时交互设计,并假设训练-推理环境是紧密耦合的。

智能体原生RL框架。新一波框架应运而生,以满足智能体训练的特定需求。MiniMax的Forge【20, Forge: Scalable agent RL framework and algorithm. 2026. Hugging Face Blog】引入了一个中间件抽象层,将智能体视为黑盒,其LLM请求通过服务网关路由,并将上下文管理作为RL循环中的一个显式智能体动作来缓解上下文退化。由清华大学和蚂蚁集团联合开发的AReaL【6, AReaL: A large-scale asynchronous reinforcement learning system for language reasoning. 2025. arXiv】开创了完全异步的训练-推理解耦,实现了3-5倍的加速;其v1.0版本引入了Proxy Worker中间件,使任何智能体只需更改一个API端点即可连接到RL训练。微软研究院的Agent Lightning【19, Agent lightning: Train ANY AI agents with reinforcement learning. 2025. arXiv】将智能体经验转换为状态-动作-奖励转换,实现了对现有框架的低侵入式集成。OpenTinker【46, OpenTinker: Separating concerns in agentic reinforcement learning. 2026. arXiv】通过强化学习即服务(RLaaS)架构和用于多智能体训练的智能体协议协调器,推进了关注点分离范式。OpenClaw-RL【36, OpenClaw-RL: Train any agent simply by talking. 2026. arXiv】将每次智能体交互都视为持续在线策略优化的实时训练信号。

与这些系统的比较。与这些系统相比,AgentJet提供了:(1) 在任意设备间通过多对多拓扑实现训练和推理的完全解耦;(2) 无需参数共享的异构多模型多智能体RL;(3) 架构级别的容错能力,客户端故障不会中断训练;(4) 用于高效多轮训练的时间线合并技术,带来1.5-10倍的加速;以及(5) 无需任何代码修改的、框架无关的黑盒智能体支持。

2.2 自动化科学研究

AI进行研究的愿景已迅速发展。Sakana AI的AI Scientist【18, The AI scientist: Towards fully automated open-ended scientific discovery. 2024. arXiv】展示了从想法产生到代码实现、实验、论文撰写和同行评审的端到端自动化研究。Google DeepMind的AI Co-Scientist【8, Towards an AI co-scientist. 2025. arXiv】进一步探索了AI驱动的科学假设生成和实验设计。香港大学的AI-Researcher【32, AI-Researcher: Autonomous scientific innovation. 2025. NeurIPS 2025 Spotlight】获得了NeurIPS 2025的Spotlight奖。AgentRxiv【28, AgentRxiv: Towards collaborative autonomous research. 2025. arXiv】利用多智能体协作迭代改进结果,通过自动化研究周期将MATH-500【10, Measuring mathematical problem solving with the MATH dataset. 2021. NeurIPS】的准确率从70.2%提高到78.2%。OpenAI已将全自动AI研究员确定为核心长期目标【21, OpenAI is throwing everything into building a fully automated researcher. 2026. MIT Technology Review】。

AgentJet的独特之处。然而,这些系统主要关注生成研究论文或在几分钟内完成的任务上优化基准分数。AgentJet的自动化研究流水线针对一个互补且较少探索的问题:协调长时程的实验活动,其中单个训练运行持续数小时到数天,多个实验必须在GPU集群上调度,并且需要自适应的多阶段实验设计来得出研究结论。

A3 方法细节

AgentJet是一个分布式的智能体强化学习框架,它协调有或没有GPU的异构设备,以同时训练一个或多个LLM模型,从而提高任务性能和模型能力。AgentJet采用一种群体架构,其中多个节点形成一个训练网络,适用于广泛的智能体训练场景。

3.1 群体架构

现有框架的耦合假设及其问题。大多数现有的智能体RL框架都基于两个隐含的耦合假设。首先,给定任务中的所有智能体都必须共享一个可训练的LLM,因为主流的训练后端被设计为一次只优化一个模型。其次,rollout工作节点与训练过程紧密耦合,在承载梯度计算的同一台机器和同一运行时中执行。这些假设混淆了两种可靠性特性截然不同的工作负载:梯度计算是GPU密集型的,受益于紧密的同地部署;而智能体rollout则主要由与外部工具、MCP服务【2, Introducing the Model Context Protocol. 2024. Anthropic】和远程资源访问的交互主导,这些交互的常规故障(如配额耗尽、速率限制)经常中断训练并导致未保存进度的丢失。

耦合带来的研究限制。这种耦合进一步阻碍了一些日益重要的研究方向,包括具有非共享参数的异构多智能体RL、多领域联合训练,以及依赖重量级运行时的智能体的在线策略(on-policy)训练。AgentJet通过将训练和rollout平面解耦为一组协作的节点群体,解决了这两种耦合问题。

AgentJet的群体架构设计。如图1所示,AgentJet采用基于群体的训练架构,通过两种类型的节点进行协调,这些节点可以部署在一个或多个硬件设备上,并可以随时加入或离开群体:
* 群体服务器节点(优化器节点):每个服务器节点是在GPU服务器或集群上运行的训练引擎。服务器节点执行LLM策略梯度更新,托管vLLM【16, Efficient memory management for large language model serving with PagedAttention. 2023. SOSP】/SGLang【44, SGLang: Efficient execution of structured language model programs. 2024. NeurIPS】推理API并进行自动上下文跟踪,以及管理回合(episode)的生命周期。多个服务器节点可以并发操作,每个节点服务和训练一个不同的模型(例如,Qwen3-32B和Qwen3-14B),从而实现非共享参数的多智能体训练。当前的服务器节点实现基于veRL【31, HybridFlow: A flexible and efficient RLHF framework. 2024. arXiv】,以获得与大多数RL算法的最佳兼容性。
* 群体客户端节点(采样节点):客户端节点是轻量级的、仅需CPU的进程,可以运行在任何设备上,包括工作站、笔记本电脑,或与服务器相同的机器上。每个客户端执行任意的智能体工作流,读取数据集,运行智能体循环,并计算特定于任务的奖励。当客户端与服务器的推理API交互时,服务器会透明地捕获所有上下文用于训练。此外,客户端可以被授权来操作服务器节点,以更新训练配置、终止或重启训练,以及获取训练进度。客户端节点也可以安全地重启并重新加入训练网络,而不会影响整个训练过程。


图1: AgentJet群体训练架构。群体服务器(优化器节点)在GPU集群上托管模型权重,而群体客户端(采样节点)执行智能体工作流并收集强化学习训练轨迹。群体网络是动态形成的,客户端可以随时加入和离开,从而实现容错操作、热插拔调试和多模型训练。

群体网络的组成与灵活性。一个AgentJet训练网络(群体)由相互连接但独立操作的服务器和客户端节点组成。一方面,服务器节点的数量由正在训练的模型的数量决定,因为每个服务器独立托管和训练一个不同的模型。另一方面,客户端节点的数量非常灵活;研究人员可以动态添加节点以增加冗余、同时在多个数据集上训练、运行非计划的评估、在训练中调试奖励函数等等。单个客户端可以自由地终止、修改和重启,而群体的其余部分继续不间断地训练,不同的客户端可以在完全隔离的运行时环境中运行,例如独立的Docker容器、虚拟机,甚至不同的操作系统。

3.2 群体强化学习范式

分布式RL流程。AgentJet中的强化学习过程在概念上与其他RL框架相似;不同之处在于责任如何在群体中分布。通过将轨迹收集与模型优化解耦,群体架构使RL过程更加灵活和可扩展,并能适应更复杂的实验设置。基本过程按以下阶段展开:

(1) 设置群体服务器。群体服务器在RL训练群体网络中承载模型和模型优化器。初始化时,每个群体服务器从零开始(不加载任何训练参数或LLM模型),仅声明一个地址以在群体网络中注册自己,等待一个提供训练配置和启动指令的群体客户端来唤醒。


图2: 服务器和客户端节点之间的群体强化学习范式,展示了网络建立、回合生命周期和异步权重更新触发。

(2) 连接群体客户端。群体客户端是智能体运行器和RL轨迹生成器,它们通过执行使用指定LLM进行训练的智能体来收集轨迹。一个群体可以包含任意数量的客户端,从单个到多个,运行在任何设备和操作系统上。在任何情况下,一个指定的客户端充当控制器,它激活和停用群体服务器并同步训练参数。一旦训练参数被传送到群体服务器,服务器进入“启动”(Booting)阶段,最后在所有模型权重加载到内存后进入“运行”(Rolling)阶段。

(3) 收集轨迹。强化学习从此阶段开始,群体服务器为客户端暴露一个与OpenAI兼容的推理API,以执行智能体回合(在智能体开发中即智能体循环或工作流),同时透明地捕获所有上下文和轨迹用于后续的策略训练。要开始一个回合,客户端需要在每个参与的服务器上注册该回合,并从每个服务器获取一个专用的BaseUrl/ApiKey对(编码有唯一的回合标识符),这个对既是服务器特定的(以便客户端可以寻址到该服务器上的相应LLM),也是回合特定的(以防止跨回合干扰)。一旦批准,每个群体服务器会创建一个绑定到该回合的内部上下文跟踪器,以记录所有通过它路由的智能体LLM请求。在大多数情况下,群体中的每个节点必须并发处理多个回合;每个回合的BaseUrl/ApiKey对将每个推理请求路由到正确的上下文跟踪器。一个回合可能被客户端中止(例如,外部环境失败)或被服务器中止(例如,超出截止时间)。成功完成后,客户端将回合奖励提交给服务器,之后该回合的轨迹被接纳到服务器的样本池中。

(4) 优化模型。当样本池达到容量或满足其他预定义条件时(参见3.3节),群体服务器转换到“权重同步”(Weight_Syncing)阶段以优化LLM。首先,AgentJet的时间线合并模块合并样本池中的轨迹以减少冗余。其次,根据所选的RL算法计算策略梯度和其他损失项,以执行优化器步骤,更新完整的模型权重或LoRA【12, LoRA: Low-rank adaptation of large language models. 2022. ICLR】矩阵权重。最后,服务器返回到“运行”(Rolling)阶段,恢复如步骤(3)所述的轨迹收集。

(5) 评估。群体架构的一个优点是评估任务可以随时在任何节点上安排。训练和评估可以同时进行;关键区别在于,评估回合必须在完成后中止,以防止其轨迹进入训练样本池。

3.3 回合批处理

传统批处理的局限性。大多数传统的RL框架采用预先调度的批处理行为,假设回合批次大小、组容量和任务组成在整个训练过程中保持固定。然而,这种做法阻碍了高级采样控制方法的灵活使用,例如DAPO【42, DAPO: An open-source LLM reinforcement learning system at scale. 2025. arXiv】中的动态采样,研究人员必须应用非平凡的事后过滤来丢弃优势估计为零的样本,这个过程从根本上与预定批处理相冲突。

AgentJet的灵活批处理机制。利用其基于群体的架构,AgentJet支持多种控制样本批处理的机制,使得混合异构样本和提高整体采样效率变得前所未有地简单和直接。随着回合的完成,服务器将它们累积在一个按任务身份组织的样本池中。令 $B = \{(t_i, E_i)\}$ 表示该池,其中 $t_i$ 是唯一的任务标识符,$E_i = \{e_{1i}, \dots, e_{|E_i|i}\}$ 是任务 $t_i$ 的已完成回合集合,每个回合都有奖励 $r_j$。令 $B$ 表示批次大小,$N$ 表示每个任务的rollout重复次数。AgentJet提供了五种收集策略,分为两组:服务器端策略(C1–C3)和服务器-客户端协议策略(C4–C5)。前者(C1–C3)采用纯粹的生产者-消费者模型,其中服务器单方面决定样本池 $B$ 何时准备好触发下一次策略更新。后者(C4–C5)将客户端节点的状态纳入调度决策;具体来说,服务器在继续下一次策略更新之前等待一个或所有客户端节点的确认。


图3: AgentJet中群体协调的强化学习。群体客户端针对群体服务器暴露的OpenAI兼容推理端点运行智能体回合;带有奖励的已完成回合被累积在一个按任务组织的样本池中。此外,样本池收集策略可以根据特定的实验需求进行调整。

服务器状态转换。一旦策略更新被触发,群体服务器节点首先转换到Rolling_Post状态,在此状态下,新的回合请求被拒绝,而正在进行的回合被允许完成。然后它进入Weight_Syncing状态,在此状态下执行策略梯度步骤,并将更新后的权重广播到推理引擎。一旦所有优化器步骤执行完毕,服务器节点切换回Rolling状态。


图4: 群体服务器监控,实时样本收集进度驱动图3中的C1-C5触发标准。

3.4 上下文跟踪与框架无关的智能体支持

支持黑盒智能体。许多现代智能体采用复杂的内部设计,通过记忆、技能、目标循环和自动压缩等机制来管理LLM上下文。为了通过强化学习提高这类智能体的LLM性能,训练框架必须是框架无关的,并为黑盒智能体提供支持,即那些需要零修改且无需框架级工具注入的智能体实现。AgentJet通过在每个群体服务器内独立运行的回合级上下文跟踪和重构机制来实现这一点。

3.4.1 框架无关的集成

通过OpenAI兼容端点实现。每个群体服务器都暴露一个与OpenAI兼容的端点。要训练任意智能体,实践者只需将智能体的LLM基础URL和API密钥替换为AgentJet提供的即可。API密钥是回合特定的,并编码了回合信息;参见3.2节。所有推理请求都被拦截、分词、记录,并转发到实际的vLLM/SGLang后端。这支持任何通过HTTP通信的智能体框架,包括LangChain【4, LangChain. 2022. GitHub】、AgentScope【7, AgentScope: A flexible yet robust multi-agent platform. 2024. arXiv】、MetaGPT【11, MetaGPT: Meta programming for a multi-agent collaborative framework. 2024. ICLR】、AutoGen【38, AutoGen: Enabling next-gen LLM applications via multi-agent conversation. 2023. arXiv】、CrewAI【23, CrewAI: Framework for orchestrating role-playing, autonomous AI agents. 2023. GitHub】、OpenAI SDK以及自定义的HTTP实现。

3.4.2 上下文跟踪器和时间线合并

上下文跟踪器。每个被拦截的LLM调用在上下文跟踪器中产生一个独立的时间线。每个时间线是一个消息块数组,其中每个块包含:一个作者标签(llm, env, user)、一段文本、一个token ID序列、一个逐token的对数概率序列和一个二元损失掩码序列。形式上,第$i$次LLM调用的时间线$T_i$是一个包含$K_i$个消息块的有序数组:

其中,$m_i^{[k]}$是文本消息,$x_i^{[k]}$是token ID序列,$a_i^{[k]} \in {\text{llm, env, user}}$是作者标签,$\ell_i^{[k]}$是逐token的对数概率,$\mu_i^{[k]} \in {0, 1}^{|x_i^{[k]}|}$是损失掩码(仅对LLM生成的token设为1)。

时间线合并。在每个回合结束时,上下文跟踪器持有一个有序的时间线列表$T = (T_1, \dots, T_n)$,每个被拦截的LLM调用对应一个。由于后续轮次会重用早期轮次作为提示,这些时间线共享长的公共前缀,因此将每个时间线视为独立的训练样本会夸大样本数量而没有新的监督信息。时间线合并将每个匹配更长时间线前缀的时间线吸收到该更长的时间线中,并保留哪些token是LLM生成的。具体来说,合并按逆序进行(算法1):$T_n$依次吸收$T_{n-1}, \dots, T_1$,然后$T_{n-1}$(如果尚未被吸收)吸收剩余的更早时间线,依此类推。幸存的时间线构成$T'$。

算法1 时间线合并

成对可合并性。一个较长的时间线$S$和一个较短的时间线$T$是可合并的,当$|S| \ge |T|$且对于所有$k \in [1, |T|]$,Match(S[k], T[k]) = TrueMatch是根据所选策略(见下文的宽松匹配策略)的token级或文本级相等性判断。

需要: 按收集时间排序的有序时间线 $T = (T_1, T_2, \dots, T_n)$;匹配谓词 Match(·, ·)
确保: 合并后的时间线集合 $T'$,其中已吸收的时间线被移除。
1: $A \leftarrow \emptyset$ {已吸收时间线的索引}
2: for $i = n$ downto 2 do
3: if $i \in A$ then
4: continue
5: end if
6: for $j = i - 1$ downto 1 do
7: if $j \in A$ then
8: continue
9: end if
10: if $|T_i| \ge |T_j|$ and Match($T_i^{[k]}, T_j^{[k]}$), $\forall k \in [1, |T_j|]$ then
11: for $k = 1$ to $|T_j|$ do
12: if $T_j^{[k]}.\text{author} = \text{llm}$ and $T_i^{[k]}.\text{author} \neq \text{llm}$ then
13: $T_i^{[k]}.\text{author} \leftarrow \text{llm}$
14: $T_i^{[k]}.\text{tokens} \leftarrow T_j^{[k]}.\text{tokens}$
15: $T_i^{[k]}.\text{logprob} \leftarrow T_j^{[k]}.\text{logprob}$
16: end if
17: end for
18: $A \leftarrow A \cup {j}$ {$T_j$ 被吸收到 $T_i$}
19: end if
20: end for
21: end for
22: return $T' = (T_i)_{i \notin A}$ 按原始顺序

宽松匹配策略。为了处理现实世界中的分词漂移(文本编码后再次编码会产生不同的token序列),提供了两种可配置的匹配策略选项:
1. token:在每个对齐位置进行精确的token-id匹配;适用于严格的训练/推理一致性。
2. text (默认):在每个对齐位置进行精确的文本匹配;能容忍分词器漂移并产生更积极的合并。

匹配策略的权衡。对于大多数时间线对,这两种策略产生相同的结果,但它们恰好在研究人员必须在训练效率和训练-推理(TI)一致性之间进行权衡的边界上出现分歧。图5展示了这样一种情况:在Qwen3聊天模板下,一旦附加了后续的助手轮次,分词器会从早期的助手消息中剥离thinking块,导致即使文本相同,token数组也不同。在文本级匹配下,时间线合并为一个,以TI一致性为代价最大化训练速度。在token级匹配下,时间线保持分离。当工作负载对这种分词器引起的漂移敏感,并且需要与推理时token流精确对齐时,首选token级匹配。


图5: Qwen3上的文本级与token级时间线匹配。较早的助手消息在附加了后续轮次后,其thinking块被剥离,因此两个时间线在文本上一致,但在token id上不同:文本级匹配将它们合并,而token级匹配则保持它们分离。

3.5 群体解耦带来的能力

核心设计。AgentJet的群体架构将GPU密集的模型训练与智能体执行解耦。群体服务器维护模型权重、优化器状态、推理引擎和训练样本,而群体客户端则运行智能体循环、任务环境、工具、奖励函数、评估代码和实验控制逻辑。这种设计直接实现了以下能力。

A4 实验环境

A5 实验结果

5.1 共享参数多智能体训练:狼人杀游戏

表1: 不同可训练智能体配置下的狼人杀训练实验。缩写:ww=狼人,vl=村民,sr=先知,wt=女巫,ht=猎人,SR=成功率。


图6: AgentJet Beast-Logger渲染的狼人行为在微调前后的token级可视化。左:基础模型一旦被投票出局就公开承认身份。右:微调后的智能体则发出欺骗性的generate_response

5.2 非共享参数多智能体训练

表2: 非共享参数多智能体训练实验。多个带有LoRA的14B模型被同时训练,每个模型控制不同的角色。缩写:ww=狼人,vl=村民,sr=先知,wt=女巫,ht=猎人,SR=成功率。

表3: 基础版与微调版Qwen2.5-7B-Instruct的翻译对比。微调后的模型正确处理了缩写扩展、第一人称代词替换和专有名词翻译。

5.3 多任务鸡尾酒式训练


图7: AIME(左)和AppWorld(右)上每步的训练奖励,比较了鸡尾酒式联合训练(橙色,同一运行显示在两个图中)与两个独立的单任务专家:一个专门的AIME运行(绿色)和一个专门的AppWorld运行(蓝色)。细线和标记显示原始步骤奖励;粗线显示5步滚动平均值。两种方案都使用Qwen3-8B和GRPO在同一个8-GPU节点上;鸡尾酒式运行每步使用16(AppWorld)+16(AIME)的批次,而每个单独运行使用32的批次。所有曲线都裁剪到所有运行共同覆盖的163步范围内。

5.4 常规多轮训练


图8: 时间线合并对多轮AppWorld群体RL任务的影响(前25个训练步骤;两个运行除合并开关外完全相同)。左:真实奖励;中:每步的LLM调用次数;右:actor更新的墙上时钟时间。奖励和调用次数曲线紧密跟踪,而actor更新时间平均减少了6.25倍,因此巨大的加速并未牺牲训练质量。


图9: 跨基准任务(行)和AgentJet git提交(列,按提交日期排序)的每步滚动平均奖励。这些基线由自动化研究智能体定期执行,反映了AgentJet框架在快速迭代期间的稳定性。


图10: 对四种智能体循环实现(OpenAI SDK, LangChain, AgentScope, Raw HTTP)进行框架无关的训练,在DAPO-Math-17k上使用相同的Qwen3-8B GRPO配方进行100步训练。左:每步训练奖励(critic/rewards/mean);细线和标记是原始值,粗线是5步滚动平均值。右:在AIME-2025、AIME-2026和DAPO-Math-Tiny-Val上采样的十个检查点的留出评估奖励;最后一步的跨臂差距为0.025,任何对齐检查点的最大跨臂差距都保持在0.04以下,证实了智能体循环框架的选择对AgentJet的训练是透明的。

6. 自动化研究

AgentJet的群体架构支持两种互补的智能体辅助研究能力:“氛围训练”(Vibe Training)和“阿尔法自动化研究”(A3R)模块。

6.1 氛围训练 (Vibe Training)


图11: “谁是卧底”多智能体游戏的示例氛围训练曲线。

6.2 自动化研究流水线 (A3R)


图12: AgentJet阿尔法自动化研究(A3R)流水线。


自适应多阶段探索(通常在几天内进行2-5个阶段)
图13: 多阶段研究循环。每个阶段包括蓝图生成、在GPU集群上并行执行实验和结果分析。每个阶段的发现为下一阶段的设计提供信息,从而实现对研究目标的自适应收敛。

表4: AIME最小稳定批次大小案例研究的时间顺序追踪。每一行都是由领导者智能体(规划、综合)或工作者智能体(执行)发出的一个自包含的产物。所有运行都使用Qwen3-8B + GRPO,其中ppo_epoch=1,mini-batch num=1,每个实验使用8-GPU FSDP,total_training_steps=60。

A6 结论

本文介绍了AgentJet,一个为智能体强化学习设计的、新颖的LLM后训练架构。其关键设计选择是将模型优化平面与智能体执行平面分离。这种分离为智能体RL提供了一个更清晰的接口:优化端可以专注于模型训练,而执行端可以专注于运行智能体、任务、奖励和评估。因此,AgentJet是框架无关的,并支持训练使用OpenAI兼容端点的黑盒智能体。

这种解耦的接口还提供了容错性、运行时隔离和热插拔调试。失败的客户端可以被重启、移除或替换,而不会终止服务器或中断训练进度,并且不同的任务可以在不同的机器、容器、虚拟环境或操作系统上运行。由于客户端是隔离和可替换的,研究人员可以在客户端编辑智能体代码、训练算法、奖励、数据集或评估计划,为智能体RL创造了一种更像REPL的训练范式。

基于这个接口,AgentJet支持更复杂的训练范式,包括共享参数和非共享参数的异构多模型训练,以及多任务鸡尾酒式训练。这些范式得到了灵活的回合批处理和样本池控制、强大的上下文跟踪以及高效的时间线合并的支持。与Tinker【33, Tinker: A low-level training api for distributed LLM fine-tuning. 2025. Thinking Machines Lab】类似,AgentJet也实现了去中心化训练;Alpha Auto Research进一步将群体和“氛围训练”的思想扩展到长期的RL研究活动中,支持多日实验、并行集群利用和自适应消融研究。总的来说,AgentJet为智能体RL贡献了基础设施层面的创新:可靠性、可组合性、迭代速度、异构训练和更广泛的实验自动化。

A7 附录

A. “谁是卧底” – 氛围训练提示

附录A框中复现了在6.1节讨论的“谁是卧底”氛围训练案例研究中使用的完整自然语言提示。实践者向编码助手提供这个单一提示;所有的数据集模拟、游戏引擎实现、智能体执行器和群体客户端脚本都由此生成。

Vibe Training Prompt: “Who is the Spy” Multi-Agent Game Trainer

# Your task:

Write an agent that learns the “Who is the Spy” task, trained via a combination of reinforcement   
learning and supervised learning. Game rules are as follows:   
– The game has N players in total, most of whom are civilians, and a few are spies.   
At the start of the game, each civilian receives the same civilian word, and each spy receives a spy word that is similar but different from the civilian word (e.g., civilian word is “apple”, spy word is “pear”). In each round, all players take turns giving a verbal description of the word they were given. The description must truthfully reflect their own word, but must not state the word itself directly, nor reveal their identity too obviously.   
– After all players finish describing, the game enters the voting phase, where all players vote for whom they consider the most suspicious spy. The player with the most votes is eliminated. The game continues for multiple rounds until one of the following end conditions is met: ∗ Civilians win: all spies have been eliminated. ∗ Spies win: the number of spies  the number of civilians (spies gain a numerical advantage).   
– The agent needs to master two core capabilities through extensive self-play training: ∗ Description strategy learning: learn to generate the optimal description based on its own word and the current situation – one that neither reveals its identity nor fails to win recognition from teammates. ∗ Reasoning and decision learning: learn to accurately identify spies and make optimal voting decisions based on dialogue history, other players’ description patterns, and behavioral features.

– Training objective: maximize the agent’s win rate across different roles (civilian/spy), continuously optimizing strategy via self-play and reward mechanisms.

• Use the base model Qwen/Qwen2.5-7B-Instruct.

• Train with 8 GPUs.   
• Batch size 16.   
• I currently have no dataset; you need to help me mock a small amount of game episode data for testing and initial training.   
• Use the OpenAI SDK, flexibly using Tools.   
• No Chinese characters are allowed in the code.

Your skill (read this SKILL file first to acquire the necessary knowledge): ./ajet/copilot/write-swarm-client/SKILL.md

# Additional requirements:

• optional 0. (agent_roll) team A civilians share a single 7B model; team B spies use qwen-max (DASHSCOPE_API_KEY is already in the environment variables). For each episode, randomly assign everyone’s ID and name (randomly generate a long list of random full names). Winners get reward 1, losers get reward 0. optional 1. (agent_roll_adv) adversarial training: team A civilians share one 7B model (swarm server 1), team B spies share another 7B model (swarm server 2). For each episode, randomly assign everyone’s ID and name (randomly generate a long list of random full names). Winners get reward 1, losers get reward 0.

# Additional requirements:

• agent_roll: use 4 GPUs.   
• agent_roll_adv: swarm server 1 and swarm server 2 each use 4 GPUs (8 GPUs in total).

Additional requirements: debug using tmux + uv’s .venv until all bugs are cleared and training starts normally. You may use the three tmux sessions spy-swarm-server, spy-swarm-server-2, spy-swarm-client.

• Current debugging stage: – Debug agent_roll [execute debugging]. – Debug agent_roll_adv [skip debugging].

B. AIME最小稳定批次大小研究目标

附录B框中复现了提交给AgentJet阿尔法自动化研究(A3R)模块的逐字研究目标,用于第6节的案例研究(表4)和第6.2.2节的独立分析。A3R仅接收了目标句和约束列表;之后的所有内容(阶段分解、蓝图编写、并行分派、崩溃恢复和最终综合)都是自主执行的。

# Original research objective (delivered verbatim to the auto-research agent)

Goal. Find the minimum batch_size that still trains the AIME agent efficiently (batch_size from 1 to 64), and determine whether max_response_length_in_one_turn influences that value.

# Constraints.

• Base code project directory: agentjet_codebase.   
• Reference tutorial: agentjet_codebase/tutorial/opencode_build_aime.   
• Create new swarm training clients under agentjet_codebase/tutorial/opencode_build_aime/auto_ research/.   
• Model: Qwen3-8B.   
• Python interpreter: agentjet_codebase/.venv/bin/python.   
• Max total_training_steps: 60.   
• 8 GPUs per experiment.   
• PPO_EPOCH= 1, MINI_BATCH_NUM=