The frozen evaluation behind the Application Note.
This is not the current index. Every file here is pinned to the retrieval index as it stood on 8 September 2026: 27,797 ligands, 28,579 target sites, 127,414 ligand to accession pairs. That is the snapshot the paper reports and the only one its numbers reproduce against. The live index grows every Thursday and is larger. For the current index take the weekly bundle from the download page; to check a published number, use this directory.
The path carries the snapshot date and nothing in it is ever rewritten. A correction would be published as a new dated directory, so a citation of 2026-09-08 resolves to the same bytes forever. Short sha256 prefixes are shown below; MANIFEST.txt and manifest.json carry them in full.
| File | Size | What it is | sha256 |
|---|---|---|---|
| README.md | 7 KB | Start here. What this directory is, what is in it, and why it is not the current index. | b8bb8b211d03275a |
| MANUAL.md | 11 KB | The user manual: screening a molecule, running the index locally, and reproducing every number here. | cc4357ec4ab91bac |
| retrieval_index_2026-09-08.jsonl.gz | 30.9 MB | The frozen index itself: 27,797 ligands, one JSON record each, with the pharmacophore fingerprint. Gunzip and the sha256 matches manifest.json. | 4a6098e665c82364 |
| queries.json | 794 KB | The 3,000 benchmark queries, with the draw seed and the draw rule. | e2af87a623d51fc7 |
| ground_truth.json | 2.2 MB | The accessions each query is scored against. | 2df4542755a7fe36 |
| scaffold_groups.json | 707 KB | The 10,588 Bemis-Murcko generic scaffold groups behind the scaffold holdout. | 4f316a75a42ac8c2 |
| exclusion_and_scoring_rules.json | 1 KB | Both holdout rules, the index admission rule and the scoring definitions, as data. | 63e3fd78b020d527 |
| rs_contacts_2026-09-08.tsv | 668 KB | The contact verified pairing map: 58,227 component to accession rows over 27,704 components and 17,911 accessions. | d721081d9c3a7486 |
| pairing_audit.json | 834 B | How that map was derived from the published one, with the coverage that bounds the reduction. | 68680d40a4acde4a |
| docking_panel_2026-09-06.tsv | 4 KB | The 38 complex redocking panel as run: receptor atoms, exhaustiveness, poses, seconds, search box center and size, top score, top and best pose RMSD, and the rank of the first correct pose. | 98b594e1d63c711e |
| docking_panel_2026-09-06.tar.gz | 364 KB | The raw records behind that table: per run Vina log, Meeko preparation logs, input conformer and docked poses. | 19e1d92b4ce1b2c9 |
| MANIFEST.txt | 2 KB | Size and sha256 of every data file, in the weekly bundle’s format. It does not list itself; manifest.json carries its sha256. | 5f846f0f21d0b7cf |
The scripts that produced the numbers. The PharmCast checkpoint path is read from PHARMCAST_CHECKPOINT; its sha256 is in manifest.json, the weights with checksums are at pharmcast.ai/models and the tool is at github.com/smuskal/pharmcast.
| Script | Size | sha256 |
|---|---|---|
| bench_retrieval.py | 4 KB | 62bad7e3c62b374c |
| build_retrieval_index.py | 5 KB | d05cc5294750e00f |
| contact_pairing.py | 6 KB | 78e3d13c6417a94f |
| extend_index.py | 6 KB | 724d01217945d832 |
| inflation.py | 3 KB | e13c361dfbfd687a |
| redock_test.py | 10 KB | 60e9455bf2df3aa6 |
| reverse_screen.py | 7 KB | d43bad748a055ff4 |
| reverse_screen_run.py | 6 KB | b44f3c6dc9008cca |
| throughput.py | 4 KB | 204e81fb0401036a |
| throughput_two_arm.py | 7 KB | 6a79feb7710e58fc |
curl -sO https://reversescreen.ai/benchmark/2026-09-08/MANIFEST.txt
grep -v '^#' MANIFEST.txt | awk '{print $2" "$3}' | shasum -a 256 -c
The four docking panel figures the paper quotes recompute from one file. A pose counts as correct at 2.0 Angstrom from the deposited coordinates:
awk -F'\t' 'NR>1 && $3!="" {n++;
if($16!="" && $16<=2.0){g++; if($17==1)f++; if($17<=3)t++}}
END{printf "panel %d correct %d first %d within three %d\n",n,g,f,t}' \
docking_panel_2026-09-06.tsv
which prints panel 38 correct 27 first 14 within three 23.