Skip to main content

Automated quality assurance for AI applications

Project description

pixie-qa

An agent skill that makes coding agents the QA engineer for LLM applications.

What the Skill Does

The qa-eval skill guides your coding agent through the full eval-based QA loop for LLM applications:

  1. Understand the code — read the codebase, trace the data flow, learn what the code is supposed to do
  2. Instrument it — use wrap() for data-object tracing and OpenInference auto-instrumentation for LLM span capture
  3. Build a dataset — create JSON datasets of representative inputs and expected outputs
  4. Write eval tests — generate test_*.py files with appropriate evaluators
  5. Run the testspixie test to run all evals and report per-case scores
  6. Analyse resultspixie analyze <test_id> to get LLM-generated analysis of test results
  7. Investigate failures — diagnose failures, fix, repeat

Getting Started

1. Add the skill to your coding agent

npx skills add yiouli/pixie-qa

The accompanying python package would be installed by the skill automatically when it's used.

2. Ask coding agent to set up evals

Open a conversation and say something like when developing a python based AI project:

"setup QA for my agent"

Your coding agent will read your code, instrument it, build a dataset from a few real runs, write and run eval-based tests, investigate failures and fix.

Python Package

The pixie-qa Python package (imported as pixie) is what Claude installs and uses inside your project. API docs are auto-generated by pdoc3 into docs/pixie/index.md via pre-commit. The markdown renderer uses scripts/pdoc_templates/text.mako so async functions and methods are explicitly shown as async def in signatures.

Install hooks once per clone:

uv run pre-commit install

Web UI

View all eval artifacts (results, markdown docs, datasets, and legacy scorecards) in a live-updating local web UI:

pixie start              # initializes pixie_qa/ (if needed) and opens http://localhost:7118
pixie start my_dir       # use a custom artifact root
pixie init               # scaffolds pixie_qa/ without starting the server

The web UI provides tabbed navigation for results, scorecards (legacy), datasets, and markdown files. Changes to artifacts are pushed to the browser in real time via SSE.

The server writes a server.lock file to the artifact root directory on startup (containing the port number) and removes it on shutdown, allowing other processes to discover whether the server is already running.

Configuration

Pixie reads configuration from environment variables and a local .env file through a single central config layer. Existing process env vars win over .env values.

Useful settings include:

  • PIXIE_ROOT to move all generated artefacts under a different root directory
  • PIXIE_RATE_LIMIT_ENABLED=true to enable evaluator throttling for pixie test
  • PIXIE_RATE_LIMIT_RPS, PIXIE_RATE_LIMIT_RPM, PIXIE_RATE_LIMIT_TPS, and PIXIE_RATE_LIMIT_TPM to tune request and token throughput for LLM-as-judge evaluators

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

pixie_qa-0.5.1.tar.gz (315.3 kB view details)

Uploaded Source

Built Distribution

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

pixie_qa-0.5.1-py3-none-any.whl (328.0 kB view details)

Uploaded Python 3

File details

Details for the file pixie_qa-0.5.1.tar.gz.

File metadata

  • Download URL: pixie_qa-0.5.1.tar.gz
  • Upload date:
  • Size: 315.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pixie_qa-0.5.1.tar.gz
Algorithm Hash digest
SHA256 2df3b8f0cf50588601eaaa20c366733069477580e74f683c4f89470ff9f1334e
MD5 d514087f4c824cc3c15c1ce7483b71c9
BLAKE2b-256 1f17b201c147f346a96b540ebe431e91f9f52adc96036f8796e7deb7e9b31669

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixie_qa-0.5.1.tar.gz:

Publisher: publish.yml on yiouli/pixie-qa

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

File details

Details for the file pixie_qa-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: pixie_qa-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 328.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pixie_qa-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 929f3de1077cedc20e30082ee5723cfa243785463d4b840efaacf67f8a0159d2
MD5 2fb5264a68e956f15ed38b8055fb8f6a
BLAKE2b-256 cfb06a5b13641be9117f432099eda4442befb6e33fe8e8d3682a5727032620b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pixie_qa-0.5.1-py3-none-any.whl:

Publisher: publish.yml on yiouli/pixie-qa

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