Text-to-CadQuery: A New Paradigm for CAD Generation with Scalable Large Model Capabilities

📄 arXiv: 2505.06507v1 📥 PDF

作者: Haoyang Xie, Feng Ju

分类: cs.AI, cs.CV, cs.LG

发布日期: 2025-05-10

🔗 代码/项目: GITHUB


💡 一句话要点

提出Text-to-CadQuery框架,利用大规模语言模型直接生成参数化CAD模型

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 文本到CAD 参数化建模 大规模语言模型 代码生成 CadQuery

📋 核心要点

  1. 现有CAD模型生成方法依赖专家知识和专用软件,且中间表示增加了模型训练的复杂性。
  2. 本文提出Text-to-CadQuery框架,直接利用LLM生成CadQuery代码,避免了中间表示的转换。
  3. 通过在扩展的Text2CAD数据集上微调LLM,显著提升了CAD模型生成的精确度和质量。

📝 摘要(中文)

本文提出了一种新的CAD生成范式:Text-to-CadQuery,旨在利用大规模语言模型(LLM)直接将自然语言翻译成参数化3D模型。现有方法通常生成特定任务的命令序列,这些序列无法被预训练模型直接处理,需要转换为CAD向量等中间表示,增加了复杂性并需要从头训练模型。为了解决这个问题,本文提出直接从文本生成CadQuery代码,利用LLM在Python生成和空间推理方面的优势,无需中间表示即可生成3D模型。通过在Text2CAD数据集上增加17万个CadQuery标注进行微调,实验表明,更大规模的LLM在微调后表现更好。最佳模型在精确匹配率上从58.8%提升到69.3%,Chamfer距离降低了48.6%。

🔬 方法详解

问题定义:现有基于文本生成CAD模型的方法通常生成任务特定的命令序列,这些序列不能直接被预训练的大规模语言模型处理。因此,需要将这些命令序列转换为CAD向量等中间表示,才能生成最终的3D模型。这种方式增加了额外的复杂性,并且需要从头开始训练模型,效率较低。

核心思路:本文的核心思路是直接利用大规模语言模型生成CadQuery代码。CadQuery是一种基于Python的参数化CAD脚本语言,LLM在Python代码生成方面已经表现出强大的能力。通过直接生成CadQuery代码,可以避免中间表示的转换,充分利用LLM的预训练知识,从而简化CAD模型的生成过程。

技术框架:该方法主要包含两个阶段:首先,构建一个包含文本描述和对应的CadQuery代码的数据集。本文在现有的Text2CAD数据集的基础上,增加了17万个CadQuery标注,从而构建了一个更大的数据集。其次,使用该数据集对大规模语言模型进行微调,使其能够根据输入的文本描述生成相应的CadQuery代码。生成的CadQuery代码可以直接运行,从而生成最终的3D模型。

关键创新:最重要的技术创新点在于直接利用LLM生成CadQuery代码,避免了中间表示的转换。与现有方法相比,该方法更加简洁高效,并且能够充分利用LLM的预训练知识。此外,本文还通过增加CadQuery标注的方式,扩展了现有的Text2CAD数据集,从而为LLM的微调提供了更多的数据。

关键设计:本文使用了六个不同规模的开源LLM进行微调,包括较小的模型和较大的模型,以验证模型规模对性能的影响。损失函数采用标准的语言模型损失函数。在数据集构建方面,作者仔细检查并清理了CadQuery代码,确保代码的正确性和可执行性。没有特别提及特殊的网络结构设计。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,通过在扩展的Text2CAD数据集上微调LLM,显著提升了CAD模型生成的性能。最佳模型在Top-1精确匹配率上从58.8%提升到69.3%,Chamfer距离降低了48.6%。实验还验证了模型规模越大,微调后的性能越好,表明了该方法具有良好的可扩展性。

🎯 应用场景

该研究成果可应用于自动化CAD模型设计、快速原型设计、以及面向非专业用户的CAD建模工具。通过自然语言描述即可生成复杂的3D模型,降低了CAD建模的门槛,加速了产品设计和制造流程。未来可应用于智能制造、建筑设计、教育等领域。

📄 摘要(原文)

Computer-aided design (CAD) is fundamental to modern engineering and manufacturing, but creating CAD models still requires expert knowledge and specialized software. Recent advances in large language models (LLMs) open up the possibility of generative CAD, where natural language is directly translated into parametric 3D models. However, most existing methods generate task-specific command sequences that pretrained models cannot directly handle. These sequences must be converted into CAD representations such as CAD vectors before a 3D model can be produced, which requires training models from scratch and adds unnecessary complexity. To tackle this issue, we propose generating CadQuery code directly from text, leveraging the strengths of pretrained LLMs to produce 3D models without intermediate representations, using this Python-based scripting language. Since LLMs already excel at Python generation and spatial reasoning, fine-tuning them on Text-to-CadQuery data proves highly effective. Given that these capabilities typically improve with scale, we hypothesize that larger models will perform better after fine-tuning. To enable this, we augment the Text2CAD dataset with 170,000 CadQuery annotations. We fine-tune six open-source LLMs of varying sizes and observe consistent improvements. Our best model achieves a top-1 exact match of 69.3%, up from 58.8%, and reduces Chamfer Distance by 48.6%. Project page: https://github.com/Text-to-CadQuery/Text-to-CadQuery.