一段话总结

paper;https://www.alphaxiv.org/abs/2512.04987

Nex-N1:从被动LLM到自主代理的生态革命

大家好,今天我想和大家分享一篇新鲜出炉的论文:《Nex-N1: Agentic Models Trained via a Unified Ecosystem for Large-Scale Environment Construction》。这篇由Nex-AGI团队发布的论文(arXiv: 2512.04987v1),直击当前LLM向自主代理转型的核心痛点:从“下一个token预测”的静态模仿,转向激励驱动的决策行动。但这个转变被环境信号的稀缺卡住了——现有框架覆盖窄、模拟不稳、缺乏真实 grounding,导致代理在长程任务中容易幻觉或卡壳。论文提出“agentic scaling”方法,通过一个统一生态系统(Nex生态)自动化构建大规模交互环境,训练出Nex-N1系列模型。它在SWE-bench等基准上超越同规模开源模型,接近专有SOTA,并开源了生态代码、模型权重和部分数据,超级值得我们这些搞代理的社区关注。

环境构建是论文的灵魂,占了大半篇幅。传统问题在于环境的“三个维度”缺失:复杂度低(手动层次难扩展)、多样性弱(任务域有限)、保真度差(合成数据忽略真实延迟和错误)。Nex生态巧妙拆解:首先是NexAU,一个轻量运行时,像“代理宇宙”一样,用递归ReAct架构统一工具、子代理和MCP(真实API如GitHub)。它用YAML声明式配置隐藏复杂性,支持从单代理到34节点多层组织的无限拓扑,隔离上下文避免溢出,确保高吞吐模拟。其次,NexA4A(Agent for Agent)是生成工厂:输入自然语言描述(如“建个软件开发团队”),MetaAgent解析成任务树,自动合成代理prompt、工具和框架拓扑,产出200+变体框架,覆盖无限领域。最后,NexGAP管道桥接一切:用真实MCP工具做种子,融合Problem Type Tree合成多样查询(加web grounding防幻觉),NexAU执行后迭代评估(过滤奖励黑客),输出7种格式的端到端轨迹,捕捉真实反馈循环。

简单说,这套生态把环境从“手工活”变“生成式工厂”:NexA4A提供广度,NexAU加深度,NexGAP保真实。结果呢?Nex-N1在τ²-bench(双控协作)和GAIA 2(端到端代理)上大幅领先开源基线,SWE-bench达70.6%,甚至在跨框架(如OpenHands)上稳定63.5%。实际应用中,它驱动深研代理(Deep Research Bench 47%)和海报生成,输出可视化报告超实用。未来,他们计划推向RL模拟平台,让代理自探索更难环境。这不只是一篇论文,更是个开源工具箱——GitHub上试试NexAU的YAML,就能感受到从环境瓶颈到代理自治的飞跃。

从环境构建到代理自治:Nex-N1与统一生态系统的创新实践

今天,我们来聊聊一篇刚刚发布的论文:《Nex-N1: Agentic Models Trained via a Unified Ecosystem for Large-Scale Environment Construction》(arXiv: 2512.04987v1)。这篇由Nex-AGI团队撰写的论文,直击当前代理学习的核心痛点——如何大规模构建高质量、多元化的交互环境,以桥接LLM从“被动响应”向“主动决策”的范式转变。作为agent environment构建者和代理模型训练者,这篇工作绝对值得深挖。它不仅提出了一个完整的生态系统,还开源了模型权重和部分数据,极大降低了社区的实验门槛。

为什么代理学习需要“环境革命”?

回顾LLM的发展,从GPT系列的知识表示,到如今的代理自治(如ReAct范式),我们看到一个清晰的演进路径:从“说什么”到“怎么做”。但正如论文引言所述,当前LLM预训练的“下一个token预测”目标,与代理任务的长时程、目标导向性质存在根本性错位。代理需要感知环境、规划行动、处理反馈,但现有问题主要有两点:

  • 环境稀缺与单一:静态文本语料让模型停留在“系统1”式直觉响应,缺乏“系统2”式的长程规划(Bengio et al., 2021)。现有框架(如OpenHands或Claude Code)虽丰富,但覆盖任务窄、实现不稳定,无法支持大规模轨迹生成,导致模型泛化差(Valmeekam et al., 2023)。
  • 现实 grounding 缺失:纯合成数据忽略了真实执行的延迟、随机性和错误恢复,导致工具调用幻觉频发(Patil et al., 2023b)。生物系统通过交互学习,而LLM往往在失败时卡壳。

