BindCraft: one-shot design of functional protein binders

BindCraft is an open-source and automated pipeline for de novo protein binder design pipeline using AlphaFold2 backpropagation, MPNN, and PyRosetta.

References:

Documentation
Important Notes

Interactive job
Interactive jobs should be used for debugging, graphics, or applications that cannot be run as batch jobs.

Allocate an interactive session and run the program. Sample session:

[user@biowulf]$ interactive --gres=gpu:v100x:1,lscratch:10 --mem=24g -c16
[user@cn0816 ~]$ module load bindcraft 
[+] Loading cuDNN/8.1.0.77/CUDA-11.2.2 libraries...
[+] Loading CUDA Toolkit  11.2.2  ...
[+] Loading PyRosetta 387.py3.10 on cn0816
[+] Loading bindcraft 1.5.0  ...

[user@cn0816 ~]$ cp -r $BC_SRC .
[user@cn0816 ~]$ cd BindCraft-1.5.0
[user@cn0816 ~]$ bindcraft.py -h
vailable GPUs:
Tesla V100-SXM2-32GB1: gpu
usage: bindcraft.py [-h] --settings SETTINGS [--filters FILTERS] [--advanced ADVANCED]

Script to run BindCraft binder design.

options:
  -h, --help            show this help message and exit
  --settings SETTINGS, -s SETTINGS
                        Path to the basic settings.json file. Required.
  --filters FILTERS, -f FILTERS
                        Path to the filters.json file used to filter design. If not provided, default will be used.
  --advanced ADVANCED, -a ADVANCED
                        Path to the advanced.json file with additional design settings. If not provided, default will
                        be used.
[user@cn0816 ~]$ ./bindcraft.py \
                        --settings './settings_target/PDL1.json' \
                        --filters './settings_filters/default_filters.json' \
                        --advanced './settings_advanced/default_4stage_multimer.json'
Available GPUs:
Tesla V100-SXM2-32GB1: gpu
┌──────────────────────────────────────────────────────────────────────────────┐
│                                 PyRosetta-4                                  │
│              Created in JHU by Sergey Lyskov and PyRosetta Team              │
│              (C) Copyright Rosetta Commons Member Institutions               │
│                                                                              │
│ NOTE: USE OF PyRosetta FOR COMMERCIAL PURPOSES REQUIRE PURCHASE OF A LICENSE │
│         See LICENSE.PyRosetta.md or email license@uw.edu for details         │
└──────────────────────────────────────────────────────────────────────────────┘
PyRosetta-4 2024 [Rosetta PyRosetta4.Release.python310.linux 2024.39+release.59628fbc5bc09f1221e1642f1f8d157ce49b1410 2024-09-23T07:49:48] retrieved from: http://www.pyrosetta.org
Running binder design for target PDL1
Design settings used: default_4stage_multimer
Filtering designs based on default_filters
Starting trajectory: PDL1_l86_s981562
Stage 1: Test Logits
1 models [0] recycles 1 hard 0 soft 0.02 temp 1 loss 11.80 helix 1.90 pae 0.81 i_pae 0.80 con 4.63 i_con 4.00 plddt 0.30 ptm 0.55 i_ptm 0.11 rg 10.75
2 models [1] recycles 1 hard 0 soft 0.04 temp 1 loss 8.78 helix 1.08 pae 0.74 i_pae 0.71 con 4.38 i_con 3.74 plddt 0.40 ptm 0.56 i_ptm 0.13 rg 1.70
3 models [3] recycles 1 hard 0 soft 0.05 temp 1 loss 7.98 helix 0.77 pae 0.59 i_pae 0.59 con 3.79 i_con 3.74 plddt 0.47 ptm 0.59 i_ptm 0.21 rg 0.97
4 models [0] recycles 1 hard 0 soft 0.07 temp 1 loss 7.93 helix 0.71 pae 0.56 i_pae 0.61 con 3.47 i_con 3.91 plddt 0.52 ptm 0.57 i_ptm 0.17 rg 1.30
5 models [3] recycles 1 hard 0 soft 0.09 temp 1 loss 6.29 helix 0.71 pae 0.42 i_pae 0.48 con 2.40 i_con 3.33 plddt 0.72 ptm 0.59 i_ptm 0.23 rg 1.62
6 models [3] recycles 1 hard 0 soft 0.11 temp 1 loss 6.23 helix 0.72 pae 0.42 i_pae 0.49 con 2.20 i_con 3.45 plddt 0.75
...
Starting trajectory took: 0 hours, 6 minutes, 3 seconds

