
1. 别急着画图text-to-cad 到底改变了什么不少人在电脑前度过无数个小时从第一根中心线开始画法兰盘标完一组公差然后发现视图角度错了又回去改草图。做机械设计、产品结构、工艺装备的人对这种循环应该都不陌生——真正的设计时间有一半以上消耗在图形的重复表达上而不是思考本身。text-to-cad 就是想从这个环节里把效率挤出来。它做的事情用一句话概括把自然语言描述中文、英文都可以转换成可编辑的 CAD 模型文件输出的不是一张图片、不是渲染图而是真正的参数化实体模型能用常规 CAD 软件打开、继续修改、出工程图。2024 年 Zoo 发布之后这个方向开始真正进入工程可用状态。Zoo 支持英文提示词输出 STEP 文件能够在你本地免费跑起来这意味着企业不用担心设计数据上传到第三方服务器模型生成全程离线完成——对很多设计部门来说这一条就足够有吸引力了。随后国内也出现了支持中文语义输入的实验性工具在建筑构件、机械零件、日常产品三个方向上有不同程度的落地。text-to-cad 适合谁我先给一个明确的边界它是给已经有 CAD 基础、但希望减少重复建模工作量的人用的效率工具不是给完全不懂工程的人用的智能魔法盒。你可以没有用过 Zoo但你必须知道什么叫拉伸、什么叫旋转体、什么叫倒角否则模型生成之后你连参数对不对都无法判断。拿我自己第一次跑通 Zoo 的经历来说输入一句a mechanical bracket with four mounting holes and a central shaft hole, overall length 120mm几十秒后得到一份 STEP 文件导入 SolidWorks 之后特征树非常简洁拉伸、切除、阵列都在后续加倒角、加公差都很顺手。那一刻的真实感受是以前一个这样的支架从草图到完成再快也要十五到二十分钟而这套流程把纯表达的时间压缩到了几乎可以忽略的程度。但别急着把它神化。同样一句话如果你少了长度 120mm这类关键约束模型可能生成一个像雕塑多过像零件的产物。核心问题在于工具能理解语义但工程约束需要你自己说清楚。后面我会用一个完整的实战流程来演示提示词怎么写、参数怎么定、模型生成之后怎么检查每个步骤都有对应的坑和补救办法。2. 它与图片生成3D的本质区别为什么 CAD 语义更难很多人容易把 text-to-cad 和 AI 生成 3D 模型混为一谈实际上这两类工具的底层逻辑完全不同。图片生成 3D比如用几张照片生成一个网格模型解决的是外观重建问题它输出的是三角面片。面片模型看起来像但要转成工程上可加工、可装配的实体还得重新逆向、重新拟合曲面、重新补特征工作量一点不少。text-to-cad 走的是另一条路自然语言 → 程序化建模指令 → 参数化实体。它不生成表面而是生成构造过程——先确定草图平面画一个矩形拉伸 30mm切一个圆孔阵列三个。听起来像是把建模师的操作意图翻译成了一串命令然后由几何内核执行。这也解释了为什么这项技术的门槛比图片生成 3D 更高。几何内核需要保证每一步操作产生的实体是合法的面不能自交边不能悬空草图必须全约束布尔运算要处理退化情形。任何一个环节出问题模型就会变成废品。自然语言理解模型需要输出的不仅是人的意图还得是几何内核能执行的合法指令序列这两者之间的转换本身就是难点。用生活化的例子来理解图片生成 3D 相当于让一个画家照着照片捏泥巴捏出来的东西在视觉上相似text-to-cad 相当于让一个钳工听你描述之后用锯子、锉刀、钻头把一块钢材真正加工出来。前者误差不重要后者差一毫米就是废品。因此text-to-cad 的评估标准也不是像不像而是三条硬指标参数化程度模型在 CAD 软件里能不能通过改尺寸驱动更新而不是一堆死几何特征树质量生成的特征是否符合常规建模逻辑有没有为了出形状而使用大量怪异曲面可编辑性用户能不能像对待自己手动建模的文件一样直接拖拽手柄、修改草图、追加特征。如果只追求形状正确生成的模型可能完全无法进入工程流程。这是我建议所有人第一次接触 text-to-cad 时就要建立的判断框架不要看它生成得像不像要看它生成的文件在你熟悉的 CAD 里能不能继续改。3. 实战流程用 text-to-cad 生成一个机械零件并完成修改这一节以 Zoo 的开源版为例从头到尾带你跑一遍全流程。Zoo 支持调用本地几何内核处理不依赖云端所以环境配置相对干净适合作为入门首选。3.1 环境准备硬件与依赖清单先看硬件底线。Zoo 在自己的文档里给过参考配置16GB 内存是起步8GB 显存能比较流畅地跑模型推理时会占 6GB 到 8GB 显存。我的实际测试在不同配置上有一些具体体验硬件配置体验RTX 4060 8GB 32GB 内存可流畅运行生成一个中等复杂零件约 20 到 40 秒纯 CPU 运行能跑但耗时翻倍甚至更多不建议日常使用M 系列芯片 Mac需要看是否支持对应推理后端实测部分版本有兼容问题依赖方面需要准备 Python 环境、Git、以及 PyTorch 的对应版本。安装的时候建议用虚拟环境避免和已有的其他项目互相污染依赖。如果你用的是 Windows注意 Zoo 的几何内核相关组件对系统环境的依赖最好是干净的 Python 3.10 或 3.11 环境我之前在 Python 3.12 上遇到过一些潜在问题回退版本就正常了。注意不要跳过安装文档里关于几何内核的初始化步骤。跳过之后模型可以加载但生成一定会报错这是最常见的失败原因。3.2 第一个模型的完整生成过程启动之后在交互界面里输入这样一段提示词Create a mechanical mounting bracket. The base plate is 120mm long, 60mm wide, and 8mm thick. There are four through holes with a diameter of 6mm at the four corners, each hole is 10mm away from the adjacent edges. In the center of the plate, there is a boss with a diameter of 30mm and a height of 15mm, with a 12mm through hole in the center.这一段提示词有几个关键点值得拆解每个几何元素都给了尺寸 位置两层约束。四角的通孔不仅给了直径还给了与边缘的距离中心凸台同时给了外径、高度和内孔直径避免模型把它生成成一个单纯的圆盘整体顺序是从主特征到次要特征先底板再孔再凸台最后中心孔。Zoo 在处理提示词时会理解层次关系顺序越清晰生成的特征树越干净。点击生成后模型推理过程会在几十秒内完成。得到的 STEP 文件可以直接用 FreeCAD、SolidWorks、Fusion 360 打开。打开后我建议做两件事检查特征树检查尺寸。Zoo 生成的 STEP 文件在打开时通常会被识别为导入的实体部分软件不会自动重建为本地特征。这就需要你决定是否要重新参数化——具体怎么处理我放在后面细说。3.3 生成之后怎么改从 STEP 到可编辑模型STEP 是数据交换格式不是原生的参数化格式。Zoo 这类工具在输出 STEP 时实际上输出的已经是参数化构造过程在几何内核中求值后的结果但导入其他 CAD 时这个过程信息通常会被丢弃只保留最终的边界表示。遇到这种情况有两个处理路径路径一直接在导入的实体上操作。用 SolidWorks 的直接编辑功能或者 Fusion 360 的直接建模模式移动面、改孔径、调整倒角。适合小改。路径二重新基于草图建模。看一遍实体的测量尺寸在 CAD 里把主要特征重新画一遍。听起来麻烦但如果你需要深度修改这反而是最快的——因为 text-to-cad 已经把从哪里开始设计这个思路给你了你只需按思路重新执行不必从零思考。另外有个折中办法Zoo 本身也支持输出中间过程文件。如果你在生成之后还想调节某个尺寸可以在工具里重新描述并指定具体参数重新生成一次。它的生成成本很低改提示词再跑一遍往往比重建特征还快。4. 提示词的核心技巧如何精确控制尺寸、特征与约束text-to-cad 的输入端是语言而语言是模糊的。同一个词不同领域的人理解完全不同。比如光滑做外观的人觉得是曲面质量做工艺的人觉得是表面粗糙度。模型没有工程常识它只能根据训练数据里的统计规律做推断。所以你的提示词越精确结果就越可控。4.1 结构化的提示词写法我测试下来一套好用的提示词结构大致分四层整体描述这个零件是什么它的用途或安装场景帮助模型判断大致拓扑基准几何主要形体的形状与尺寸底板、外轮廓、主体特征列表孔、槽、凸台、阵列、倒角每个都要有明确的尺寸数值和相对位置约束与规则哪些面需要保持平行哪些边缘要倒角哪些孔是通孔而不是盲孔。拿一个法兰盘举例可以这样写Create a circular flange with an outer diameter of 100mm and a thickness of 12mm. The center has a 30mm through hole. There are six bolt holes with a diameter of 9mm evenly spaced on a bolt circle with a diameter of 80mm. Both faces are flat and parallel.这段描述里evenly spaced直接触发了阵列逻辑模型输出六孔均布的特征生成的模型不需要后续手动阵列处理。这就是结构和关键词带来的差异。4.2 反面案例模糊描述会得到什么如果只是说做一个法兰盘模型可能输出一个完全符合法兰刻板印象的产物但尺寸完全随机可能外径 80mm也可能外径 200mm。一个没有尺寸的零件在工程上是不可用的。再比如你写一个带孔的板子模型很可能把孔做成盲孔而不是通孔因为单凭这句话无法判断孔的深度——虽然中文说孔有时默认通孔但模型底层是基于英文的几何语义理解没有标注深度的地方它倾向生成一个合理的默认值而不是通孔。这个问题在中文提示词工具里更突出。中文天然省略量词和方向信息比如底板四个角打孔没说是通孔还是沉头孔、孔心距边多少。使用中文输入时建议参考中文工程制图的表达习惯主动补充通孔盲孔沉头孔均布对称这类完整约束。4.3 从模糊到精确一个提示词的迭代修改实例我在测试时做过一个电机安装座第一版提示词是一个电机安装座中间有轴孔四个角有安装孔。生成结果可以用一句话形容形状上是个安装座工程上是废品。轴孔径、安装孔孔径、孔间距全是模型自己编的孔深也没达到通孔条件。完全可以预见的失败。第二版改成电机安装座底板长 100mm宽 80mm厚 6mm四角各有一个直径 5mm 的安装通孔孔心距长边 8mm、短边 8mm中心有一个直径 20mm 的轴通孔轴孔周围有一个直径 40mm、高度 3mm 的凸台。结果特征齐全尺寸基本与描述一致导入 CAD 后只需做少量调整就能出工程图。两版之间的差异只在于我把说意图换成了报参数。5. 实测踩坑模型生成结果的常见缺陷与补救方案任何工具都有短板。text-to-cad 经过这一两年的迭代处理标准机械零件的能力已经比较可靠但遇到特殊情况还是会有各种问题。这里把我在实际使用中最常遇到的几类问题列出来每个都给出特征和应对思路。5.1 特征数量出错文字说四个孔生成三个这类问题偶有发生。原因是语言模型在生成结构化指令时把重复次数这类计数性参数当成了软约束而不是硬约束。如果遇到漏孔、多孔的情况在 CAD 里补一个阵列就行不必重新生成。补完阵列后顺手在提示词里把数量描述换成四个直径 8mm 的通孔以 90 度间隔均布在直径 60mm 的圆上这种位置描述比纯数量描述更容易让模型准确执行。5.2 倒角与圆角的语义歧义倒角和圆角在中文里经常混用在英文里是 chamfer 和 fillet含义完全不同。模型对这两个词的处理通常很准确问题出在用户没说清楚。你要是输入边缘磨圆模型可能理解为全局圆角也可能理解为一个局部特征。建议优先使用标准术语并把数值写进去chamfer 3mm x 45 degrees 或者 fillet radius 2mm。文字描述更直观但 CAD 工具理解起来其实是以指令为准的。5.3 布尔运算导致的自相交实体当你描述中同时出现穿过和叠加两种关系时模型有时会生成自相交的实体——也就是一个面穿过另一个面几何内核产生退化边。这不算模型本身的 bug而是自然语言对空间关系的表达能力不足。一旦导入 CAD 后看到模型报体已损坏或无法选中面最快的处理办法是直接用 CAD 的修复工具进行几何修复或者把自相交的部分切除重建。这类问题在简单零件上几乎不会出现但零件一复杂特别是多个特征叠加位置重叠时就值得留意。5.4 模型生成的单位问题Zoo 这类工具默认长度单位通常基于模型内部配置同一句话在不同版本上可能生成毫米或英寸的结果。所以每次生成之后第一件事都是先测量两个关键尺寸确认单位符合预期。这个操作只需要几秒钟能避免整个工作流被一个单位错误带偏。提示如果你使用中文输入文本建议在描述里同时注明单位毫米英文输入则注意不要混用 inch 和 mm需要确保整段描述前后一致。6. text-to-cad 与常规 CAD 工作流的配合方式工具的意义不在于替代而在于重新分配设计师的时间。text-to-cad 目前更适合放在方案快速验证和前期结构探索阶段真正到详细设计阶段还是需要在传统 CAD 环境里完成。比如你做产品结构预研需要评估一个电机安装座占多大空间、安装孔是否与壳体干涉。用手动建模从新建零件到完成十分钟可能打不住。用 text-to-cad一分钟内拿到实体直接装配进总图做干涉检查。如果结果不合适改一下提示词里的关键尺寸重新生成又是一个新方案。设计思路没变只是把表达思路的时间省了下来。再比如非标自动化里的标准件选型轴支座、支架、连接板这类零件结构简单、规格多样用提示词批量生成不同尺寸的变体非常高效。改一个长度、改一个孔径语义描述比打开 CAD 改草图更快。目前比较顺手的配合流程我的建议是先用传统 CAD 或者手绘草图确定设计意图和关键尺寸从意图中提炼出结构描述交给 text-to-cad 生成初版实体将生成结果导入 CAD做干涉检查、结构评估、修改特征生成结果不符合预期时把文本描述中对应的参数行修改后重新生成而不必在 CAD 里大改。这相当于把建模这个环节前置并自动化了而设计仍然掌握在你手里。传统 CAD 中的草图、约束、基准、公差这些工作目前仍然是必须由人工完成的。7. 主流工具与模型现状Zoo、CAD-GEN 与国产中文方案text-to-cad 领域目前还没有一个绝对王者但模型和工具已经出现分化。了解每一类工具的能力边界能帮你少走弯路。7.1 开源模型 Zoo自由部署首选Zoo未见原文按已知信息补全是目前唯一能实现文本 → 参数化 CAD 模型的可用开源模型。它基于专门构建的数据集训练输出结果是带参数化信息的实体模型能在本地部署。隐私安全、完全离线是他的核心优势适合企业级应用。缺点在于对复杂装配级描述的支持不够单个零件没问题一提到配合关系就容易出错。7.2 学术前沿模型 CAD-GEN 相关方向以 CAD-GEN 为代表的学术界模型目前还在数据集构建和模型结构探索阶段。和 Zoo 不同这类模型更关注如何将自然语言接入程序化建模内核如 CAD 脚本生成可用的产品化程度不高但研究进展值得关注。这类模型有一个共同特点更强调草图-特征-操作序列的可解释性而非直接输出最终实体。7.3 中文语义输入方案从可用到好用还有距离国内近半年出现了若干支持中文输入的 text-to-cad 实验性工具基本思路是在英文模型基础上套一层中文语义翻译或直接在中文数据上微调。实测下来中文工具能够处理带四角安装孔的底板这类常规描述但涉及复合特征组合时偶尔会丢失约束。我的处理习惯是中文负责快速出方案英文描述负责精调生成。毕竟目前效果最好的模型训练数据仍然以英文为主工程术语的一致性和精度差异是客观存在的。这不是行不行的问题而是合适不合适的问题——中文用户的适配还需要一个阶段。8. 未来方向从文字生成到设计意图的直接表达如果把 text-to-cad 放到更大的坐标里看它代表的是设计意图的直接传达。CAD 软件从命令行、菜单、图标一路发展过来本质上都是人向机器传达意图而文本是效率最高的一种形式——只是过去机器无法理解足够丰富的语义。接下来的方向有几个值得关注多模态输入文本 草图 参考图片组合描述减少纯文本描述空间复杂特征的困难约束自动补全模型根据零件功能自动推断配合公差、表面处理等工程语义把常识内嵌到生成过程中工程特征库接入螺栓、轴承、齿轮等标准件数据库与生成模型结合描述M8 螺栓时直接调用标准模型参数装配级生成从生成零件走向生成装配体描述配合关系自动构建约束。当然这些方向都需要相当长的时间。现阶段最重要的还是把文本生成单零件模型这件事用熟练让它真正融入你的工作流而不是停留在试玩阶段。我在实际项目里已经习惯把 text-to-cad 当作第一版草图的生成器结构方案讨论时不再花时间在 CAD 里拉扯特征而是直接在描述里讨论尺寸和约束。模型给我的不是一个成品而是把想法变成可讨论实体的最快路径。等我把描述打磨到位该倒角的倒角、该做公差的时候再做公差这时候文本已经帮助我把最繁琐的部分完成了。