论文的核心洞见:代理能力源于交互,因此需要“agentic scaling”——通过自动化生成多元、复杂、真实的交互环境,来产生高质量轨迹数据。这不是简单堆数据,而是从环境构建的三个正交维度入手:复杂度(Complexity)多样性(Diversity)保真度(Fidelity)

Nex生态:统一框架下的环境自动化

论文引入了Nex生态系统,包括NexAU、NexA4A和NexGAP三个互补组件,形成了一个从配置到轨迹生成的闭环管道(见Figure 2)。这套系统将环境构建从手动工程转向生成式语言规范,实现了“无限扩展”。

1. NexAU:模块化运行时,支持复杂代理层次

NexAU是一个轻量、高吞吐的代理引擎,抽象掉框架特异性(如上下文传递、工具绑定),聚焦核心:给定上下文,决定下一个行动。它采用递归、分形架构,灵感来源于ReAct(Yao et al., 2023),将子代理、工具和外部服务统一为可互换单元。

  • 递归代理循环与层次分解:每个代理运行本地ReAct循环(感知-推理-行动)。子代理对父代理而言仅是“带输入schema的工具”——调用时创建隔离子上下文,避免上下文溢出,支持极长时程任务(如CTO代理委托Software Engineer)。
  • 声明式组合:用YAML配置定义代理persona、能力与层次关系(见Figure 3)。这解耦逻辑拓扑与实现,便于程序化生成,从单代理工具循环到多代理组织。
  • 统一接口:集成MCP(Model Context Protocol)连接真实API(如GitHub),支持Skills(类似Claude Skills,Anthropic 2025)注入少样本提示,支持全局存储模拟状态变化(如文件系统编辑)。

NexAU解决了现有框架的痛点:不稳定模拟与低多样性。它像一个“代理宇宙”,为大规模轨迹生成提供稳定基底。

2. NexA4A:从自然语言生成代理与框架

要覆盖无限领域,手动设计代理架构不可持续。NexA4A(Agent for Agent)就是一个“代理工厂”:输入自然语言描述,输出完整代理层次与工作流。

  • 单个代理生成:MetaAgent解析角色与meta-skills(e.g., 规划、工具调用),分解为NexAU组件(子代理、工具、MCP),经AgentBuilder输出配置。
  • 多代理框架生成:FrameworkBuilder构建声明式拓扑(节点与交互),MetaAgent选择工作流模式(如1-3层层次),分配角色与技能。最终合成自定义工具。

这套管道生成超过200个代理框架,节点数从1到34,覆盖ReAct单代理到多层协作,极大扩展了行为空间。

3. NexGAP:端到端轨迹生成,桥接模拟-现实鸿沟

NexGAP是数据引擎:用真实MCP工具作为“种子”生成框架查询 → NexA4A合成环境 → NexAU执行 → 归一化轨迹(支持OpenAI格式与多种XML变体)。

  • 真实MCP集成: curation 超100个生产级工具,从web场景提取数百交互模式,确保轨迹捕捉延迟、错误与状态性。
  • 信息融合查询合成:用Problem Type Tree(双语分类树)覆盖问题空间,逆频率加权采样 underrepresented 类别。每个查询条件于persona、问题类型、框架上下文与难度(易/中/难)。多代理编排:重写代理对齐persona-类型,合成代理分层生成,增强代理添加web grounding 或 fuzzification。
  • 非代理数据代理化:用搜索增强查询(防幻觉),监督工具反馈(二元视觉判断+迭代上限),质量评估代理(迭代JSON检查,过滤截断/重复/奖励黑客)。

最终,NexGAP产出覆盖7种工具调用格式的轨迹,奠定Nex-N1训练基础。

Nex-N1:生态驱动的SOTA代理模型

基于Nex生态,团队训练Nex-N1系列(基于Qwen3/DeepSeek等基座,8B-100B+规模)。结果亮眼(Table 1):

