DSGBench
收藏DSGBench 数据集概述
DSGBench是一个新颖的战略游戏基准,旨在评估LLM(大型语言模型)基于的代理在战略规划、实时决策、适应性和多代理交互中的性能。该基准包含六个高动态、复杂的战略游戏,包括《星际争霸II》、《文明》、《街头霸王III》等。它提供了细粒度的度量标准,用于综合评估,以及详细的决策轨迹分析和轨迹数据集。
数据集特点
-
战略游戏:DSGBench填补了在复杂战略环境中评估代理的重要空白,反映了代理在实际世界应用中的整体能力。
-
场景多样性:DSGBench提供了多种场景设置,允许全面测试代理的适应性和泛化能力。理想的代理应在多种环境中表现出色,并展示跨场景的泛化能力。
-
细粒度评估指标和决策轨迹分析:DSGBench采用详细的评估指标,涵盖战略规划、实时决策、适应性和多代理交互。这些细粒度的指标提供了对代理性能的深入定量分析。
-
轨迹数据集:DSGBench提供了一个全面的决策轨迹数据集,为轨迹微调(Trajectory SFT)和基于代理反馈的强化学习(RL from Agent Feedback)提供了坚实的数据基础。
环境概述
游戏环境
该项目评估环境包括六个动态、复杂的战略游戏:
| 环境 | 不完全信息 | 战略与战术 | 动态空间 | 实时与回合制 | 更多信息 |
|---|---|---|---|---|---|
| StarCraft II | ✔ | ✔ | ✔ | 实时 | 链接 |
| Civilization | ✔ | ✔ | ✔ | 回合制 | 链接 |
| Street Fighter III | ✘ | ✘ | ✘ | 实时 | 链接 |
| Diplomacy | ✘ | ✔ | ✘ | 回合制 | 链接 |
| Werewolf | ✔ | ✔ | ✘ | 回合制 | 链接 |
| Stratego | ✔ | ✔ | ✘ | 回合制 | 链接 |
存储结构
games:包含6个游戏环境,使用OpenAI Gym接口。agent_manager:实现各种游戏的代理、提示和LLM接口。configs:用于配置评估游戏场景参数和LLM参数。agent_eval:用于计算评估指标。utils:包含公共函数和日志函数。create_yaml.py:生成特定配置。mutiprocess_eval_tasks.py:运行脚本来执行评估。
快速入门
系统要求
- 操作系统:Windows 11 with WSL
- Docker管理:Docker Desktop
- Python:python 3.9.6
游戏设置
- StarCraft II:安装游戏,下载地图。
- Civilization:使用Docker镜像作为游戏引擎。
- Street Fighter III:使用DIAMBRA Arena环境,下载rom。
- Diplomacy:下载必要的权重文件。
- Werewolf和Stratego:无需额外设置。
配置
- LLM API key:配置模型名称、API密钥和URL。
- Wandb key:配置W&B API密钥(可选)。
任务配置与运行
- 在
tasks_config.py中配置任务,然后使用mutiprocess_eval_tasks.py运行任务。
计算模型能力分数
- 使用
calc_score.py脚本计算模型能力分数。
结果结构
- 结果包括wandb trace和txt result。
- wandb result记录每次运行的具体指标趋势。
- txt result包含模型在不同游戏场景下的分数。
未来工作
- 创建统一的数据集、开发层次化评估框架、实现Elo评分系统和统一强化学习框架。
扩展DSGBench
- 即将发布扩展规范,允许社区贡献新的游戏环境和评估场景。
许可证
- DSGBench代码库遵循MIT许可证。
致谢
- 感谢TextStarCraft2、CivRealm、welfare-diplomacy、Stratego Env、llm-colosseum和werewolf_arena等项目的贡献。
引用
bibtex @misc{tang2025dsgbenchdiversestrategicgame, title={DSGBench: A Diverse Strategic Game Benchmark for Evaluating LLM-based Agents in Complex Decision-Making Environments}, author={Wenjie Tang and Yuan Zhou and Erqiang Xu and Keyan Cheng and Minne Li and Liquan Xiao}, year={2025}, eprint={2503.06047}, archivePrefix={arXiv}, primaryClass={cs.AI}, url={https://arxiv.org/abs/2503.06047}, }




