- 新增 project_agent_roadmap.md(总目标/多源分层/第一步/后续路线) - 新增 feedback_tool_layering.md(工具层正交分工,反对无休止加工具) - reference_environment.md 补 e:\desktop\agent_test.dwg 与 /p SHS-ENVI2026 启动方式 - 一并提交上次会话遗留的记忆更新
3.3 KiB
3.3 KiB
name, description, type
| name | description | type |
|---|---|---|
| Agent 路线与多源架构(2026-10-15) | dwg_review agent 的总目标、多源图纸分层架构(视觉为最大公约数)、工具层与 agent 层的正交分工、第一步多源证据层与后续路线 | project |
Agent 路线与多源架构
总目标(用户 2026-10-15 明确)
实现 AI 自动识别 + 评审 DWG 图纸。分阶段:先 MCP(已完成),再 agent(进行中)。 最终要支持的图纸来源不限于自家自定义实体:
- 自家软件的自定义实体 DWG;
- 其他软件出的 DWG(各种自定义实体);
- 将来 PDF 图纸;
- 将来纯图片图纸。
架构分层(用户认可)
核心洞察:视觉模型(VLM)是"最大公约数"。DWG 自定义实体 / PDF / 图片本质是 "拿不到结构化数据时靠视觉理解"的同一件事——任何图纸只要能渲染成图,VLM 就能审。 所以结构化数据(ARX 读普通实体)是增强,视觉是兜底。
Agent 推理层(审查逻辑 / 清单 / 规则)
▲ 统一 evidence schema
感知适配层(能力从高到低降级)
CAD结构化(ARX) → CAD几何 → 离线解析(DWG/PDF) → 视觉(VLM)
- MCP 工具层只管 CAD(进程内能力);PDF / 图片在 agent 侧(PyMuPDF / Pillow), 不塞进 MCP、不编 DLL。
- 统一证据模型 + 多源适配 + 能力降级;agent 推理层不关心来源格式。
How to apply:新增"支持某格式"时,优先在 agent 侧感知层加适配器;只有"CAD 进程内的 正交感知能力"才考虑加 MCP 工具。
第一步已落地(2026-10-15,提交 1c9fc72)
取证层多源化 + 视觉多图:
- 新增
dwg_review/evidence_model.py:统一证据模型(source_type+images:[{b64,mime,label}]),访问器evidence_images()兼容旧image_b64/image_mime单图字段(历史 evidence.json 仍可读)。 phases/evidence.py:collect()多源分发 seam(当前仅 CAD)、capture_images()整体 + 等分象限多图(结束复位视口)、sub_windows()。- 默认
EVIDENCE_DETAIL_TILES=4/EVIDENCE_MAX_IMAGES=5(每图框 5 图,默认开启)。 - 实测:真实 Plant 3D 图纸上多图让审查更细(多报出线型误用
CENTER2、图签块属性为空、 按 handle 定位的图层混用等)。
后续路线(未做)
- VLM 主动放大(自适应取证):复用受控只读取证子循环,让 VLM 请求放大看不清处。
- 两条路径:① 按实体
zoom_to_entity(handle)(可靠);② 按区域(需把 VLM 归一化坐标 映射成 WCS,依赖 grounding,需先实测deepseek-flash的 grounding)。 - 必须设迭代上限 + 兜底;不把"看清没"完全交给 VLM(会过度自信/幻觉)。
- 现有
zoom_to_window/zoom_to_entity/get_viewport_screenshot已在只读白名单, 无需新增工具。
- 两条路径:① 按实体
- PDF / 图片源:在
phases/evidence.collect()加分支,产出同形 evidence (window=None、结构化空信封、images带 label);规划阶段抽象"审查单元" (CAD=图框 / PDF=页 / 图片=单);批注对非 CAD 源降级(annotator已天然跳过无 handle 的 issue)。 - 审图规范接入:清单升级为规范库。