Skip to main content

Automatically generate evals for every AI change

Project description

Parity

PyPI License: MIT Python 3.11+

Parity analyzes behavior-defining AI changes in pull requests, discovers the most relevant existing eval target, validates the real coverage gaps, and proposes native eval additions that fit the target suite.

Parity is not an eval runner. It does not create or mutate hosted evaluator infrastructure. It reuses the eval system you already have.

What Parity Does

For each PR that changes prompts, instructions, guardrails, judges, validators, or similar behavior-defining assets, Parity:

  1. Detects the behavioral change.
  2. Resolves the best matching eval target and method.
  3. Validates which gaps are actually uncovered.
  4. Synthesizes native eval additions for that target.
  5. Writes only native_ready evals after explicit approval.

Support

Path Status Notes
Promptfoo Strong Best fully native path. Assertions are row-local and writeback is straightforward.
LangSmith Strong Strong dataset discovery and writeback. Evaluator reuse is supported; evaluator mutation is out of scope.
Braintrust Supported with limitations Writeback works. Target discovery is weaker and evaluator recovery depends more on repo assets.
Arize Phoenix Supported with limitations Dataset read/write works. Evaluator discovery is weaker than Promptfoo and LangSmith.
Bootstrap mode Built in If no safe target is found, Parity proposes starter evals and abstains from unsafe writeback.

More detail: docs/platforms.md

Public Commands

These are the commands most users need:

  • parity init
  • parity doctor
  • parity run-stage 1
  • parity run-stage 2
  • parity run-stage 3
  • parity write-evals

Parity also ships lower-level operational commands for GitHub comments, run lookup, embeddings, and similarity, but those are advanced surfaces rather than the main product path.

Quick Start

pip install parity-ai
parity init

Then:

  1. Fill in the generated context/ files.
  2. Add GitHub secrets: ANTHROPIC_API_KEY, OPENAI_API_KEY, and any platform keys you use.
  3. Commit parity.yaml, .github/workflows/parity.yml, and context/.
  4. Open a PR that changes AI behavior.
  5. Add the fixed approval label parity:approve before merging if you want Parity to write approved evals back after merge.

Docs

License

MIT

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

parity_ai-0.1.13.tar.gz (96.1 kB view details)

Uploaded Source

Built Distribution

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

parity_ai-0.1.13-py3-none-any.whl (117.9 kB view details)

Uploaded Python 3

File details

Details for the file parity_ai-0.1.13.tar.gz.

File metadata

  • Download URL: parity_ai-0.1.13.tar.gz
  • Upload date:
  • Size: 96.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for parity_ai-0.1.13.tar.gz
Algorithm Hash digest
SHA256 23309d6ca6fe215c725fbe0c756295fb18c44ea70a82edacbb9130c1c150d6a8
MD5 4a7787ad4bc4d2e1bf4a7f9f06f07d1e
BLAKE2b-256 9ad91544877c7ababcc64476dcd770be61026fecc232c0f4376fac4246d9e001

See more details on using hashes here.

File details

Details for the file parity_ai-0.1.13-py3-none-any.whl.

File metadata

  • Download URL: parity_ai-0.1.13-py3-none-any.whl
  • Upload date:
  • Size: 117.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for parity_ai-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 807dcbbde888bc52e10535bf3424bb2b5af3e28a07d2f13457c61c24407f5f07
MD5 3523e93d25f5b939e566686a967798b7
BLAKE2b-256 73ec6bdbbb9dcbf7e4526ffc6d0818dd4bd5881f15424e7875d99679c0e9badb

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