shidingz/EDV
GitHub: shidingz/EDV
EDV 通过异构多智能体协作的执行-蒸馏-验证范式,解决 LLM 智能体经验学习中因单智能体自反思闭环导致的自我确认偏差问题。
Stars: 6 | Forks: 0
# EDV:面向智能体经验学习的执行-蒸馏-验证范式
## 📖 概述
EDV(Execute-Distill-Verify)是一个面向 LLM 智能体的可靠经验学习框架,旨在解决单智能体自我进化中的核心**自我确认陷阱**问题。
通过异构多智能体协作将执行、蒸馏和验证角色解耦,EDV 将经验学习从孤立的自反思循环,转变为一种协作式的经验构建与过滤 pipeline。它能在记忆插入之前抑制错误和带有噪声的经验,从而在开放世界环境中为智能体赋能,使其具备更稳健的持续自我提升能力。
## ❗ 自我确认陷阱
现有的大多数经验学习方法都依赖于单智能体闭环:同一个智能体既要执行任务、解释结果,又要提炼经验教训,并决定将哪些内容写入记忆。这种设计不可避免地导致了**自我确认陷阱**:
- 错误但自洽的轨迹被误认为是有效的成功经验
- 错误通过反复的记忆检索和重用被逐渐放大
- 这个问题在没有明确 ground-truth 反馈的长程任务中尤为严重
EDV 通过角色解耦和多智能体共识机制打破了这种闭环。
## 🧠 EDV 框架
EDV 包含两个核心阶段:**经验构建(离线)** 和 **推理时使用(在线)**。
### 阶段 1:经验构建
1. **Execute(执行)**
- 多个异构智能体并行探索相同的任务空间
- 生成多样化的候选轨迹以扩大解决方案空间的覆盖率
- 减轻任何单一智能体的探索偏差
2. **Distill(蒸馏)**
- 指定的第三方蒸馏智能体执行跨轨迹的对比分析
- 提取可重用的候选经验规则,而不是仅仅重述单一的最佳轨迹
- 消除以执行者为中心的自我总结偏差
3. **Verify(验证)**
- 执行组通过基于共识的机制共同验证候选经验
- 获得一致认可的经验 → 进入共享记忆库(通用可重用知识)
- 部分认可的经验 → 进入相应的私有记忆库(智能体特定知识)
- 不合格的经验将被直接丢弃
### 阶段 2:推理时使用
- **能力矩阵**:根据历史性能统计,将新任务路由给最合适的智能体
- **分层检索**:首先查询共享记忆库,然后回退到智能体特定的私有记忆库
- 检索到的记忆被注入到任务上下文中,以指导后续推理
## ✨ 核心特性
- 异构并行轨迹生成,实现多样化的解决方案空间探索
- 第三方对比蒸馏,消除执行者的认知偏差
- 基于共识的验证和默认拒绝策略,确保极高的记忆质量
- 共享 + 私有的分层记忆架构,兼顾泛化性与个性化
- 轻量级能力矩阵路由,无额外推理开销
- 在多个长程 benchmark 上始终优于强有力的 baseline
## 🔧 代码概述
本仓库目前提供了 EDV pipeline 的轻量级参考实现。其目标是使核心思想易于检查和运行,而不是完整重现所有的 benchmark 结果。
主要工作流在 `src/edv/pipeline.py` 中实现。给定一个任务,`EDVPipeline.construct_experience()` 首先要求多个执行智能体解决同一任务,然后将它们的轨迹发送给蒸馏器,最后使用验证器决定蒸馏出的经验应进入共享记忆、私有记忆还是被丢弃。在推理时,`EDVPipeline.infer()` 使用能力矩阵选择合适的智能体,检索相关记忆,并带着这些记忆运行所选智能体。
代码的组织结构如下:
- `src/edv/agents.py`:玩具级的执行智能体、对比蒸馏器和共识验证器。
- `src/edv/memory.py`:带有简单检索功能的共享和私有记忆库。
- `src/edv/ability.py`:用于将任务路由给智能体的能力矩阵。
- `src/edv/envs.py`:用于演示的一个小型翻译工具环境。
- `examples/run_toy_edv.py`:展示 Execute → Distill → Verify → Memory Retrieval 的最小可运行示例。
- `docs/algorithm.md`:以伪代码形式解释完整 EDV 流程的文档。
运行该玩具示例:
```
python examples/run_toy_edv.py
```
此示例故意包含了一个因使用自然语言工具参数而失败的智能体,以及另一个因遵循工具 schema 而成功的智能体。EDV 会对比这些轨迹,蒸馏出有用的规则,对其进行验证,将其存储为记忆,并在后续任务中进行检索。
## 📊 实验结果
我们在三个具有挑战性的长程智能体 benchmark 上对 EDV 进行了评估:
### 1. τ²-bench (真实世界问题解决)
EDV 达到了 **86.6% 的平均 Pass@1**,超越了:
- No Memory baseline:+7.0 ~ +10.2 个百分点
- ReasoningBank baseline:+4.7 ~ +7.6 个百分点
- Router 集成 baseline:+3.1 个百分点
### 2. Mind2Web (Web 交互)
EDV 在跨任务、跨网站和跨领域设置下均保持了强大的泛化性能,相较于单智能体记忆方法和集成 baseline 取得了一致的提升。
### 3. MMTB (多工具任务执行)
EDV 取得了 **58.10** 的总分,超越了 Router baseline (55.96) 以及所有单模型 baseline。
## 📝 引用
如果您觉得我们的工作有用,请引用我们的论文:
```
@misc{zhu2026escaping,
title={Escaping the Self-Confirmation Trap: An Execute-Distill-Verify Paradigm for Agentic Experience Learning},
author={Shiding Zhu and Yudi Qi and Yajie Wang and Jiaze Li and Chao Song and Yaorui Shi and Yibo Miao and Hanqi Gao and Kai Zhang},
year={2026},
eprint={2606.24428},
archivePrefix={arXiv},
primaryClass={cs.CL},
doi={10.48550/arXiv.2606.24428},
url={https://arxiv.org/abs/2606.24428}
}
```
## 📄 许可证
本项目将在 MIT License 下发布。
## 🙏 致谢
我们感谢 τ²-bench、Mind2Web 和 MMTB 的作者提供开源 benchmark,并感谢开源社区在 LLM 推理和工具使用相关工作上的贡献。
标签:C2, DLL 劫持, PyRIT, TruffleHog, 人工智能, 多智能体系统, 大语言模型, 学术论文, 用户模式Hook绕过, 知识蒸馏, 经验学习, 逆向工具