Skip to main content

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/voronota binaries 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_id
  • predicted_dockq
  • HL_contact_flag: ok / low_HL_contacts / not_applicable
  • vdw_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

deeprank_ab-1.0.0.tar.gz (53.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

deeprank_ab-1.0.0-py3-none-any.whl (53.5 MB view details)

Uploaded Python 3

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

Hashes for deeprank_ab-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6a9308bcfa50a12af05fe4179024aaa571506f5802d54ba05a5ad6afea33c640
MD5 4d84cdf3ec0c5838f59ff1b9d4d41d00
BLAKE2b-256 26ba7798e8f4e7a6546a51d518781704eb6a9428cde3476b0e7db6f9dc6c6465

See more details on using hashes here.

Provenance

The following attestation bundles were made for deeprank_ab-1.0.0.tar.gz:

Publisher: publish.yml on haddocking/deeprank-ab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for deeprank_ab-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b528879cc4c6a4d8c85381b20001cd9b20522c6a2bf0604fdbacfb01da9f66d
MD5 e2a9d10239eee1532e363139a7b6b9a5
BLAKE2b-256 23160bd7e28b3943e756260a7a46dc2fd7aa7373bc46d101995327e2fd9fd47e

See more details on using hashes here.

Provenance

The following attestation bundles were made for deeprank_ab-1.0.0-py3-none-any.whl:

Publisher: publish.yml on haddocking/deeprank-ab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page