Generating CAD Code with Vision-Language Models for 3D Designs
作者: Kamel Alrashedy, Pradyumna Tambwekar, Zulfiqar Zaidi, Megan Langwasser, Wei Xu, Matthew Gombolay
分类: cs.LG
发布日期: 2024-10-07 (更新: 2025-02-28)
💡 一句话要点
提出CADCodeVerify,利用视觉-语言模型迭代验证并改进CAD代码生成的3D对象。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: CAD代码生成 视觉-语言模型 3D对象验证 迭代优化 自然语言提示
📋 核心要点
- 现有方法利用LLM生成CAD代码存在挑战,生成的3D对象可能不符合要求,且代码正确性难以验证。
- CADCodeVerify通过VLM生成验证问题并纠正偏差,迭代验证和改进CAD代码生成的3D对象。
- 实验结果表明,CADCodeVerify通过视觉反馈提高了VLM性能,增强了3D对象结构,并提高了编译成功率。
📝 摘要(中文)
生成式AI通过提供高效和自动化的方法来生成和修改3D对象,已经改变了设计和制造领域。一种方法是使用大型语言模型(LLM)生成计算机辅助设计(CAD)脚本代码,然后执行该代码以渲染3D对象;然而,生成的3D对象可能不满足指定的要求。由于3D对象(例如,形状、表面和尺寸)的复杂性和结构在代码中难以实现,因此测试CAD生成代码的正确性具有挑战性。在本文中,我们介绍CADCodeVerify,这是一种新颖的方法,用于迭代验证和改进从CAD代码生成的3D对象。我们的方法通过提示视觉-语言模型(VLM)生成和回答一组验证问题来验证生成的对象,并提示VLM纠正偏差,从而产生改进性反馈。为了评估CADCodeVerify,我们引入了CADPrompt,这是第一个用于CAD代码生成的基准,包含200个自然语言提示以及专家注释的3D对象脚本代码,用于评估进展。我们的研究结果表明,CADCodeVerify通过提供视觉反馈、增强3D对象的结构以及提高编译程序的成功率来提高VLM的性能。当应用于GPT-4时,与之前的工作相比,CADCodeVerify在点云距离上实现了7.30%的降低,成功率提高了5.0%。
🔬 方法详解
问题定义:论文旨在解决使用大型语言模型(LLM)生成CAD代码时,生成的3D对象不符合用户需求,以及验证CAD代码正确性的难题。现有方法缺乏有效的反馈机制,难以迭代改进生成的3D模型,导致模型质量不高,编译成功率低。
核心思路:论文的核心思路是利用视觉-语言模型(VLM)的强大能力,通过视觉反馈来指导CAD代码的生成和改进。VLM能够理解3D对象的视觉特征,并生成验证问题来检查生成的对象是否符合要求。通过迭代地生成问题、回答问题和纠正偏差,可以逐步提高3D模型的质量。
技术框架:CADCodeVerify的整体框架包含以下几个主要步骤:1) 使用LLM根据自然语言提示生成初始CAD代码;2) 将生成的CAD代码渲染成3D对象;3) 使用VLM对3D对象生成一系列验证问题;4) 使用VLM回答这些验证问题,并识别出与期望不符的地方;5) 根据VLM的反馈,修改CAD代码;6) 重复步骤2-5,直到3D对象满足要求。
关键创新:该论文的关键创新在于引入了视觉-语言模型(VLM)来验证和改进CAD代码生成的3D对象。与传统的基于代码的验证方法不同,VLM能够理解3D对象的视觉特征,并提供更直观和有效的反馈。此外,论文还提出了CADPrompt基准,为CAD代码生成的研究提供了标准化的评估平台。
关键设计:CADCodeVerify的关键设计包括:1) 精心设计的VLM提示语,用于生成高质量的验证问题;2) 一种迭代的反馈机制,允许VLM逐步改进3D模型;3) CADPrompt基准,包含200个自然语言提示和专家注释的CAD代码,用于评估不同方法的性能。具体的参数设置、损失函数、网络结构等技术细节在论文中未详细说明,属于未知信息。
🖼️ 关键图片
📊 实验亮点
实验结果表明,CADCodeVerify能够显著提高CAD代码生成的性能。当应用于GPT-4时,与之前的工作相比,CADCodeVerify在点云距离上实现了7.30%的降低,成功率提高了5.0%。此外,CADCodeVerify还能够增强3D对象的结构,使其更符合用户的期望。
🎯 应用场景
该研究成果可应用于自动化3D模型设计、产品原型设计、建筑设计等领域。通过结合自然语言描述和视觉反馈,可以显著提高3D模型设计的效率和质量,降低设计成本,并为用户提供更直观的设计体验。未来,该技术有望应用于更广泛的领域,例如虚拟现实、增强现实和机器人等。
📄 摘要(原文)
Generative AI has transformed the fields of Design and Manufacturing by providing efficient and automated methods for generating and modifying 3D objects. One approach involves using Large Language Models (LLMs) to generate Computer- Aided Design (CAD) scripting code, which can then be executed to render a 3D object; however, the resulting 3D object may not meet the specified requirements. Testing the correctness of CAD generated code is challenging due to the complexity and structure of 3D objects (e.g., shapes, surfaces, and dimensions) that are not feasible in code. In this paper, we introduce CADCodeVerify, a novel approach to iteratively verify and improve 3D objects generated from CAD code. Our approach works by producing ameliorative feedback by prompting a Vision-Language Model (VLM) to generate and answer a set of validation questions to verify the generated object and prompt the VLM to correct deviations. To evaluate CADCodeVerify, we introduce, CADPrompt, the first benchmark for CAD code generation, consisting of 200 natural language prompts paired with expert-annotated scripting code for 3D objects to benchmark progress. Our findings show that CADCodeVerify improves VLM performance by providing visual feedback, enhancing the structure of the 3D objects, and increasing the success rate of the compiled program. When applied to GPT-4, CADCodeVerify achieved a 7.30% reduction in Point Cloud distance and a 5.0% improvement in success rate compared to prior work