Skip to main content

Eval harness with golden management for the ABI ecosystem

Project description

abi-evals

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.

Install (after PyPI publication)

pip install abi-evals

Status: Not yet published to PyPI. Install from source: pip install -e . from the repo root.

Quick start

Failure taxonomy

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"

Model canary

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)

Eval runner (function-based API)

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)

What's included

  • Failure taxonomy -- structured failure classification for clear diagnostics
  • Failure distiller -- converts classified failures into regression eval cases
  • Regression store -- manages storage and deduplication of regression cases
  • Model canary -- validates model version changes against baselines before acceptance
  • Eval runner -- deterministic eval suites with pluggable comparators
  • CI-friendly -- exit codes and JSON output for gating in any CI pipeline

Use it standalone

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.

ABI ecosystem

Related packages:

Versioning

Follows Semantic Versioning. Current version: 0.1.2. See CHANGELOG.md for release notes.

License

MIT License (see LICENSE file).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abi_evals-0.1.2.tar.gz (98.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

abi_evals-0.1.2-py3-none-any.whl (31.6 kB view details)

Uploaded Python 3

File details

Details for the file abi_evals-0.1.2.tar.gz.

File metadata

  • Download URL: abi_evals-0.1.2.tar.gz
  • Upload date:
  • Size: 98.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for abi_evals-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d5705d309f3fce2a3636452ec7e3c474fe5701385fd99b9b0345a71750eb5ce9
MD5 bd706c7879579fa53db16a8b0e86b39a
BLAKE2b-256 65b1d1323cfa41d75f10f3f48c9697f1053d58823a560744b77efa49adc433be

See more details on using hashes here.

Provenance

The following attestation bundles were made for abi_evals-0.1.2.tar.gz:

Publisher: publish.yml on AbilityBI/abi-evals

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file abi_evals-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: abi_evals-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 31.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for abi_evals-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 709e646d32dc9dd877e46d0283b6bed3b7abcff03b917f1e3c967d5da87b8e76
MD5 1cf9da3fc3cea7e0b00864c45def3b9e
BLAKE2b-256 da7b0e6860ac9eb428d0aec1eca20663d827e24c0bcd63919821e6bb5556d872

See more details on using hashes here.

Provenance

The following attestation bundles were made for abi_evals-0.1.2-py3-none-any.whl:

Publisher: publish.yml on AbilityBI/abi-evals

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page