基准 Nex-N1 (8B) Nex-N1 (32B) Nex-N1 (100B+) SOTA 开源 (e.g., GLM-4.6) 专有 (e.g., Claude-Sonnet-4.5)
τ²-bench 63.0 72.1 80.2 75.9 88.1
GAIA 2 8.6 16.7 29.5 17.1 43.7
SWE-bench 20.3 50.5 70.6 68.0 77.2
BFCL v4 44.5 60.5 65.3 62.1 68.8
  • 通用代理:在τ²-bench(双控协作)和GAIA 2(端到端)上,Nex-N1超越同规模开源,接近专有模型。
  • 代理编码:SWE-bench(GitHub issue修复)达70.6%,Terminal-Bench 2(终端任务)31.8%,BaxBench(后端正确性)59.7%。用OpenHands脚手,迭代限150。
  • 工具使用:BFCL v4 65.3%,用Google Search稳定评估。

真实场景中(Figure 4-5),Nex-N1在项目开发(13场景,胜率64.5% vs. Claude)和网页创建(5领域,44.5% vs. 基线)中脱颖而出。跨框架鲁棒性强(Table 2):SWE-bench子集上,在Terminus 2 XML (51.2%)、Claude Code (62%)、OpenHands (63.5%)均稳定。

此外,Nex-N1赋能研究代理:Deep Research Agent (Figure 6) 在Deep Research Bench 达47.0%;Paper2Poster Agent 生成中英双语海报(Figure 8)。

启示与展望:开源生态的社区价值

Nex生态的核心创新在于“生成式环境”:从语言规范到真实轨迹,打破人工瓶颈,支持无限扩展。这对agent environment研究者是福音——NexAU的YAML配置和NexA4A的MetaAgent可直接复用,加速自定义框架实验;对代理训练者,NexGAP的轨迹生成管道提供高质量数据,助力长程规划与工具 grounding。

论文开源了Nex生态(GitHub: nex-agi/Nex-N1)、模型权重和部分数据,未来计划转向RL模拟平台:自动构建可验证、递增难度环境,支持自改进。

NexA4A生成机制详解:从自然语言到代理框架的自动化合成

作为一名专注于代理(Agent)与环境(Environment)研究的同行,如果你正在探索如何通过生成式方法大规模扩展代理行为空间,那么NexA4A(Agent for Agent)绝对是值得深挖的核心组件。它是Nex-AGI团队在论文《Nex-N1: Agentic Models Trained via a Unified Ecosystem for Large-Scale Environment Construction》(arXiv: 2512.04987v1)中提出的统一生态系统(Nex生态)中的关键一环,专注于多样性(Diversity)维度的扩展。NexA4A不是简单的代理生成器,而是将自然语言(Natural Language, NL)规范转化为完整代理架构和多代理框架的“元代理工厂”,从而打破手动设计环境的瓶颈,支持无限领域的交互拓扑生成。

在Nex生态中,NexA4A与NexAU(代理运行时)和NexGAP(数据管道)紧密集成:它生成的环境配置直接注入NexAU执行,产出轨迹再经NexGAP处理,形成训练Nex-N1的高质量代理数据。下面,我将从架构、机制、管道和实现细节入手,逐层剖析其生成过程。分析基于论文描述(Section 2.2),并结合生态整体逻辑,提供可操作的洞见。

1. NexA4A的核心目标与设计原则

代理能力的缩放(Agentic Scaling)需要不止高质量环境,还需广义行为分布:从单代理工具调用到多层协作组织,覆盖无限任务域(如编码、研究、规划)。传统框架(如OpenHands)依赖手动编码,难以规模化;NexA4A则将环境视为“生成式语言规范”,而非静态代码,实现:

  • 自动化合成:输入高水平NL描述(如“构建一个多代理软件开发团队,包括CTO、工程师和测试员”),输出YAML配置的代理层次。
  • 组件化抽象:每个代理由系统提示(System Prompt)定义角色与元技能(Meta-Skills),后者映射到NexAU组件(子代理、工具、MCP)。
  • 层次化扩展:支持1-3层深度,从原子代理到复杂框架,确保行为多样性(e.g., 论文生成200+框架,节点1-34)。

设计灵感源于ReAct范式(Yao et al., 2023),强调递归委托,但NexA4A更进一步:用LLM驱动的MetaAgent协调整个过程,避免硬编码依赖。

2. 关键组件剖析

NexA4A的核心是三个互补构建器(Builders),由中央MetaAgent orchestration。以下表格总结其角色:

