像聊天一样做CAD建模!浙大开源智能体让建模变打字,已登国际CAD顶刊
CAD建模现在也能用智能体自动生成了。CAD模型设计这件事尤其是在产品概念设计阶段需求常常是不完整、抽象的设计师需要把初步构想一步步转化成精确的参数化模型。传统CAD软件例如SolidWorks和CATIA虽然功能强大但对设计者的经验要求也很高导致设计效率受到限制。近年来利用大语言模型生成CAD建模代码的路线已经取得不少进展经过微调的大模型可以理解多模态输入并生成相应的CAD脚本。但问题依然存在开源大模型微调通常需要大量GPU资源高质量CAD建模序列又非常稀缺最终会限制生成代码的多样性和质量。为应对这一挑战浙江大学计算机辅助设计与图形系统全国重点实验室杜鹏团队提出了一个支持多模态输入的CAD建模智能体CADDesigner。该智能体致力于构建一个中间层将大模型、智能体与传统几何引擎深度融合帮助CAD设计师提升模型设计能力和生产效率。在交互层面CADDesigner支持文本描述与草图同步输入在API设计层面应用程序编程接口CADDesigner强调一致性能够做到举一反三生成精准契合用户设计意图的CAD建模代码。它的约束系统只负责定义规则不直接参与几何计算从而能够有效避免复杂运算带来的出错风险。此外CADDesigner还能让语言大模型学会给关键几何零件贴上带有功能含义的“身份证”以解决业内Coding中长期存在的“找对象难”问题。目前相关研究成果已发表于计算机辅助设计与图形学领域的顶级期刊《Computer Aided Design》。API设计强调一致性善于举一反三CADDesigner团队提出了一种大模型亲和的CAD建模脚本新范式——显式上下文命令式范式Explicit Context Imperative Paradigm简称 ECIP。该范式就像是给语言大模型LLM一本“傻瓜操作手册”让它在生成CAD建模代码时少猜、少绕、少犯错并把你描述的设计意图稳定地输出为可靠的几何建模结果。它的核心秘诀就两个字一致。在API设计上ECIP采用显式的命令式调用结构同时强调语法、参数与行为三者的一致性。所有的API接口均结构相似、用法统一所以当你用相似的指令搭配相似的参数时就能得到预期的结果。这对语言大模型来说太友好了。它只要学会一种操作就能自动举一反三地搞定其他类似操作不用再死记硬背每个接口的细节也不用反复试错改代码大大降低了API学习和使用的门槛。约束系统只指挥不动手在约束系统上ECIP更强调“只说要什么不说怎么做”。CADDesigner团队希望模型只需描述“想要什么结果”而不是被迫计算“具体该怎么做”。他们认为与其让模型自己当工程师琢磨两个零件该怎么移动、旋转才能对齐还不如让它只当个指挥官说一句“这两个零件要贴在一起”或“这两个孔要对齐”就好。这样模型就不用自己去算坐标、判断方向和琢磨空间位置了自然也就避开了这些复杂计算容易出的错。让模型学会贴“身份证”解决Coding对象选择难题为了解决“用代码建模Modeling by Coding”时长期存在的“找对象难”问题ECIP采用了一套“贴标签自动传递”机制。在传统建模脚本中找对象往往依赖索引、坐标或创建顺序这些方式对语言大模型来说非常脆弱参数稍微变一下就会找错。ECIP则允许模型给关键零件贴上带有功能含义的“身份证”比如“底座”、“安装孔”而且这些“身份证”会跟着建模过程自行传递下去如果后续模型想找某个零件直接按“身份证”上的功能名称搜索就行。这样一来原本让模型头疼的“找不着对象”问题就变成了“能说清、查得到、能核对”的简单事项。反馈机制不仅能知错还能懂原因、会纠正在反馈机制上ECIP也针对语言大模型进行了优化。当出现错误信息时ECIP不只是告诉模型“哪里失败了”还会尽可能地提供错误的位置、错误的类型、常见的原因以及修复建议类似Rust编译器体验。这样模型不仅能知道“错了”还能知道“为什么可能错”以及“下一步该怎么改”。同时CADDesigner团队还提供了一系列自动化工具脚本可以对建模结果进行机械干涉检查并生成同时适合人类阅读和机器解析的检查报告。这些报告可以帮助语言大模型进行下一轮自我修正和迭代优化。结语重构人机协作范式让人专注设计CADDesigner的出现为大模型提供了一种更友好的SDK接口模型只管理解需求、组织结构和表达设计意图几何计算、约束执行、对象选择、错误诊断和结果检查则皆由SDK完成。这意味着未来的设计师或许只需要专注于“想要什么”而“如何实现”“如何执行”以及“怎么验证”则可以交给SDK去做真正实现意图驱动的人机协同设计。对LLM与CAD行业而言CADDesigner打破了自然语言与精准几何之间的壁垒。一方面它不仅推动了大模型真正从聊天助手升级为可靠的设计生产力工具另一方面它也为未来人机协同以及意图驱动的参数化设计开辟了新的技术路径。