
第一次意识到text-to-CAD的价值是在一次设计评审会上。对方拿着需求表问我一个能固定三根直径16毫米圆杆的底座要求侧面开口底部四个螺栓孔。我在CAD里前前后后画了快四十分钟期间对方已经刷完两轮手机。我当时就在想如果建模能像口述需求一样快这个环节起码能省掉一半时间。于是那阵子我集中看了text-to-CAD相关的项目、论文和demo——这个方向的目标很直接把自然语言描述转成可编辑的CAD模型而不是像文生图那样只产出一张好看的效果图。它应该输出带尺寸、特征树甚至装配信息的文件让下游的仿真、出图、制造继续往前推进。这文章就是我个人对text-to-CAD的理解和实测记录。我会先聊它到底解决了什么问题再拆三种主流实现路线然后放一段我实际跑通的案例最后聊一聊它和传统参数化建模工作流怎么配合。文章会尽量少讲空话多给可以拿来用的提示词经验、格式判断逻辑和避坑建议。1. 从画出来到说出来text-to-CAD想解决的真正问题1.1 传统建模的痛不是不会算而是画得慢做过结构设计的人都有体会一个零件的计算和选型往往几分钟能完成但把它在软件里变成三维模型却要经历草绘、加约束、拉伸、打孔、倒角、阵列这一串操作。这个过程不考验智力考验的是手指和菜单的配合。我经常举一个例子一个带四个通孔的法兰盘设计意图用一句话就能说清外径80内径32厚10均布四个直径6的孔。但在SolidWorks或FreeCAD里你需要先建草图画两个同心圆标好直径和厚度退出草绘拉伸凸台再选顶面新建草图画四个圆加等距约束和角度约束打孔最后倒外缘角。这一串操作在熟练的人手里也要两三分钟而且只要客户改一个孔径所有关联尺寸都得跟着重新检查。text-to-CAD瞄准的就是这个时间差。它把语言描述的设计意图直接映射成一系列参数化特征而不是让你手动去点菜单。自然语言里的均布四个孔对应到建模软件里其实就是一个圆草图加圆周阵列再加打孔这些步骤完全可以被结构化地表示和生成。1.2 它和文生图、文生3D有本质区别输出必须有逻辑很多人第一次听说text-to-CAD会觉得它和现在很火的文生图、文生3D差不多。我在实际试用后可以明确告诉你这是两类完全不同的产品。文生图拿到的是像素矩阵它追求的是看起来像文生3D通常拿到的是网格模型追求的是轮廓合理。但CAD模型不一样它背后必须是一棵特征树、一系列布尔运算、一组尺寸约束。你要的不是一个好看的雕塑而是一个能改孔径、能改变厚度、能重新定义倒角半径的实体。这也是我判断一个text-to-CAD工具是否靠谱的核心标准输出到底是STL网格还是STEP/带特征历史的实体模型。如果是前者那它本质上还是文生3D套了个CAD皮肤只有后者才真正有资格叫text-to-CAD。它输出的不只是几何更重要的是可以继续编辑的逻辑。1.3 最该用它的人不只是机械工程师我见到很多讨论都把text-to-CAD定位成给设计师省时间的工具但实际试用下来我认为有几个群体受益更明显。第一个是非机械背景但经常要和三维模型打交道的工程师比如电气工程师要机壳、采购工程师要确认供应商的零件外形他们没系统学过参数化建模但现在可以靠一句长200、宽120、高80四角圆角R5先拿到一个初版模型去沟通。第二个是创客和学生。学生交课程作业时模型结构简单但数量多与其一节课画一个零件不如先用自然语言批量出初稿再手动修正关键尺寸。创客则是想到什么先验证一下整体比例快速桌面拍板。第三个其实是我自己做方案设计和评审时我经常需要快速给出三种不同结构的外形对比。以前每个方案都要从零建模现在我可以把三种描述都扔给模型得到三个可编辑STEP文件然后挑一个方向继续深化。省下来的不是画图能力而是方案探索的意愿。2. 拆开引擎看原理语言到几何的三种主流实现路线2.1 路线一让大模型直接写参数化特征命令这是目前我认为最有前景、也最容易理解的一条路线。现代CAD软件里所有的建模操作说到底都是一连串命令画一个圆、拉伸50毫米、切除一个槽、添加一个倒角。这些命令天然是文本是大语言模型的强项。具体做法是把别人的建模过程整理成自然语言描述 对应特征命令序列的训练数据。模型学到的不是如何渲染出图片而是当用户说打四个均布孔时应该依次生成哪几条建模指令。推理阶段模型输出一段类似脚本的结构化文本然后由解析器输入到参数化内核生成模型特征树。这条路线的优点在于可解释性和可编辑性。生成结果可以直接看到为什么有这个孔、为什么厚度是10因为特征树就是建模过程的说明书。缺点是训练数据很贵高质量的CAD命令序列不像网页文本那样随便爬需要大量的专业建模操作记录而且每个软件的特征命令体系还不一样换个软件基本要从头适配。不过好在很多命令是相似的所以现在已经能看到一些跨软件转换的尝试。2.2 路线二先生成几何体再反向构建可编辑边界表示另一派人走的是更曲线救国的路线先用语言模型或扩散模型生成一个几何体通常表达为点云、体素或者神经隐式场然后再通过算法把它转换成边界表示也就是CAD里常见的B-rep实体。这种方法的好处是能覆盖更复杂的自由曲面不像特征命令路线那样必须拆成拉伸切除倒角。比如描述一个鼠标形状的外壳用命令流很难生成流畅曲面但用几何生成模型反而可能给出合理的曲面轮廓。缺点也同样明显从网格/点云转换回B-rep后得到的往往是一堆复杂曲面片没有清晰的草图和特征概念。你想改一个圆角半径找不到对应的特征参数只能整面重做。这也就是俗称的死模型。我见过一些演示生成的模型在视觉上很惊艳但一检查特征树只有一个光秃秃的导入特征后面什么都没有。这种模型拿来做3D打印或者单纯看效果完全够用但要进入工程改图流程基本等于宣判重画。所以这条路线更适合走概念设计方向但离真正的生产级还有距离。2.3 路线三检索现有模型库按语义重组参数第三种路线有点取巧但也不容忽视它不去凭空建模而是维护一个大规模的模型库每个模型都带有标签、尺寸参数和可编辑的模块。当用户输入一句话时系统先去检索语义上最接近的几个模型然后根据语言描述中的尺寸信息调整这些模型的参数输出一个变体。这种方案看着有点笨其实落地反而最早。因为很多工业零件其实高度标准化法兰、支架、轴承座它们的拓扑结构几十年不变变的只是尺寸和孔位。只要库够大、标签体系够好用户说直径60的法兰盘四个直径8的孔系统只要从库里拉一个法兰模板改掉两组参数就能交差。它的局限很明确模型库覆盖不到的新结构就完全失效。如果有人说一个像树根一样的异形底座库检索大概率给出一个莫名其妙的结果。另外这种方案的多模态理解能力其实很浅更多是关键词匹配加参数映射稍微复杂一点的空间关系描述比如孔在斜面上且与底面成45度就难以处理。但不可否认在工业标准件这个细分领域检索式方案是当前最可靠、最少出错的。2.4 三种路线的输出质量对比把我实际接触到的信息整理了一个对比表方便大家直接看清差异路线输出可编辑性尺寸准确性复杂曲面能力主要瓶颈适合场景特征命令流生成高有清晰特征树较高但依赖文字中的数字理解低曲面类表达困难训练数据贵、软件兼容规则机械零件、快速出初稿几何生成转B-rep低编辑能力差中等高能出自由曲面模型转换后特征缺失概念造型、3D打印展示检索模型库参数重组高但限制在已知模板内高因为是模板参数调整极低无法处理新拓扑标准件、常用结构这里需要提醒一句实际产品往往是混合路线。比如先用检索式给一个模板再用特征命令流补充局部特征最后用自由曲面生成器处理把手、外壳这类造型部分。所以你在评估一个工具时别只看宣传页写着AI建模还是要去试它输出的STEP文件到底能被编辑到什么程度。3. 一次完整的实测用一句话生成一个可编辑支架3.1 我选择的工具和运行环境先交代我测试用的主要工具。在线方面我用过Zoo的text-to-CAD网页演示它的交互很简单左边输入文字右边输出模型下载。本地方面我跑过基于开源模型搭建的推理环境配合FreeCAD 0.20做导入验证。我这里不打算把某一款工具捧上天因为这个领域几乎每个月都在更新今天好用的明天可能就被别人超过了但测试思路和方法是可以沉淀下来的。我选择测试对象的原则有三个第一输出必须包含可下载的STEP或者原生参数化文件只给STL/OBJ的一律不测第二能明确设置单位第三最好能展示生成过程中的命令列表或特征历史哪怕要点开隐藏菜单才看得到。这三点其实也可以当成大家判断一个text-to-CAD工具靠不靠谱的初筛标准。3.2 提示词写法把草图轮廓拉伸孔翻译成文本第一次我给的提示词特别口语化帮我做一个能放三根圆棒的底座下面要有螺丝孔。结果生成出来的模型确实有底座但三根圆棒的位置完全不对螺丝孔也变成了通孔而不是沉孔。问题不只在模型能力更在我描述得太模糊。后来我把建模过程倒过来想与其用放固定这种结果导向的动词不如用CAD软件自己的语言来说。我的第二个版本是这样写的创建一个支架模型。主体是一个长120mm、宽60mm、高50mm的长方体。 在长方体的上表面中心竖直放置一块长80mm、宽40mm、厚8mm的立板 立板的底面与长方体上表面贴合。 长方体沿长度方向的两个侧面上各开两个直径6mm的通孔 孔轴线与宽度方向平行。所有外边缘加R2圆角。这段话里没有什么修辞全部是主体、位置、尺寸、特征操作的结构化信息。推荐大家在实际使用时也按这个套路来先定义主体几何再描述子特征然后给位置关系最后补细节。模型生成之后整体拓扑基本正确立板贴合在了上表面四个通孔也都出来了位置也算在侧面而不是正面。3.3 生成后的验证流程打开命令历史、检查特征树拿到模型文件后我一般不会直接看渲染效果而是先做两步检查。第一步是把文件导入FreeCAD然后打开左边视图里的树面板也就是特征历史。如果是STEP文件FreeCAD默认会把整个实体折叠成一个Part模块下的单一对象这是正常现象因为STEP格式本身不一定带特征历史。所以我会想办法寻找工具自带的生成日志或者命令回放功能。在线工具一般会提供下载参数化脚本或JSON特征列表的选项我把这些下下来看里面的操作顺序。我这次看到的命令列表大概是这样的先有长方体定义然后是草绘-矩形接着是拉伸再有两次凸台-立板然后是孔-阵列最后是圆角。这个顺序就是建模时的正常思路。如果模型只有一次导入操作那我就认为它只是把网格或者B-rep打包了一下并没有真正逐特征重建。第二步是检查尺寸。我在FreeCAD里用测量工具量了立板厚度和孔间距结果基本对得上提示词误差大约在0.01毫米以内这个误差更多是模型显示精度导致的不是生成错误。但我也要提醒不同工具差别很大有的会把英寸当毫米用或者自动取整到奇怪的数字。大家拿到文件后第一件事永远是全选实体检查单位和关键尺寸别信预览图。3.4 结果评估这套流程的实际完成度我给这次测试流程打分的话整体完成度大概七成半大型拓扑和尺寸正确但有两个小问题。第一圆角只做了外部可见的边内部孔口没有倒角第二立板和主体的连接处没有自动添加过渡圆角虽然机械上没问题但如果按3D打印考虑最好在交接处加一个加强筋。第二个问题其实很典型大模型记住的是CAD操作而不是工艺常识。它知道圆角怎么加却不知道哪里必须加。这就是为什么我始终强调text-to-CAD现在是一个加速器不是工程师替代品。它可以帮你省掉从空白文档到模型初稿的四十分钟但后续的判断——哪个角落应力集中、哪条公差影响装配、哪些倒角方便加工——仍然得靠人来定。4. 生成结果能不能直接用格式、单位、特征树和制造交付4.1 STEP和STL的天壤之别边界表示 vs 三角形网格很多第一次接触text-to-CAD的人最容易踩的第一个坑就是格式。某个工具生成一个STL文件界面提示模型已就绪下载下来也能打开看上去很完整但导入CAD后你根本没法编辑只能看。STL是一种三角形网格格式等于把一个模型外表面用成千上万个三角形拼出来。它没有面的拓扑、没有厚度逻辑、更没有特征参数。你拿到一个STL法兰想改一下孔径完全没有手柄可拉。它适合交给3D打印机做切片但不适合进入机械设计流程。STEP则是工业界通用的三维实体交换格式它保存的是边界表示也就是各个面、边、顶点之间的拓扑关系CAD导入后能识别为实体。更关键的是很多专业CAD可以基于STEP做识别特征操作尽量还原成一个可编辑的模型。所以判断一个text-to-CAD能不能落地先看它支不支持导出STEP。4.2 特征树的可编辑性以命令流为魂我能接受一个工具默认导出STEP但我在实际使用中真正喜欢的是那些同时允许我看到甚至导出命令流的工具。命令流就像一份建模的源代码日志第几步画了什么草图、第几步做了多少次拉伸切除、布尔用了加法还是减法。有了这份日志后面的修改才有据可依。比如我想把支架的立板厚度从8毫米改成12毫米如果有命令流只需要改对应草绘尺寸和拉伸深度两个参数如果只有STEP和特征识别可能要先通过识别功能找回特征再手动打断关联。我建议所有人下载模型之后都养成一个习惯打开生成日志看一眼重点看三个地方。第一主体是否用了草图拉伸这类参数化流程而不是直接放一个长方体图元第二孔和槽是用布尔减运算做的还是用切除特征做的后者更利于改尺寸第三有没有多余的重复特征比如本来该用阵列却生成了四个独立的孔。这些细节直接决定后续可编辑成本。4.3 单位、尺寸和公差模型漂亮与能加工是两回事即使模型格式和特征树都合格你还会遇到下一个坑单位。我测试时特别尝试过一版提示词里面没写单位只写了长度120宽度60。结果一个工具输出的是英寸另一个输出的是毫米两个模型直接差25.4倍。更隐蔽的是有些模型在内部统一用毫米但某个特征的尺寸在生成过程中被四舍五入成了凑整数。如果你准备做公差很小的配合面这种误差就是灾难。另一个容易被忽略的点是公差。text-to-CAD目前只会给公称尺寸不会给上下偏差更不会给几何公差。机械加工里常说的孔径H7、位置度0.05在AI生成的模型里是完全不存在的。所以我的经验是AI出图只能当毛坯所有关键配合尺寸和公差一定回到CAD里重新标注甚至要重新用参数化约束驱动一遍才能交付车间。4.4 装配场景一次生成一个零件约束还远不能自动我还试过让它生成一个由底座、螺栓、盖板组成的小装配体。结果是三个零件分别都生成了位置比例也对但它们之间的装配约束——同轴、贴合、距离——完全没建立。你拿到的是散落在一个坐标系里的三个独立实体。这件事不能苛责AI因为装配约束本身就是工业软件里极难标准化的部分不同软件对约束的底层定义差距很大。目前text-to-CAD更可行的路线是一次生成一个零件或一次生成互相独立但位置正确的零件组然后人工在CAD里加约束。4.5 哪些交付场景可以闭眼用概念展示、3D打印、教学虽然上面说了那么多坑但我不希望把话说死。有几个场景目前text-to-CAD的产出已经完全够用。最典型的是概念展示。给客户、领导或者跨部门同事看一个结构方案不需要全参数化只要外形和大致比例像样STEP模型直接进渲染软件就能出图。第二个是3D打印验证尤其是手板、工装夹具一类不涉及高精度配合的零件生成模型直接切片打印省掉建模时间。第三个是教学演示给学生讲什么是法兰、什么是支撑结构不再需要先画一个正确的模型再截图可以直接现场生成边看边讲。在这些场景下我不会过度纠结特征树完不完整因为目标本来就不是精密制造。5. 把text-to-CAD放进真实工作流我的使用场景与取舍5.1 概念发散阶段当搜索加速器我目前用得最多的场景不是正式出图而是方案发散。以前我要对比三种外部结构方案至少得建三个模型哪怕都用最基础的方块组合也是三倍重复劳动。现在我会同时给AI三条描述方案A是开放框架式方案B是封闭盒体加散热槽方案C是带圆形立柱的悬臂结构十五分钟内能拿到三个STEP初稿。这件事的价值比很多人想象得大。做设计最怕的不是画图慢而是因为画图成本高潜意识里不愿意尝试更多方案。text-to-CAD把建模从手脑并用降级成打字描述创意试错的频率会明显提高。我自己现在做需求评审往往先让AI生成两三轮粗略模型目的是快速筛掉那些听着合理、长出来别扭的方案。5.2 用生成的STEP文件给跨部门同事确认需求另一个实用场景是和不懂CAD的人对需求。做电气设计的同事经常给我提需求这个安装板要避让那三个电容还要留扎线孔。在以前我要理解完再画个模型给他看不对再改。现在我可以让AI按他原话生成一个初步模型直接把STEP发给他他在自己的轻量化浏览器里就能转着看说这里不对孔要往左移5毫米我再把这句话作为新提示词交给AI循环迭代。有同事甚至自己上手用类似长200、宽150、四个角各留一个直径5的安装孔这种句式先出模型等我审核时已经接近可用状态。我少做的不是建模而是翻译工作这种沟通损耗的降低比建模本身的提速更让我舒服。5.3 在FreeCAD里清理和参数化的完整流程AI生成的模型进了FreeCAD之后我通常会做三个清理动作这里也直接分享出来。第一个动作是在Part工作台运行检查几何把布尔运算产生的边线问题刷出来。很多生成模型表面上看不出问题但一检查就有重复面、缺失边不修复的话后续做圆角会失败。第二个动作是使用Part 拆分实体或者布尔碎片命令把模型里隐藏的冗余实体清理掉这能有效降低文件体积和特征树混乱程度。第三个动作是把关键尺寸用表达式约束重新定义一遍比如把孔距设为BaseLength/4这样后面调主尺寸特征会自动跟着变。这套流程走下来AI生成的模型到我手里大概需要五到十分钟变成真正受控的参数化模型。相比全手绘仍然省时间尤其适合那些拓扑结构已经定型、只是要反复变尺量的标准件。5.4 我暂时不会用它做的事有使用边界也会有坚决不用的场景。第一是精密配合面凡是要和采购件、标准件发生密切装配关系的表面我不会接受AI生成的尺寸和形状全部重新画。第二是涉及曲面外观的消费电子外壳命令流路线生成的曲面质量通常不够G2连续直接生产会出现光泽不均或结构强度问题。第三是任何一个需要计入责任的设计变更——出图栏签字的时候我还是希望每个尺寸都出自我的手而不是AI的黑盒。这不是保守而是工程交付里可追溯性的底线。6. 提示词和后期修复几个实测有效的经验6.1 提示词的结构化模板主语几何特征尺寸位置关系说了这么多最后给大家一个可以直接抄的提示词模板。我实测下来这个结构最稳定[总体说明] 创建一个[零件名] [主体几何] 尺寸为长[数值]mm、宽[数值]mm、高[数值]mm的[形状] [特征操作] 在[面/位置]上[拉伸/切除/打孔]尺寸为[数值]mm方向为[方向] [位置关系] 以[参考面/轴]为基准距离[数值]mm按[角度/阵列]方式分布 [辅助细节] 外边缘全部[圆角R数值]mm所有通孔内壁去毛刺 [单位] 所有尺寸均以毫米为单位这套模板的核心逻辑是把话拆成CAD能识别的特征操作。你不必用CAD术语说得特别深但至少要给出四件事做什么形状、多大、放在哪、加什么特征。少了任何一项模型就会开始猜一猜就容易用看似合理但完全随机的方式补全。另外我再强调两个提示词层面的细节。第一是避免模糊位置词侧面要写清楚是沿长度方向还是宽度方向底部要说明是底部外表面还是底部内表面。第二是主动给出基准以底座上表面为基准比在立板下面更容易被模型正确理解。6.2 从粗到细迭代不要指望一次到位我见过很多人试text-to-CAD第一句话就想把所有东西都描述完结果生成出来一团乱。我的习惯是分三轮来写。第一轮只给主体和最大特征一个长120宽60高50的长方体底座上表面中心有一块立板。先把整体比例定下来。第二轮加主要孔位和槽立板中心开一个宽30深20的槽底座的四个角各加一个直径6的通孔。第三轮才加圆角、倒角、阵列这些细节修饰。这么做的好处是便于定位问题。如果第一轮就几何混乱说明基本拓扑理解有问题改多少细节都没用如果前两轮都对了只有第三轮的圆角顺序不对那就是后期特征处理的小问题重新生成代价也不大。做生成式建模和做渲染一样永远是先结构后光影再材质顺序反了返工成本翻倍。6.3 常见几何问题的修复手段哪怕提示词写得再好实际生成结果还是会偶发三类问题。第一类是布尔运算残留尤其是孔和槽的部分出现破面。我会先在FreeCAD里用Part Refine Shape清理一遍再检查几何如果还有问题直接用Part 新建实体 布尔减手动重做这个孔通常一分钟内就能修好。第二类是圆角顺序错误比如某些边根本圆不成设定的R值原因是邻接面曲率导致边界自相交这种直接在提示词里删掉圆角生成后自己手动倒反而更快。第三类是单位错乱统一在导入测试时用单位设置检查一遍如果发现是1英寸当1毫米用直接缩放25.4倍不要去改提示词重跑浪费时间。另外如果你拿到的是网格模型没有特征历史也别直接扔。先用FreeCAD的Part Create shape from mesh把它转成B-rep再用Shape Builder尝试补面虽然过程繁琐但很多简单零件能救回来。再不行MeshLab里做一次remesh也能给3D打印切片提供一个干净网格。6.4 这个方向接下来半年我会重点跟进什么最后说点个人判断。text-to-CAD目前还处在单个零件能看、复杂结构要修的阶段但迭代速度非常快。我接下来会重点盯几个方向的进展。第一个是特征树质量的自动评估。如果以后有工具能在生成时就自动报告这个模型有几个可编辑特征、哪些尺寸是通过约束驱动的那它的工程价值会立刻上一个台阶。第二个是装配体和多零件场景的突破。现在的模型对一个零件理解还行但对一个机构的运动关系基本没有概念谁先在这个方向做出可用度谁就能进入真正的工业应用层。第三个是和拓扑优化、仿真工具的联动。如果我能直接对AI说生成一个满足悬臂梁工况的轻量化支架而它输出的模型自带材料属性和网格剖分那设计前端的工作流才会被彻底改写。我自己目前的态度还是那句老话把它当个能干活的实习生用不是一个可以完全放手的高级工程师。它最大的价值是把从无到有那段最枯燥的时间省掉然后你省下来的精力应该用来做更值得的判断——选哪种结构、定怎样的公差、怎么让零件更好装更好造。这才是CAD里永远不会被生成式AI替代的部分。