Document validators module with Check protocol, metric validators, constraint validators, composite validators, and factory functions.
1.5 KiB
1.5 KiB
Changelog
All notable changes to Veritext will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- Project scaffold with pyproject.toml and development tooling
- Core exception hierarchy (
VeritextErrorand subclasses) - Core types:
ValidationContext,CheckResult,ValidationResult - Word tokeniser with Unicode normalisation support
- Configuration module with pydantic-settings
- Structured logging with structlog
- Metrics module with
Metricprotocol,AggregateStats, andBatchResulttypes - BLEU metric implementation (BLEU-1 through BLEU-4 with brevity penalty)
- Lexical similarity metric (Jaccard similarity and token overlap)
- ROUGE metric (ROUGE-1, ROUGE-2, ROUGE-L with precision/recall/F-measure)
- Flesch-Kincaid readability metrics (grade level and reading ease)
- Batch scoring with aggregate statistics for all metrics
- Validators module with
Checkprotocol for validation checks - Metric-based validators:
BleuValidator,RougeValidator,LexicalValidator - Constraint validators:
LengthValidator,ReadabilityValidator,ContainsValidator,ExcludesValidator - Composite validators:
AllOf(all checks must pass),AnyOf(any check must pass) - Factory functions for clean validator API (
bleu(),rouge(),lexical(),length(),readability(),contains(),excludes(),all_of(),any_of())