allenai/reward-bench

RewardBench: the first evaluation tool for reward models.

What it solves

RewardBench provides a standardized way to evaluate the capabilities and safety of reward models (RMs), which are used to align LLMs with human preferences. It addresses the lack of consistent benchmarking for these models, including those trained via Direct Preference Optimization (DPO) and generative "LLM-as-a-judge" models.

How it works

The project provides a suite of tools and datasets to test how well a reward model can distinguish between "chosen" and "rejected" responses. It includes:

  • Inference Code: Unified code to run various reward models (e.g., Starling, PairRM, OpenAssistant).
  • Evaluation Scripts: Specialized scripts for standard reward models (run_rm.py), DPO models (run_dpo.py), and the updated RewardBench 2 (run_v2.py).
  • Generative Support: Tools to use LLMs as judges via local vLLM inference or APIs (OpenAI, Anthropic, Google Gemini, Together).
  • Analysis Tools: Utilities for visualizing results, calculating section-specific scores (Chat, Safety, Reasoning), and testing reward model ensembles.

Who it’s for

  • AI Researchers: Developing and testing new reward models or preference optimization techniques.
  • ML Engineers: Evaluating the safety and quality of reward models before deploying them in RLHF pipelines.
  • Model Developers: Comparing their models against a public leaderboard to gauge performance.

Highlights

  • Broad Model Support: Compatible with sequence classifiers, DPO/KTO models, and generative judges.
  • RewardBench 2: Includes advanced data handling for "best-of-4" and "Ties" datasets.
  • Flexible Deployment: Supports installation via uv or pip and provides Docker images for reproducible research.
  • Integration: Allows pushing evaluation results and model metadata directly to the Hugging Face Hub.

Related

  • Project
  • Project
  • Project
  • Project
  • Project