DecomposeRL Tiny-Judge: Answer Correctness Judge

Paper

Paper Project Page Dataset Collection GitHub

A ModernBERT-large classifier that scores whether an answer is faithful to the evidence document (no contradictions, no extrinsic information) — the answer correctness sub-signal of DecomposeRL's joint multiplicative quality reward.

It is part of the DecomposeRL tiny-judge stack — eight task-specific LoRA classifier heads on a shared ModernBERT-large backbone that distill a Qwen3-32B LLM judge into small, fast reward models. Swapping the 32B judge for this ~400M-parameter stack cuts GRPO judge compute by ~80% (240 → 48 GPU-hours) while retaining ~99% of in-domain accuracy.

Model Overview

Property Value
Model Type ModernBertForSequenceClassification (sequence classification)
Base Model answerdotai/ModernBERT-large (~400M params)
Training LoRA (r=64, α=128), merged into the base before release
Labels 2-way: no / yes
Distilled from Qwen/Qwen3-32B judge labels
Dataset / config dipta007/decomposeRL-tiny-judge · answer_correctness
Train split train_balanced (class-balanced); selected on macro-F1
Language English

What it judges

Provides the answer correctness sub-signal (R_corr) of the joint multiplicative quality reward. For honest abstentions ("I don't know") this factor is dropped so the question is scored on answerability and atomicity alone.

Input format

Evidence document + sub-question + the policy's answer:

Document: {document}
Question: {question}
Answer: {answer}

Label space

Label Name Meaning
0 no the answer contradicts the document or adds information not grounded in it
1 yes the answer is faithful to the document

Quickstart

import torch
from transformers import AutoModelForSequenceClassification, AutoTokenizer

repo = "dipta007/answer-judge-balanced"
tokenizer = AutoTokenizer.from_pretrained(repo)
model = AutoModelForSequenceClassification.from_pretrained(repo).eval()

text = (
    'Document: ## Managerial career\\n'
    'He brought along Rube Foster and a number of American black players, but the team lost five of its first six games, and White and most of his players were released...\\n'
    'Question: How many of its first six games did the team lose?\\n'
    'Answer: The team won five of its first six games.'
)

inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=8192)
with torch.no_grad():
    logits = model(**inputs).logits
pred = int(logits.argmax(-1))
print(pred, model.config.id2label[pred])
# expected: 0 -> no

Training Data

Trained on the answer_correctness config of dipta007/decomposeRL-tiny-judge, whose labels are distilled from Qwen3-32B judge calls made during DecomposeRL reward computation. The model is fine-tuned with LoRA on the class-balanced train_balanced split, validated on the natural validation split, and the best checkpoint is chosen by macro-F1. LoRA adapters are merged into the backbone before release, so the model loads with a plain from_pretrained (no PEFT required).

Role in DecomposeRL

DecomposeRL trains a claim-verification policy with GRPO over a seven-reward ensemble. Five of those rewards are scored by an LLM judge, which dominates training-time GPU cost. The tiny-judge stack replaces that 32B judge with eight small distilled heads so reward scoring runs on the same single GPU as training. See the paper (tiny-judge ablation) and the DecomposeRL-7B model for the full reward design.

Intended Use

  • In-scope: serving as a fast reward / scoring model inside the DecomposeRL training loop, or as a standalone classifier for the specific judgment above on claim-decomposition traces.
  • Out-of-scope: general-purpose fact-checking, use on inputs that do not follow the input format above, or as a standalone end-to-end claim verifier (use DecomposeRL-7B for that).

Citation

@article{dipta2025decomposerl,
  title={DecomposeRL: Learning to Ask Useful, Informative, and Diverse Questions for Semi-Supervised, Traceable Claim Verification},
  author={Shubhashis Roy Dipta and Ankur Padia and Francis Ferraro},
  year={2025},
  eprint={2605.27858},
  archivePrefix={arXiv},
  primaryClass={cs.CL},
  url={https://arxiv.org/abs/2605.27858v1},
}

License

Released under the Apache 2.0 License.

Downloads last month
81
Safetensors
Model size
0.4B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for dipta007/answer-judge-balanced

Finetuned
(297)
this model

Dataset used to train dipta007/answer-judge-balanced

Collection including dipta007/answer-judge-balanced

Paper for dipta007/answer-judge-balanced