Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

README.md

RFdiffusion3 (Foundry) Singularity Container

Singularity/Apptainer packaging for Foundry — including RFdiffusion3 (RFD3), RF3, RFdiffusion3NA, and ProteinMPNN / LigandMPNN — based on the official rosettacommons/foundry:slim Docker image.

This directory provides a slim container definition (no baked-in weights), a weight download script, and a Python launcher. Scientific methods, tutorials, and model cards remain in the upstream Foundry repository (Institute for Protein Design / RosettaCommons).

CLIs in the image: rfd3, rf3, rfd3na, mpnn, foundry

Quick Start

Option 1: Pull from Sylabs Cloud (Recommended)

singularity pull library://rfd3/default/rfd3_x86:slim

Optional signature check:

singularity key import ../keys/rfd3_public.asc
singularity verify rfd3_x86.sif

Option 2: Build from Definition File

singularity build rfd3_x86.sif rfd3_x86.def

Setup

1. Download Model Weights

Weights are not inside the SIF (keeps the image ~3.4 GB for Psy Labs). Download to the host:

mkdir -p models
chmod +x download_models.sh
./download_models.sh              # rfd3 only (~2.6 GB)
# ./download_models.sh base-models  # also rf3, rfd3na, mpnn, …

2. Directory Structure

rfd3/
├── rfd3_x86.sif              # Container image (pulled or built)
├── models/                   # Model weights (downloaded)
├── foundry.env               # FOUNDRY_CHECKPOINT_DIRS=/models
├── run_foundry_launcher.py   # Python launcher
├── download_models.sh
└── rfd3_x86.def

Running

Requires pip install absl-py.

# RFdiffusion3
python run_foundry_launcher.py \
  --out_dir ./out \
  --inputs ./design.json \
  --ckpt_path rfd3

# RF3 fold
python run_foundry_launcher.py --tool rf3 \
  --out_dir ./rf3_out \
  --inputs ./structure.cif \
  --ckpt_path rf3

# ProteinMPNN
python run_foundry_launcher.py --tool mpnn -- \
  --structure_path ./structure.cif \
  --out_directory ./mpnn_out \
  --checkpoint_path /models/proteinmpnn_v_48_020.pt \
  --model_type protein_mpnn \
  --is_legacy_weights True

python run_foundry_launcher.py --tool foundry -- list-installed
Flag / env Default
--sif_path / RFD3_SIF ./rfd3_x86.sif
--model_directory_path / RFD3_MODEL_DIR ./models

The launcher bind-mounts ./models → /models and overlays foundry.env so Foundry’s load_dotenv does not use the image’s /test-weights path.

foundry.env sets DISABLE_CUEQUIVARIANCE=1 because the slim image has no C compiler and RF3’s cuEquivariance/Triton path needs one; this is slower but portable. For full RF3 speed, set DISABLE_CUEQUIVARIANCE=0, export CC to a host gcc, and pass that toolchain with --bind_mounts.

For design protocols and input formats, see the Foundry RFD3 docs.

Attribution & citation

Upstream software and weights: RosettaCommons/foundry
Official Docker image: rosettacommons/foundry (slim tag)

Please cite the relevant papers when using these tools:

@article{butcher2025_rfdiffusion3,
  author  = {Butcher, Jasper and Krishna, Rohith and Mitra, Raktim and Brent, Rafael Isaac and Li, Yanjing and Corley, Nathaniel and Kim, Paul T and Funk, Jonathan and Mathis, Simon Valentin and Salike, Saman and Muraishi, Aiko and Eisenach, Helen and Thompson, Tuscan Rock and Chen, Jie and Politanska, Yuliya and Sehgal, Enisha and Coventry, Brian and Zhang, Odin and Qiang, Bo and Didi, Kieran and Kazman, Maxwell and DiMaio, Frank and Baker, David},
  title   = {De novo Design of All-atom Biomolecular Interactions with {RFdiffusion3}},
  year    = {2025},
  doi     = {10.1101/2025.09.18.676967},
  journal = {bioRxiv},
  URL     = {https://www.biorxiv.org/content/10.1101/2025.09.18.676967}
}

@article{corley2025accelerating,
  title   = {Accelerating biomolecular modeling with atomworks and rf3},
  author  = {Corley, Nathaniel and Mathis, Simon and Krishna, Rohith and Bauer, Magnus S and Thompson, Tuscan R and Ahern, Woody and Kazman, Maxwell W and Brent, Rafael I and Didi, Kieran and Kubaney, Andrew and others},
  journal = {bioRxiv},
  year    = {2025}
}

@article{dauparas2022robust,
  title   = {Robust deep learning--based protein sequence design using {ProteinMPNN}},
  author  = {Dauparas, Justas and Anishchenko, Ivan and Bennett, Nathaniel and Bai, Hua and Ragotte, Robert J and Milles, Lukas F and Wicky, Basile IM and Courbet, Alexis and de Haas, Rob J and Bethel, Neville and others},
  journal = {Science},
  volume  = {378},
  number  = {6615},
  pages   = {49--56},
  year    = {2022}
}

@article{dauparas2025atomic,
  title   = {Atomic context-conditioned protein sequence design using {LigandMPNN}},
  author  = {Dauparas, Justas and Lee, Gyu Rie and Pecoraro, Robert and An, Linna and Anishchenko, Ivan and Glasscock, Cameron and Baker, David},
  journal = {Nature Methods},
  year    = {2025}
}

License note

This packaging code is under the repository MIT license. Foundry and its models are under their upstream licenses (BSD for Foundry; see the Foundry repository).