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.0a18

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.0a18
File Size Uploaded
cognifity_verdict_inspect-0.1.0a18.tar.gz 24.3 kB Details

Built distribution (wheel)

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

Total release size: 51.3 kB

Release files / cognifity_verdict_inspect-0.1.0a18.tar.gz

Download URL cognifity_verdict_inspect-0.1.0a18.tar.gz
Size 24.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4f6b888e1ba648d315105ddd0e23a30aeb0f04223be28a10abf954f8bd130c0c
BLAKE2b-256 checksum
How to use checksums
69d13d91658706e1c2a2360c73b620df7b5444083b47b9dc813dc9532a3a3eeb
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 14, 2026.

Transparency log

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

Download URL cognifity_verdict_inspect-0.1.0a18-py3-none-any.whl
Size 27.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c11805921d7525b1b1e9c8d08a93b4a3a1de0f50f12176552d52e2114823f190
BLAKE2b-256 checksum
How to use checksums
0d7fda9ef323a2166d35231cb372dab61f3b7b1ba79ec1895742ed28e310f998
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 14, 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