A800,55小时,还要训27B模型,相当于没有试错机会
搞一个skill,写一点文档,都比直接训模型靠谱
如果楼主能够贴出一些计划用于训练的数据集,无论是由LLM生成还是手动标注,都会让计划更为可信
笔者正在开发一款爱好性质的ai cad软件,而目前遇到了一些瓶颈。通用式llm虽然一部分具有多模态能力,但是实际建模效果并不理想。于是我决定自己微调一个模型,来达到在垂直领域更好的效果。前人所做研究颇为丰硕,笔者也参考了许多优秀项目,如DeepCAD等。
(迭代中的cad软件UI)
笔者希望微调出一款适用于CAD模型识别,分析,处理任务的小参数模型(在垂直领域这是可能的),并验证,对比其能力是否强于通用式的llm模型。
同时在这个过程中,也希望初步了解运用llm模型后训练的方法,为以后的学习开拓道路。
具体量化目标:模型能够识别简单零件上的特征,以及分析其建模方式(85%准确率)
模型能够初步识别2d工程图,准确识别数据与其关联特征
模型能够依据instruction,推导建模过程并给出json格式的建模指导
笔者了解了目前国际范围内的相关研究(AI CAD与llm 3D感知),主要研究了两个项目
1.UniUGGXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
UniUGG这个名字代表 Unified 3D Understanding and Generation,即“统一的3D理解与生成”,概括了其核心目标:既能“看懂”3D场景,又能在此基础上进行“想象”和“创造”的统一AI模型。
据论文,他可以实现3d空间距离的测量与3d视口变换后空间状态的预测。
UniUGG的整体框架以一个LLM为核心“大脑”,并设计了两个创新模块:一个特制的视觉编码器和一个基于扩散模型的空间解码器。
如上图所示,这个预训练过程包含两个并行任务:
语义指导 (Semantic Guiding) :让学生编码器(Student Encoder)模仿一个强大的预训练教师模型(如RADIOv2.5)的视觉表征。这相当于一位经验丰富的老师在教学生如何识别物体的语义信息。
空间表征学习 (Spatial Representation Learning) :利用一个空间解码器(Spatial Decoder),通过处理同一场景的两个不同视角的图像,来学习几何一致性。这相当于让学生通过对比不同角度的观察,来理解物体的三维结构。
通过这种方式预训练出的视觉编码器,其输出的特征既包含了丰富的语义信息,又蕴含了准确的几何关系,为后续的统一理解和生成任务打下基础。
(其效果)
2.DeepCAD
研究团队寻求一种能够调和CAD模型不规则性的表示方法。考虑最常用的CAD操作,并将它们统一到一个通用结构中,编码它们的操作类型、参数和顺序。然后将CAD操作序列与自然语言进行类比,作者提出了一种基于Transformer网络的自编码器autoencoder。它将CAD模型嵌入到latent space中,然后将解码成CAD操作序列。为了训练自编码器,他们进一步创建了一个CAD操作序列的新数据集,其规模比现有的同类型数据集大几个数量级。也已经公开提供了这个数据集。作者的方法能够生成合理且多样化的CAD设计。作者通过一系列研究来仔细评估其生成质量。
他们的方法存在一些限制。目前,作者考虑了三种最广泛使用的曲线命令类型(直线、圆弧、圆),但其他曲线命令也可以轻松添加。例如,三次贝塞尔曲线可以通过三个控制点以及起始点从其前一曲线的结束位置指定。其他操作,例如revolving a sketch,可以与extrusion命令类似的方式进行编码。然而,某些CAD操作(例如fillet 操作)对形状边界的部分进行操作,因此它们需要模型的B-rep的reference,而不仅仅是其他命令。将这些命令纳入生成模型留待未来研究。
并非每个CAD命令序列都能产生拓扑层面有效的形状。生成网络不能保证其输出CAD序列的拓扑完整性。在实践中,生成的CAD命令序列很少失败。命令序列越长越可能失败。
总体而言,tamn提出了DeepCAD,一个用于CAD设计的深度生成模型。几乎所有以前的3D生成模型都生成离散的3D形状,如体素、点云和网格。这项工作是作者所知的第一个CAD设计的生成模型。为此,我们还引入了一个大型CAD模型数据集,每个模型都表示为一个CAD命令序列。
总览
基座模型为原生多模态Qwen 3.8-27b。该模型在hf上引起不小的反响,测试结果似乎总体优于Opus4.6.
输入是一张工程图或 CAD 多视图拼图,加建模/修改指令;模型输出可验证的参数化 CAD JSON,而不是直接生成 Python 代码。
工程图 / CAD 多视图 + instruction
Qwen3.8-27B 多模态模型
CAD Perception / CAD IR / CAD Patch
JSON Schema
CadQuery / OpenCascade B-rep 执行器
STEP + 特征树 + 重新投影视图
几何、尺寸、拓扑与编辑局部性验证
必要时生成 repair 输入再次修复
项目采用三阶段连续 QLoRA:
1.学习正投影视图、尺寸、跨视图对应、孔槽特征和空间关系。
2.学习图像和建模指令到完整参数化 CAD IR。
3. 学习局部修改、错误诊断和最小修复 Patch。
2. 范围
首版只做单实体机械零件:
草图、拉伸、旋转、孔、切除、布尔。
镜像、线性/圆周阵列。
倒角、圆角。
尺寸修改、增删特征和错误修复。
暂不做装配、复杂曲面、钣金。标准件、公差表、材料和国标数据通过授权数据库/RAG 提供,不靠微调硬记全部数值。
3. 为什么这样设计
27B 模型很适合承担多视图理解和工程规划,但 CAD 输出要求精确、可编辑和可执行。让模型直接输出 CadQuery/FreeCAD 代码会遇到API 版本和语法错误;面编号不稳定,例如在重建后可能变化,修改任务容易重写整个模型;难以区分图纸明确尺寸、模型推断和默认假设。
因此模型输出稳定的 feature DAG、参数和语义选择器,执行器再映射到具体 CAD API。
UniUGG 对本项目最有价值的启发是“几何与语义联合学习”:视觉不只做图片描述,须同时监督投影关系、尺寸、特征对应和构造语义。本项目保留这一思想,但不采用其点云/扩散式几何输出作为精密 CAD 值,因为机械 CAD 的核心是参数、约束、拓扑。
在 80 小时内不做大规模 DPO/GRPO。第一阶段先证明 SFT + CAD 内核闭环有效;RL 会消耗大量在线构建时间,而且奖励若不严谨,容易学会投机通过弱几何指标。
最低基线包括:原始基座零样本、单阶段混合 SFT、三阶段课程 SFT。消融只在固定 300-500 个 测试零件上进行.
5. 数据原则
训练只使用:Autodesk/Fusion 参数化构造历史;SketchGraphs 草图实体及约束;精确 B-rep/STEP;解析曲面和拓扑关系;OpenCascade 精确投影生成的工程图。
不使用 STL/OBJ、点云、体素、mesh token 或三角面作为监督表示。
6. 数据来源
候选数据池来源比例:
Autodesk Fusion 360 Gallery 55%-65% 真实构造历史、草图、特征顺序、精确实体
Autodesk SketchGraphs 15%-20% 草图约束、闭合轮廓、自由度和约束补全
从 Fusion 设计派生的 edit/repair 20%-30% 模型修改和执行错误修复
其他精确 B-rep 特征集 不超过 10% 孔、槽、台阶等加工特征补充
笔者才疏学浅,如有错误或不当之处恳请指正
| 用途 | 规格型号 | 单价(元) | 数量 | 单位 | 合计(元) |
|---|---|---|---|---|---|
| 后训练微调 | A800 | 5.28 | 55 | 元 | 290.4 |
| 数据集收集优化与CoT生成 | GPT5.6sol | 15 | 10 | 元 | 150 |
| openclaw云监督训练 | vps | 40 | 1 | 元 | 40 |
| 序号 | 金额 | 状态 |
|---|---|---|
| 第 1 期 | 480.4 元 | 已拨款 |
A800,55小时,还要训27B模型,相当于没有试错机会
搞一个skill,写一点文档,都比直接训模型靠谱
如果楼主能够贴出一些计划用于训练的数据集,无论是由LLM生成还是手动标注,都会让计划更为可信
最好不要用“训练”的方式来实现。
ai领域现在依然存在下面图里提到的“主流进展过快”的问题。于是不应该去做“有可能跟主流形成竞争”的事情,要保证主流进展发生之后,你的成果不会因此衰减。
https://www.kechuang.org/p/933861
训练出来的结果是很难迁移的。假如两个月后出现了某个基础能力更强的开源模型,你想换用那个模型,还得再重新花几百块钱搞训练,这就是“成果衰减”了。
相对来说,@UIMicro 说的“写文档”就很好,迁移成本为零,衰减就小。而且人可以直接读懂文档,开发时的速度和可控性好很多。
写文档的缺点是,agent每次都得读一遍文档,每次使用成本比训练好的模型更高。但是这个缺点只有在用量很大的情况下会显现出来,这需要用户数量多,而现在还没有用户,于是相当于只有优点。
A800,55小时,还要训27B模型,相当于没有试错机会搞一个skill,写一点文档,都比直接训模型
嗯~ o(* ̄▽ ̄*)o,实际训练大概在75h左右(自己贴点),另外设置了多个checkpoints。
前 5 小时是链路门禁:环境、图片 forward、两步 LoRA、adapter 链、32 样本过拟合、200 step profile,全部通过才进入正式训练。
stage 1 只占 15 小时,本身就是第一个 checkpoint:loss 不降或 Schema 指标不升,20 小时处止损转文档/skill 路线。
即便吞吐只有 0.1 samples/s,stage 2 的 33 小时 × 0.9 可用时间 ≈ 10,700 条重建样本,足够验证"小样本监督能否改善多视图重建"这个可证伪的核心问题。
数据集预计从XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
正在编写转换统一脚本
另外在我的AI CAD项目本身的流程就是skill工程,但是效果不怎么样。
现在版本确保了严格的feature plan。
当然可能是我的提示词不够好或者模型不够强(gpt-5.6 terra)
| 时段 | 个数 |
|---|---|
| {{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |