“给我一句话换一个直接能开模的CAD模型”——这是很多人第一次看到text-to-cad时的第一反应。说实话我最初也带着同样的期待去试了一圈结果发现这个方向既没有玄学到一句话直接生成零瑕疵零件也没有简单到只是在常规大模型外面套一个3D输出头。深挖下来text-to-cad的核心是把自然语言里的设计意图翻译成CAD软件里可编辑、可约束、可制造的特征操作序列。换句话说它输出的不是一张好看的渲染图而是一棵能被设计师双击修改的特征树。这篇文章我想从工程落地的角度把这个方向拆开讲讲它和AI生图、文生3D模型到底有什么区别现在有哪些能用能打的上手路径实际跑通一个“文字到零件”要经历哪些坑以及它到底该以什么身份进入你的日常设计工作流。1. 先对齐认知text-to-cad到底生成的是什么入行久了你会慢慢发现很多新概念让人迷惑根源往往不是技术本身复杂而是大家对同一个词的理解根本不在一个维度上。text-to-cad就是这样单看字面好像是“文本进、CAD文件出”但“CAD文件”这四个字在水面下的分量差别极大我先花一整节把这个事情掰清楚。1.1 它不是“文生图”也不是“文生3D模型”现在市面上大家接触最多的是文生图比如描述一只猫模型给你画一只猫。后来又有了文生3D模型输入一句话模型给你一个带贴图的三角网格模型这种模型放进游戏引擎或者做可视化展示完全没问题很多人因此以为text-to-cad也就是这样最多精度高一点。但这两者在工程语义上差了十万八千里。三角网格模型本质上是“一堆三维坐标点连成三角形面片”它只有几何外壳没有厚度、没有孔洞轴心、没有特征层级、没有约束关系。你拿到一个网格法兰盘想把它中间的孔从10毫米改成12毫米在网格上做这个修改极其痛苦基本等于在纸上画了条线然后用橡皮擦去抠。而CAD模型不一样它背后是参数化的边界表示一个法兰盘在CAD里的本质是“拉伸一个直径80的圆柱、在半径30的圆周上阵列6个直径10的通孔、给两条边倒R2的圆角”这样一串可回放、可修改的操作记录。这个区别就是text-to-cad和文生3D模型之间的分水岭。前者要求模型理解的是工程语义包括特征、约束、尺寸、配合关系、制造可行性后者只需要理解视觉语义像不像、好不好看就完了。把这句话记在心里后面很多工具的表现你就能看懂为什么好、为什么差。1.2 为什么参数化对工程这么重要有了上一节的铺垫你可能已经意识到参数化是核心我再展开讲三点因为这直接决定了text-to-cad在实际项目里的价值边界。第一是可编辑性。设计师拿到一个AI生成的零件几乎百分百要改尺寸、调形状、加特征。如果生成的是参数化CAD模型改一个孔径只是双击尺寸改数字的事如果是网格模型这个修改可能耗费你半天。在真实设计迭代里不能改的模型等于废纸。第二是可制造性。CNC加工、3D打印切片、模具分型所有这些下游环节都依赖精确的边界表示和拓扑信息。网格模型在制造环节通常需要先做逆向工程才能用这一下就把便利性消耗殆尽了。而参数化模型可以和CAM软件无缝对接直接进入工艺规划。第三是可追溯性。特征树本身就是设计思路的存档一个零件怎么从毛坯一步步加工成最终形态看特征树一目了然。这对团队协作、设计审查、后续维护都至关重要。AI生成的CAD模型如果保留了合理的特征树那它才能算真正进入了工程体系而不是一次性的“数字手办”。1.3 常见的三条技术路线了解了目标是什么再来看当前行业怎么做。我观察到的text-to-cad技术路线基本可以分三类各有各的适用场景。第一类是LLM加程序化建模代码生成也就是让大模型写CadQuery、OpenSCAD或者Python的代码再由代码执行引擎生成CAD模型。这条路技术门槛最低因为不需要专门训练新模型借助通用大模型的代码能力就能跑而且生成结果天然是参数化的因为代码本身就可以带参数。缺点是对复杂造型的生成能力有限模型容易在“写代码”和“想几何”之间顾此失彼。第二类是针对CAD数据训练的专用模型直接输出特征树、草图约束或者B-rep几何。这条路上限最高因为它从底层就是为CAD数据结构设计的代表产品有Zoo旗下的Text-to-CAD、Autodesk在实验室推进的Project Bernini等。但目前这类产品大多还在快速迭代期API开放范围和稳定性都在变化。第三类是把扩散模型应用到点云、体素或者B-rep空间先“无中生有”生成几何再尝试拟合成参数化特征。这类最像“AI生图的3D版”视觉效果好但工程可用性往往要打问号因为从自由几何还原成干净特征树本质上是个逆向工程难题。我自己的判断是现阶段最值得普通设计工程师和开发者投入精力去跟进的是第一类和第二类。第三类可以保持关注等它真正解决“干净特征树”问题再上牌桌也不迟。2. 工具选型想上手text-to-cad从哪条路切入方向看清楚了接下来就是工具选型。我断断续续把市面上能摸到的方案都摸了一遍这里不打算做那种今天推荐这个明天推荐那个的清单党而是把选型思路和实际体验写给你你按自己的情况对号入座。2.1 商用产品和实验室项目速览先说商用产品这一波。目前最旗帜鲜明打text-to-cad这个旗号的是Zoo就是做KittyCAD的公司推出的Text-to-CAD它提供API接口你传一句自然语言描述它返回一个可编辑的CAD文件。我试用下来的感受是对简单机械零件、标准件、支架外壳这类“特征明确、结构规矩”的目标它能给出相当可用的结果特征树干净程度超出预期。但如果描述语焉不详或者涉及复杂的自由曲面输出就会开始飘。另外一个需要提醒的是这类服务通常按API调用计费你得关注一下自己测试的频率和成本。Autodesk的Project Bernini是另一个有代表性的实验室项目它在公开演示里展示了对多类别设计的理解能力但截至我写这篇文章的时间它还处于预览阶段普通用户能接触到的面还比较窄。我的建议是保持关注但别把生产流程押在一个还没正式开放的产品上。再往下主流CAD厂商Perplexity内置的AI助手、SolidWorks的Machining AI这类功能更多是在帮你自动化重复操作、做设计辅助而不是严格意义上的“文字生成全新CAD模型”。它们和text-to-cad是互补关系别混为一谈。2.2 开发者友好路线LLM加CadQuery如果你自己懂一点Python并且有折腾精神我强烈建议你走一遍“LLM写CadQuery代码”这条路线。它不仅成本低而且能让你极其直观地理解text-to-cad的内部逻辑。CadQuery是一个基于Python的参数化CAD建模库它的工作方式是用链式方法构建模型每一步都是一个可追溯的特征操作。举个例子如果你想建模一个带法兰的轴套代码大致长这样import cadquery as cq result ( cq.Workplane(XY) .circle(40) # 底座法兰直径80 .extrude(10) # 法兰厚度10 .circle(20) # 在法兰顶部画直径40的轴 .extrude(60) # 轴伸出60 .edges(|Z) # 选中所有竖直边 .fillet(2) # 倒R2圆角 ) cq.exporters.export(result, flange_shaft.step)这段代码直观展示了什么叫特征操作序列画圆是草图、拉伸是体特征、倒角是边特征。你把这段代码甩给任何一个主流大模型然后告诉它“改成底部四个安装孔的版本”它大概率能给你改出一版能用代码。我再进一步让它生成这个零件的话它只需要把这段代码的工程语义反过来理解就能生成属于text-to-cad的范畴。为什么这条路适合学习因为代码本身就是可检查、可修改、可版本管理的生成错了你可以直接看代码哪里不对而不是在一个黑盒几何体里瞎猜。而且代码建模天然参数化改一个数字全模型联动这对设计师来说价值极大。2.3 普通工程师怎么选不是所有人都有精力去折腾代码路线我给不同角色的选型建议如下。如果你只是想在概念设计阶段快速出几个“看起来合理”的方案用来和业务方对齐认知那我建议你直接试用Zoo Text-to-CAD这类商用服务把生成的STEP文件导入SolidWorks或Fusion 360继续往下做即可多快好省。如果你是机械设计或者结构设计工程师日常工作中有大量标准件、通用件需要快速建模那LLM加CadQuery这条路线可以认真投入一下把常用零件族参数化之后以后你只需要描述需求就能批量生成。如果你是CAD软件二次开发或者自动化工程师那可以更进一步去调商用API把text-to-cad嵌进你现有的自动设计流程里从而在接到需求之后并行出多个可行结构方案。3. 实操把一句自然语言变成能用的CAD文件这一节我完整走一遍实操流程。目标是让你看完之后能照猫画虎亲手跑通一个最简单的“文字到零件”闭环。流程本身比具体工具更重要因为工具会一直换方法论能用很久。3.1 一个完整流程实战安装支架我先选一个典型的机械零件——一个L形安装支架。它结构不复杂但包含板厚、安装孔、加强筋、倒角这些常见工程设计元素很适合用来演示。第一步是写提示词。第一次跑的时候我写得很随意“一个L形的支架有安装孔带加强筋。”结果生成的模型不能说错但完全没法用孔的位置不在安装面上加强筋厚度比板还厚整体比例失调。这给了我一个很实在的教训给AI描述设计意图要用工程语言而不是日常语言。我重新梳理后给出这样的明细描述“设计一个L形安装支架。底座板长80毫米、宽50毫米、厚6毫米竖直板高60毫米、宽50毫米、厚6毫米两板垂直相交连接处外侧倒R3圆角。底座四角各有一个直径8毫米的贯穿安装孔孔中心距边10毫米。竖直板上方居中开一个直径12毫米的通孔。底座与竖直板之间加一块三角形加强筋筋厚4毫米位置居中。”这次生成的模型就靠谱多了至少它完整表达了所有特征尺寸也基本对上。第二步是执行生成走LLM加CadQuery路线的话就是把描述和“请用CadQuery实现导出STEP文件”一起发给大模型然后拿到代码在本地运行走商用API路线就是调接口传描述等回包。第三步最关键把生成的STEP导入CAD软件验证。我习惯用Fusion 360打开第一件事看特征树第二件事用测量工具逐一核对关键尺寸第三件事做截面检查看有没有内部缺陷。实测下来按上面那种详细描述跑出的支架所有尺寸误差在毫米级以内特征树也算清晰可以直接作为方案模型用。3.2 提示词的工程化写法同样一句话写法不同生成质量天差地别。我把自己试验多次总结出来的有效提示词框架分享给你按这个框架填内容基本不会跑偏。明确零件类型和整体形态安装支架、法兰盘、轴承座、齿轮箱盖等第一句就说清楚。给出关键尺寸和数量长宽高、板厚、孔径、孔距、圆角半径能精确到数字就写数字别写“小一点的孔”要写“直径8毫米的孔”。描述特征间的相对位置关系孔在哪个面上、距边多少、圆周均布还是矩形阵列、与另一特征同轴还是垂直。补充制造相关意图需要倒角去除毛刺、需要拔模角度便于脱模、需要公差等级等这些对后续修改很有价值。明确输出格式和精度需求STEP还是STL、毫米还是英寸、需要几级倒角收尾时写清楚。这个框架等于给AI一张结构化的需求清单减少它去猜你意图的空间。工程语义和日常语义的区别就在这里日常说“一个带孔的板子”AI不知道孔在哪儿、多大、干什么用工程说“120毫米乘以80毫米、厚5毫米的矩形板四角开直径6毫米沉头孔孔距边12毫米”意图已经完成锁定。3.3 生成结果的验证清单工具和提示词都到位了最后一个习惯必须养起来拿到生成模型后先验证再使用。我自己整理了一份验证清单每条都来自真实翻过车的经历。几何完整性检查模型有没有自相交面、有没有破面缝隙、有没有重叠实体。CAD软件里可以用“检查几何”类工具跑一遍有红叉就要警惕。特征语义检查特征树里有没有莫名其妙的多余操作比如一个应该用“打孔”完成的特征结果被做成了“拉伸切除后倒角”虽然几何一样但语义脏了后续改起来就是坑。尺寸约束检查用参数表看一眼关键尺寸是不是可驱动修改一个值全模型能不能联动不能联动说明约束没锁只是“画了个样子”。可制造性检查内角有没有做到最小圆角有没有倒扣最小壁厚合不合理这些是加工工艺问题text-to-cad现阶段基本不会帮你主动考虑你得自己扫一眼。我见过很多朋友拿到AI生成的模型第一件事就是兴奋地发到群里结果导入CAM软件直接报错回头才发现有个隐藏的自相交面。验证这步省不得。4. 常见问题与排查技巧实录任何工具用深了都会碰见一堆文档里不写的问题text-to-cad更是如此。我在这里把我实际踩过的坑和排查过程整理出来分场景写清楚希望能帮你少走弯路。4.1 单位问题毫米英寸傻傻分不清这是我在使用过程中碰到的最高频问题。生成的模型尺寸“看起来对”但导入CAD软件一看整体大了25.4倍或者某个孔突然变成拳头那么大十次里有八次是单位换算出了问题。排查思路很简单先看你在提示词或参数里有没有明确写“单位为毫米”再看API或者代码生成工具的全局设置很多服务默认是英寸单位最后在CAD软件里测量一个基准特征用实际期望值和测量值做对比很快能定位是不是单位问题。解决方式就是统一单位体系最好在提示词里固定加一句“所有尺寸以毫米为单位”代码里也要显式指定不要依赖默认值。4.2 特征丢失只生成了“脸”没生成“骨头”有时你会碰到一种很隐蔽的失败模型看起来完全对但你双击特征树想改尺寸发现根本改不动它不是参数化模型而是一个被“冻结”的网格转换成实体。这种结果对设计师来说几乎等于废品。根因在于有的模型为了追求几何正确性放弃了特征树生成步骤直接拟合B-rep表面。这个过程把特征信息都磨掉了。排查方法是导入CAD软件后立刻打开特征树看层级如果只有孤零零一个“导入实体”节点那就要警惕了。解决方式是在提示词里明确要求“以参数化特征方式建模保留特征树”或者改用更强调特征生成的底层模型。如果已经拿到死模型那就做好心理准备要么重新生成要么用逆向思路做特征重建。4.3 提示词歧义导致的“幻觉特征”AI模型在语义不确定时会倾向于用最可能但不一定正确的特征去填补空白。比如你只说“支架底部有安装孔”没说几个、没说位置它可能默认给你均布四个但你没准只想要两个。这类问题最坑因为你一眼看去好像也没错等做干涉检查才发现孔位和实际安装点对不上。排查方向是把生成的模型特征树打开逐个对照你的原始需求看有没有模型自作主张新增的“自由发挥”。解法是提高提示词信息密度把数量、位置、阵列方式都写死让模型没有自由发挥的空间。4.4 什么时候不适合用text-to-cadtool is good但不是万能钥匙。我踩了几次坑之后总结出三类不适合的场景。第一类是精密配合件比如轴和轴承孔的配合它们之间有明确的公差带要求text-to-cad生成的模型基本不会自动带公差语义直接拿来用于配合设计多半出错。第二类是模具级复杂曲面比如手机壳背板、汽车内饰件这种自由曲面造型依赖专业曲面设计思维以特征建模为主的text-to-cad现阶段还没有可靠方案。第三类是多体装配逻辑设计零件之间的相对运动、连接方式、干涉检查这些本质上是系统级设计不是单零件生成能解决的。4.5 常见问题速查表我把高频问题整理成一张速查表方便你在实际使用中对照排查。现象可能原因排查方向解决参考模型整体放大25.4倍单位体系不一致检查提示词单位和导出设置统一指定毫米并显式设置特征树只有导入节点模型输出为死几何查看特征树层级要求参数化特征建模或重新生成尺寸和描述对不上提示词信息密度不足用测量工具逐项比对补充完整尺寸和位置约束出现多余特征模型意图猜测和原始需求清单对账限制数量和位置的自由度导入CAM软件报错存在自相交或破面运行几何完整性检查调整公差重建或重新生成模型比例失调文字描述缺乏整体尺寸锚点检查总长宽高约束给出最大外形轮廓尺寸5. 落进真实工作流text-to-cad的定位与边界工具最终要回答一个问题它在工作流里到底扮演什么角色。我实践下来最认同的定位是“方案草图加速器”和“标准件快速建模器”而不是“设计师终结者”。5.1 它最适合做概念阶段的“脑暴外挂”我们做设计时经常遇到一个场景上午接到需求下午要出三个可行方案去评审。传统流程里这三个方案每个都要建模、出图时间根本不够用。text-to-cad在这里可以发挥巨大作用你把三个方案的形态约束分别写成描述几分钟就能得到三个不同结构的参考模型虽然精细度有待完善但整体比例、布局、接口关系已经能支撑评审讨论了。评审通过之后再拿其中一个方案去做详细设计这个阶段反而不要依赖AI要回到设计师手中精雕细琢。普通CAD的工作流就是“AI出粗稿、人工出细稿”这个节奏我试了几轮项目效率提升明显。5.2 标准件库和族零件生成是隐藏宝藏还有一个容易被忽视的场景是标准件和族零件的批量生成。比如非标自动化项目里你经常需要各种长度、孔径组合的铝型材连接件或者安装块传统做法是打开零件库一个个改配置有了text-to-cad之后我可以维护一份参数化描述的模板每次只需要改关键参数模型就自动出来了。我甚至建了一个自己的“文字零件库”里面存了各类常用零件的结构化描述模板用的时候复制改数字比翻文件夹里的历史模型效率高得多。5.3 数据合规和资产归属绕不开最后必须提醒一个很多人忽略的点把公司内部设计数据或者未公开产品的结构描述发给第三方text-to-cad API存在信息安全风险。你在提示词里描述的零件特征本质上就是未公开的技术情报。建议有条件的企业优先考虑私有化部署或者基于本地LLM加CadQuery的路线至少在数据层面可控一些。生成模型的版权和归属问题也值得留意不同服务的条款差异很大商用之前记得看一下服务协议里关于生成内容权利归属的条款。6. 一点个人体会最后分享几个我真实使用下来的细节体会不算总结就当朋友之间聊聊天。给我最大惊喜的场景其实是给供应商快速描述非标件需求。以前是画个草图用微信拍过去然后电话沟通半天现在我用结构化的文字描述再加上一个AI生成的参考模型发过去那边基本一眼就明白要什么沟通成本骤降。让我最崩溃的场景到现在想起来还是单位错乱那次。当时赶一个方案生成的支架模型和底板孔位对不上查了半天才发现是英尺和毫米的问题从那以后“所有尺寸以毫米为单位”就成了我提示词里的固定开头。我给想入坑的朋友的建议是把text-to-cad当成一个“说设计意图的接口”而不是“点石成金的神灯”。它的能力边界现在还算清楚简单规则零件很强、复杂曲面很弱、装配逻辑基本不来事。你用它之前的核心准备其实不是研究AI模型本身而是把工程语义表达能力练好能把尺寸、特征、约束讲明白的人用这个工具就是事半功倍。后面如果再出精度更高、支持装配级语义的新版本那这个方向才真正到了重构设计流程的地步而现在先在它擅长的领域里把效率吃下来已经足够香了。