docs(memory): Agent 多源架构 + 工具分层;补真实测试图纸与启动方式 #14
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: Agent 路线与多源架构(2026-10-15)
|
||||
description: dwg_review agent 的总目标、多源图纸分层架构(视觉为最大公约数)、工具层与 agent 层的正交分工、第一步多源证据层与后续路线
|
||||
description: dwg_review agent 的总目标、多源图纸分层架构(视觉为最大公约数)、工具层与 agent 层的正交分工、第一步多源证据层、截图去 UI、grounding 实测与后续路线
|
||||
type: project
|
||||
---
|
||||
|
||||
@@ -49,11 +49,32 @@ Agent 推理层(审查逻辑 / 清单 / 规则)
|
||||
- 实测:真实 Plant 3D 图纸上多图让审查更细(多报出线型误用 `CENTER2`、图签块属性为空、
|
||||
按 handle 定位的图层混用等)。
|
||||
|
||||
## 截图去 CAD 界面元素(2026-10-15,提交 `f8bd12d`)
|
||||
|
||||
`get_viewport_screenshot` 原先截 `adsw_acadDocWnd()` 客户区,含视口控件、ViewCube、滚动条,
|
||||
污染截图并**误导 VLM**(曾把视口标签当成"需放大的内容")。已修复:
|
||||
|
||||
- 改用 **`acedGetAcadDwgView()`** 只截图形区(排除滚动条/状态栏)。
|
||||
- 截图期间临时置 **`NAVVCUBEDISPLAY=0`**(关 ViewCube)与 **`VPCONTROL=0`**(关视口控件),
|
||||
用 RAII 守卫(`TempSysVarOff`)自动恢复原值,**不影响用户 CAD 界面设置**;
|
||||
配合 `RedrawWindow(RDW_UPDATENOW)` 同步重绘。
|
||||
- 实测:三项 UI 均消失,VLM 不再提界面元素。
|
||||
|
||||
**残留(无解,已知)**:绘图区右上角仍有**绘图窗口**的最小化/最大化/关闭按钮——由 AutoCAD
|
||||
画在图形区内的固有 UI,**无系统变量可关**。它很小且在角落,实测未影响 VLM。
|
||||
(区别于应用窗口的按钮;用户最初要清的是 视口控件/ViewCube/滚动条,不含此项。)
|
||||
|
||||
## grounding 实测(2026-10-15)
|
||||
|
||||
用 `verify_grounding.py` 拿真实截图问 `deepseek-flash`"哪里要放大":**grounding 可用**——
|
||||
给出的归一化坐标**区域级定位准确**(放大后确实套住目标,如图签栏、图框角),
|
||||
但**语义描述略有偏差**(把图签栏说成"状态栏")。结论:可支撑"按区域放大",但**位置对、语义别全信**。
|
||||
|
||||
## 后续路线(未做)
|
||||
|
||||
1. **VLM 主动放大(自适应取证)**:复用受控只读取证子循环,让 VLM 请求放大看不清处。
|
||||
- 两条路径:① 按实体 `zoom_to_entity(handle)`(可靠);② 按区域(需把 VLM 归一化坐标
|
||||
映射成 WCS,依赖 grounding,**需先实测 `deepseek-flash` 的 grounding**)。
|
||||
- 两条路径:① 按实体 `zoom_to_entity(handle)`(可靠);② 按区域(把 VLM 归一化坐标映射成
|
||||
WCS)——**grounding 已实测可用**(见上节)。
|
||||
- 必须设**迭代上限 + 兜底**;**不把"看清没"完全交给 VLM**(会过度自信/幻觉)。
|
||||
- 现有 `zoom_to_window`/`zoom_to_entity`/`get_viewport_screenshot` 已在只读白名单,
|
||||
**无需新增工具**。
|
||||
|
||||
Reference in new issue
Block a user