Overview
Petri is an alignment-auditing agent for language models. You give it seed instructions describing a behaviour you are worried about — sycophancy, reward hacking, deception — and it generates realistic audit scenarios, runs multi-turn conversations against the model under test, simulates tools and rollbacks so the model can actually act, and then scores the resulting transcripts against a consistent rubric.
Three model roles do the work, and they are configured separately: the **auditor** designs and drives the audit, the **target** is the model being evaluated, and the **judge** scores the transcript across behavioural dimensions. Splitting the auditor from the target means the target can be swapped — or wrapped in its own agent scaffold — without rewriting the audit logic.
Petri began as work by the Alignment team at Anthropic and is now developed by the nonprofit Meridian Labs, in collaboration with the UK AISI Red Team. It is built on Inspect AI and follows standard Inspect conventions, so `inspect eval` and `inspect view` work exactly as they do for any other Inspect task, and it sits alongside Inspect Scout and Inspect Flow in Meridian's stack.
What it does
- Generates realistic multi-turn audit scenarios from short seed instructions, including tagged sets such as `tags:sycophancy`
- Separate auditor, target and judge model roles, each pointed at a different provider or model
- Simulated tools and rollbacks, so the audit tests what a model does and not only what it says
- Judge scoring against a consistent rubric across behavioural dimensions
- Built on Inspect AI — the same `inspect eval` / `inspect view` commands, flags and transcript viewer
- Bloom uses Petri as its execution backbone, pairing Petri's broad exploration with Bloom's graded single-behaviour assessments
Getting started
Petri installs as an Inspect AI extension and is driven with the standard `inspect eval` command. You need API keys for whichever providers back the auditor, target and judge roles.
Install Petri
From PyPI, or straight from the repository if you want the development version.
pip install inspect-petri
# or from the repository
pip install git+https://github.com/meridianlabs-ai/inspect_petriSet your provider keys
Export them in the shell or put them in a .env file.
export ANTHROPIC_API_KEY=...
export OPENAI_API_KEY=...Run an audit
Choose a seed-instruction set and assign a model to each of the three roles.
inspect eval inspect_petri/audit \
-T seed_instructions=tags:sycophancy \
--model-role auditor=anthropic/claude-sonnet-4-6 \
--model-role target=openai/gpt-5-mini \
--model-role judge=anthropic/claude-opus-4-6Read the transcripts
Petri follows Inspect conventions, so the usual viewer opens the audit logs for inspection.
inspect viewCommands and code are distilled from the project's own documentation — always check the official repo for the latest.
When to use it
- Probe a model you are about to deploy for sycophancy, deception or reward hacking before it reaches users
- Re-run the same audit across model versions to see whether a behaviour got better or worse
- Audit a model inside its real agent scaffold, with its actual system prompt and tool definitions
- Pair broad exploratory audits with Bloom's deeper graded assessment of a single behaviour
How Petri compares
Petri alongside other open-source evaluation & red-teaming tools AI/TLDR tracks, ranked by GitHub stars.
| Tool | Stars | What it does |
|---|---|---|
| Strix | ★ 61.6k | Strix runs autonomous AI agents that act like hackers, dynamically running your code to find vulnerabilities and validate them with real proof-of-concepts. |
| promptfoo | ★ 25k | A developer-first CLI and library for testing and comparing prompts and models, with red-teaming probes for prompt injection, PII leaks, and other vulnerabilities. |
| OpenAI Evals | ★ 19.4k | A framework and open registry for building and running evaluations of LLMs and LLM-based systems, including prompt chains and tool-using agents. |
| DeepEval | ★ 18.2k | An open-source Python framework that tests LLM apps like unit tests, with 50+ metrics for RAG, agents, chatbots, and safety, and a Pytest integration for CI/CD. |
| Ragas | ★ 15.7k | An evaluation toolkit focused on retrieval-augmented generation that scores answer faithfulness, context precision/recall, and relevancy, often without needing ground-truth labels. |
| Arize Phoenix | ★ 11.4k | An open-source observability and evaluation tool for tracing LLM and agent behavior, running evals on traces, and troubleshooting issues in development and production. |
| garak | ★ 9.2k | An LLM vulnerability scanner from NVIDIA with 100+ attack probes that test models for prompt injection, data leakage, jailbreaks, and other security weaknesses. |
| Petri | ★ 1.3k | An auditing agent that probes a model for alignment problems |