组件 作用描述 输入/输出示例
MetaAgent 中央协调器:解析NL规范,选择工作流模式(e.g., 协作/管道),分解为层次任务。 输入:NL描述“设计一个研究代理框架”。
输出:任务分解树(e.g., 规划→检索→合成)。
AgentBuilder 生成单个代理:创建提示、子代理、工具选择/合成、MCP集成,形成完整配置。 输入:角色+元技能。
输出:YAML代理定义(见论文Figure 3类似)。
FrameworkBuilder 构建多代理框架:定义节点拓扑、交互结构(e.g., 委托/广播),组装1-3层系统。 输入:工作流模式+任务树。
输出:声明式YAML拓扑(节点、边、关系)。

这些组件通过子代理支持(如工具合成代理),形成闭环。MetaAgent是“脑”,Builders是“手”。

3. 生成机制详解:管道步骤

NexA4A的生成是一个端到端管道(Pipeline),从NL输入到可执行配置,自动化程度高。论文Figure 2展示了整体工作流(NexAAA框架),NexA4A占核心部分。以下是详细步骤分解,我用伪代码风格标注,便于你复现实验:

在这里插入图片描述

3.1 生成单个代理(Single-Agent Synthesis)

针对简单任务(如工具调用代理),过程聚焦角色定义与组件绑定:

  1. NL解析与提示生成

    • MetaAgent接收NL输入(e.g., “一个代码审查代理,能分析GitHub PR”)。
    • 使用LLM生成系统提示:概述角色(Persona,如"资深代码审查员")+元技能(e.g., “分析代码”、“建议修复”)。
    • 提示类型:Jinja模板,支持动态注入(见NexAU YAML)。
  2. 元技能分解

    • 每个元技能映射到NexAU组件:
      • 子代理:递归委托(e.g., “修复建议” → 子审查代理)。
      • 工具:选择现有(e.g., grep)或合成自定义(e.g., LLM生成代码分析脚本)。
      • MCP集成:绑定真实API(e.g., GitHub MCP工具)。
    • 约束:确保输入Schema兼容NexAU的统一接口(工具/子代理等价)。
  3. 配置组装

    • AgentBuilder输出YAML配置:包括LLM设置(model, temp)、工具绑定、中间件(logging)、Skills注入。
    • 示例YAML片段(基于论文Figure 3扩展):
      type: agent
      name: code_reviewer
      system_prompt: "You are a senior code reviewer. Analyze PRs for bugs and suggest fixes. Meta-skills: [analyze, suggest]."
      llm_config:
        model: ${LLM_MODEL}
        temperature: 0.7
      tools:
        - name: github_pr_fetch  # MCP工具
          binding: nexau.mcp.github
        - name: code_analyzer  # 合成工具
          yaml_path: ./tools/synthesized_analyzer.yaml
      subAgents:
        - name: fix_suggester
          config_path: ./sub_fix.yaml  # 递归生成
      skills: ['./skills/code_review_skill']
      
    • 输出:独立代理,可直接NexAU执行。

此过程生成时间<1min,支持批量(e.g., 变体采样不同persona)。

3.2 生成多代理框架(Multi-Agent Framework Synthesis)

针对复杂场景(如多层协作),扩展到框架级:

  1. 高水平规范解析

    • MetaAgent解读NL(e.g., “构建一个3层软件开发框架:CTO统筹、工程师实现、QA测试”)。
    • 选择模式:e.g., 层次委托(Hierarchical)或管道(Pipeline)。
    • 分解任务树:根节点(整体目标)→ 子任务(e.g., CTO: 规划;Engineer: 编码)。
  2. 拓扑构建

    • FrameworkBuilder生成声明式配置:
      • 节点定义:每个节点=代理(经AgentBuilder生成)。
      • 交互结构:边表示委托/共享状态(e.g., CTO → Engineer via GlobalStorage)。
      • 深度:1-3层,避免爆炸(e.g., 层1: Meta;层2: Core;层3: Tools)。
    • 分配资源:角色(Persona)、元技能、工具池(共享MCP)。
  3. 技能与工具合成

    • 子代理协调:e.g., 工具合成代理用LLM生成自定义脚本(“写一个PR合并工具” → Python snippet)。
    • 集成支持:动态注入Skills(少样本示例),确保兼容7种工具调用格式(OpenAI/XML变体)。
  4. 完整输出

    • YAML框架文件:根配置+子模块。
    • 示例拓扑(伪代码):
      type: framework
      name: software_dev_team
      nodes:
        - name: cto  # Layer 1
          config: ./cto.yaml
          children: [engineer, qa]
        - name: engineer  # Layer 2
          config: ./engineer.yaml
          tools: [code_gen, git_push]  # 合成+现有
        edges:
          - from: cto
            to: engineer
            type: delegate  # ReAct式调用
      
    • 规模:论文中生成200+框架,覆盖ReAct单体到多层系统。

