用LLM+CadQuery自动生成CAD模型:CAD-Coder让文本秒变3D零件

你有没有过这样的经历?想画个法兰盘的CAD模型,得打开专业软件、调坐标系、画草图、做拉伸......步骤繁琐还得熟稔操作逻辑。现在,基于大语言模型(LLM)和CadQuery的CAD-Coder方案,能让你输入一段零件描述,直接生成可执行的CAD代码------今天我们就来拆解这个让CAD建模"动口不动手"的技术!

一、从文本到3D模型:不同表示方式的对比

先看一个法兰盘的例子:

  • 文本描述:只需要说明"120mm直径的金属法兰盘,15mm厚,中心50mm孔,6个12mm安装孔(分布在90mm圆周),还有70mm外径、8mm高的凸环"。
  • DeepCAD表示 :是一套自定义的命令序列(比如SOL_Circle 0 0 60),虽然能生成模型,但语法封闭、不易扩展。
  • CadQuery表示 :直接用Python代码实现(比如cq.Workplane("XY").circle(60).circle(25).extrude(15)),既贴合工程习惯,又能直接在CadQuery中执行生成3D模型。

更直观的是"分步建模":操作1画底座、操作2打安装孔、操作3加凸环,每一步的代码和模型都清晰对应,出错了也能精准调试。

二、CAD-Coder怎么训练?让LLM学会"逻辑建模"

CAD-Coder的训练 pipeline :

输入是零件文本描述+对应的CadQuery代码 ,经过有监督微调(SFT)的LLMGRPO优化策略,让模型学会"有逻辑地生成代码"------生成前会先做"思考":

  1. 分析文本描述的零件特征;
  2. 规划坐标系(比如以零件中心为原点);
  3. 设计草图的绘制顺序;
  4. 确定拉伸/切割的操作参数......

这种"先思考、再编码"的方式,让生成的CadQuery代码更贴合工程实际,不是盲目拼接语法。

三、高质量数据集:靠"择优"搞定标注

要训练LLM,得有文本-CadQuery-3D模型的三元组数据,但现有Text2CAD数据集只有命令序列。怎么办?

我们用标注 pipeline 自动"择优"

  1. 用DeepSeek-V3生成多个CadQuery代码候选;
  2. 执行每个候选代码,得到对应的3D模型;
  3. 计算生成模型与"真值模型"的Chamfer Distance(CD,衡量3D模型相似度)
  4. 保留CD最小、能成功执行的代码,组成最终数据集。

这个流程既解决了数据缺失问题,又保证了代码的准确性------毕竟"能生成和真值一致的3D模型"才是硬标准。

为什么这个方案更实用?

  1. CadQuery的优势:基于Python的开源库,代码可复用、易修改,工程师不用学新语法;
  2. 可解释性强:分步建模的逻辑和CAD软件操作一致,出错了能定位到具体代码行;
  3. 数据集质量高:通过Chamfer Distance筛选,避免了"代码能跑但模型不对"的情况。

这个方案把LLM的自然语言理解能力和CadQuery的工程实用性结合,让非专业人员也能快速生成CAD模型。未来还能扩展到带螺纹、倒角的复杂零件~

总结

当前 CAD Coder 虽实现了文本到 CAD 模型的自动化转换,但仍存局限性:

  1. 数据集多聚焦简单零件(如基础法兰、凸台),对复杂装配体、自由曲面或带精密公差的零件支持不足,难覆盖实际工程的高复杂度需求;
  2. 生成代码侧重几何形状还原,缺乏对加工工艺、尺寸链约束、装配兼容性等工程实用信息的考量,模型易 "可看不可用";
  3. 交互灵活性有限,暂不支持自然语言驱动的实时迭代修改,且对行业专属术语的歧义处理能力较弱。

其未来趋势将更贴近工程实际:一方面会拓展融合装配关系、公差、工艺参数的高质量数据集,提升复杂场景适配性;另一方面会强化交互与工程知识融合,支持自然语言增量编辑、自动嵌入工艺约束,探索草图 + 文本的多模态协同建模;同时会推进与主流 CAD 软件的生态集成,实现代码向专业工具的无缝导入,并针对机械、航空等领域做定制化优化,让文本驱动建模真正落地生产流程。

相关推荐
八角Z1 小时前
AI Agent作为经济参与者的兴起:机器经济与传统金融体系的并存与交织
大数据·人工智能·服务发现
碧海银沙音频科技研究院1 小时前
GX8002语音识别SDK
人工智能·语音识别
冷雨夜中漫步2 小时前
DeepSeek Harness:一切皆插件的 AI Agent 框架深度解析
java·人工智能·ai·开源·github
IT_陈寒2 小时前
Vite热更新失效?八成是这个配置在搞鬼
前端·人工智能·后端
龙腾AI白云2 小时前
世界模型与大模型的区别
机器学习·知识图谱·pygame
皮皮虾❀2 小时前
AI Agent可观测性:在钉钉生态中构建透明、可控的智能体服务
人工智能·钉钉
ʜᴇɴʀʏ2 小时前
TIP 2025 | DIL-SSOD:密集信息增强与关系一致性正则化的半监督目标检测
人工智能·目标检测·目标跟踪
Nomarsgo2 小时前
柔性生产平台工业显示解决方案——基于联控 Lionconit IFD-1901 工业显示器打造高可靠人机交互终端
人工智能·科技·计算机外设·视觉检测·电脑·人机交互·制造
天天代码码天天2 小时前
不装 Android Studio,也能把 Vue / React 一键打成 APK:开源工具 lw.Web2Android
人工智能
武子康2 小时前
DeepSeek Harness:Subagent、Job、Goal 都叫任务,为什么不能混成一个对象
人工智能·llm·agent