gitwtfhub

wtf is perceptionrubrics?

m1chaelpeng/perceptionrubrics — explained in plain English

Analysis updated 2026-05-18

16PythonAudience · researcherComplexity · 3/5LicenseSetup · moderate

TL;DR

A rubric-based benchmark and scoring toolkit that checks AI image-captioning models against strict per-image fact checklists.

Mindmap

mindmap
  root((PerceptionRubrics))
    What it does
      Scores image captions
      Uses per-image rubrics
      Gated scoring penalty
    Rubric types
      Must Right facts
      Easy Wrong traps
    Domains covered
      Natural scenes
      Documents and OCR
      UI and charts
    Tech stack
      Python
      Conda env
    Use cases
      Benchmark VLMs
      Compare open vs closed models
      Detect hallucinations

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Benchmark a vision-language model's captioning accuracy against 10,000+ human-derived rubrics.

REASON 2

Compare open source and proprietary models on strict, fact-level perception scoring.

REASON 3

Use gated rubric scoring to catch hallucinations that loose caption comparisons miss.

What's in the stack?

PythonConda

How it stacks up

m1chaelpeng/perceptionrubrics920linjerry-stack/capital-studioadya84/ha-world-cup-2026
Stars161616
LanguagePythonPythonPython
Setup difficultymoderateeasyeasy
Complexity3/53/52/5
Audienceresearcherresearchergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Requires an API key for a predict model and a judge model such as gpt-oss-120b.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

Wtf does this do

PerceptionRubrics is the code and data release for a research paper called "PerceptionRubrics: Calibrating Multimodal Evaluation to Human Perception," accepted at ICML 2026. It gives researchers a way to test how well AI models describe images, and it checks those descriptions against very specific, per-image checklists instead of just comparing them loosely to a reference caption. The core idea is a rubric system built from 1,038 densely detailed images paired with over 10,000 individual rubrics. Each rubric falls into one of two buckets: Must Right items, which are facts a caption absolutely has to get correct, and Easy Wrong items, which are common mistakes or hallucinations models tend to make. Scoring uses a gated method rather than a simple average, so getting a mandatory fact wrong causes a sharp penalty instead of being smoothed over by other correct details. The images span seven categories: natural scenes, documents and OCR, digital interfaces like web and mobile UIs, structured data such as charts and tables, STEM and expert diagrams, logic puzzles, and creative or cultural content. The project reports that even strong models struggle to satisfy every rubric at once, that open source models trail proprietary ones by roughly 8 percent in this kind of fine grained perception, and that this rubric based scoring lines up better with human judgment than older benchmarks do. To use it, you clone the repository, set up a Python 3.11 environment, and install the package. A single script runs the full pipeline: generating captions with a chosen vision model, then judging those captions against the rubrics using a separate judge model, with gpt-oss-120b recommended to reproduce the paper's numbers. The steps can also be run separately, first predicting captions and saving them, then scoring those predictions against the dataset's rubrics. Settings like which model to test, which model judges, and how many samples to run are all controlled through environment variables. This is a research evaluation tool rather than an end user product, aimed at people building or benchmarking multimodal AI systems who want a stricter, more human aligned way to measure captioning accuracy. It is released under the Apache 2.0 license.

Yoink these prompts

Prompt 1
Walk me through setting up PerceptionRubrics and running the one-command evaluation script.
Prompt 2
Explain the difference between Must Right and Easy Wrong rubrics and why gated scoring uses them differently.
Prompt 3
Show me how to run only the predict step against my own vision-language model.
Prompt 4
Help me interpret an output summary with average_score, mr_pass_rate, and ew_average.

Frequently asked questions

wtf is perceptionrubrics?

A rubric-based benchmark and scoring toolkit that checks AI image-captioning models against strict per-image fact checklists.

What language is perceptionrubrics written in?

Mainly Python. The stack also includes Python, Conda.

What license does perceptionrubrics use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is perceptionrubrics to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is perceptionrubrics for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.