📐 GAGE: General AI evaluation and Gauge Engine
June 2, 2026 · View on GitHub
📐 GAGE: General AI evaluation and Gauge Engine
English · 中文
📧 负责人邮箱: zhangrongjunchen@myhexin.com
框架总览 · Sample 契约 · 智能配置简化 · 执行感知报告 · Game Arena · Arena Visual 控制面 · AgentKitV2 · External Harness · Benchmark · 贡献指南 · 编码规范
GAGE 是面向大语言模型、多模态模型、音频模型、扩散模型、Agent 与游戏环境的统一可扩展评测框架。它用同一套评测引擎组织数据集、模型后端、指标、Arena 运行时、结构化输出和可回放产物。
Game Arena 展示



为什么选择 GAGE?
- 快速评测引擎:本地冒烟、模型对战和较大批量 Benchmark 都使用同一条 Pipeline。
- 统一评测接口:数据集、后端、角色适配器、指标和输出契约通过配置组合,减少每个任务的粘合代码。
- Game 与 Agent 沙箱:Game Arena、AgentKitV2、AppWorld、SWE-bench 风格任务、GUI 交互和工具增强任务共享同一套运行与产物模型。
- 外部 Harness 集成:可将 task-batch benchmark 委托给 Harbor,再把 trial evidence 导入为标准 GAGE samples、metrics、reports 和 raw artifacts。
- 可回放 GameKit 运行时:五子棋、井字棋、斗地主、麻将、PettingZoo Space Invaders、Retro Mario、ViZDoom 都会写出结构化 arena trace 和
arena_visualsession。 - 运行可观测性:运行产物包含
summary.json、样本输出、日志、视觉产物和静态 report pack,便于事后排查。
设计概览
核心设计理念:Everything is a Step, Everything is configurable.
架构设计

编排设计

GameArena 设计

AgentKitV2 设计

External Harness 设计

快速开始
1. 环境准备
# 如果你在 mono-repo 根目录:
cd gage-eval-main
# 推荐使用 Python 3.10+
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Game Arena LLM 配置推荐使用 *_openai_gamekit.yaml 变体,并 export OPENAI_API_KEY。模型默认 gpt-5.4;如需覆盖模型,设置 GAGE_GAME_ARENA_LLM_MODEL;如需使用 OpenAI-compatible endpoint,设置 OPENAI_API_BASE。
2. 运行基础 Demo
python run.py \
--config config/run_configs/demo_echo_run_1.yaml \
--output-dir runs \
--run-id demo_echo
3. 查看报告
默认产物结构如下:
runs/<run_id>/
events.jsonl
samples.jsonl
summary.json
samples/
<namespace>/
<sample_id>.json
report_pack/
report.html
report_context.json
report_context.md
prompt.txt
diagnostics.json
assets_manifest.json
打开 runs/<run_id>/report_pack/report.html 可以查看执行感知报告:primary metrics、key findings、scenario profiles、evidence 跳转、media 预览、diagnostics 与 reason-code 解释。详见 执行感知链路报告。
进阶配置
| 场景 | 配置文件示例 | 说明 |
|---|---|---|
| GameArena人机对战 | config/custom/doudizhu/doudizhu_human_visual_gamekit.yaml | 浏览器控制斗地主,与 LLM 玩家对战 |
| GameArena纯人工控制 | config/custom/retro_mario/retro_mario_human_visual_gamekit.yaml | 浏览器控制实时 Retro Mario session |
| AgentKitV2 Tau2 | config/custom/manual_e2e/agentkit_v2_tau2_local_lmstudio.yaml | 原生逐样本 Agent workflow,使用 local-process Tau2 单样本 smoke |
| AgentKitV2 SWE-bench Pro | config/custom/manual_e2e/agentkit_v2_swebench_pro_docker_lmstudio_smoke1_qutebrowser.yaml | 原生 Docker-backed SWE-bench Pro smoke |
| External Harness Harbor | config/custom/external_harness_kits/harbor_terminal_bench2_lmstudio_1case.yaml | 将 Terminal-Bench 2.0 任务委托给 Harbor 并导入结果 |
| AgentKitV2 AppWorld | config/custom/appworld/appworld_official_jsonl.yaml | 通过原生 AgentKitV2 路径运行的 AppWorld 沙箱评测 |
| 文本测评 | config/custom/aime24/aime2024_chat.yaml | AIME、GPQA、Math500 等文本 Benchmark |
| 多模态 | config/custom/mathvista/chat.yaml | MathVista 等多模态 Benchmark |
| LLM 裁判 | config/custom/examples/single_task_local_judge_qwen.yaml | 本地 LLM 裁判示例 |
近期计划
- Agent 评测能力:继续增强 AgentKitV2 与 External Harness 的 trace 导入、失败诊断和可复现 live smoke 配置。
- Game Arena 扩展:扩充 GameKit 游戏目录,并保持浏览器控制、回放和输出契约一致。
- Gage-Client 工程化:优化配置管理、失败样本定位和 Benchmark 接入脚手架。
- 多机分布式推理:支持超大规模评测任务的任务分片与负载均衡。
- Benchmark 矩阵扩展:持续补充评测配置、指标解释与排障指引。
状态
当前处于内部验证期:API、配置与文档可能随实现快速迭代。