text-to-cad:自然语言生成 CAD 之后,怎样走到可验证、可制造、可交付

摘要:earthtojake/text-to-cad 将自然语言 CAD 拆成参数化建模、STEP 检查、标准件检索、可制造性测量、真实切片器和机器人描述等 Agent Skills,把一次性三维生成推进到可验证、可制造、可交付的工程闭环。

text-to-cad 将自然语言设计推进到可验证可制造可交付

项目:earthtojake/text-to-cad
方向:Agent Skills、参数化 CAD、STEP、机器人描述、DfAM、切片与制造交接
适合读者:CAD/CAE 平台团队、机械设计工程师、机器人研发团队、数字工匠产品团队

摘要

自然语言生成三维模型已经不算新鲜。影响工程应用的难点集中在生成之后:模型是否保留参数和设计意图,尺寸是否符合需求,拓扑引用是否稳定,装配关系是否正确,导出的 STEP 能否继续编辑,网格是否适合制造,切片配置是否来自真实设备,交付物是否经过可重复验证。

text-to-cad 的思路很有代表性。项目将“文本生成 CAD”拆成一组可安装的 Agent Skills:CAD 负责 STEP 优先的参数化建模,Viewer 负责本地预览,step.parts 负责标准件搜索,DXF 负责二维制造图,URDF/SRDF/SDF 负责机器人模型与仿真描述,DfAM Check 负责可制造性测量,G-code 负责调用真实切片器并验证输出。

这套项目最值得关注的地方,是它把工程任务写成了带有边界、工具、检查项和交接规则的技能文件。智能体需要依次完成需求整理、参数规划、源码建模、几何检查、快照复核、修复重跑和制造交接,不能收到一句话后直接输出网格。它为“工业智能体如何学习工程流程”提供了一个具体范本。

一、文本生成 CAD 的问题很少出在“能不能画出来”

早期文本生成三维模型常见的结果是 STL 或可视化网格。它们适合展示,却很难进入机械设计流程。

机械设计需要精确尺寸、封闭实体、孔和圆角等可编辑特征、材料与公差信息、装配基准、标准件、版本差异和制造约束。一个看起来像支架的网格,可能壁厚不足、孔径不符、面法向错误、实体不闭合,也可能完全无法在后续修改中保持设计意图。

此外,大模型在 CAD 任务中容易出现三类错误。

第一类是需求遗漏。用户给出十个尺寸和两个装配关系,模型可能只实现其中大部分。图形看上去接近,但关键孔距偏差数毫米。

第二类是几何构造失败。布尔运算、薄壁、圆角和复杂拓扑经常触发内核异常。模型如果只检查脚本是否执行结束,很难发现生成的是空壳、多个相交实体或退化面。

第三类是制造链断裂。即使 STEP 正确,后续仍需要导出 STL、检查壁厚和悬垂、选择打印方向、使用真实打印机配置切片,并确认 G-code 的温度、运动范围和挤出命令。把这些步骤交给同一个无约束提示词,风险会迅速累积。

text-to-cad 采用“技能链”来控制这些问题。每个 Skill 负责一类明确交付物,规定输入、工具、默认假设、禁止事项和验证流程,智能体通过文件和命令进行协作。

二、STEP-first 是这套体系的主线

项目明确把 STEP 视为主要 CAD 交付物,将 STL、3MF 和 GLB 视为从 STEP 分支出的二级产物。这个选择符合工程数据的基本层级。

STEP 保存边界表示和实体结构,更适合尺寸检查、二次编辑、装配与下游 CAE;STL 只保存三角网格,适合打印和可视化,却很难恢复参数化设计。若智能体直接生成 STL,后续发现孔径不对,往往需要重新生成整个模型;若保留 build123d 源码和 STEP,则可以修改参数、重新构建并比较结果。

CAD Skill 默认使用 build123d Python 源码描述几何,并要求生成函数、参数、标签和输出路径受版本控制。对于已有 STEP 文件,也可以跳过生成步骤,直接进入检查、测量和快照流程。两种入口最终落到同一套可检查的工件上。

这种“源码加交付物”的模式很适合智能体。语言模型擅长修改文本代码,几何内核负责精确建模,验证工具负责读取结果。出现问题时,系统修改最小范围的源码并重新生成,避免模型在不可解释的网格上继续猜测。

text-to-cad 从自然语言需求、参数化 CAD、STEP 验证到 DfAM 与 G-code 的工程技能链

三、CAD Skill 将建模过程拆成十个受控步骤

CAD Skill 的要求可以概括为以下链路:

1
2
3
4
5
6
7
8
9
10
任务分类
→ 形成 CAD brief
→ 查找标准件
→ 参数与基准规划
→ 编写 build123d 源码
→ 生成 STEP
→ 几何检查与测量
→ 快照复核
→ 修复并重跑
→ Viewer 与文件交付

1. CAD brief:先把自然语言变成工程约束

