Skip to content

RFdiffusion

A deep learning-based protein design tool for motif scaffolding and sequence design.


RFdiffusion requires an environment module

In order to use RFdiffusion, you must first load the appropriate environment module:

module load rfdiffusion

RFdiffusion is an open source method for structure generation developed by the Rosetta Commons community for protein design and motif scaffolding. It generates new protein backbones and sequences based on diffusion models trained on large protein structure datasets.

Warning

RFdiffusion runs only inside an Apptainer container on GPU-capable compute nodes. Make sure to request a GPU node in your job submission or via Open OnDemand.

Loading the RFFdiffusion Module#

You can load the RFFdiffusion module in two equivalent ways:

module load rfdiffusion

or explicitly:

module load rfdiffusion/apptainer

This will make the rfdiffusion.sif container image and supporting environment variables (e.g., $MODELS) available in your session.

Running RFdiffusion#

To run RFdiffusion within Apptainer on an HPC GPU node:

1
2
3
4
5
6
7
8
apptainer run --nv \
rfdiffusion.sif \
inference.output_prefix=/path/to/your/output_dir/motifscaffolding \
inference.model_directory_path=/app/RFdiffusion/models \
inference.schedule_directory_path=schedules \
inference.input_pdb=/path/to/your/input_dir/5TPN.pdb \
inference.num_designs=3 \
contigmap.contigs='[10-40/A163-181/10-40]'

Notes#

  • --nv enables GPU access inside the container.
  • Replace /path/to/your/output_dir and /path/to/your/input_dir with your actual directories.
  • The contigmap.contigs argument defines residue ranges and scaffold positions.

Using Non-Home Directories#

If your input or output directories are located outside your home directory (for example under /gpfs/research/), you must bind those directories manually using the -B option:

apptainer run --nv \
-B /path/to/your/output_dir \
-B /path/to/your/input_dir \
rfdiffusion.sif \
inference.output_prefix=/path/to/your/output_dir/motifscaffolding \
inference.model_directory_path=/app/RFdiffusion/models \
inference.schedule_directory_path=schedules \
inference.input_pdb=/path/to/your/input_dir/5TPN.pdb \
inference.num_designs=3 \
contigmap.contigs='[10-40/A163-181/10-40]'

Note

Without directory binding, the container will not have access to files outside your home directory.

Accessing the Pretrained Models#

RFdiffusion includes several pretrained models that are required for inference.
These are stored at:

/gpfs/research/software/apptainer_containers/rfdiffusion/models

This path is automatically accessible via the environment variable:

$MODELS

You can reference it in your commands, for example:

```bash inference.model_directory_path=$MODELS