docs(memory): Agent 多源架构 + 工具分层;补真实测试图纸与启动方式

- 新增 project_agent_roadmap.md(总目标/多源分层/第一步/后续路线)
- 新增 feedback_tool_layering.md(工具层正交分工,反对无休止加工具)
- reference_environment.md 补 e:\desktop\agent_test.dwg 与 /p SHS-ENVI2026 启动方式
- 一并提交上次会话遗留的记忆更新
This commit is contained in:
gjm committed 2026-10-15 19:48:56 +08:00
1 parent 1c9fc72839
commit 32d552f1f0
7 files changed
+261 -2

No files matched your search

+63
View File
@@ -0,0 +1,63 @@
---
name: Agent 路线与多源架构(2026-10-15)
description: dwg_review agent 的总目标、多源图纸分层架构(视觉为最大公约数)、工具层与 agent 层的正交分工、第一步多源证据层与后续路线
type: project
---
# Agent 路线与多源架构
## 总目标(用户 2026-10-15 明确)
实现 **AI 自动识别 + 评审 DWG 图纸**。分阶段:**先 MCP(已完成),再 agent(进行中)**。
最终要支持的图纸来源**不限于自家自定义实体**:
1. 自家软件的自定义实体 DWG;
2. **其他软件出的 DWG**(各种自定义实体);
3. 将来 **PDF** 图纸;
4. 将来**纯图片**图纸。
## 架构分层(用户认可)
**核心洞察:视觉模型(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 定位的图层混用等)。
## 后续路线(未做)
1. **VLM 主动放大(自适应取证)**:复用受控只读取证子循环,让 VLM 请求放大看不清处。
- 两条路径:① 按实体 `zoom_to_entity(handle)`(可靠);② 按区域(需把 VLM 归一化坐标
映射成 WCS,依赖 grounding,**需先实测 `deepseek-flash` 的 grounding**)。
- 必须设**迭代上限 + 兜底**;**不把"看清没"完全交给 VLM**(会过度自信/幻觉)。
- 现有 `zoom_to_window`/`zoom_to_entity`/`get_viewport_screenshot` 已在只读白名单,
**无需新增工具**。
2. **PDF / 图片源**:在 `phases/evidence.collect()` 加分支,产出**同形** evidence
(`window=None`、结构化空信封、`images` 带 label);规划阶段抽象"审查单元"
(CAD=图框 / PDF=页 / 图片=单);批注对非 CAD 源降级(`annotator` 已天然跳过无 handle 的 issue)。
3. **审图规范接入**:清单升级为规范库。