智能体需要从文字、参考图和二维图纸中提取尺寸、单位、坐标系、特征意图、装配关系、输出路径、假设和验收项。对于非关键参数可以采用默认值,但必须公开假设;涉及配合、安全和合规时,应要求用户补充信息。

这一层相当于把模糊需求转成可测试的设计说明。例如“做一个适合 M4 螺钉的传感器支架”至少要明确板厚、孔径、孔距、安装面、载荷方向、材料或打印工艺。缺失信息可以先设为参数,避免写死在几何代码里。

2. 标准件优先搜索

装配中出现电机、轴承、螺钉、连接器或控制板时,Skill 要求先调用 step.parts 搜索现成 STEP。找不到时才能使用记录清楚的包络模型。

这可以减少“智能体凭印象画标准件”的问题。工业设计中,标准件几何、孔位和安装尺寸往往直接决定装配可行性。后续企业化部署还可以把 step.parts 替换为内部物料库、PLM 标准件库或供应商目录。

3. 源码建模与显式参数

Skill 要求使用具名参数、封闭正体积实体和清晰标签。装配件要设置局部坐标系、命名基准和源码级关节或配合关系。智能体需要事先定义预期包围盒、孔位、基准面和配合方向,再开始编码。

这使设计意图从聊天记录进入可执行源码。参数、标签和基准可以被后续工具引用,也便于人类工程师审查。

4. 几何检查不能只看“脚本运行成功”

生成后先读取拓扑引用、几何事实、平面和定位信息,再针对需求做测量、对齐、坐标框架或差异检查。另一个独立的 validate 步骤用于检查实体有效性,因为“能解析引用”并不代表模型一定是封闭、方向正确的实体。

这一点非常重要。CAD 自动化的错误往往隐藏在成功返回之后。尺寸偏差、开口壳体、倒置实体和多余小面都需要专门检查。

5. 快照复核是强制环节

CAD Skill 明确要求创建或明显修改 STEP 后生成快照并进行视觉复核。确定性检查通过也不能省略。视觉检查用于发现漏孔、方向颠倒、装配穿透、异常圆角等难以用单一数值规则覆盖的问题。

更成熟的企业系统可以在这一步加入多视图渲染、自动尺寸标注、模型对比和人工签核。智能体的视觉判断只能作为一层筛查,关键件仍需工程师确认。

四、从设计到制造的技能链已经初步打通

text-to-cad 的范围超出了 CAD 生成,继续覆盖可制造性和切片。

1. DfAM Check:用测量结果判断打印风险

DfAM Skill 对 STL、OBJ、PLY 和 3MF 等网格进行本地测量,关注水密性、壁厚、悬垂、支撑面积、支撑体积和打印方向。它要求根据 FDM、SLS、SLA/DLP、金属 PBF 或 MJF 选择对应工艺限制,用户提供的设备或材料数据表优先于默认表。

工具本身只输出几何事实,是否通过由流程层根据工艺规则判断。这样的分层有助于审计:测量值和限值来源可以分别记录,避免模型凭视觉估计壁厚或悬垂角。

针对失败项,Skill 要求给出带目标数字的修改建议,例如将某处 0.6 mm 壁厚增加到至少 1.2 mm,或把某处悬垂改为不小于 45°。之后可以交回 CAD Skill 修改源码、重新导出并再次测量,形成闭环。

2. G-code Skill:调用真实切片器,拒绝虚构配置

G-code Skill 支持 OrcaSlicer、PrusaSlicer 和 CuraEngine 等真实 CLI。每次切片必须提供明确的打印机/工艺配置包装文件,不能由模型编造真实设备参数。

流程包括发现本地切片器、检查输入网格、先 dry-run 展示将执行的命令、实际切片、最后验证 G-code。验证项包括内容是否为空、温度命令、运动命令、挤出动作、XYZ 边界和未知指令。

它还明确区分通用 G-code 与打印机专用上传/启动。普通切片 Skill 不连接设备,更不自动开机打印。涉及 Bambu 等设备时,需要交给另一个带谨慎启动规则的 Skill。这种边界设计适合高后果工具:生成文件、上传文件和启动设备应是三个不同权限级别。

3. 机器人描述文件形成另一条支线

URDF、SRDF 和 SDF Skills 分别处理机器人连杆与关节、MoveIt 规划组和碰撞规则、仿真世界和传感器。CAD 模型可以因此继续进入机器人仿真、运动规划和数字孪生环境。

这对具身智能和工业机器人项目很有吸引力。一个夹具、末端执行器或移动底盘可以从参数化 CAD 出发,生成链接网格和惯量信息,建立 URDF,再补充 SRDF 规划组与 SDF 仿真配置。整个过程仍需要质量属性、坐标系和碰撞模型的严格校验。

五、为什么“Agent Skills”比一个大而全的 CAD Agent 更值得关注

