【GitHub项目推荐--Articraft:用代码“造”万物,AI 驱动的可动 3D 资产生成系统】⭐
GitHub 地址https://github.com/mattzh72/articraft简介Articraft 是一个由牛津大学 VGG 团队开发的开源项目它彻底改变了传统 3D 建模的工作流。该项目将大语言模型LLM与程序化生成相结合把“制作带关节的可动 3D 模型”这一复杂任务转化为“让 AI 编写构建程序”的代码生成问题。传统的 3D 生成工具往往输出静态的“雕塑”而 Articraft 专注于生成语义部件清晰、关节运动逻辑正确的物体如能开关的门、能拉伸的抽屉。它通过一个专为 LLM 设计的 SDK 和验证框架Harness引导 AI 在多轮迭代中产出可直接用于机器人仿真和物理引擎的高质量资产。基于此技术团队还发布了包含上万模型的Articraft-10K 数据集。主要功能1. Agentic 代码生成工作流Articraft 的核心不是直接生成网格而是驱动 LLM 编写 Python 代码model.py。AI 通过调用特定的 SDK 函数来定义部件add_part、组合几何体、指定关节类型铰链、滑块等并编写验证测试。系统随后编译并执行这段代码生成最终的 3D 资产和 URDF 文件。2. 验证与反馈闭环Harness系统内置了强大的验证框架。它会自动检查生成的资产是否存在几何错误、部件穿透、关节超限等问题并将结构化的错误反馈返回给 LLM驱动其进行下一轮修正。这种“编码-编译-反馈”的循环确保了最终产出的模型在物理上是合理的。3. 大规模数据集与本地查看器项目提供了Articraft-10K 数据集需通过 Git LFS 下载涵盖家具、工具、器械等 245 个类别。本地集成了一套基于 React 的 Web 查看器支持在不启动专业 DCC 软件如 Blender的情况下直接预览模型的层级结构、关节运动及渲染效果。4. 灵活的外部 Agent 集成即使没有 OpenAI 或 Anthropic 的 API Key用户也可以利用 Claude Code、Cursor 等外部 AI 编程助手按照项目提供的EXTERNAL_AGENT_DATA.md规范通过自然语言描述来生成和贡献模型数据。安装与配置环境准备Python 版本建议使用 Python 3.10 或更高版本。Git LFS由于模型数据文件较大需安装并配置 Git LFS用于拉取完整的记录载荷。安装步骤克隆仓库git clone https://github.com/mattzh72/articraft.git cd articraft安装依赖项目推荐使用just命令工具或uv进行环境管理。# 方式一使用 just需预先安装 just just setup # 方式二使用 uv 或 pip uv pip install -e .配置 API Key复制.env.example文件为.env并填入你的大模型 API 密钥支持 OpenAI、Anthropic、Gemini 等OPENAI_API_KEYsk-... ANTHROPIC_API_KEY...数据初始化可选首次克隆时data/records/目录下的具体模型文件通常被 Git LFS 排除在自动获取之外仅下载元数据。若需查看或编辑具体模型需手动拉取 LFS 文件git lfs pull --includedata/records/**如何使用1. 通过 CLI 生成首个模型配置好环境后使用articraft generate命令即可开始生成# 基础生成使用默认模型 uv run articraft generate Create a realistic articulated desk lamp with a weighted base and two hinged arms. # 指定模型和成本上限 uv run articraft generate a cabinet with two doors --model gpt-4o --max-cost 1.0生成过程中终端会显示 LLM 的思考过程、代码验证状态及最终输出路径。2. 浏览与查看启动本地查看器来浏览生成的资产just viewer # 或使用 uv uv run articraft viewer查看器会读取data/records_index.jsonl构建索引。对于尚未下载具体文件未 Hydrate的记录可以在界面中触发“Hydrate record”操作来拉取完整数据。3. 派生与编辑Fork如果你想基于现有模型进行修改可以使用fork命令uv run articraft fork data/records/record_id make the handle longer and the base heavier这会在不修改原记录的前提下创建一个新的子记录非常适合进行迭代优化。4. 外部 Agent 协作对于使用 Claude Code 或 Cursor 的用户可以直接向 AI 发送提示“请按照EXTERNAL_AGENT_DATA.md的规范为我创建一个逼真的、带铰链的笔记本电脑 3D 模型并添加到 Articraft 数据集中。”AI 会根据规范生成符合要求的model.py代码和元数据文件你只需将其放入data/records/并提交即可。应用场景实例无代码场景一机器人抓取仿真数据工厂痛点训练机器人“开柜门”或“拉抽屉”需要大量带正确关节定义的 3D 模型。手动在 Blender 中给每个柜子设置铰链和碰撞体极其耗时。Articraft 方案编写批量提示词如“生成 50 种不同尺寸的带铰链门和滑轨抽屉的橱柜”。使用 Articraft 的批处理模式自动运行生成数千个模型。直接导出 URDF 或 OBJJSON 格式无缝导入到 PyBullet、Isaac Sim 等仿真环境中。价值将数月的建模工作压缩至几小时为具身智能研究提供近乎无限的训练数据。场景二游戏道具的快速原型设计痛点独立游戏开发者需要设计一批“可破坏”或“可互动”的环境道具如能打开的宝箱、可推动的杠杆但缺乏 3D 美术资源。Articraft 方案输入“fantasy treasure chest with a hinged lid and metal brackets”。在本地查看器中检查生成的宝箱开合动画是否流畅。导出 GLTF 或 FBX 文件直接导入 Unity 或 Unreal Engine关节信息自动转换为引擎内的物理关节。价值零美术基础也能快速产出程序化、可互动的游戏资产极大降低原型开发门槛。场景三工业设计的自动化合规检查痛点工程师设计了一个机械臂关节需要在仿真中验证其运动范围是否会导致部件碰撞。Articraft 方案将 Articraft 作为“验证器”集成到 CI/CD 流水线中。LLM 根据设计图纸生成对应的 Articraft 测试代码。系统自动运行碰撞检测和运动学测试输出结构化报告。价值在物理原型制造前提前发现设计缺陷实现“设计即正确”。数据协议与贡献Articraft 鼓励社区贡献生成的数据。所有提交到项目的记录默认采用Creative Commons Attribution 4.0 International (CC BY 4.0) 协议。这意味着你的贡献将被公开用于构建和评估机器学习模型。GitHub 地址https://github.com/mattzh72/articraft项目主页与论文https://articraft3d.github.io/