Project report / GitHub evidence

AgentVerse: 多智能体仿真与任务求解平台

这是可索引项目报告证据页:它保留 AgentVerse: 多智能体仿真与任务求解平台 的源材料入口、机制线索和限制提醒;正文仍需 reader/editor 与 academic public-copy review 后才能当作最终结论引用。

AgentVerse: 多智能体仿真与任务求解平台

基本信息

字段内容
GitHubhttps://github.com/OpenBMB/AgentVerse
Star5k+
技术栈Python, Pydantic, OpenAI API, React (前端)
许可证Apache 2.0
开发者OpenBMB(清华大学 THUNLP)
论文AgentVerse: Facilitating Multi-Agent Collaboration and Exploring Emergent Behaviors (ACL 2024)

项目简介

AgentVerse 是清华大学 OpenBMB 团队开发的多智能体仿真与任务求解平台。提供两种核心模式:

  1. Simulation(仿真):多 Agent 在环境中交互(如NLP教室、囚徒困境)
  2. TaskSolving(任务求解):多 Agent 协作解决复杂任务

核心理念:涌现行为(Emergent Behavior) — 通过多 Agent 交互发现单 Agent 无法展现的能力。

目录结构

agentverse/
├── agentverse/
│   ├── __init__.py
│   ├── agentverse.py           # ★ 主入口
│   ├── simulation.py           # 仿真模式
│   ├── tasksolving.py          # 任务求解模式
│   ├── initialization.py       # Agent/环境初始化
│   ├── message.py              # 消息系统
│   ├── registry.py             # 注册表(Agent/环境/LLM)
│   ├── logging.py              # 日志
│   ├── demo.py                 # 演示
│   ├── gui.py                  # GUI
│   ├── utils.py                # 工具函数
│   ├── agents/                 # ★ Agent 定义
│   │   ├── base.py             # BaseAgent 基类
│   │   └── __init__.py
│   ├── environments/           # ★ 环境定义
│   │   ├── base.py             # BaseEnvironment 基类
│   │   └── __init__.py
│   ├── llms/                   # LLM 抽象
│   │   ├── base.py             # BaseLLM
│   │   └── openai.py           # OpenAI 实现
│   ├── memory/                 # ★ 记忆系统
│   │   ├── base.py             # BaseMemory
│   │   ├── chat_history.py     # 聊天历史记忆
│   │   ├── summary.py          # 摘要记忆
│   │   ├── vectorstore.py      # 向量存储记忆
│   │   └── sde_team.py         # SDE 团队记忆
│   ├── memory_manipulator/     # ★ 记忆操作器
│   │   ├── base.py             # BaseMemoryManipulator
│   │   ├── basic.py            # 基础操作
│   │   ├── plan.py             # 计划操作
│   │   └── reflection.py       # 反思操作
│   ├── output_parser/          # 输出解析
│   │   └── output_parser.py
│   ├── tasks/                  # 任务定义
│   └── utils/prompts.py        # Prompt 模板
├── agentverse_command/         # 命令行入口
│   ├── main_simulation_gui.py  # 仿真 GUI 模式
│   ├── main_simulation_cli.py  # 仿真 CLI 模式
│   ├── main_tasksolving_cli.py # 任务求解 CLI 模式
│   └── benchmark.py            # 基准测试
├── dataloader/                 # 数据加载器
│   ├── gsm8k.py                # GSM8K 数学
│   ├── mgsm.py                 # 多语言数学
│   ├── humaneval.py            # HumanEval 代码
│   ├── logic_grid.py           # 逻辑推理
│   ├── commongen.py            # 常识生成
│   └── responsegen.py          # 响应生成
├── scripts/                    # 评估脚本
│   ├── evaluate_math.py
│   ├── evaluate_logic.py
│   ├── evaluate_commongen.py
│   └── evaluate_responsegen.py
└── ui/                         # Web 前端(React)

核心模块分析

1. 双模式架构

Simulation(仿真模式)

TaskSolving(任务求解模式)

2. Agent-Environment-Memory 三层架构

# Agent 定义
class BaseAgent:
    name: str
    llm: BaseLLM
    memory: BaseMemory
    output_parser: OutputParser

    async def step(self, env_description, history):
        # 1. 从记忆检索上下文
        context = self.memory.retrieve(env_description)
        # 2. LLM 生成响应
        response = self.llm.generate(context)
        # 3. 解析输出
        parsed = self.output_parser.parse(response)
        # 4. 更新记忆
        self.memory.add(response)
        return parsed

3. 记忆系统

AgentVerse 的四层记忆:

记忆类型实现用途
聊天历史chat_history.py存储完整对话历史
摘要summary.py压缩长对话为摘要
向量存储vectorstore.py基于相似性的检索
SDE 团队sde_team.py软件工程团队协作记忆

4. 记忆操作器(Memory Manipulator)

这是 AgentVerse 的创新点 — 主动操作记忆

操作器功能
basic.py基础读写操作
plan.py从记忆中提取和维护计划
reflection.py反思操作 — 从历史经验中提炼教训

Reflection(反思) 是自我改进的关键机制:Agent 回顾自身行为,总结经验教训,用于指导未来决策。

5. 评估框架

多域评估支持:

技术亮点

  1. 涌现行为:研究多 Agent 交互的涌现能力
  2. 双模式:仿真 + 任务求解的统一框架
  3. 反思操作:Memory Manipulator 的反思机制是自我改进的原型
  4. 多层记忆:历史/摘要/向量/团队 四层记忆架构
  5. ACL 2024:顶会论文认可
  6. 清华大学:学术背景深厚

与 Self-Evolve 关联

维度AgentVerse 贡献
多 Agent仿真 + 任务求解的双模式多 Agent 平台
自我改进Reflection 记忆操作器 — 从历史经验中反思和提炼
记忆四层记忆系统(历史/摘要/向量/团队)
评估多域评估框架(数学/代码/逻辑/生成)
启示”涌现行为”概念可启发 Self-Evolve 中多 Agent 协作产生更可复查的进化线索

参考资料

GitNexus 深度架构分析