15 KiB
论文主图设计:Self-Evolving Search Agent 推理训练闭环
日期 2026-07-09 · 状态 已获用户批准(口头) · 产出物 Figma 图(文件 xnLGUkZottqnr4dsEt9fGq Page 1 空白区)
1. 目标与定位
- 用途:论文主图(目标会议存在文档分歧:CLAUDE.md=AAAI 2026,ARCHITECTURE.md 与记忆=EMNLP 2026,以用户最终决定为准,不影响本图设计),展示推理训练部分的自进化闭环;不含建树与新题生成(建树已有独立图,位于同一 Figma 文件)。
- 核心叙事:搜索 Agent 通过 推理→诊断→进化→门控 闭环自我改进;Frozen LLM, trainable harness——被"训练"的不是模型权重,而是版本化的 Skills+Prompts。
- 差异化:AVP/DVD 等相关工作画的是推理期内环(agent 怎么搜视频);本图内环只是一个面板,训练期外环是主角。
- 审稿人一句话记忆点:这是一个不动模型权重的 PyTorch 式训练循环。
2. 已确认的关键决策
| 决策点 | 结论 |
|---|---|
| 构图 | 水平流水线 + 底部参数回流闭环(方案 A) |
| 版式 | 双栏跨页宽图,画布 2400×1050 px(≈2.3:1,缩印 180mm) |
| 信息密度 | 四机制全部可见(Agent 内环 / 诊断瀑布 / patch 引擎 / CE-Gate+信息阶梯),去工程化(无熔断/缓存/遥测) |
| PyTorch 类比 | 底部独立双行对照条,与上方区域逐段对齐 |
| 示例贯穿 | 延续建树图同一 Video-MME 天文台视频,问题/诊断/patch 文本典型化设计 |
| 迭代维度 | Store 处 v1…vN 卡片堆叠 + ×N epochs 循环标记暗示,不加独立时间轴 |
| 绘制位置 | 与建树图同文件(素材直接复用),Page 1 空白区 y≥1800,不动现有图层 |
| 语言 | 图内文字全英文 |
3. 布局
下方 ASCII 草图为中文说明稿,仅示意区域关系;最终图层文字一律采用 §4/§5 的英文术语。
┌──────────────────────────────────────────────────────────────────┐
│ [输入] ┌──────────────┐ ┌───────────┐ ┌──────────┐ ┌──────┐ │
│ Q+缩略图→│ ① INFERENCE │→ │② DIAGNOSE │→ │③ EVOLVE │→ │④ CE- │ │
│ │ 树环境+内环 │ │ 归因瀑布 │ │ patch引擎 │ │ GATE │ │
│ └──────↑───────┘ └───────────┘ └──────────┘ └──┬───┘ │
│ │ read ┌─────────────────┐ accept│ │
│ └─────────────────│⑤ Skills+Prompts │←──────┘ │
│ │ Store v1…vN ▤▤ │ reject→保基线
│ └─────────────────┘ │
├──────────────────────────────────────────────────────────────────┤
│ DataLoader│forward()│backward()│optimizer.step()│grad clip│nn.Parameter│
└──────────────────────────────────────────────────────────────────┘
数据流勘误记录:CE-Gate 位于 Evolve 之后(进化产出候选 → gate 用 e-process 验证候选 vs 基线 → accept 才写入 Store),信息阶梯为 gate 供给高信息量题序,而非控制输入难度。此顺序已与 core/evolution/gate.py、app/harness/gate_ladder.py 核实。
4. 五区域内容规格
术语均与代码核实一致(来源见 §7)。
4.1 输入区
- 问题卡(Q: "What happens right after the dome opens?" 措辞绘制时可打磨)+ 天文台视频缩略图 + 迷你树 icon,标注 "hierarchical video tree (Fig. 2)" 衔接建树图。
4.2 ① INFERENCE(agent-controlled,图上唯一画成循环的面板)
- 树环境迷你版:L1/L2/L3 三层色带(绿/蓝/黄,复用建树图配色与缩略图)。
- Agent 内环轨迹:Thought →
search_similar→view_node→observe_frame→submit_answer;侧边read_skill箭头(来自 ⑤,工具名与app/search/tools.py:56-58一致)。 - 示例结局:answer ✗(答错),输出 trace 流向 ②。
- 面板角标:agent-controlled;其余面板角标 code-controlled。
4.3 ② DIAGNOSE(code-controlled)
- 归因瀑布级联:
extraction failure → search failure → reasoning failure(+ mixed 兜底),画成三级下落台阶。 - 二分岔:defect(改 skill 正文)vs lapse(记 appendix 提醒)。
- D1–D5 压缩为一排五个小 chip:attribution / tool quality / search behavior / skill compliance / decision patterns。
- 示例:该题归因
search failure→ 判 defect。
4.4 ③ EVOLVE
- patch 流水线:candidate edits → rank-and-clip → apply patch。
- 侧边锁条带:protected spans(appendix / momentum 区带锁图标,不可改写)。
- 示例 patch 片段:"+ verify event boundary via L2 card before observe_frame"。
- momentum 机制不单独出现(用户确认),仅隐含于锁条带。
4.5 ④ Validation · CE-GATE
- 面板标题 Validation · CE-Gate:块顺序验证(
validate.py配对翻转 W/L)作为输入喂 e-process——图上画为"candidate vs baseline 配对小图 → e 曲线"。 - e-process 小曲线:e 值随题数爬升,越过
e_confirm虚线。 - 四出口:accept (confirmed) / accept (provisional) / reject / continue(代码中三种 reject 在图上合并,用户确认)。
- 侧挂小组件:信息阶梯(2:1 交错题序图标,标注 info-max question ladder),尺寸压小避免抢焦点。
- 视觉层级:accept 主路径线最粗;reject/continue 细灰次级线。
4.6 ⑤ Skills+Prompts Store
- v1…vN 卡片堆叠(复用建树图 Event Card 堆叠画法)+ 版本号 badge。
- accept 箭头写入 v(N+1);read 箭头回流至 ①,构成大闭环;循环标记 ×N epochs。
5. PyTorch 对照条(最底部)
浅灰底横带,等宽字体,与上方区域逐段对齐:
| 上方区域 | 对照文字 |
|---|---|
| 输入 | DataLoader |
| ① | model.forward() |
| ② | loss.backward() |
| ③ | optimizer.step() |
| ④ | grad clipping (validate)(对应 CLAUDE.md 类比表中"进化 validation = grad clipping";④ 面板同时含 validate 配对翻转与 CE-Gate 判定) |
| ⑤ | nn.Parameter |
条带一侧放记忆点标语:Frozen LLM, trainable harness。
6. 视觉规范与素材复用
| 元素 | 方案 |
|---|---|
| 面板样式 | 白底、细虚线外框、顶部居中标题(沿用建树图) |
| ① | 淡绿系 · ② 淡橙红系(新增,饱和度对齐现有 pastel) · ③ 淡紫系(复用 VLM 紫) · ④ 淡蓝系 · ⑤ 白卡+badge |
| 直接复用 | 视频缩略图(candidate_a_t*)、L1/L2/L3 badge、Scene/Event/Frame Card 组件、VLM 紫块、箭头/chevron 样式 |
| 字体 | 与建树图一致(Inter);标题 24px / 正文 16-18px / 标注最小 15px 灰(2400px 画布缩印 180mm 后 15px ≈ 1.1mm,12px 过小已弃用) |
| 图层组织 | 顶层 Frame 命名 Main Figure — Self-Evolving Loop,五区域各一个子 Group,便于后续人工微调 |
7. 术语出处(代码核实)
| 图上术语 | 来源 |
|---|---|
| gate 四出口 accept_confirmed / accept_provisional / reject×3 / continue | core/evolution/gate.py:57-110 |
| 归因瀑布 extraction/search/reasoning/mixed;defect vs lapse | core/evolution/diagnose.py:910-997 |
| D1-D5 五维聚合 | core/evolution/diagnose.py:1095-1307(D2-D5)、1551-1563 + 2230 + 2293-2296(D1 attribution distribution) |
| 信息阶梯冷启动 2:1、信息量排序 | app/harness/gate_ladder.py:57-117 |
| 块顺序验证配对翻转 W/L | core/evolution/validate.py:12-69 |
| rank-and-clip、protected spans、appendix/momentum 区 | core/evolution/evolve.py:186-594、core/evolution/patch.py:11-56 |
agent 工具五件套(含 read_skill) |
app/search/tools.py:33-73 |
版本目录 Store store/skills/v{N} / workspace 本地拷贝 |
app/harness/store.py:28-136、app/harness/workspace.py:103-108,150-152 |
8. 验收标准
- 图在 Figma 中为独立顶层 Frame,可整体导出 PNG/SVG,缩印 180mm 宽时最小文字(12px 标注)仍可辨认。
- 五区域 + 对照条齐全,闭环箭头(⑤→① read、④→⑤ accept)无歧义。
- 全部术语与 §7 代码核实结果一致;无熔断/缓存/遥测等工程元素。
- 风格与同文件建树图肉眼一致(配色、字体、面板语言、卡片组件)。
- 不改动/移动建树图的任何现有图层。
9. 构图重构记录(2026-07-09 定稿后追加)
用户验收反馈:内容正确但"下半部空、无主线重点"。经方案比选(用户选 A),实施:
| 改动 | 内容 |
|---|---|
| 显式循环主干 | 面板间 chevron → 4px 黑色实心三角箭头(forward 主线);④→⑤ write 与 ⑤→① read 回流均为 4px 绿色实线带,⟳ ×N epochs 置于带上;黑/绿双色对应 forward / parameter-update 语义 |
| 底部压缩 | Store 2080px 全宽行 → 680×170 紧凑块(右缘对齐 ④,write 直指 v5);对照条 130→84px;画布 1050→940(2.55:1) |
| 填充 | motto 24px 斜体移至左下空区;read 带起点加绿色圆点锚记 |
逐模块精修均经 Claude 自审 + Codex 独立审双 PASS(Question/①/②/③/④/⑤+对照条/整图重构共 8 轮审核)。Codex 抓到的实质问题:④ 的 W/L 翻转数与 e 曲线出口统计不自洽(修正为序列省略号 + W=8·L=0,E=56.78>e_confirm=20)、ladder 色块数与题数不符、read 线易误读为边框。
10. 定稿修订记录(2026-07-10,本节覆盖 §2/§3 的布局规格)
逐模块精修完成后的第二轮构图重构与最终决策(均经用户逐项拍板):
| 决策 | 内容与理由 |
|---|---|
| 环形布局 | 画布 2400×940 → 1608×960;顶行 Question→①→②→③(黑色 forward 箭头),③ 底部下沉入 ④,底行 ④→⑤ 右→左(绿色 write),⑤ 顶部 read 回流 ①;顺时针一圈 = 一个 epoch,上下缝压缩至 36px |
| ④ 表义化 | 横版 840×280,右→左三段与底行流向一致:入口小票 v6 · candidate(③ 箭头落点)→ 配对复测表(v5·baseline 上 / v6·candidate 下,翻转列淡绿高亮,W = 8 · L = 0 + 小注 (4 of 8 flips shown))→ e-process 曲线越 e_confirm = 20(端点 E = 56.78,与 gate.py 公式验算一致)→ 绿色放行单卡片(与 ② 红色缺陷工单对仗)+ 虚线幽灵票 else: no confirmed write(if/else 结构;虚线沿用 ① 的"未采用路径"编码) |
| 出口简化 | gate 四出口在图上压成 accept(confirmed) + else 两出口;else 措辞避免暗示"非 confirmed 全是 reject"(Codex I2) |
| PyTorch 对照 | 底部全宽对照条 → Question 下方纵向对照卡(248×280 浅灰圆角块,Q/①…⑤ ↔ DataLoader/forward/backward/step/grad clipping/nn.Parameter 六行) |
| ⑤ Store | 408×280 与 ④ 同高:v1..v5 灰卡 + v6 ✦ 绿卡(write 落点),motto 移入面板底部;版本叙事闭合:本轮 read v5 → 产出 v6 候选 → 放行写入 → read (next epoch) 读 v6(Codex I3 时序标注) |
| 模型标签统一 | ① Agent / ③ LLM / 建树图 VLM 全部统一为 Agent(同紫块同图标;紫=冻结预训练模型,与绿=可训练资源对仗)。备注风险:建树图批量帧描述严格说非 agentic,正文表述需圆(如 captioning agent) |
| 删减 | 面板间游离标签(trace + ✗ / defect)、⑤ 的 nn.Parameter 小标签、大 ⟳ 字符、全宽对照条均删除;⟳ × N epochs 合并为单行小字嵌缝 |
审核记录:④⑤+布局经 Codex 独立审(无 Critical;I1/I2/I3/M3 已采纳落实);整图终审 PASS(无 Critical/图内必改项)。终审遗留三项归入 figure caption 与投稿检查,不改图:
- caption 需说明"紫块 Agent = 冻结预训练模型组件,仅 ① 为 agent-controlled,训练对象是 harness"(消解 ③ 同款 Agent 块的误读,兼答 motto 与标签并存问题);
- 投稿前打印 180mm 宽样张,验证代码字体图例、
e_confirm = 20、(4 of 8 flips shown)等 14px 小字的缩印可读性。
11. 建树图风格统一记录(2026-07-10)
主图定稿后,用户认定主图风格更优,建树图向其看齐(内容结构不大改)。改动与决策:
| 决策 | 内容 |
|---|---|
| 视觉词汇表统一 | 两图共用同一套编码:虚线=堆叠/次要(不得用作焦点强调)、红色只留给错误、层级色 L1绿/L2蓝/L3黄贯穿;据此 Scene 2/Event 2 焦点框由灰虚线改层级色 3px 实线,Event i 红虚线框与 Event Card 红描边改 L2 蓝,Frame Card 描边补齐 L3 黄 |
| 标题与结构 | 三区块标题 ① Long Video / ② Multi-scale Temporal Decomposition / ③ Build Tree(Inter Bold 24 + 编号居中);chevron 换主图同款 4px 黑箭头;全部游离节点收入顶层 Frame(1715×441);修正 3 处 "leval" 拼写与标题缺空格、删重复标题 |
| Build Tree 补位 | 用户删除冗余 E1/E2 块后,空区放空心骨架树(白底+层级色描边,caption "tree skeleton (from ②) → attach a card to every node");三个 Agent 块加建树顺序徽章 ❶Event(L2)→❷Frame(L3)→❸Scene(L1),与算法#1 "L2 先行→L3 向下→L1 向上"一致 |
| 两树同构 | 主图 Question 面板迷你树按同一对称几何重画(实心 24/20/16);空心=待填充骨架(建树图)、实心=成品(主图),唯一差别维度即语义 |
| 模型标签 | 建树图 VLM 紫块随主图统一为 Agent(用户决策;正文 caption 需说明紫块=冻结模型组件) |
审核记录:Codex 独立审出 1 Critical(L3 展开帧时间戳越出 Event 2 区间,已改 0:21:30/0:21:32)+ 2 Important(竖排来源标注弱化为 16px 灰、"The Event Card of L2 corresponding to L3" 改 "parent event card (L2)")+ 1 Minor(Frame Card 黄描边),全部落实。遗留投稿检查项:❶❷❸ 徽章含义入 caption、180mm 样张验证小字。
12. 被拒绝的备选方案
| 方案 | 拒绝原因 |
|---|---|
| B 上下双层 S 形回路 | PyTorch 对照条无法与面板逐段对齐,退化为角标 |
| C 中心辐射环形 | 2.3:1 宽幅下横向空间浪费大,机制细节难展开,与建树图直线叙事不一致 |
| 独立进化时间轴 | 占版面,与对照条拥挤;由 Store 版本堆叠 + ×N epochs 替代 |