4b6d1d8a50abcabb366b04b4515a8a559e4ff581
进化引擎与 gate e-process 从 question_id 口径迁至 unit_id 口径,AR pair 双向 AND 折叠为单元、不被 P/Q 单题计分污染;逐题 predictions 仅作溯源。 - question_units: 新增 unit_correctness_view(units, per_q)->dict[unit_id,bool] 作为逐题→单元折叠的唯一入口(复用 unit_correctness)。 - core/evolution/validate: pair_block/compute_accuracy 参数改 unit_ids、 分母按单元数(键即 unit_id)。 - app/harness/validate(gate 实际执行路径):阶梯题序聚合为单元并保持信息 阶梯序(_ladder_units),gate 块按单元切分(AR pair 整锁不跨块拆); baseline_cache 键含 unit_id、存单元级对错;候选逐题读回后折叠成单元视图; n_used/W/L/四象限/准确率均按单元计;证据行按 unit 口径,candidate_correctness 独立保留逐题对错供 runner 二轨合并。 - runner: probation 结算按 unit 折叠计 W/L(_probation_unit_flips);quadrant 四象限 id 承载 unit_id。 核心算法保真 #5(信息阶梯 e-process):本次仅迁移 correctness 口径,不改冷启动 2:1 / gamma-EMA / 反泄漏算法本身(gate_ladder 迁移见 Task 8)。
Video-Tree-TRM5
在层次化视频树上构建可自我进化的搜索 Agent,实现长视频理解。目标会议:EMNLP 2026。
系统概览
本项目是 Video-Tree-TRM4(MVP)的生产级重构,采用 Clean Architecture 分层设计。
核心思想:自进化循环对标 PyTorch 训练
| PyTorch | 本项目 | 模块 |
|---|---|---|
| DataLoader | 出题 question_gen | app/question_gen/ |
| model.forward() | 推理 inference | app/harness/inference.py + core/agent/loop.py |
| loss.backward() | 诊断 diagnose | core/evolution/diagnose.py |
| optimizer.step() | 进化 evolve | core/evolution/evolve.py |
| nn.Parameter | Skills + Prompts(版本化) | store/skills/, store/prompts/ |
三大模块
| 模块 | 目录 | 说明 |
|---|---|---|
| 建树 | app/tree/ |
离线预处理:VLM 生成三层 TreeIndex(L1段落→L2片段→L3帧),支持字幕注入和后增强 |
| 训练 | app/harness/ + core/ |
自进化循环:推理→诊断→进化,含 CE-Gate 统计检验、信息阶梯、mini-batch 调度 |
| 新题构建 | app/question_gen/ |
生成 Video-MME 风格训练题,原始 benchmark 作 held-out 泛化评测 |
可提取内核
core/agent/ 和 core/evolution/ 只依赖 Protocol 接口,可独立提取用于其他项目。
快速开始
# 1. 创建 Conda 环境
conda create -n Video-Tree-TRM python=3.11 -y
conda activate Video-Tree-TRM
pip install -e ".[dev]"
# 2. 配置环境变量
cp .env.example .env
# 编辑 .env 填入 API 密钥
# 3. 验证
make lint
make test
项目结构
详见 research-wiki/ARCHITECTURE.md。
文档
| 文档 | 说明 |
|---|---|
research-wiki/ARCHITECTURE.md |
系统架构与边界 |
research-wiki/overview.md |
自进化循环总览 |
CLAUDE.md |
Agent 工作指令 |
reference/docs/architecture.md |
建树+检索器参考设计 |
Description
Languages
Python
97.6%
Shell
2.2%
TypeScript
0.2%