Skill 文件本质上是工程流程的机器可读说明书。它包含触发条件、默认值、工具命令、检查清单、禁止事项、交接对象和最终报告要求。这样的设计有三个优势。

第一,知识可以独立演进。CAD、DfAM、切片和机器人描述由不同 Skill 维护,某个工艺规则更新时,不必重写整个 Agent。

第二,流程可以组合。一个任务可能只需要生成 STEP,也可能继续做打印检查和切片。编排器根据目标加载必要技能,避免所有规则一次性塞进上下文。

第三,容易建立测试。每个 Skill 都能围绕输入文件、命令输出和验收项设计自动化测试。智能体模型更换后,可以复用同一套流程检查结果。

对于企业级数字工匠平台,这种结构可以映射为岗位技能包:设计 Skill、标准件 Skill、工艺审查 Skill、仿真 Skill、报价 Skill、PLM 归档 Skill。每个技能拥有独立权限、版本和责任边界,平台负责组合和审计。

企业级 Skill 还需要一套治理层

开源 Skill 能说明“怎样完成任务”,企业部署还要回答“谁可以在什么项目、什么版本和什么设备上执行”。一个可落地的治理层至少应记录 Skill 版本、维护人、适用产品族、依赖工具、允许读写的目录、可调用的外部服务、测试用例和审批状态。CAD 生成、文件导出、上传 PLM、调用切片器、连接设备应被拆成不同权限,避免一个通用 Agent 同时拥有设计修改和设备启动能力。

每次运行还应形成工件账本:输入需求及其版本、采用的默认假设、生成器源码、STEP/STL 哈希、实际执行命令、验证结果、快照、异常与人工确认。模型、Skill 或几何内核升级后,可以用同一批标准零件和装配任务做回归,比较尺寸、实体数量、拓扑引用、制造检查和交付包差异。只有把这些证据保存下来,Skill 才能从个人效率工具升级为可审计的工程能力。

六、一个适合本地试验的任务

可以用“电机编码器安装支架”验证整条链路。

  1. 输入需求:电机法兰尺寸、编码器外形、M4 孔位、板厚、材料和打印工艺。
  2. CAD brief:明确坐标系、安装面、孔距、目标包围盒和允许假设。
  3. 标准件检索:查找电机或编码器 STEP;无结果时使用供应商外形包络。
  4. 参数化建模:用 build123d 创建底板、加强筋、长圆孔和装配基准。
  5. STEP 验证:检查实体数量、外形尺寸、孔径、孔距、基准面对齐和装配干涉。
  6. 快照审查:生成等轴测、正视、侧视和装配视图。
  7. DfAM:导出 STL,检查最小壁厚、悬垂、支撑和推荐方向。
  8. 修复:根据测量结果调整加强筋或倒角,重新生成。
  9. 切片:使用真实打印机和材料配置 dry-run,执行切片并验证 G-code。
  10. 交付:保存源码、STEP、STL、检查报告、快照、G-code 和参数清单。

这个实验规模不大,却能暴露智能体 CAD 系统最常见的问题:需求遗漏、单位错误、孔位偏差、几何失败、制造规则缺失和交付物混乱。

七、工程化落地仍需补齐的部分

text-to-cad 目前很适合作为技能架构与本地实验参考,距离企业级 CAD 自动化还有多项工作。

首先,几何内核的鲁棒性仍是硬约束。复杂曲面、大型装配、薄壁布尔和高阶圆角容易失败,智能体需要更细的错误分类和修复策略。

其次,尺寸公差、几何公差、表面粗糙度、材料标准和工艺基准尚未成为完整主线。工业图纸交付不能只有名义尺寸。

再次,拓扑命名稳定性会影响后续特征修改和 CAE 边界条件。即使项目提供 selector 和标签,跨大幅几何变化的引用仍可能失效,需要稳定 ID、几何匹配和人工确认机制。

此外,标准件与供应链数据涉及授权、版本、替代料和企业物料编码;切片和设备启动涉及安全与责任;机器人惯量、碰撞模型和关节限制也不能仅靠语言模型估算。

因此,企业部署应把它放在“工程师可审查的自动化工作台”中。智能体负责生成初稿、执行检查和整理证据,工程师对关键尺寸、材料、工艺、仿真和放行结果签字。

八、结语

text-to-cad 展示了一条很清晰的路线:自然语言只是入口,工程交付依赖参数化源码、标准格式、确定性工具、反复验证和分级权限。它把 CAD、机器人模型和增材制造连接成多个可复用技能,也把智能体从一次性生成器推进为能够遵循工程流程的执行者。

对正在建设 AI+CAD/CAE、工业智能体或数字工匠平台的团队而言,这个项目的参考价值主要集中在三点:STEP-first 的工件策略、Skill 化的流程封装、以及“生成—检查—快照—修复—交接”的闭环。沿着这三点继续扩展 PLM、仿真、工艺和质量模块,可以形成更完整的工程智能工作台。

参考资料

分享到