MemoryBench
收藏资源简介:
MemoryBench是一个标准化且可扩展的基准数据集,用于评估大型语言模型系统中的记忆和持续学习能力。它涵盖多个领域、语言和任务类型,通过用户反馈模拟框架测试系统从累积反馈中学习的能力,旨在推动更自适应、反馈驱动和高效的LLM系统研究。
MemoryBench is a standardized and scalable benchmark dataset for evaluating the memory and continual learning capabilities of large language model (LLM) systems. Spanning diverse domains, languages and task types, it tests the system's capacity to learn from accumulated feedback via a user feedback simulation framework, with the goal of advancing research on more adaptive, feedback-driven and efficient LLM systems.
MemoryBench 数据集概述
数据集简介
MemoryBench 是一个用于评估大语言模型系统中记忆与持续学习能力的标准化可扩展基准。该基准通过模拟用户反馈机制,覆盖多领域、多语言和多种任务类型,旨在推动更自适应、反馈驱动和高效的大语言模型系统发展。
核心特点
- 评估重点:专注于测试系统在服务时间内从累积用户反馈中学习的能力
- 任务多样性:涵盖异构阅读理解任务和长文本输入处理
- 多维度覆盖:包含多个领域、语言和任务类型
数据集结构
配置结构
configs/ datasets/ # 数据集配置文件 final_evaluate_summary_wo_details.json # 标准化数据 raw/ # 原始数据集 src/ datasets/ # 数据集类 agents/ # 评估代理和记忆系统基线
配置文件
configs/datasets/each.json- 各数据集的元数据configs/datasets/domain.json- 按领域分组的数据集configs/datasets/task.json- 按任务分组的数据集
数据集获取
完整数据集公开发布于 Hugging Face:https://huggingface.co/datasets/THUIR/MemoryBench
数据集加载
加载方式
通过 load_memory_bench 函数加载数据集,支持三种加载模式:
single- 加载单个数据集domain- 按领域合并数据集task- 按任务合并数据集
数据集属性
dataset_name- 数据集名称dataset- HuggingFace 数据集对象,包含训练和测试划分has_corpus- 是否包含语料库get_data(test_idx)- 获取指定索引的数据点
评估框架
评估配置
- WritingBench 数据集:使用官方评估模型 WritingBench-Critic-Model-Qwen-7B
- 其他数据集:使用黑盒评估模型(论文中使用 DeepSeek-V3)
评估功能
evaluate()- 执行评估,返回详细指标summary_results()- 汇总结果,支持标准化计算
实验类型
1. 离线策略实验
- 加载所有训练对话到系统记忆
- 基于检索的相关记忆回答问题
- 支持语料库增强检索
2. 分步离线策略实验
- 分批加载训练对话到记忆
- 每批记忆添加后测试系统性能
- 支持批量大小配置
3. 在线策略实验
- 实时与用户反馈模拟器交互生成对话
- 动态将生成对话加载到记忆
- 支持多轮对话配置
4. 训练性能评估
- 在训练数据上执行离线策略实验
- 评估系统在已知数据上的表现
支持的系统基线
- Vanilla (无记忆系统)
- BM25-M (基于消息的BM25检索)
- BM25-S (基于对话的BM25检索)
- Emb-M (基于消息的嵌入检索)
- Emb-S (基于对话的嵌入检索)
- A-Mem (自适应记忆系统)
- Mem0 (Mem0记忆系统)
- MemoryOS (MemoryOS记忆系统)
技术实现
- 使用 vLLM 部署语言模型服务
- 支持 Qwen 系列模型
- 提供统一的配置接口
- 可扩展的记忆系统架构




