← Back to the neural search Browser Lab

Runs locally in your browser

Validate your TREC run before you trust the metrics.

Drop a qrels file and a run file. The exact neural-ecommerce-search v0.3.1 release wheel runs in your browser through Pyodide and reports structural integrity, coverage, and advisory-rank issues — the same checks as the necs-validate CLI. Your files never leave your machine.

Client-side Python No uploads, no server Exact v0.3.1 wheel Pyodide + micropip

Validate a run

Two files in, one honest report out.

Booting the validator…
Starting the in-browser Python engine…
  1. Download the Pyodide runtime from jsDelivr (~10 MB, cached after first visit)
  2. Start Python and load micropip
  3. Install the exact v0.3.1 necs-validate release wheel

First boot takes roughly 5–10 seconds. Everything below runs on your device; no qrels, run, or report is ever uploaded.

Qrels file Relevance judgements query_id iteration document_id relevance
Drag & drop or click to browse
Run file Ranked results query_id Q0 document_id rank score run_tag
Drag & drop or click to browse
Strict contracts
No files handy? Try:
Waiting for the validator to finish loading…

Validation report

Your report will appear here.

Load two files (or an example) and press Validate.

01
Drop

Your qrels and run files are read into memory in the page. Nothing is uploaded.

02
Run the wheel

Pyodide calls necs.validate.validate_files from the real v0.3.1 release.

03
Read the report

Pass, warn, or fail per issue — copyable as Markdown to share.

Evidence boundary

A real preflight, with a precise claim.

This page runs the byte-identical v0.3.1 release wheel (SHA-256 ffb2b2f4…) in your browser via Pyodide. It performs the same structural preflight as the necs-validate CLI: malformed rows, non-finite values, duplicate judgements or returned documents, query coverage, advisory-rank anomalies, unjudged documents, and optional # task: headers. It is not byte-for-byte NIST input certification, and a passing report does not establish dataset provenance, correct gains, model quality, or a sound experimental design. The CLI remains the canonical entry point; this is the same code, made click-to-run. No analytics, no tracking, no uploads.

Trust, but verify

Found a false positive?

If the validator flags something it should accept — or misses something it should catch — that is a bug worth a report. Compatibility evidence from real runs is welcome.