huggingface/Repo2RLEnv
Turn any repository into verifiable RL environments for coding agents - Harbor tasks you can train on, evaluate and share on the Hugging Face Hub
Repo2RLEnv – 将代码仓库转化为可验证的强化学习任务
是什么 – Repo2RLEnv 是一个 Python 库(及 CLI),可自动从现有软件制品(已合并的拉取请求、提交历史、CVE 补丁、终端录制等)生成 Harbor 强化学习环境。每个生成的任务包含指令、起始容器、私有验证器(奖励函数)和参考解决方案。这些任务遵循开源的 Harbor 任务格式,因此任何 Harbor 兼容的智能体均可在这些任务上进行训练或评估。
为何重要 – 训练代码智能体(如代码补全、缺陷修复或代码生成模型)需要数千个现实的编程问题,并具备自动验证成功的方法。手动构建此类环境既缓慢又容易出错。Repo2RLEnv 从真实开发数据中提取信息,并将其转化为即用型强化学习环境,显著降低了构建高质量基准的成本。
主要特性
- 23 个生成器:覆盖仓库修复、实现、补丁重现、终端状态任务以及纯推理/优化问题。
- 21 个已发布数据集(约 1,930 个任务)在 Hugging Face Hub 上,可直接下载。
- Tasksmith – 一个可自动从 PR 构建新任务的智能体,使用 LangGraph 协调和远程工作器(Modal 或 Daytona)。
- Harbor 兼容性 – 通过
harborCLI,任何 Harbor 智能体均可运行、审查和共享这些任务。 - 零 LLM 密钥快速启动 – 最简单的流水线仅需 Python 3.12+ 和 GitHub CLI 即可在本地运行。
典型工作流程
- 生成:从仓库(例如
pallets/click的最近 PR)生成一组任务。 - 验证:使用内置的 Oracle 在本地验证任务,确保参考解决方案得分为 1.0。
- 运行:使用
harbor run命令让智能体(例如 Claude‑Sonnet)在任务上运行。 - 发布:通过一条命令将自动生成的任务发布回 Hub。
安装
# 核心库和 CLI
pip install repo2rlenv
# 添加 Harbor 支持(运行/审查任务所需)
pip install 'repo2rlenv[harbor]'
# 完整功能栈,支持 Tasksmith 在远程工作器(Modal/Daytona)上运行
pip install 'repo2rlenv[tasksmith,daytona,harbor]'
快速入门(约 5 分钟内完成,无需 Docker,无需 LLM API 密钥)
pip install 'repo2rlenv[harbor]'
gh auth login
# 从 click 库生成三个 PR 差异任务
repo2rlenv generate --repo pallets/click \
--pipeline pr_diff --pipeline-opt limit=3 --out ./tasks
# 验证其正确性
repo2rlenv validate ./tasks --oracle
# 训练/评估智能体(示例使用 Anthropic Claude)
harbor run -p ./tasks -a claude-code \
-m anthropic/claude-sonnet-4-6 \
--ae ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY --env docker
Tasksmith 简介 – 将 Tasksmith 指向一个已合并的 PR 和一个代码智能体,它将:
- 分析变更和仓库上下文。
- 在远程容器中启动仓库。
- 起草指令和私有验证器。
- 将所有内容打包为 Harbor 任务。
- 通过审查与修复循环,不断迭代直到任务通过所有控制。
更多资源
- 文档与指南 – https://huggingface.github.io/Repo2RLEnv/
- 数据集 – https://huggingface.co/collections/FineEnvs/repo2rlenv-verifiable-rl-environments-6aa82300d7494c050f50508d
- 源代码 – https://github.com/huggingface/Repo2RLEnv
- 许可证 – 库:Apache‑2.0,捆绑的研究配方:MIT(分发:
Apache-2.0 AND MIT)。
谁应该使用它
- 构建或评估代码生成、缺陷修复或软件工程智能体的研究人员。
- 希望从自身代码库创建定制强化学习基准的团队。
- 对大规模、自动验证编程环境感兴趣的任何人。
相关
- 项目
- 项目
- Dispatch
- 项目
- Dispatch