Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Verdict Inspect

PyPI distribution: cognifity-verdict-inspect. Command: verdict-inspect.

One-shot drift analysis on a chat export. Drop in a conversations.json from ChatGPT, a Claude.ai export, a supported agent-session JSONL file, or an OpenAI-format messages dump, and get back a local drift / quality report.

Why this exists

Continuous LLM observability (the SDK + monitoring path) is the right answer for production agent traffic. But before a team commits to instrumenting their stack, they want to know: does Verdict actually find anything interesting in my data?

verdict-inspect runs against a file the user already has on their laptop. Structural and embedding analysis stay local; the optional judge has a separate privacy boundary described below.

Usage

In a full Verdict installation, the same one-off workflow is available under Evaluate → Inspect JSON. Paste JSON or choose a file, run the analysis, and download the result as JSON. The dashboard accepts at most 4 MiB per request, runs analysis on the Verdict host, does not write the upload or report to the Verdict store, and keeps semantic analysis and the external judge off until selected. Enabling the judge also requires an explicit data-egress confirmation.

The command-line interface remains available for larger local exports and Markdown reports:

# Auto-detect format
verdict-inspect analyze ~/Downloads/conversations.json

# Force a format
verdict-inspect analyze --format chatgpt ~/Downloads/conversations.json

# Specify report output
verdict-inspect analyze --report ./drift_report.md ~/Downloads/chatlog.jsonl

# JSON output for piping
verdict-inspect analyze --json ~/Downloads/conversations.json | jq .

Supported formats (v0)

  • ChatGPT data export — the conversations.json from Settings → Data Controls → Export
  • Claude.ai data export — the conversations.json from Settings → Account → Export
  • Generic OpenAI messages JSONL — one JSON object per line, each with messages: [{role, content}]
  • Agent-session JSONL — type-tagged local agent session logs
  • Auto-detect — looks at file structure and picks a parser

Planned (v1): Cursor .cursor/chats/, Gemini Takeout, LangChain message history files, Llama Index conversation logs.

What you get back

For a file with enough substantive assistant turns:

  1. Semantic drift — embedding-distribution shifts across temporal windows
  2. Judge sample — PASS/FAIL by dimension on stride-sampled turns (requires ANTHROPIC_API_KEY)
  3. Structural metrics — response length, hedge density, refusal rate, apology rate per window

Semantic drift runs key-free. By default it tries sentence-transformers/all-MiniLM-L6-v2, then falls back to the built-in HashingEmbedder if the dependency/model is unavailable. That fallback detects lexical embedding-distribution changes; it is not a semantic model, and the report labels it explicitly. Install the local semantic embedder with pip install "cognifity-verdict-eval[semantic]".

Triggered and non-triggered semantic rows use the same L2-normalized detector statistics. Each comparison embeds its current and baseline windows once; the report does not re-embed or independently recompute non-triggered rows.

Turns with fewer than 10 assistant-response words are excluded from windowed analysis. At least 16 substantive turns are required for a two-window comparison; 24 create the default early/middle/late split. Each window's judge sample is capped at 25 turns. Treat small-window output as exploratory rather than calibrated production evidence. Chat exports do not contain retrieved context, so the default context-required groundedness dimension is shown as n/a and is not sent to the judge.

Privacy

Structural metrics and embedding inference run on your machine. The first MiniLM run may download model weights, but it does not upload the analyzed conversation. If ANTHROPIC_API_KEY is set and the judge is enabled, verdict-inspect sends stride-sampled user and assistant text (up to 4,000 characters each) to the configured Anthropic model. Anthropic credentials and data-handling terms apply. Pass --no-judge or omit the key to keep conversation content local and receive structural plus embedding analysis only. The v0 inspect judge is Anthropic-only.

Release files for cognifity-verdict-inspect 0.1.0a21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cognifity-verdict-inspect 0.1.0a21
File Size Uploaded
cognifity_verdict_inspect-0.1.0a21.tar.gz 24.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cognifity-verdict-inspect 0.1.0a21
File Interpreter ABI Platform
cognifity_verdict_inspect-0.1.0a21-py3-none-any.whl Python 3 none any Details

Total release size: 51.3 kB

Release files / cognifity_verdict_inspect-0.1.0a21.tar.gz

Download URL cognifity_verdict_inspect-0.1.0a21.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
81d0eb303a5e3346519436d2091fb06488f3e5db7b7219996e7391440ca6aeb5
BLAKE2b-256 checksum
How to use checksums
a93119b6153f321e8952047edb044b7a66b2c17c11361ddce64a9ec06ef4b441
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / cognifity_verdict_inspect-0.1.0a21-py3-none-any.whl

Download URL cognifity_verdict_inspect-0.1.0a21-py3-none-any.whl
Size 27.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7d43df3a11436e2e909ff29efdf3ec4d6b00b8c46fbfbb7209105175d0d582e7
BLAKE2b-256 checksum
How to use checksums
a38be8d20b2ea6bf52a7bf8f91204803dcba546e80394932598f9cf06687a7f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page