Skip to main content

AI evals framework for data & analytics engineering teams.

Project description

evaldata

CI Coverage License: Apache 2.0

The evaluation framework for AI-generated SQL.

Evaluate AI-generated SQL in your warehouse and catch regressions when prompts, models, or code change.

Pytest-native. CI-friendly. Built for data teams.

Install

uv add evaldata                # core (includes the DuckDB adapter)
uv add "evaldata[postgres]"    # + Postgres adapter
uv add "evaldata[databricks]"  # + Databricks adapter
uv add "evaldata[litellm]"     # + litellm, to call a model as the AI under test

DuckDB, Postgres, and Databricks are the adapters available today. Snowflake and BigQuery are planned.

Examples

Runnable examples in examples/:

Example Shows
Deterministic Every expected-type and scorer with fixed SQL — no model or network
Local AI A self-hosted Ollama model as the AI under test, via litellm
Hosted AI Hosted-model plumbing, mocked so it runs without a live call or key

See examples/README.md for details.

Develop locally

git clone https://github.com/monospaceai/evaldata.git
cd evaldata
uv sync                       # core + dev tooling
uv run pre-commit install
just check                    # lint + typecheck + tests with coverage (runs everything)

just check runs lint, typecheck, and tests with coverage (held at 100%). See the justfile for the full set of commands.

Platform e2e tests

Adapter conformance for real platforms is marked e2e. CI provisions Postgres as a service container and runs the suite on every push, so the Postgres adapter is exercised against a real engine on every change.

Run it locally against Postgres with:

docker compose up -d                  # postgres:17 on localhost:5432
uv run --extra postgres pytest -m e2e # connection via POSTGRES_TEST_* env (defaults match compose)

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

evaldata-0.1.0.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

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

evaldata-0.1.0-py3-none-any.whl (59.8 kB view details)

Uploaded Python 3

File details

Details for the file evaldata-0.1.0.tar.gz.

File metadata

  • Download URL: evaldata-0.1.0.tar.gz
  • Upload date:
  • Size: 45.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for evaldata-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a6670b3033de9d89893dbde8855eba754af91cfbc13f546a14ca07e92c153b7f
MD5 5275ce4da17d9548779f22321f3523a4
BLAKE2b-256 334beffc3738546bfcdcd6e2899ef607a781317a71b16d98876ecd50657991a4

See more details on using hashes here.

File details

Details for the file evaldata-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: evaldata-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 59.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for evaldata-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bc19492bd7444ae122817ed5b5e480660915ddde85b1a8cc5ada427f94ff7d7e
MD5 cccd89054f2e983663d864d6d091673a
BLAKE2b-256 ec4f1d10c4c2541231f6a04ec1b5388e103f4ccb4b8545f94f2239bc16a6b21f

See more details on using hashes here.

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