Starting trajectory: PDL1_l84_s11317
Stage 1: Test Logits
1 models [0] recycles 1 hard 0 soft 0.02 temp 1 loss 12.96 helix 2.12 pae 0.84 i_pae 0.85 con 4.85 i_con 4.22 plddt 0.29 ptm 0.54 i_ptm 0.08 rg 13.32
2 models [4] recycles 1 hard 0 soft 0.04 temp 1 loss 11.23 helix 0.97 pae 0.75 i_pae 0.73 con 4.72 i_con 3.85 plddt 0.41 ptm 0.56 i_ptm 0.13 rg 8.25
...
Initial trajectory pLDDT good, continuing: 0.88
Stage 1: Additional Logits Optimisation
51 models [1] recycles 1 hard 0 soft 0.04 temp 1 loss 9.82 helix 2.20 pae 0.89 i_pae 0.94 con 4.38 i_con 4.97 plddt 0.21 ptm 0.11 i_ptm 0.05 rg 1.84
52 models [1] recycles 1 hard 0 soft 0.08 temp 1 loss 6.55 helix 1.36 pae 0.45 i_pae 0.45 con 2.83 i_con 3.48 plddt 0.59 ptm 0.61 i_ptm 0.26 rg 1.18
...
Optimised logit trajectory pLDDT: 0.91
Stage 2: Softmax Optimisation
76 models [1] recycles 1 hard 0 soft 1 temp 0.96 loss 6.71 helix 1.00 pae 0.46 i_pae 0.40 con 3.62 i_con 2.83 plddt 0.57 ptm 0.69 i_ptm 0.53 rg 0.92
...
Softmax trajectory pLDDT good, continuing: 0.86
Stage 3: One-hot Optimisation
...
125 models [3] recycles 1 hard 1 soft 1 temp 0.01 loss 3.87 helix 1.51 pae 0.23 i_pae 0.17 con 2.21 i_con 1.66 plddt 0.77 ptm 0.84 i_ptm 0.79 rg 1.04
One-hot trajectory pLDDT good, continuing: 0.78
Stage 4: PSSM Semigreedy Optimisation
Running semigreedy optimization...
140 models [0] recycles 1 hard 1 soft 0 temp 1 loss 3.28 helix 1.42 pae 0.17 i_pae 0.13 con 1.89 i_con 1.44 plddt 0.82 ptm 0.87 i_ptm 0.84 rg 0.88
Trajectory successful, final pLDDT: 0.82
Starting trajectory took: 0 hours, 4 minutes, 27 seconds

Fixing interface residues: B13,B14,B18,B19,B22,B23,B25,B26,B29,B30,B33,B34,B58,B62,B65,B66,B68,B69,B72,B73,B75,B76,B79,B80,B83
Base AF2 filters not passed for PDL1_l84_s11317_mpnn1, skipping interface scoring
Unmet filter conditions for PDL1_l84_s11317_mpnn2
Base AF2 filters not passed for PDL1_l84_s11317_mpnn3, skipping interface scoring
Unmet filter conditions for PDL1_l84_s11317_mpnn4
Base AF2 filters not passed for PDL1_l84_s11317_mpnn5, skipping interface scoring
...
Base AF2 filters not passed for PDL1_l84_s11317_mpnn17, skipping interface scoring
Unmet filter conditions for PDL1_l84_s11317_mpnn18
Base AF2 filters not passed for PDL1_l84_s11317_mpnn19, skipping interface scoring
Base AF2 filters not passed for PDL1_l84_s11317_mpnn20, skipping interface scoring
No accepted MPNN designs found for this trajectory.

Design and validation of trajectory PDL1_l84_s11317 took: 0 hours, 7 minutes, 40 seconds
Starting trajectory: PDL1_l128_s352235
Stage 1: Test Logits
...
jectory successful, final pLDDT: 0.93
Starting trajectory took: 0 hours, 5 minutes, 54 seconds

Fixing interface residues: B21,B22,B24,B25,B28,B29,B31,B32,B33,B35,B36,B37,B39,B48,B115,B118,B119,B122,B123
PDL1_l128_s352235_mpnn1 passed all filters
Base AF2 filters not passed for PDL1_l128_s352235_mpnn2, skipping interface scoring
Base AF2 filters not passed for PDL1_l128_s352235_mpnn3, skipping interface scoring
...

End the interactive session:
[user@cn0816 ~]$ exit
salloc.exe: Relinquishing job allocation 46116226
[user@biowulf ~]$