Observed since 20 Oct, 17:25 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Eval harness with golden management for the ABI ecosystem
Evaluation harness with failure taxonomy, regression store, and model canary for AI pipeline quality assurance. Works with any Python project — no ABI dependencies required in production.
Zero production dependencies.
pip install abi-evals
Status: Not yet published to PyPI. Install from source:
pip install -e .from the repo root.
from abi_evals.failure_taxonomy import FailureTaxonomy
# Load a taxonomy from YAML or JSON, or build one programmatically
taxonomy = FailureTaxonomy.from_yaml("failure_types.yaml")
# Classify an error by matching detection probes against error text
matches = taxonomy.classify("Output exceeded token budget")
for failure_type in matches:
print(failure_type.failure_id) # e.g., "FT-BUDGET-001"
print(failure_type.category) # e.g., "budget"
print(failure_type.severity) # e.g., "high"
from abi_evals.model_canary import ModelCanary
# Compare a new model version against a baseline
canary = ModelCanary(
eval_suite_path="evals/suite.json",
baseline_results_path="evals/baseline_results.json",
)
result = canary.run_canary(new_model_config={"run_id": "canary_test"})
print(result.verdict) # "PASS" | "WARN" | "FAIL"
print(result.regression_count) # number of regressions detected
print(result.success_rate_delta)
from pathlib import Path
from abi_evals.runner import load_eval_suite, run_suite
suite = load_eval_suite(Path("evals/my_suite.json"))
results = run_suite(suite)
abi-evals works with any Python project. Point it at your eval suites and failure logs — no ABI ecosystem integration needed.
Within the ABI ecosystem, it integrates with abi-control-core schemas for eval case and result validation.
Related packages:
Follows Semantic Versioning. Current version: 0.1.2. See CHANGELOG.md for release notes.
MIT License (see LICENSE file).
pypistats · 46 observations shown. Missing days are unknown. Source category: overall: without mirrors.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-17 – 2026-10-17 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-15 – 2026-10-15 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-13 – 2026-10-13 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-09 – 2026-10-09 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-08 – 2026-10-08 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-07 – 2026-10-07 | 5 | 2026-10-20T21:39:48.1169172Z |
| 2026-10-06 – 2026-10-06 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-30 – 2026-09-30 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-29 – 2026-09-29 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-28 – 2026-09-28 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-27 – 2026-09-27 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-26 – 2026-09-26 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-25 – 2026-09-25 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-24 – 2026-09-24 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-18 – 2026-09-18 | 3 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-16 – 2026-09-16 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-14 – 2026-09-14 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-12 – 2026-09-12 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-10 – 2026-09-10 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-09 – 2026-09-09 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-07 – 2026-09-07 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-06 – 2026-09-06 | 3 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-03 – 2026-09-03 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-09-01 – 2026-09-01 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-31 – 2026-08-31 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-25 – 2026-08-25 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-24 – 2026-08-24 | 9 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-23 – 2026-08-23 | 3 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-20 – 2026-08-20 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-18 – 2026-08-18 | 24 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-17 – 2026-08-17 | 5 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-15 – 2026-08-15 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-14 – 2026-08-14 | 4 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-13 – 2026-08-13 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-09 – 2026-08-09 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-07 – 2026-08-07 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-06 – 2026-08-06 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-04 – 2026-08-04 | 3 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-03 – 2026-08-03 | 4 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-02 – 2026-08-02 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-08-01 – 2026-08-01 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-07-29 – 2026-07-29 | 15 | 2026-10-20T21:39:48.1169172Z |
| 2026-07-27 – 2026-07-27 | 1 | 2026-10-20T21:39:48.1169172Z |
| 2026-07-23 – 2026-07-23 | 2 | 2026-10-20T21:39:48.1169172Z |
| 2026-07-21 – 2026-07-21 | 4 | 2026-10-20T21:39:48.1169172Z |
| 2026-07-20 – 2026-07-20 | 1 | 2026-10-20T21:39:48.1169172Z |
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.2 | 14 Mar 2026 | 2 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 17:25 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:24cf500a71239e2f454dbedd8839d97afe13f3f867a7b376eb155fe4676bf54b