When humans lack knowledge, they admit it — "I'm not sure", "I don't know", "let me check." LLMs don't. They fill gaps with plausible-sounding assumptions and present them as facts. Verity-H researches whether a lightweight verification pipeline can enforce honest behavior: share what you know, flag what you don't, never silently guess.
The system lets an LLM answer a question, then verifies every claim against the provided evidence before the user sees it. Supported claims pass through. Unsupported claims get flagged. Contradictions get caught. The user sees what's verified vs. what's a guess — like talking to an honest colleague.
For the full architecture, research grounding, and design decisions, see DESIGN.md.
Quick Start
bash
1# Clone2git clone https://huggingface.co/Sravanth18/verity-h-prototype
3cd verity-h-prototype
45# Setup6python -m venv .venv &&source .venv/bin/activate
7pip install -e ".[test]"89# Run tests (mock mode, no API key needed)10pytest
The v0.4 baseline intentionally trades some detection for zero false positives and maintainable code.
#
Limitation
Why
Mitigation
1
Numeric contradictions not caught deterministically
Money/percentage/count/date conflicts have too many false positives (e.g., revenue target vs actual revenue).
Relies on verifier LLM. If LLM misses, contradiction is not flagged.
2
Semantic relevance not enforced
"How fast can the car go?" with only engine specs supported → accept. v0.3.2 had a 20-entry synonym-table guard but it was too rule-heavy for a baseline.
Acceptable for v0.4. Future: semantic similarity check (not synonym table).
3
100 cases = dev set only
The deterministic rules were tuned against failures on this set. Results are directional, not publication-grade.
Create held-out 50-case test set for unbiased validation.
4
Inference detector is regex-based
Covers common hedges but cannot catch all inferential reasoning.
Grounded in CogniBench + GME + BioScope; handles most common cases.
5
Single evidence document
No multi-document consensus or evidence weighting.
Designed for single-pass evaluation.
Next Steps
Simplify to v0.4 baseline — status-pair contradictions only, no frame detector
Remove slot-mismatch guard (semantic relevance is known limitation)
209 tests pass, zero false contradictions
Run v0.4 eval on full 100-case development set
Test on multiple models (1B, 4B, 70B+) to prove model independence
Create held-out 50-case test set for unbiased evaluation