FreshBrew
收藏资源简介:
FreshBrew是一个针对Java代码迁移的AI代理评估基准,旨在测量AI代理在项目级别的Java迁移能力。该数据集包含228个真实世界的Java项目,这些项目在JDK 8上可以成功构建,但在现代JDK上构建失败,并且具有至少50%的测试覆盖率。FreshBrew的评估协议通过三个连续的阶段来衡量成功:成功编译、通过所有原始测试以及保持测试覆盖率在基线的5%以内。这些阶段确保只有语义正确的迁移才能被计为成功,并有效地防止奖励黑客行为。通过发布FreshBrew,我们旨在促进严格、可重复的评估,并推动AI驱动的代码库现代化进程的进步。
FreshBrew is an AI Agent evaluation benchmark for Java code migration, intended to measure the project-level Java migration capabilities of AI agents. This dataset contains 228 real-world Java projects that can be built successfully on JDK 8 but fail to build on modern JDK versions, with a test coverage of at least 50%. The evaluation protocol of FreshBrew assesses success via three consecutive stages: successful compilation, passing all original tests, and maintaining test coverage within 5% of the baseline. These stages ensure that only semantically correct migrations are counted as successful, effectively preventing reward hacking. By releasing FreshBrew, we aim to facilitate rigorous, reproducible evaluations and advance the progress of AI-driven codebase modernization.
FreshBrew 数据集概述
数据集简介
FreshBrew 是一个用于评估 AI 代理在 Java 代码迁移任务中表现的基准数据集。该数据集专注于 Java JDK 迁移场景,包含完整的评估框架和测试覆盖度验证机制。
核心功能
- 代码迁移评估:通过运行迁移脚本评估 AI 代理对 Java 代码库的迁移能力
- 测试覆盖度保护:通过覆盖率检查脚本验证迁移后代码的测试覆盖度变化
- 结果分析:生成详细的评估报告和指标统计
数据集位置
完整数据集文件路径:data/migration_datasets/full_dataset.yaml
- 包含用于开发和调试的子采样版本数据集
技术规格
运行环境要求
- 操作系统:Linux 或 MacOS
- Python 版本:3.12+
- 必需工具:Git 命令行工具
- Java 环境:需要安装 temurin-8-jdk、temurin-17-jdk、temurin-21-jdk 和 Maven
支持的 AI 模型
- 默认模型:
gemini-2.5-flash - 支持模型类型:Gemini(AI Studio 和 Vertex)、OpenAI
- 可扩展性:支持通过实现 Agent 接口集成新的 AI 代理
评估流程
迁移执行阶段
使用 run_migration.py 脚本:
- 输入:Java 代码库数据集
- 输出:代码补丁文件、构建日志、代理轨迹日志、结果摘要文件
- 生成聚合指标文件:
metrics.yaml
覆盖度验证阶段
使用 migration_cov_guard.py 脚本:
- 输入:实验输出路径、覆盖度数据 CSV 文件
- 输出:
cov_results.yaml文件,包含通过率、任务失败数和详细覆盖度结果
配置要求
- 必须设置目标 Java 版本环境变量:
TARGET_JAVA_VERSION - 需要配置相应的 AI 模型 API 密钥
- 支持并行处理和重试机制
扩展性
支持通过实现 java_migration/eval/agent.py 中定义的 Agent 接口来扩展新的 AI 代理,并在 java_migration/eval/worker.py 中注册使用。

- 1FreshBrew: A Benchmark for Evaluating AI Agents on Java Code MigrationGoogle, Max Planck Institut für Intelligente Systeme (MPI-IS), ELLIS Institute, Tübingen, Salesforce, Gologic Inc · 2025年