整个管道用多代理编排:MetaAgent调用Builders,迭代精炼(e.g., 反馈循环检查兼容性)。

4. 与Nex生态的集成与数据流
  • 上游(NexGAP):NexGAP用真实MCP工具+信息融合查询(Problem Type Tree)生成NL规范,作为NexA4A输入。e.g., 从web场景提取"构建数据库查询代理"。
  • 下游(NexAU):生成的YAML直接加载NexAU运行,产出轨迹(e.g., 递归ReAct循环)。
  • 闭环优化:NexGAP的质量评估代理过滤低质框架(e.g., 无效工具),反馈迭代NexA4A。
  • 规模化:支持并行生成,论文中覆盖无限域(e.g., 编码→研究),轨迹多样性提升Nex-N1泛化(Table 1: SWE-bench 70.6%)。
5. 优势、局限与研究启示

优势

  • 无限扩展:NL驱动,零代码生成,远超手动框架(e.g., vs. LangChain的图编辑)。
  • 真实性:MCP+工具合成桥接模拟-现实,减少幻觉。
  • 鲁棒性:层次设计支持长程任务,论文Table 2显示跨框架稳定(OpenHands 63.5%)。

局限(基于论文隐含):

  • 依赖LLM质量:MetaAgent解析可能引入偏差,需fine-tune。
  • 深度限制:>3层易上下文溢出,未来可RL优化。

启示:对环境研究者,NexA4A是“生成式环境”的典范——可扩展到自定义域(e.g., 机器人模拟)。对代理训练者,它提供行为多样数据,助力SFT/RLHF。建议:用NexAU YAML原型,注入你的NL提示测试管道;未来工作可探索自适应MetaAgent(e.g., 集成τ²-bench反馈)。

NexAU组件集成细节详解:模块化运行时的架构与实现指南

