案例

CAD 图纸转 3D 模型 AI Agent

基于 LangGraph 的 DXF 到 Blender 建模 Agent,覆盖 CAD 解析、LLM 建模规划、Human-in-the-loop 确认、执行适配器和验证反馈循环。

Case Index

背景、角色、约束、决策、过程和结果按案例结构展开,便于快速判断交付边界。

图文说明

Agent 工作流

README 展示 parse、plan、confirm、execute、validate 五节点状态图,以及 DXF → cad_features → Blender 操作 → 验证反馈的完整链路。详见 github.com/GAO-SHIQING/cad-to-3d-agent。

背景

作品集需要一项能直接证明 Agent 工作流设计能力的公开项目。CAD 图纸转 3D 模型的场景足够具体,输入输出边界清晰,也能自然展示多节点规划、工具调用、人工确认和验证闭环。

角色

独立完成项目方向收敛、LangGraph 状态图设计、DXF 解析链路、Blender 工具抽象、验证策略、README 架构说明和单元测试收口。

约束

  • 一期范围限定为单一房间的墙体、门窗、柱等建筑实体,避免把 MVP 扩展成通用 CAD 建模系统。
  • Agent 必须有真实的人工确认节点,建模计划不能绕过 Human-in-the-loop 直接执行。
  • Blender 执行层需要同时支持开发调试和自动化运行,因此工具接口要与具体适配器解耦。

关键决策

  • 选择 LangGraph 表达 parse → plan → confirm → execute → validate 的显式状态流,便于展示节点职责和失败回路。
  • 使用 ezdxf 提取几何,再交给 LLM 做建筑语义识别,避免在早期硬编码大量 CAD 图层命名规则。
  • 将 BlenderTool 抽象成统一接口,并提供 Background/MCP 双适配器,让 Agent 层不依赖单一执行模式。
  • 验证拆成几何硬校验和 LLM 语义软校验,既能检查实体数量/尺寸,也能复核建模结果是否符合建筑常识。

过程

  • 建立 AgentState 和 5 个 LangGraph 节点桩,先保证空图可运行和状态字段稳定。
  • 集成 ezdxf 解析 DXF 几何,序列化为适合 LLM 推理的文本,再输出 cad_features。
  • 让 LLM 生成操作级 Blender 建模计划,并通过 interrupt 暴露确认、修改和重做路径。
  • 实现 BlenderTool 抽象接口和两套执行适配器,把建模操作转成可运行的 Blender 命令。
  • 补齐实体数量、尺寸检查和语义复核,失败时把反馈回流到规划节点形成最多 3 次的验证闭环。

结果

  • 独立仓库完成 Agent 骨架、解析、规划确认、Blender 执行和验证闭环。
  • README 包含 Mermaid 架构图、运行步骤、设计决策和本地复现说明。
  • 核心模块单元测试 16/16 PASS,能作为作品集里的 Agent 工作流代码证据。
  • 项目明确展示了状态管理、工具抽象、Human-in-the-loop 和验证反馈这些可迁移的 Agent 工程能力。