[论文解读] Query2CAD: Generating CAD models using natural language queries
Query2CAD 使用大语言模型从自然语言提示生成可执行的 FreeCAD 宏,具有由 VQA 反馈引导的自我 refinements 循环以及可选的人类输入;GPT-4 Turbo 的初次通过成功率为 53.6%,经 refinements 提升后提高了 23.1%。
Computer Aided Design (CAD) engineers typically do not achieve their best prototypes in a single attempt. Instead, they iterate and refine their designs to achieve an optimal solution through multiple revisions. This traditional approach, though effective, is time-consuming and relies heavily on the expertise of skilled engineers. To address these challenges, we introduce Query2CAD, a novel framework to generate CAD designs. The framework uses a large language model to generate executable CAD macros. Additionally, Query2CAD refines the generation of the CAD model with the help of its self-refinement loops. Query2CAD operates without supervised data or additional training, using the LLM as both a generator and a refiner. The refiner leverages feedback generated by the BLIP2 model, and to address false negatives, we have incorporated human-in-the-loop feedback into our system. Additionally, we have developed a dataset that encompasses most operations used in CAD model designing and have evaluated our framework using this dataset. Our findings reveal that when we used GPT-4 Turbo as our language model, the architecture achieved a success rate of 53.6\% on the first attempt. With subsequent refinements, the success rate increased by 23.1\%. In particular, the most significant improvement in the success rate was observed with the first iteration of the refinement. With subsequent refinements, the accuracy of the correct designs did not improve significantly. We have open-sourced our data, model, and code (github.com/akshay140601/Query2CAD).
研究动机与目标
- 通过让非专业人员能够从自然语言提示生成 CAD 设计来降低 CAD 原型制作时间的动机。
- 开发将提示转换为可执行的 FreeCAD CAD 宏的工作流程。
- 使用视觉反馈的自我 Refinement 循环来改进 CAD 输出。
- 使人机在环反馈成为可能,以解决假阴性并提高鲁棒性。
- 提供一个开源数据集、模型和代码,以复现和扩展该方法。
提出的方法
- LLM 从用户提示为 FreeCAD 生成 Python 宏,以创建 3D CAD 模型。
- 错误 Refinement 循环使用错误消息迭代修复可执行代码,直到达到指定迭代次数。
- 模型 Refinement 循环使用 Clip-FlanT5-XL 的 VQAscore 将等距视图与提示进行比较并触发基于字幕的反馈。
- BLIP2 生成设计描述的字幕,辅以人工反馈以引导 refinements。
- PyAutoGUI 自动化 FreeCAD 宏执行工作流。
- 所有 LLM 调用均使用小样本提示;该过程最多可进行三轮 refinements。
实验结果
研究问题
- RQ1一个 LLM 是否能够从自然语言提示生成可执行的 CAD 宏,从而产生正确的 FreeCAD 模型?
- RQ2迭代 refinements 循环(基于错误驱动和模型驱动)是否相较直接生成能提高 CAD 设计的准确性?
- RQ3基于 VQA 的评分如何与设计准确性相关联并决定停止准则?
- RQ4模型选择(GPT-3.5 Turbo 与 GPT-4 Turbo)对初始成功率和 refinements 提升有何影响?
- RQ5从语言到完全自动化 CAD 生成的局限性和失败模式是什么?
主要发现
| 模型 | 简单 | 中等 | 困难 |
|---|---|---|---|
| GPT-3.5 Turbo | 85.71% | 35% | 37.5% |
| GPT-4 Turbo | 95.23% | 70% | 41.7% |
- 初次通过的成功率取决于 LLM;GPT-4 Turbo 在简单问题上的直接生成达到 53.6%。
- refinements 在数据集上的平均准确性提高了 23.1%,首次 refinements 贡献了大部分增益。
- 简单问题在 GPT-4 Turbo 下的准确率高达 95.23%,中等和困难问题分别达到 70% 和 41.7%。
- GPT-3.5 Turbo 在简单、 中等、困难情况下的准确率分别为 85.71%、35% 和 37.5%,通过 refinements 获得了类似的提升。
- 较弱的模型(如 Codellama-70B)表现较差,出现幻觉和推理不一致的情况。
- 单独的 BLIP2 字幕在 refinement 上不如与人工反馈结合时有效。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。