26年6月来自剑桥、牛津和新加坡南阳理工的论文“Articraft: An Agentic System for Scalable Articulated 3D Asset Generation”。学习理解具有关节结构的3D物体articulated 3D objects时一个主要的瓶颈在于缺乏大规模且多样化的数据集。本文提出利用大语言模型LLM来弥补这一缺口并实现关节结构资产的大规模生成。其将生成关节结构3D资产的问题转化为编写构建该资产程序的问题。为此引入一个名为 Articraft 的智体系统用于自动编写此类程序。设计专门的编程接口和配套的驾驭harness以辅助 LLM 高效完成任务。LLM 针对特定领域的软件开发工具包SDK编写代码这些 SDK 支持定义部件、组合几何形状、指定关节以及编写测试用例以验证生成的资产。该驾驭向 LLM 提供受限的工作空间和接口负责验证生成的资产并返回结构化反馈。这种方式使 LLM 无需分心处理诸如编写 URDF 文件或管理复杂软件环境等繁琐细节。实验表明与当前最先进的关节结构资产生成器及通用代码生成智体相比该方法能生成更高质量的资产。利用 Articraft构建 Articraft-10K 数据集其中包含涵盖 245 个类别的 10,000 多个精选关节结构资产还展示该数据集在训练关节结构资产模型以及机器人仿真和虚拟现实等下游应用中的实用价值。诸如橱柜、钳子、台灯、婴儿推车、折叠椅和工业工具等具有活动部件的物体即“铰接式物体”在现实世界中无处不在因此对于3D内容创作、游戏、物理设计及机器人技术等领域的应用至关重要。由于这类物体的功能既取决于其几何形状也取决于各部件的运动方式因此仅对形状进行建模是远远不够的一种有效的表征方式必须能够涵盖部件层级结构、关节连接以及运动范围。该领域面临的一个核心障碍在于数据。现有的铰接式物体数据集规模较小、覆盖范围有限且质量参差不齐 [30, 55, 51, 31, 11, 50]。特别是许多具有实际应用价值的物体类别在数据集中往往代表性不足。这导致基于学习的方法容易在现有数据上产生过拟合且难以泛化到新的物体类别 [22]。弥补这一差距的途径之一是通过合成方式生成铰接式物体。尽管这一过程本身充满挑战但近期的智体agentic系统为我们指明了方向。诸如 Claude Code [1] 和 Codex [38] 之类的工具能够在极少人工干预的情况下规划、编写、调试并迭代优化软件。这些技术进展同样适用于3D生成领域因为铰接式物体与计算机程序一样都具有递归和组合式的结构特征。设计一个物体本质上是一系列决策过程将物体分解为各个部件、确定部件间的连接方式、设定关节与运动限制、实例化几何形状、验证运动行为并在出现问题时进行修订。这种工作流程与“智体编程”高度相似而与“一次性生成”模式截然不同。为了验证这一假设推出 Articraft——一个通过生成代码来大规模构建铰接式3D物体的智体。Articraft 的设计遵循三大原则首先是自动化即给定物体描述后无需人工干预即可生成铰接式物体其次是轻量化为了降低单个物体的推理成本并实现大规模数据生成该系统避免依赖大型外部图形软件如 Blender或基于图像的反馈机制最后是高表达力即能够涵盖广泛的铰接式物体类别包括复杂的机械结构。核心技术创新在于智体的设计该设计由两大组件构成智体驾驭agent harness以及对大语言模型LLM友好的软件开发工具包SDK。二者结合使得现成的off-the-shelf大语言模型LLM无需重新训练即可生成具有关节结构的3D资产这一过程利用了LLM的编程能力及其关于日常物体结构与运动方式的先验知识。这种设计使本文方法区别于以往基于LLM的关节资产生成方法 [57, 13, 20]。该SDK简化LLM理解资产生成方式的过程。LLM只需针对该SDK编写一段程序程序一旦执行便能生成完整的关节资产。该SDK设计精炼、表达力强且对LLM友好它涵盖广泛的关节物体类别同时保持了与常见编程模式的紧密联系从而确保生成的可靠性。它既提供底层原语如添加圆柱体也提供高层抽象如添加铰链使程序保持简洁易读此外它还允许LLM编写并执行针对特定物体的验证代码以测试结构的完整性。该“驾驭”harness将LLM转变为一个迭代式智体而非仅能一次性输出结果的生成器。该框架提供一个极简的工作空间与接口编辑程序、执行程序并接收或请求关于生成3D资产的反馈。其设计体现了深思熟虑的选择涵盖了上下文信息的暴露程度与结构组织、生成资产的验证方式以及迭代终止时机的判定。精炼的SDK与极简的执行框架相结合降低了单个资产的推理成本从而使大规模生成成为可能。这种设计能够生成涵盖多种类别的逼真关节物体。其性能不仅优于该领域的既有研究也胜过Codex [39]和Claude Code [1]等通用编程智体。此外该方案更加轻量化避免了以往方法常依赖的重型外部图形软件如Blender。利用Articraft构建Articraft-10K数据集这是一个包含超过1万个关节物体、涵盖245个类别的精选数据集。作为应用案例之一重新训练用于估计3D物体关节结构的模型Particulate [22]并实现了显著的性能提升。还展示了该方法在机器人仿真和虚拟现实领域的应用。将公开发布 Articraft-10K其中包括所有资产的代码表示、智体的推理轨迹以及智体环境本身该环境可与不同的 LLM 后端配合使用。Articraft是一个用于编写程序以构建可活动的 3D 模型的智体。给定一个自然语言描述 x 以及可选的对象参考图像Articraft 会编写一个 Python 程序 y该程序执行后会输出一个可活动的 3D 模型 a。该模型包含一个 URDF 文件其中包含 3D 网格、语义部件以及带有轴线和运动范围的关节。Articraft 遵循语言智体language agents“推理-行动-观察”reason-action-observation的模式以迭代方式构建 3D 资产。该智体采用具备编程能力的现成大语言模型LLME。LLM 接收一个系统提示词 p其中明确对象生成任务以及完成该任务所需的编程接口与驾驭harness。驾驭向 LLM 提供一个工作区及相应的接口用于操作程序。工作区维护着包含当前程序 y_t、当前资产 a_t 以及过往修订历史 h_t 的状态信息。LLM E(p, x, h_t) 接收系统提示词 p、用户提示词 x 和当前历史 h_t并输出一条或多条针对驾驭的指令。这些指令通过编辑程序、将其编译为新资产或探测资产以获取反馈来作用于当前状态 (y_t, a_t)。随后执行框架 C 输出新的状态 (y_t1, a_t1) 及反馈 s_t1并将它们追加到历史记录中以供下一轮迭代使用(y_t1, a_t1, s_t1) C(E(p, x, h_t), y_t, a_t)h_t1 h_t ∪ {(y_t1, a_t1, s_t1)}。当 LLM 不再发出编辑指令且满足验证标准时该过程终止。资产的最终版本 a_T 被采纳为最终输出结果。Articraft 的一项关键创新在于它为 LLM 后端提供一套专用于关节式 3D 设计的编程接口和执行框架图 2。这遵循了“智体-计算机接口应针对特定任务而非通用”的原则 [58]并显著提升了后端的效能——若无此设计后端仅为一个通用的现成编程模型。得益于此Articraft 无需依赖过往研究 [20] 中使用的视觉反馈从而避免生成和使用此类反馈所需的高昂成本。相反该驾驭与编程接口提供专用工具用于直接且高效地创建对象并检查其几何结构。1 Articraft 编程接口Articraft 生成的每个 3D 资产都由一个程序定义该程序包含单个 Python 文件model.py见图 3 示例。该文件公开了两个入口点build_object_model()用于构建铰接式对象run_tests()用于记录针对特定提示prompt的几何检查以及放宽某些检查的明确决策。随后它将构建好的对象绑定到 Python 变量object_model驾驭harness可利用该变量提取生成的资产。一种隐式契约将对象构建过程与系统执行细节如文件管理、URDF 导出和验证分离开来。智体只需基于下文所述的 SDK 编写代码指定目标的各个部件、其几何形状与铰接方式以及应满足的特定测试条件其余工作均由驾驭处理。这种方式既保证了可编辑目标的表达能力又保持了代码的精简。定义几何形状与部件。程序model.py利用 SDK 构建对象。在顶层程序构建一个ArticulatedObject并向其中添加具名部件Parts这些部件构成了资产的语义框架。部件之间可以通过关节连接并可被指定为测试和几何探测的目标。SDK 还包含多种定义部件几何形状的工具涵盖了从生成长方体、圆柱体和球体等低级图元到调用类 CAD 工具如 CadQuery [7]以及高级程序化生成器输出支撑结构、面板、铰链、轮子、格栅和扫掠轮廓等复杂结构的各种功能。这些工具具有可组合性和类别无关性能够创建多种多样的对象类型与形状。通过提供低级和高级图元智体既能保持对几何形状的精细控制又能编写出更简洁、Token 效率更高且更不易出错的程序。SDK 还包含一个根据自然语言描述查找匹配代码片段的工具智体可利用该工具从精选示例库中检索相关的代码模式。定义铰接结构。每个ArticulatedObject都会存储其具名部件之间的铰接关节SDK 支持旋转关节revolute、移动关节prismatic、连续旋转关节continuous和固定关节fixed并允许明确指定原点、轴向和运动限制。这些关节被表示为Articulation关节连接对象其中记录了父部件与子部件、关节类型、原点、轴向以及运动限制等信息。这种机制将每个关节与具体的部件及几何形状关联起来使得在智体agent迭代设计时两者能够同步进行修改。例如抽屉既需要导轨处于正确位置也需要一个与导轨对齐的移动副prismatic joint。编译生成的 URDF 文件保留了这种运动学结构因此输出结果不仅包含视觉几何信息还包含关于部件如何运动的结构化描述。这使得该模型能够被机器人仿真器、交互式查看器以及下游的学习流水线所使用。自我验证。如下文所述驾驭harness会自动执行一系列默认检查以验证生成的资产并将反馈返回给智体。这些检查包括检测程序运行时的错误、部件连接断开以及部件重叠等问题。然而生成资产的完整性往往取决于特定对象之间微妙的相互关系例如抽屉应始终保持在导轨内铰链盖在运动过程中不应与底座发生碰撞旋钮的柄部应稳固地嵌入插槽中。因此model.py提供了一个名为run_tests()的入口点供智体测试这些特定对象的属性该函数会在框架完成其自身的默认检查后执行。系统提示词system prompt和精选示例指导智体如何进行此类测试实例化TestContext(object_model)解析具名部件或视觉元素调用断言assertion或豁免exemption辅助函数最后返回ctx.report()。断言辅助函数用于表达几何约束例如部件间的接触、间隙、重叠、包含关系以及依赖于位姿的相互关系。例如可以使用expect_contact(...)检查铰链叶片是否与柜体框架接触使用expect_within(...)检查抽屉是否保持在导轨的啮合范围内。诸如allow_overlap(...)和allow_isolated_pa​​rt(...)之类的豁免调用则指示驾驭harness有意忽略某些自动检查从而容忍特定的局部构造方式或故意设计为独立存在的部件。2 Articraft 驾驭 (Harness)该运行环境为智体agent提供一个受限的工作空间和用于操作程序的接口。受限工作空间。与通用的编程智体不同Articraft 智体并不直接在复杂的代码库上进行操作。如图 2 所示该运行环境向智体呈现一个仅包含一个可写构件即model.py的工作空间同时提供对 SDK 文档和精选示例的只读访问权限。受限动作空间。同样与通用编程智体不同Articraft 智体无法执行任意 Shell 命令、浏览复杂的代码仓库或重构多个文件。相反该运行环境剔除这些无关的操作自由度仅提供少量命令读取 SDK 文档、修补或替换程序文本、检索代码示例、编译程序以及运行只读的几何探测geometric probes如表 2 所示。此外每个非编辑类工具都会返回反馈并由运行环境传递给智体。这种简洁的动作空间使得 Articraft 运行环境对非前沿大语言模型LLM也十分友好从而能够以低成本实现可扩展的合成数据生成。执行反馈。当运行环境执行智体的命令时它会提供关于执行情况包括资产质量的反馈。这些反馈以失败、警告和提示信号的形式结构化呈现而非原始日志。失败信号涵盖程序执行错误及验证测试失败包括智体编写的测试和运行环境预定义的测试警告信号报告非致命的几何、结构或代码质量问题提示信号记录上下文信息例如 LLM 发出的豁免声明。当智体认为反馈信息不足时可以调用probe_model——这是一个只读工具用于检查当前的object_model并返回各种度量数据。这些数据可用于调整诸如距离、重叠、包含关系或部件位姿等属性。追踪与元数据记录。在运行过程中该环境会存储一份可审计的运行记录内容包括输入提示词prompt、对话消息、工具调用、编译与探测反馈、最终的model.py文件、提供商与模型标识符、轮次与成本统计信息、输出构件路径以及提示词和生成程序的哈希值。数据集记录还可以存储由人工审核员给出的评分这些评分用于数据集的筛选与分析而非用于生成过程中的反馈。3 图像条件生成当提供参考图像时该图像将被视为几何形状、比例、关节结构及材质的主要依据即“真值”从而覆盖通用的物体先验信息。该图像贯穿于“编辑-执行-修复”的循环过程确保每一次迭代都能基于相同的视觉信息重新校准编辑操作并防止结果偏向类别层面的默认形态。一旦智体生成包含大致颜色信息的 URDF 模型便可利用 LiteReality [14] 中提出的方法进一步细化该资产的基于物理的渲染PBR材质。最终输出的是一个具有完整关节结构及 PBR 材质的物体其外观与参考图像中的物体高度相似如图 8 所示。利用 Articraft 构建 Articraft-10K这是一个包含超过 10,000 个铰接式 3D 模型的大规模精选数据集。Articraft-10K 涵盖 245 个物体类别将这些类别进一步归纳为 15 个超类super-categories并在图 11a 中结合词云进行了可视化展示。每个资产都附带一个 URDF 文件、相应的model.py脚本以及智能体agent的完整操作轨迹记录了推理过程、反馈及工具使用情况。未来这些轨迹可用于通过监督微调supervised fine-tuning对开源语言模型进行后训练从而有望缩小开源模型与闭源模型在 3D 生成能力上的差距。如图4所示数据集构建。在构建 Articraft-10K 时首先筛选一批模型能够良好生成的物体类别。为此先通过手动输入提示词prompting来探索智体的能力边界。通过分析成功与失败案例制定一套准则以识别其他可能生成效果良好的类别将这些准则输入大语言模型LLM以获取新类别建议并对建议进行人工审核与筛选。通过这一流程确定 245 个适宜类别例如华夫饼机、无人机、固定式健身车、台式搅拌机、三脚架设备以及带铰链盖的缝纫盒。随后制定进一步的准则指导 LLM 为每个类别生成提示词同时充分考量智体的能力与局限性。最后将这些提示词输入 Articraft 智体从而生成 Articraft-10K 数据集。还通过人工评分流程对生成的资产进行进一步筛选。每个生成的物体均依据以下三项标准获得 1 到 5 分的评分(1) 整体几何形状及其各组件的逼真度(2) 在预期部位是否存在铰接运动以及 (3) 铰接运动是否符合基本的物理约束例如不存在悬浮部件或不合理的运动方式。针对这些标准每出现一次轻微违规便从初始的 5 分中扣除 1 分。凡在任一标准上存在严重违规或最终得分低于 4 分的对象均被从数据集中剔除。在 GPT-5.4、GPT-5.5 和 Gemini 3.1 Pro 的生成运行中共有 10,909 个生成资产其中 10,018 个通过了此项筛选整体保留率为 91.8%。首先将 Articraft 与其他生成铰接式 3D 对象的现有方法进行对比评估选取的四个代表性基线模型包括Articulate-Anything [20]、PhysX-Anything [4]、URDF-Anything [54] 和 Codex [39]。为了进一步探究底层基础模型的影响评估了由不同大语言模型驱动的 Articraft 两种变体Articraft (基于 GPT-5.4) 和 Articraft (基于 GPT-5.5)。如图 5所示实验详情。对于任何生成任务而言定义有效的自动化评估指标都颇具挑战因此主要依靠用户研究来评估生成质量。为此基于 PartNet-Mobility [55] 中的 46 个类别构建了一套基准提示词prompt集合并为每个类别编写了 5 条提示词。随后利用 [12] 根据每条基准提示词生成参考图像作为输入提供给那些依赖图像条件的方法即 PhysX-Anything 和 URDF-Anything。对于 Codex要求其根据文本提示词生成相应的铰接式资产采用 URDF 格式并允许其使用所有编程及网络搜索工具。为了评估生成资产的质量向参与者展示文本提示词以及由全部六种对比方法包括两种变体生成的 3D 资产展示顺序经过随机打乱。这项感知评估邀请 125 名来自不同学科背景的非专业大学生参与每位参与者评估约 40 个随机分配的对象最终共收集到 5000 份比较结果。每位参与者需根据提示词契合度及整体质量从六种结果中选出并排序表现最好的三个。真实场景重建。基于智体agent根据图像提示执行全屋重建的能力采用 LiteReality [14] 的流程进行构建。首先利用 iPhone RoomPlan 采集室内数据获取每个物体的 3D 位置、朝向和尺度信息。系统自动提取每件家具的裁剪参考图像并以此提示 Articraft 生成相应的可动articulated物体。随后执行材质绘制阶段以恢复 PBR 材质并将生成的资产整合到解析出的场景布局中从而完成房间重建。最终生成的场景图 8既忠实于原始采集数据又具备了可动性从而支持后续的交互与仿真应用。评估 Articraft-10K 数据集作为训练数据及在实际应用中的有效性。训练前馈式 3D 物体关节运动模型。考察 Particulate [22] 模型这是一种基于 Transformer 的前沿模型能够根据输入的单个 3D 网格mesh预测 3D 部件、运动学结构及关节参数。利用 Articraft-10K 对其原有的训练数据即 PartNet-Mobility [55] 和 GRScenes [50]进行扩充能显著提升模型性能。这表明由智体生成的数据对于训练此类模型非常有效。在机器人仿真中使用 Articraft-10K。将 Articraft-10K 中的资产部署到 NVIDIA Isaac Sim [35] 环境中。针对每个物体为其选定部件设定目标运动轨迹。随后利用标准的逆运动学Inverse Kinematics算法控制机器人末端执行器与生成的物体进行交互。交互成功表明该物体不仅视觉上逼真而且具备适用于仿真的有效关节结构。虚拟现实。还将 Articraft-10K 中的资产部署到了虚拟现实VR环境中。模拟用户双手与物体之间的交互过程。在检测到碰撞后自定义脚本会控制 URDF 模型中定义的关节运动。