
最近总有做结构设计的朋友问我text-to-cad 是不是已经能让我一句话就生成加工图纸了我当着他们的面操作了一次从打出提示词到导出 STEP 文件前后不到一分钟他们确实有点意外。但我也得泼盆冷水这玩意能干活但不是许愿机。它擅长把“讲得清楚的规则几何体”变成可编辑的参数化模型却很难理解“好看一点”“有点高级”这种模糊审美。这篇文章我准备把我半年多来实际折腾 text-to-cad 的经验全倒出来包括生成链路、工具选型、提示词写法和容易翻车的细节给机械设计师、创客、产品经理以及所有想用自然语言加速建模流程的人做个参考。1. text-to-cad 生成的是“模型”不是“设计”先说结论text-to-cad 的核心能力是把一句结构化的自然语言翻译成一套可编辑的 CAD 特征树再交给几何内核生成实体模型。它并不是在“凭空设计”而是在“按照明确指令执行建模操作”。理解这点你才不会对它抱有不切实际的期待。1.1 它能做的事规则几何、参数化特征、零件级模型我实测下来它最顺手的是以下三类场景板类、轴类、箱体类基础件比如“长 120mm、宽 80mm、厚 6mm 的铝板四角倒 R5 圆角中心开直径 20mm 的安装孔”这种描述几乎是它的甜区。带特征操作的中等复杂零件拉伸、旋转、布尔加减、阵列孔、倒角、抽壳只要特征描述足够具体生成出来的模型在参数化软件里还能继续改尺寸。零件级而非装配级单一个零件生成得很稳但“两个零件互相配合、保留装配约束”这种需求它目前只能做到“生成两个独立实体”没法真正建立装配关系。以我最近做的一个简易支架为例。我在工具里输入“创建一个支架主体为长 100mm、宽 40mm、高 10mm 的平板平板宽度方向中心位置有一个直径 20mm、高 30mm 的圆柱圆柱顶部做 M8 螺纹孔深 15mm平板四角做直径 6mm 通孔孔心距边缘 10mm。”生成结果是一个干净的 STEP 实体我导入 FreeCAD 后可以直接拉伸修改孔位对非标设计来说够用了。1.2 它不能做的事自由曲面、公差、审美判断、装配逻辑它的边界也非常清晰这些领域暂时别指望它自由曲面外形像汽车外壳、消费电子曲面盖板需要大量曲面控制点text-to-cad 生成的往往是棱角分明的近似体无法直接用于外观设计。工程语义尺寸公差、几何公差、表面粗糙度标注这些属于制造工艺信息目前绝大多数 text-to-cad 工具根本不会在模型里体现。审美与权衡你告诉它“让这个件看起来更协调”它只能理解为“统一倒角半径”或者“对称”这类规则无法做真正的主观判断。机电一体化和复杂装配跨越零件间的配合、运动副、导线布局超出当前解码能力。为什么会有这样的边界因为文本转 CAD 的技术路线本质上是在做“参数映射”而不是在“创造”。它利用大语言模型理解指令再通过程序化建模引擎类似 CadQuery 或 OpenCascade重新构建 B-Rep 边界表示模型。这个过程天生擅长处理特征化、参数化的几何体但天然不擅长处理依靠手感、曲面和美学判断的自由造型。2. 从一段话到 STEP 文件完整生成链路拆解很多人第一次用 text-to-cad 时会有种“黑盒”错觉输入一句话模型就出来了。但如果你想稳定复现效果就得清楚中间到底发生了什么。拆开来看其实是一条非常清晰的链路自然语言解析 → 参数提取 → 模型选择 → 特征建模 → 导出。2.1 第一步把自然语言翻译成特征树这一阶段主要由大语言模型完成。它会做几件事实体识别提取“板”“圆柱”“孔”“槽”“凸台”等关键词。尺寸提取把“120mm”“M8”“R5”这类数值和单位解析出来。空间关系提取“中心”“四角”“距边缘 10mm”“与上表面齐平”这类位置信息会被转换成坐标系和约束。这里最容易出问题的是“模糊位置词”。比如你说“把孔放在板的中间区域”模型只能猜你的意图生成结果可能偏左或偏右。更稳妥的做法是直接给具体尺寸或相对坐标。说到底text-to-cad 现阶段更像一个“听得懂规则的新人”它不怕专业术语怕的是你只给方向不给数值。2.2 第二步参数化建模引擎的实际演出翻译完特征树之后后面的工作就交给程序化建模引擎了。常见的内核是 OpenCascade很多工具也在用 CadQuery 这类 Python 库做封装。引擎做的事情可以理解为“按照脚本一步步执行建模命令”新建一个草图平面拉伸生成主体。根据位置约束创建基准平面生成孔特征。执行布尔运算将孔从主体中减掉。最后执行倒角、圆角等边缘处理。因为是程序化建模生成的不是离散的多边形网格而是带拓扑信息和参数历史的实体模型。这意味着你后续在 CAD 软件里还能修改草图尺寸这是 text-to-cad 区别于“图片生成模型”的核心优势。图片生成类工具比如常见的 AI 绘图软件生成 3D 图输出的是视觉参考没有几何精度不能用于加工。2.3 第三步导出格式背后的取舍导出时常见的格式有三种用途各有不同格式适用场景我这段时间的使用体会STEP机械 CAD 互通、加工、装配首选。保留了 B-Rep 几何导入 Fusion 360、SolidWorks 都很顺STL3D 打印、快速原型打印方便但它是三角网格会丢失参数特征后续很难改尺寸DXF2D 逆向、激光切割适合平面展开视图不适合复杂三维体导出如果你只是 3D 打印一个外壳导出 STL 没问题。但只要你还有一丝改版、修模、配公差的需求务必导出 STEP。我在项目里就吃过亏第一次用工具默认导出了 STL后面想从 36mm 孔改成 40mm 孔只能整个重新生成白白浪费了一晚上。3. 实测四类工具专精的、通用的、程序化的还有画图充数的text-to-cad 这个名词下市面上实际有四类不同的工具别混为一谈。我用同一个“带安装孔的底板”提示词跑过它们差异非常明显。3.1 专精型工具Zoo Text-to-CAD、Text2CAD 这类目前最贴近“自然语言生成工程模型”的就是这一派。它们通常会提供在线界面或插件输入文字后直接生成可下载的 STEP 文件。我用下来有几个感受上手快不需要写代码。模型库覆盖了常见的规则几何体对机械件友好。生成速度通常在几十秒内但复杂特征增多时会明显变慢。对单位、圆角、孔的特征识别相对可靠但前提是你用的是标准工程术语。如果你需要拍板一个方向建议优先试这一类。它们的最大问题不是生成能力而是“可编辑性”还不够深——生成结果往往是一整个实体特征树不如手工建模那么清爽改起来需要一点耐心。3.2 通用 3D 生成器Shap-E、Point-E 这类OpenAI 的 Shap-E、Point-E 属于“文本生成三维网格”的通用方案。它们能生成有模有样的 3D 形状但你可千万别把它们当 CAD 工具用。原因很简单输出是网格mesh不是 B-Rep 实体。几何尺寸没有绝对精度100mm 和 80mm 可能只是“看着像”。导出的模型经常是“一杯水”造型无法转换成可装配、可加工的实体模型。它们的前景在于概念设计阶段用来快速给决策者看个形状而不是直接下厂加工。3.3 程序化建模 NLPCadQuery 和 LLM 的组合方案还有一种更硬核的玩法就是绕过现成工具直接用大语言模型生成 CadQuery 代码再用代码驱动几何内核生成模型。这种方案适合有一定编程基础的工程师优点是完全控制参数和建模逻辑缺点是要自己处理提示词、代码调试和依赖环境。举个例子我可以让 GPT 帮我写一段 CadQuery 脚本创建一个 100mm x 40mm x 10mm 的平板在四角打孔。这段脚本生成后我再手动跑一遍 Python 脚本输出 STEP。整个过程等于“用 LLM 帮我写设计意图的代码”本质上是“text-to-code-to-CAD”可复用性比现成工具高得多特别适合参数化系列件。但我不推荐纯小白一开始就上这条路。你得先理解 CadQuery 的基本建模逻辑比如“工作平面、拉伸、布尔差集”这些概念否则你连代码错在哪都看不出来。等到你对程序化建模有一定手感再回头看这组合会觉得自由度提升很大。3.4 纯画图型用 Midjourney 类工具生成“参考图”总有人把 AI 生成 CAD 和 AI 生成图片搞混。Midjourney 这类工具能生成非常有设计感的 3D 渲染图但输出的是像素不是几何体。你可以拿它做概念汇报、给客户看外形方向但别想着直接拿去编程或加工。我见过有同事拿 Midjourney 生成了一张产品图然后兴冲冲拿去 3D 打印结果自然是失败。两个方向一个是“表达形状”一个是“定义真实几何”底层逻辑完全两回事。4. 一次跑通实操用一个带凹槽和安装孔的底座做实验空谈再多不如上手一次。我挑一个最简单的测试件——带凹槽和安装孔的底座——带你把全流程走一遍这样你之后换到复杂特征心里也有底。4.1 提示词怎么写才不容易被误解完美提示词不是长篇大论而是“让执行者无歧义的工程描述”。我给你一个模板可以参考明确产品名称底座、支架、盖板、轴套。明确整体尺寸外形长宽高顺序统一写成“长 × 宽 × 高”。明确特征位置尽量用“中心”“左端面起 20mm”“距边缘 10mm”这类数值描述少用“差不多”。明确特征语义写“直径 6mm 通孔”“深度 5mm 盲孔”“R3 圆角”“C2 倒角”。我实际用的提示词是“创建一个底座外形为长 80mm、宽 50mm、高 12mm 的板。在顶面中心做宽度 30mm、深度 5mm、长度贯穿的凹槽。在板的四个角落做直径 6mm 的通孔孔心距长边和短边边缘均为 10mm。顶面和底面边缘做 R2 圆角。”这样生成出来的模型基本一次成型。如果你语气含糊比如“做一个板中间挖个槽旁边打几个孔”模型大概率也会给你一个“大概差不多”的结果最后还是要你自己去改。4.2 生成后还需要动手修什么即使工具很强我也几乎从不直接拿生成结果下厂。我会在 FreeCAD 或 Fusion 360 里做一轮“体检”草图轮廓是否闭合我遇到过凹槽轮廓没有完全闭合导致拉伸失败的情况这是最常见的问题。孔是通孔还是盲孔有时工具会把“通孔”识别成“盲孔”或者反过来。检查盲孔底部是否到了板厚。圆角与倒角的正确性提示词里写 R2如果生成成 C2在导入后检查边缘类型。单位是否一致生成的模型可能是英寸单位导入后显示数值差 25.4 倍这种事我踩过不只一次。建议生成后先看文件属性或测量一下关键尺寸。这些修改都不复杂但如果没有这一步后面装配或者打印时才发现问题返工成本就高多了。4.3 导出到 Fusion 360 的注意事项用专用工具生成 STEP 后直接双击就能导入 Fusion 360。我的经验是导入时选“新建实体”不要选“插入到当前设计”这样便于独立验证。检查“浏览对话框”中的单位设置确保导入单位与提示词一致。STEP 导入后的模型是“无历史记录”的实体想参数化修改时最好使用“重新定义基准面”来做特征编辑或者干脆用原本的提示词重新生成一版。即使导入了也不要指望它能像原生 Fusion 文件那样有完整的时间轴。实际工程里我一般把生成结果当作“快速草稿”再基于它重新建特征或直接调整尺寸。它帮你省的是“从零开始搭建”那 20 分钟而不是帮你省掉“设计决策”本身。5. 高频翻车点清单单位、朝向、倒角和水密性这部分全是真金白银踩出来的教训。我把 text-to-cad 使用过程中最容易出问题的地方分成五类列一张避坑表你可以存下来对照使用。5.1 单位陷阱毫米还是英寸直接决定成品比例我在一次自动化测试里用相同的英文提示词分别在两个工具里生成同一个零件结果一个尺寸是 100另一个是 100 inch 换算后的 2540mm。这类问题防不胜防。建议每次生成前检查工具的默认单位设置导出后第一件事看文件属性里的单位而不是看模型“看起来对不对”。5.2 坐标系Z 轴朝上还是 Y 轴朝上机械类 CAD 大多用 Z 轴朝上但很多 3D 生成工具习惯用 Y 轴朝上。如果你拿到模型后直接装配很容易发现零件侧躺着。遇到这种情况导入后用“放置特征”重新对齐或者提前在提示词里写“顶面朝 Z 轴正方向”。别小看这一条你在装配体里手动旋转 90 度要额外做一次移动约束操作繁琐还容易错位。5.3 倒角的语义R、C、chamfer、round不同工具对“R2 圆角”和“C2 倒角”的识别不一致。我这里踩过的坑是写“圆角”被识别成“倒角”写“倒角”被识别成“圆角”。英文提示词里 round 和 chamfer 同样容易混淆。所以建议在提示词里写全称比如“对顶面边缘创建半径 2 毫米的圆角round fillet”而不是只写“R2”。5.4 装配体的“位置”问题text-to-cad 目前大部分生成的是单个零件如果你想要装配体很多工具会给你生成多个独立实体但并没有真正的配合关系。我曾尝试让工具生成一个“法兰与螺栓配合”的模型结果它输出了一个法兰盘加一个螺栓固定在一起而非可拆卸的装配。所以在需求阶段就得明确你要的是零件图还是装配图。5.5 STL 水密性问题如果你生成的是 STL 格式一定要检查水密性。水密性指的是网格模型必须是封闭的不能有洞、裂缝或自相交面。3D 打印切片软件对破面非常敏感轻则切片失败重则打印件结构破碎。检查方式使用 MeshLab 或 Windows 3D 查看器加载模型观察是否有空洞。在 FreeCAD 里运行“网格修复”工具。打印前用切片软件自带的可视化预览逐层检查。我的经验是只要不追求轻量化网格优化直接导 STEP 然后转 STL通常比一开始就导 STL 要靠谱得多。因为 STEP 转网格的过程可以控制密度避免产生不必要的破面。6. 把 text-to-cad 接进真实工作流的三种玩法工具好不好说到底要看能不能帮你省时间。我目前探索出三种比较靠谱的接入路径给你们做个参考。6.1 个人快速原型从想法到试制件的快捷通道如果你是创客或单兵作战text-to-cad 最大的价值是“快速把想法转成可打样模型”。比如要给摄像头加一个支架你花两分钟描述形状生成 STEP转 STL 切片直接上 3D 打印机。以前我画这类小件要半小时起步现在几分钟就能出第一版极大的提高了试错频率。外形不合适改一下提示词再生成不用重新画草图。6.2 企业参数化零件库自然语言驱动的标准件改型很多公司有大量结构类似的非标零件比如各种尺寸的安装支架、定位块、底座。传统做法是维护一个参数化模板库但工程师改起来仍要打开 CAD 手工调整。现在可以这么做把典型零件固化成一个 “CadQuery 模板”用 text-to-cad 或 LLM 写代码的方式把自然语言抽取成参数填入模板批量输出不同尺寸的 STEP 模型。我在一次小批量工装夹具任务中试过提示词只要定义“宽度、孔距、厚度”三个参数就能批量生成 20 多种规格的定位块直接用于报价和快速打样。这个玩法的收益比直接生成自由模型大得多因为它把大语言模型的“语义理解”和自己的“参数化资产”绑在了一起。6.3 自动化工装夹具生成和低代码平台联动更激进一点的做法是把 text-to-cad 接入自动化产线设计流程。比如你有一个爬虫脚本负责分类产品型号每个型号对应一组加工参数再用 packaging 生成夹具模型。这样从“需求输入”到“夹具出图”可以做到无人值守。目前这个方向还比较早期容易卡在“装配约束”和“公差传递”上但对规则件来说已经很接近生产力了。我做这类联动的时候有个体会别苛求模型一次完美把“生成→校验→修复”循环自动化才有意义。让模型先出一个 80 分的模型再用脚本自动检查孔位、边缘和单位有问题就打标记下轮再重新生成。这比坐在软件前手动修半年高效得多。最后说一点我自己的私人体会text-to-cad 现阶段最值得投资的不是工具本身而是你写提示词和检查模型的能力。把它当“一位理解力超强的建模实习生”而不是“全能设计大师”用起来会顺手得多。等哪天它能基于历史订单和工艺规范自动生成完整图纸时我们再把“实习生”提成“工程师”也切实际一点。