Repository navigation
Idea: EvalPort JSON (LLM eval result sets) as a GX-validatable batch #12100
adhabnr-ux
started this conversation in
Integrations
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hi GX team — this is a lightweight integration idea, not a feature request, so posting under Integrations rather than opening an RFC.
EvalPort (https://github.com/adhabnr-ux/evalport) is an open spec + JSON Schema for portable LLM-eval artifacts: test suites, test cases, and result sets — basically "a batch of eval-run rows, one per test case, with a score/pass field." That's data GX already knows how to eat — a flat-ish list of typed rows — it just happens to come from an LLM eval run instead of a database table.
I looked at
great_expectations/core/expectation_suite.py(ExpectationSuite—name,expectations,suite_parameters,meta) and the checkpoint/validator flow, and the fit isn't a new Expectation type — it's just documenting a recipe: load an EvalPortResultSetJSON (an array of{test_case_id, score, passed, ...}rows, validated against the schemas at https://github.com/adhabnr-ux/evalport/tree/main/spec/schemas) as a pandas/JSON batch, then gate CI with existing GX primitives, e.g.:i.e. regression-gate an eval run's per-case or aggregate scores the same way you'd gate a data-quality check, with zero changes to GX core.
Happy to write this up as a short example/notebook if there's any interest — otherwise feel free to ignore, just wanted to float it since the fit looked natural from the code. Spec: https://github.com/adhabnr-ux/evalport/blob/main/SPEC.md
All reactions