DeepRank-Ab
DeepRank-Ab is a geometric deep learning scoring function for ranking antibody-antigen docking models and predicting DockQ scores. Given a raw PDB, it runs chain detection, feature generation (ESM-2 embeddings, CDR annotation, atom-level graphs), and EGNN inference to produce a predicted DockQ score plus structural quality flags.
Publication: https://www.nature.com/articles/s42003-026-10408-4
Installation
[!NOTE] Linux only. The vendored
hmmscan/voronotabinaries are x86-64 Linux ELF and won't run on macOS.On macOS, use Docker instead (see below).
pip install deeprank-ab
[!IMPORTANT] ANARCI is vendored at
src/tools/ANARCI/anarci/, not a pip dependency — its own install process doesn't work with modern Python packaging tools, so we ship a pre-built copy (package + germline database) instead.Distributed under ANARCI's original BSD-3-Clause license (
src/tools/ANARCI/anarci/LICENCE, © 2019 Charlotte Deane, James Dunbar, Alexsandr Kovaltsuk, Claire Marks). Since it's a snapshot, it won't pick up upstream ANARCI updates automatically.
Working on the code itself instead? See DEVELOPMENT.md.
Running with Docker
Two image variants are published to GHCR: *-cpu and *-gpu, tagged <release-tag>-cpu/
<release-tag>-gpu plus latest-cpu/latest-gpu on every release. PRs also get a
pr-<number>-cpu/pr-<number>-gpu build for reviewing that PR's changes — those are
work-in-progress images, not for general use.
Mount your data directory to /data, set it as the working directory, and pass
--user "$(id -u):$(id -g)" — without it, the container runs as root and every file it creates
(workspace, *.hdf5, the ~2.5GB downloaded ESM-2 weights) ends up root-owned on your host:
docker run --rm \
--user "$(id -u):$(id -g)" \
-v "$PWD":/data \
-w /data \
ghcr.io/haddocking/deeprank-ab:latest-cpu \
test.pdb
Chain-override flags work the same way, appended after the PDB file:
docker run --rm --user "$(id -u):$(id -g)" -v "$PWD":/data -w /data \
ghcr.io/haddocking/deeprank-ab:latest-cpu \
test.pdb --heavy_chain_id H --light_chain_id L --antigen_chain_id A
Your results will be at <pdb_stem>-deeprank_ab_pred_<...>/.
GPU
The *-gpu image (built on nvidia/cuda) needs the
NVIDIA Container Toolkit
installed on the host, plus --gpus all:
docker run --rm --gpus all --user "$(id -u):$(id -g)" -v "$PWD":/data -w /data \
ghcr.io/haddocking/deeprank-ab:latest-gpu \
test.pdb
Build locally instead of pulling:
docker build --platform linux/amd64 -f Dockerfile.cpu -t deeprank-ab:cpu .
docker build --platform linux/amd64 -f Dockerfile.gpu -t deeprank-ab:gpu .
--platform linux/amd64 matters even on Apple Silicon: the vendored hmmscan/voronota
binaries are x86-64 Linux ELF and only run correctly (via Rosetta emulation) on that platform —
an arm64 build would hit "exec format error" on them regardless of host.
Usage
deeprank-ab-predict <pdb_file>
Example:
deeprank-ab-predict example/test.pdb
Input requirements:
- PDB file (single model or ensemble supported)
- Optional chain overrides:
--heavy_chain_id,--light_chain_id,--antigen_chain_id
If not provided, chains are auto-detected via ANARCI.
Pipeline
flowchart TD
A[Workspace creation] --> B[PDB splitting]
B --> C[Chain detection]
C --> D[Antigen merging]
D --> E[FASTA generation]
E --> F[ESM embeddings]
F --> G[CDR annotation]
G --> H[Graph construction]
H --> I[VdW clash filtering]
I --> J[Clustering]
J --> K[DockQ prediction]
K --> L[CSV output]
Outputs
*_predictions.hdf5 and a final *.csv with columns:
pdb_idpredicted_dockqHL_contact_flag:ok/low_HL_contacts/not_applicablevdw_clash_flag:ok/potential_clash
Support
Open a GitHub issue for help.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file deeprank_ab-1.0.0.tar.gz.
File metadata
- Download URL: deeprank_ab-1.0.0.tar.gz
- Upload date:
- Size: 53.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a9308bcfa50a12af05fe4179024aaa571506f5802d54ba05a5ad6afea33c640
|
|
| MD5 |
4d84cdf3ec0c5838f59ff1b9d4d41d00
|
|
| BLAKE2b-256 |
26ba7798e8f4e7a6546a51d518781704eb6a9428cde3476b0e7db6f9dc6c6465
|
Provenance
The following attestation bundles were made for deeprank_ab-1.0.0.tar.gz:
Publisher:
publish.yml on haddocking/deeprank-ab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deeprank_ab-1.0.0.tar.gz -
Subject digest:
6a9308bcfa50a12af05fe4179024aaa571506f5802d54ba05a5ad6afea33c640 - Sigstore transparency entry: 2218647430
- Sigstore integration time:
-
Permalink:
haddocking/deeprank-ab@fb379a6d3dde517001cf22ec0503b10f3c365d3d -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/haddocking
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb379a6d3dde517001cf22ec0503b10f3c365d3d -
Trigger Event:
release
-
Statement type:
File details
Details for the file deeprank_ab-1.0.0-py3-none-any.whl.
File metadata
- Download URL: deeprank_ab-1.0.0-py3-none-any.whl
- Upload date:
- Size: 53.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b528879cc4c6a4d8c85381b20001cd9b20522c6a2bf0604fdbacfb01da9f66d
|
|
| MD5 |
e2a9d10239eee1532e363139a7b6b9a5
|
|
| BLAKE2b-256 |
23160bd7e28b3943e756260a7a46dc2fd7aa7373bc46d101995327e2fd9fd47e
|
Provenance
The following attestation bundles were made for deeprank_ab-1.0.0-py3-none-any.whl:
Publisher:
publish.yml on haddocking/deeprank-ab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
deeprank_ab-1.0.0-py3-none-any.whl -
Subject digest:
8b528879cc4c6a4d8c85381b20001cd9b20522c6a2bf0604fdbacfb01da9f66d - Sigstore transparency entry: 2218647980
- Sigstore integration time:
-
Permalink:
haddocking/deeprank-ab@fb379a6d3dde517001cf22ec0503b10f3c365d3d -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/haddocking
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fb379a6d3dde517001cf22ec0503b10f3c365d3d -
Trigger Event:
release
-
Statement type: