VeritasBench is a production-grade LLM evaluation framework designed for rigorous behavioral benchmarking, human-LLM agreement analysis, and extensible multi-tier evaluations. Built to eliminate the silent score inflation found in legacy benchmarks, VeritasBench enforces a strict, versioned metadata schema to ensure true generative evaluation rather than proxy heuristics.
graph TD
A[Benchmark Prompts <br> v2.1 Easy & Hard] --> B(Pipeline Runner)
C[Hugging Face Router <br> Inference API] --> B
B --> D{Evaluation Dimensions}
D -->|Instruction Following| E[LLM Judge / Heuristics]
D -->|Factuality| E
D -->|Format Adherence| E
D -->|Refusal Calibration| E
D -->|Verbosity| E
E --> F[Raw Scores JSON]
F --> G(Aggregator)
G --> H[Aggregated Scores JSON]
F --> I[Streamlit Dashboard]
H --> I
F --> J[Human-vs-Judge Study]
- Strict Schema Enforcement: Completely eliminates silent fallback heuristics. If a prompt lacks required evaluation metadata, it correctly registers as an evaluation failure, preventing artificial score saturation.
- Multi-Tier Difficulty: Evaluates models across both
EasyandHardprompt tiers to measure true reasoning over simple recall. - LLM-as-a-Judge API: Robust evaluations via configurable external models (default:
Qwen/Qwen3-32B). - Human-vs-Judge Agreement Study: Built-in CLI evaluation and
scikit-learnintegration to statistically validate the LLM Judge against human intuition using Cohen's Kappa. - Production Dashboard: A comprehensive Streamlit dashboard visualizing performance radars, cost analytics, and failure tag distributions.
VeritasBench measures models across 5 core behavioral dimensions:
- Instruction Following: Complex multi-step constraints.
- Factuality: Semantic accuracy and temporal reasoning.
- Format Adherence: Exact structural generation (JSON, XML, Markdown).
- Refusal Calibration: Distinction between malicious intent and benign educational requests.
- Verbosity: Exact token/word length constraints.
For a deeper dive into the JSON schema, see docs/benchmark_design.md.
The included Streamlit dashboard provides deep drill-downs into model performance.
Model Comparison across 5 Evaluation Dimensions
Performance Comparison: Easy vs Hard Tier
VeritasBench doesn't just trust automated LLM Judges blindly. It includes a rigorous validation pipeline that samples generations and computes inter-rater agreement (Cohen's Kappa).
| Dimension | Cohen's Kappa | Raw Agreement |
|---|---|---|
| Overall | 0.573 | 80.0% |
| Instruction Following | 1.000 | 100% |
| Verbosity | 0.286 | 60% |
| Refusal Calibration | 0.000* | 100% |
| Factuality | 0.000* | 60% |
| Format Adherence | 0.000* | 80% |
*Kappa = 0.0 despite high raw agreement indicates zero variance in human labels for this dimension (known Kappa paradox — all raters agreed, causing denominator collapse). Raw agreement is the more meaningful metric in these cases.
Overall Kappa of 0.573 indicates moderate-to-substantial agreement between human and LLM judge, consistent with published findings in LLM-as-judge literature (Zheng et al., 2023 — MT-Bench reports similar variance across subjective vs objective dimensions).
Key finding: Agreement is highest on objective dimensions (instruction_following: κ=1.0) and lowest on subjective ones (verbosity: κ=0.286), confirming that automated evaluation is most reliable where human judgment is also most consistent.
Agreement Heatmap by Dimension
Read the full methodology in docs/human_judge_validation.md.
- Install Dependencies:
pip install -r requirements.txt
pip install "kaleido>=1.0.0" # Required for automated asset generation- Configure Environment:
Create a
.envfile and set your Hugging Face API Token (must have Inference permissions):
HF_TOKEN=your_token_here- Run the Pipeline:
python -m pipeline.runner --force-rerun
python -m pipeline.aggregator- Launch Dashboard:
streamlit run dashboard/app.pybenchmark/: Prompt datasets and versioned schemas.configs/: YAML configurations for models and pipeline parameters.dashboard/: Streamlit application and visualization logic.dimensions/: Core Python evaluators for the 5 benchmark criteria.docs/: Technical documentation and methodology.judge/: Human CLI evaluator and statistical agreement computation.pipeline/: High-throughput, caching evaluation runner.
- Integration of vLLM for ultra-fast local inference.
- Multi-annotator Inter-Rater Agreement (IAA) support.
- Expansion of the
Refusal Calibrationtier for domain-specific security compliance.
| Model | Overall Score | Easy Tier | Hard Tier |
|---|---|---|---|
qwen/qwen3-32b |
56.59% | 59.17% | 54.00% |
llama-3.1-8b-instant |
73.45% | 74.91% | 72.00% |


