大家好,我是关注数字孪生领域的sky。
在3D设计领域,传统CAD软件往往门槛高、学习曲线陡峭。很多人有创意,却卡在建模步骤上。现在,一个开源项目正在改变这一切——CADAM。它能让你用自然语言描述想法,AI就帮你生成基于OpenSCAD的参数化3D模型,还支持实时预览和一键导出打印文件。
这个项目托管在GitHub(https://github.com/Adam-CAD/CADAM ),短短时间内就收获了数千星标。它不是简单的AI玩具,而是结合了大模型、WebAssembly和经典CAD引擎的实用工具。无论你是3D打印爱好者、产品设计师还是想快速验证想法的工程师,都值得一看。
CADAM到底是什么?核心能力一览
CADAM全称可以理解为一个“文本到CAD”的网页应用。它最大的亮点是AI驱动的参数化建模:你输入一段描述,比如“做一个带圆角的手机支架,底座10cm宽,高度15cm,支持无线充电器位置留空”,AI就会生成对应的OpenSCAD代码,然后在浏览器里实时渲染3D模型。
基本能力总结:
- 自然语言生成
直接用中文或英文描述模型,支持上传参考图片辅助理解形状或细节。 - 参数化控制
AI会自动从代码中提取可调整维度,生成交互式滑块。你拖动滑块,模型瞬间更新,不需要重新调用AI。 - 实时预览
基于Three.js + React Three Fiber,在浏览器中流畅旋转、缩放查看。 - 多格式导出
支持STL(用于3D打印)、SCAD(源代码,可继续在OpenSCAD中编辑)、DXF(2D工程图)。 - 完全浏览器运行
核心CAD引擎用OpenSCAD的WebAssembly版本,无需安装本地软件。 - 库支持
内置BOSL、BOSL2、MCAD等常用OpenSCAD库,能轻松实现复杂几何、螺纹、齿轮等。
相比纯网格生成的AI工具(如某些直接出OBJ的),CADAM输出的模型是参数化的,更适合工程应用和后续修改。这一点特别实用——很多AI生成的模型看着漂亮但没法精确调整尺寸或用于制造。

技术架构:开源社区智慧的结晶
CADAM的实现融合了多条前沿和成熟技术线,值得技术爱好者细品。
前端部分:使用React 18 + TypeScript + Vite构建,界面现代简洁。3D渲染靠Three.js生态,样式用Tailwind CSS + shadcn/ui,响应速度快,用户体验好。
CAD核心:OpenSCAD的WebAssembly编译版本。这是关键创新。OpenSCAD本身是脚本式CAD,用代码描述几何(如cube()、cylinder()、difference()布尔运算),非常适合参数化。WebAssembly让它在浏览器里直接运行,无需服务器渲染复杂模型。
AI部分:主要调用Anthropic的Claude模型(支持本地开发换其他如OpenRouter)。AI的任务不是直接生成网格,而是生成高质量的OpenSCAD代码。提示工程在这里很重要——项目会让AI提取参数、添加注释、利用库函数等。
后端与存储:Supabase(PostgreSQL + Edge Functions)负责用户历史、认证等。开发时用ngrok暴露本地服务,让AI能访问上传的图片URL。
其他亮点:
支持自定义字体(如Geist),可以在模型上添加文字。 历史记录管理,方便迭代设计。 智能参数提取和“聪明更新”机制:改尺寸时尽量只重新编译,不反复调用大模型,节省token和时间。
整个项目大量参考和集成了社区优秀开源工作:openscad-wasm、openscad-web-gui、dingcad等,体现了“站在巨人肩膀上”的精神。许可证是GPLv3,鼓励社区贡献。

实际用法:从零上手生成你的第一个模型
安装运行很简单,但在线版最方便:直接访问 https://adam.new/cadam 就能试用。
基本流程:
在输入框描述你的想法。可以很模糊(如“一个咖啡杯”),也可以很精确(如“直径8cm、高12cm的圆柱杯身,壁厚2mm,带把手,底部加防滑纹理”)。 可选上传参考图片,帮助AI理解比例或细节。 点击生成,等待AI输出代码并编译(几秒到几十秒)。 在右侧查看3D预览,拖动参数滑块调整。 满意后导出STL直接打印,或SCAD继续编辑。
进阶用法:
- 迭代优化
生成后在聊天界面继续说“把高度增加20%,把手改成弧形”,AI会基于现有代码改进。 - 复杂零件
结合库做齿轮、螺纹、装配体。例如“生成一个20齿模数2的直齿轮,带键槽”。 - 工程应用
设计安装板、支架、外壳等功能件。精确指定尺寸、公差提示等。 - 创意设计
文本+图片结合,做艺术品或个性化产品。 - 本地部署
适合不想依赖API密钥或想深度定制的用户。克隆仓库,npm install,配置Supabase和Anthropic key,就能本地跑。
我个人试想几个场景:
3D打印玩家:快速做自定义支架、适配器、玩具零件。 硬件开发者:原型验证外壳、机械结构。 教育用途:学生用自然语言理解参数化设计概念。 小批量生产:结合参数化,快速生成不同尺寸变体。
局限性也要说清楚:目前复杂装配体或高精度曲面还有挑战,AI生成的代码偶尔需要手动调试(但开源特性方便改)。大模型幻觉可能导致无效代码,项目有fallback机制缓解。

应用场景与未来潜力
在3D打印社区,CADAM降低了门槛。以前不会OpenSCAD的人,现在可以用AI起步,再逐步学习代码。Maker社区可以用它快速迭代产品。
对于专业工程师,它不是替代Fusion 360或SolidWorks的工具,而是 ideation和快速原型神器。花几分钟验证想法,比手动建模快太多。参数化输出也便于导入其他软件进一步细化。
开源优势明显:社区可以贡献提示模板、更多库集成、甚至新AI后端。已经有用户在讨论STL导入、更好UI等功能。项目活跃,更新频繁。
未来,随着大模型能力提升(更好几何理解、更长上下文),这类工具会越来越强。结合本地模型或专用fine-tune,隐私和速度问题也能解决。文本到CAD可能是CAD软件下一波革命的方向。
为什么值得关注和参与?
- 免费开源
不用订阅费,自己部署就能用。 - 学习价值
前端、WASM、AI Agent、CAD脚本,一站式接触多领域技术。 - 社区友好
贡献指南清晰,欢迎PR和Issue。 - 实际产出
生成的模型能直接用于制造,不是中看不中用的图片。
如果你是开发者,建议克隆下来研究src目录,特别是AI prompt部分和OpenSCAD集成。爱好者直接在线试用,玩出自己的创意。
结语:CADAM不是完美的终极工具,但它代表了一个方向——让创意和制造之间的距离更短。用一句话描述想法,就看到可打印的3D模型,这种体验很魔幻,也很实用。在AI快速发展的今天,这样的开源项目让普通人也能参与技术浪潮。
夜雨聆风