Docker

RosettaMPNN is set up to run in the same way as LigandMPNN, even though it can perform the functions of both ProteinMPNN and LigandMPNN.

The Docker image for RosettaMPNN is coming soon, in the mean time we have created Docker images for ProteinMPNN and LigandMPNN:

ProteinMPNN

Official ProteinMPNN image maintained by rosettacommons.org

This image is built from the ProteinMPNNrepository

ProteinMPNN is fully open-source under an MIT License whose full text can be found here.

Please note that this image is not compatible with systems using the ARM architecture.

Example syntax

Using Docker

docker run -it --rm \
-v /path/to/your/input_dir:/input \
-v /path/to/your/output_dir:/output \
rosettacommons/proteinmpnn \
--pdb_path /input/3HTN.pdb \
--pdb_path_chains "A B" \
--out_folder /output

Please see below for an example of running a helper scripts from ProteinMPNN.

docker run -it --rm \
--entrypoint python \
-v /path/to/your/input_dir:/input \
-v /path/to/your/output_dir:/output \
rosettacommons/proteinmpnn \
/app/proteinmpnn/helper_scripts/parse_multiple_chains.py \
--input_path=/input/PDB_monomers/pdbs/ \
--output_path=/output/parsed_pdbs.jsonl

Using Apptainer (or Singularity)

The instructions below use Apptainer, but the same commands will work with Singularity.

To run the image using Apptainer you need to pull it using

apptainer pull proteinmpnn.sif docker://rosettacommons/proteinmpnn

Then you can use it very similarly to the Docker example above:

apptainer run --nv \
proteinmpnn.sif \
--pdb_path /path/to/your/input_dir/1BC8.pdb \
--pdb_path_chains "A B" \
--out_folder /path/to/your/output_dir"

Please see the below example for running one of the helper scripts from ProteinMPNN with apptainer.

apptainer exec \
proteinmpnn.sif \
python /app/proteinmpnn/helper_scripts/parse_multiple_chains.py \
--input_path=/path/to/your/input_dir/PDB_monomers/pdbs/ \
--output_path=./parsed_pdbs.jsonl

Please contact us with any questions, feedback, or issues you have concerning these containers here.

LigandMPNN

Official LigandMPNN image maintained by rosettacommons.org

This image is built from the LigandMPNN repository that provides inference code for both ProteinMPNN and LigandMPNN.

LigandMPNN is fully open-source under an MIT License whose full text can be found here.

Please note that this image is not compatible with systems using the ARM architecture.

Example syntax

Using Docker

docker run -it --rm \
-v /path/to/your/input_dir:/input \
-v /path/to/your/output_dir:/output \
rosettacommons/ligandmpnn \
--model_type 'protein_mpnn' \
--pdb_path /input/1BC8.pdb \
--out_folder /output

Using Apptainer (or Singularity)

The instructions below use Apptainer, but the same commands will work with Singularity.

To run the image using Apptainer you need to pull it using

apptainer pull ligandmpnn.sif docker://rosettacommons/ligandmpnn

Then you can use it very similarly to the Docker example above:

apptainer run --nv \
ligandmpnn.sif \
--model_type 'protein_mpnn' \
--pdb_path /path/to/your/input_dir/1BC8.pdb \
--out_folder /path/to/your/output_dir/"
--checkpoint_protein_mpnn '/app/ligandmpnn/model_params/proteinmpnn_v_48_020.pt'

You will need to change the checkpoint_protein_mpnn path and option name depending on the model weights you want to use

Please contact us with any questions, feedback, or issues you have concerning these containers here.