# Hallubench Eval

> Evaluates the ability of various detection methods to identify hallucinations in financial question-answering systems augmented with knowledge graphs. It probes robustness to noisy or contradictory KG triplets by comparing performance with and without structured evidence. Use when the user wants to benchmark on HalluBench, or asks about evaluating this task. Reports F1.

- Skill: `qhjqhj00/hallubench-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/hallubench-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/hallubench-eval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: qhjqhj00 (https://skillmd.com/u/qhjqhj00)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/qhjqhj00/hallubench-eval

---


# hallubench-eval

> FinReflectKG -- HalluBench: GraphRAG Hallucination Benchmark for Financial Question Answering Systems — Kumar et al. (2026) (arXiv:2603.20252, 2026)

## What this evaluates

Evaluates the ability of various detection methods to identify hallucinations in financial question-answering systems augmented with knowledge graphs. It probes robustness to noisy or contradictory KG triplets by comparing performance with and without structured evidence.

## Datasets

- **HalluBench** — total 755; splits: test (755)

## Metrics

- `F1` **(primary)** — range: [0, 1]
  - Harmonic mean of precision and recall. Optimized over thresholds [0.05, 0.95] in 0.05 increments to find the best operating point.
- `MCC` — range: [-1, 1]
  - Matthews Correlation Coefficient, measuring binary classification quality balanced even with class imbalance.
- `ROC-AUC` — range: [0, 1]
  - Area under the Receiver Operating Characteristic curve.
- `PR-AUC` — range: [0, 1]
  - Area under the Precision-Recall curve.

## Input / output format

**Input**: Question, reference answer/context, and optional knowledge graph triplets (structured evidence) linked to textual chunks.

**Output**: Continuous confidence score or probability of hallucination, thresholded to binary (hallucinated/grounded) for evaluation.

## Scoring recipe

```python
scores = model.predict(question, context, triplets)
thresholds = np.arange(0.05, 1.0, 0.05)
best_f1 = -1
best_thresh = 0.5
for t in thresholds:
    preds = (scores >= t).astype(int)
    f1 = f1_score(gold, preds)
    if f1 > best_f1:
        best_f1 = f1
        best_thresh = t
final_preds = (scores >= best_thresh).astype(int)
f1 = f1_score(gold, final_preds)
mcc = matthews_corrcoef(gold, final_preds)
roc_auc = roc_auc_score(gold, scores)
pr_auc = average_precision_score(gold, scores)
```

## Common pitfalls

- Optimizing thresholds separately for 'With Triplets' vs 'Without Triplets' can mask robustness; the paper fixes thresholds from the clean condition for robustness analysis.
- MCC is highly sensitive to true negative rates, so extreme prediction imbalance (e.g., 98% grounded) can cause large MCC drops even if F1 remains stable.
- LLM judges tend to anchor on structured KG signals over textual evidence, amplifying errors when triplets are noisy or temporally misaligned.

## Evidence (verbatim from paper)

> We report best performance across thresholds (0.05-0.95, 0.05 increments) for F1, MCC, ROC-AUC, and PR-AUC at individually optimized thresholds.

## Citation

```bibtex
@misc{kumar2026hallubench,
  title={FinReflectKG -- HalluBench: GraphRAG Hallucination Benchmark for Financial Question Answering Systems},
  author={Kumar et al. (2026)},
  year={2026},
  note={arXiv:2603.20252}
}
```

- arXiv: 2603.20252