作为代理(Agent)和环境(Environment)研究者,如果你对NexAU(Nex Agent Universe)感兴趣,这是一个轻量、高吞吐的代理引擎,专为大规模轨迹生成而设计。它抽象掉框架特异性(如上下文管理、工具绑定),聚焦核心执行逻辑:给定上下文,决定下一个行动。遗憾的是,正如你提到的,Nex-AGI团队的GitHub仓库(https://github.com/nex-agi/Nex-N1)目前(2025年12月)仅包含技术报告PDF(Nex-N1-TechReport.pdf)、基准图像和部署指南,没有NexAU的源代码、YAML配置或其他实现细节。模型权重托管在Hugging Face(如nex-agi/DeepSeek-V3.1-Nex-N1),生态代码可能后续开源或在私有repo中。

本解析基于论文《Nex-N1: Agentic Models Trained via a Unified Ecosystem for Large-Scale Environment Construction》(arXiv: 2512.04987v1,Section 2.1)中的描述,结合Figure 3的YAML示例,推断集成机制。我将从架构原则、核心组件、集成管道、伪代码示例和研究启示入手,提供可复现的指导。即使无代码,你可基于此用类似框架(如LangChain或Haystack)原型化NexAU。

1. NexAU的设计原则:统一抽象与递归执行

NexAU的核心是递归、分形架构,灵感来源于ReAct范式(Yao et al., 2023),将代理执行解耦为定义(Declarative)运行(Runtime)。它解决现有框架痛点:

  • 不稳定模拟:统一工具/环境/错误动态,支持大规模并行执行。
  • 低多样性:通过YAML配置生成从单代理到多层组织的拓扑。
  • 集成友好:抽象异构框架(如OpenHands、Claude Code),暴露一致接口,便于NexA4A生成和NexGAP数据流。

关键原则:

  • 组件等价:工具、子代理、外部服务(MCP)统一为“可调用单元”,输入Schema标准化。
  • 隔离执行:递归子上下文避免全局污染,支持长时程任务(e.g., 避免上下文窗口溢出)。
  • 声明式优先:YAML定义persona、能力、关系;运行时动态绑定逻辑,无需硬编码。

这使NexAU成为“代理宇宙”:输入配置,输出高保真轨迹,用于训练Nex-N1的代理能力(e.g., SWE-bench 70.6%)。

2. 核心组件剖析

NexAU由四个互补组件组成,形成闭环集成。以下表格总结其作用、集成点和论文依据:

组件 作用描述 集成细节与接口 论文依据(Section 2.1)
代理执行循环 (Agentic Loop) 标准化ReAct循环:感知上下文 → LLM推理 → 执行行动。支持流式(stream)和非流式。 与LLM绑定(e.g., model: ${LLM_MODEL});输出到观察流(Observation Stream)。集成温度/密钥 via 环境变量。 核心递归单元;隔离子循环。
递归委托 (Recursive Delegation) 子代理作为“工具”:父代理调用时,实例化隔离子上下文(prompt、状态、工具集)。 Schema统一:子代理输入如工具(e.g., JSON schema);终止条件返回结果。集成Global Storage跨层持久化。 层次分解;e.g., CTO → Engineer。
声明式Schema (Declarative Schema) YAML配置代理拓扑:persona、工具绑定、Skills注入。 解耦定义与实现:yaml_path指向工具定义;binding模块动态加载(e.g., nexau.archs.tool.builtin)。 Figure 3示例;支持NexA4A合成。
统一接口 (Unified Interface) MCP(真实API)、Skills(少样本提示)、Global Storage(线程安全状态)。 MCP: 连接GitHub/DB via 协议;Skills: 动态注入目录(prompts+examples);Storage: 模拟文件系统变化。 桥接现实;支持7种工具格式。

这些组件通过运行时引擎(Runtime Engine) 集成:YAML加载 → 解析拓扑 → 实例化递归树 → 执行ReAct → 追踪/日志。

3. 集成管道:从配置到执行的端到端流程

NexAU的集成是一个轻量管道(Pipeline),高吞吐(论文隐含支持大规模轨迹生成)。步骤如下(伪代码风格,便于复现):

3.1 配置加载与拓扑解析
  • 输入:YAML文件(e.g., agent.yaml)。
  • 过程:运行时解析schema,构建代理树(节点=代理,边=委托)。
  • 集成点:环境变量替换(e.g., ${env.LLM_API_KEY});绑定工具/子代理。
  • 伪代码(Python-like):
    import yaml
    from nexau.runtime import AgentRuntime  # 假设引擎
    
    def load_config(config_path: str) -> dict:
        with open(config_path, 'r') as f:
            config = yaml.safe_load(f)
        # 替换环境变量
        config['llm_config'] = {k: os.getenv(v[4:-1]) if v.startswith('${env.') else v for k, v in config['llm_config'].items()}
        return config
    
    runtime = AgentRuntime()
    agent_tree = runtime.parse_tree(load_config('nexau_code_agent.yaml'))  # 构建递归树
    
3.2 递归执行循环
  • 核心:每个代理运行本地ReAct:Thought → Action → Observation。
  • 集成递归:调用子代理时,fork子运行时(隔离prompt/state);结果注入父观察流。
  • 错误处理:模拟延迟/随机性(e.g., MCP API错误),支持重试。
  • 伪代码
    def react_loop(agent: Agent, context: dict) -> str:
        while not termination_condition(context):
            thought = llm.generate(agent.system_prompt + context['obs'], temp=agent.temp)
            action = parse_action(thought)  # e.g., tool_call or sub_agent_delegate
            if action['type'] == 'sub_agent':
                child_context = runtime.fork_context(agent.subAgents[action['name']])  # 隔离fork
                result = react_loop(child_agent, child_context)  # 递归
                context['obs'] += result
            else:  # tool
                result = execute_tool(action['tool'], action['args'], global_storage)  # 绑定工具
                context['obs'] += result
        return context['final_output']
    
3.3 组件注入与扩展
  • MCP集成:运行时注册协议(e.g., nexau.mcp.github),调用时代理真实API(latency/stateful)。
  • Skills注入:加载目录(prompts+examples+scripts),动态prepend到prompt(e.g., for 特定任务如代码审查)。
  • Global Storage:线程安全KV store(e.g., Redis-like),跨递归持久化(e.g., 文件编辑状态)。
  • 中间件/追踪:Hooks修改行为(e.g., LoggingMiddleware日志model/tool calls);Tracers如Langfuse导出执行树。
  • 伪代码(注入示例):
    # 在YAML解析后
    runtime.inject_skills(agent, ['./skills/code_review'])  # 动态prepend
    runtime.register_mcp('github', protocol='https://api.github.com')  # 真实绑定
    runtime.add_middleware(LoggingMiddleware(model_logger='nexau_debug'))  # Hooks
    runtime.add_tracer(LangfuseTracer(public_key=os.getenv('LANGFUSE_KEY')))  # 追踪
    
3.4 输出与Nex生态集成
  • 轨迹归一化:执行后,输出多格式(OpenAI/ XML),供NexGAP过滤。
  • 规模化:并行多实例(e.g., Ray/Dask),生成200+环境轨迹。
  • 与NexA4A/NexGAP:YAML从NexA4A合成;轨迹注入NexGAP质量评估。

完整管道耗时<1s/简单代理,支持无限深度(受LLM上下文限)。

4. YAML集成示例:基于论文Figure 3的扩展

论文Figure 3提供简化YAML,展示工具/子代理/Skills集成。以下是完整推断示例(编码代理,集成MCP+递归):

type: agent
name: nexau_code_agent
system_prompt: ./system-workflow.md  # Jinja模板:角色+meta-skills
system_prompt_type: jinja
llm_config:
  model: ${env.LLM_MODEL}  # e.g., gpt-4o
  base_url: ${env.LLM_BASE_URL}
  api_key: ${env.LLM_API_KEY}
  temperature: 0.7
  stream: False  # 非流式,集成观察流
tools:  # 解耦定义+绑定
  - name: todo_write
    yaml_path: ./tools/TodoWrite/tool.yaml  # 自定义工具定义
    binding: nexau.archs.tool.builtin.todo_write  # 运行时加载
  - name: grep
    yaml_path: ./tools/Grep/tool.yaml
    binding: nexau.archs.tool.builtin.file_tools.grep_tool
  - name: github_fetch  # MCP集成示例
    binding: nexau.mcp.github  # 真实API,schema: {repo: str, issue: int}
skills:  # 动态注入少样本
  - ./skills/template-skill  # prompts+examples for templating
  - ./skills/theme-factory  # for UI tasks
subAgents:  # 递归集成
  - name: sub_code_agent
    config_path: ./sub_code_agent.yaml  # 子YAML,隔离执行
middlewares:  # Hooks修改行为
  - import: nexau.archs.middleware.LoggingMiddleware
    params:
      model_logger: "nexau_code_model_debug"
      tool_logger: "nexau_code_tool_debug"
      log_modelCalls: true
tracers:  # 执行追踪
  - import: nexau.archs.tracer.adapters.langfuse.LangfuseTracer
    params:
      public_key: ${env.LANGFUSE_PUBLIC_KEY}
      secret_key: ${env.LANGFUSE_SECRET_KEY}
      host: ${env.LANGFUSE_HOST}
  - import: nexau.archs.tracer.adapters.in_memory.InMemoryTracer  # 本地调试
global_storage:  # 状态持久化
  type: thread_safe_kv  # e.g., 文件系统模拟
  path: ./workspace/  # 跨层共享

集成提示:加载时,运行时扫描binding模块(e.g., Python import nexau.archs),动态执行。子代理递归加载config_path。

5. 优势、局限与研究启示

优势

  • 高扩展:YAML+递归支持无限拓扑,远超静态图框架(e.g., vs. AutoGen的JSON)。
  • 真实 grounding:MCP+Storage桥接模拟-现实,减少工具幻觉(BFCL v4 65.3%)。
  • 调试友好:Tracers导出执行树,便于NexGAP质量评估。

局限(论文隐含+仓库现状):

  • 无开源代码(截止2025年12月8日):难以直接复现;需手动实现ReAct引擎(建议从LlamaIndex起步)。
  • 深度限:>3层易溢出,需优化LLM(e.g., long-context)。
  • 依赖外部:MCP需API密钥,Skills目录手动维护。

启示:对环境构建者,NexAU是“统一运行时”的蓝图——可fork ReAct库添加YAML解析,实现自定义集成;对代理训练者,它强调“轨迹多样性”,建议用此管道生成SFT数据。未来,关注仓库更新(最近commit: 2025-12-05上传PDF);若需原型,我推荐用Python+Typer构建最小NexAU,测试递归委托。

后记

2025年12月8日于上海,在supergrok辅助下完成。

Logo

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

更多推荐