How rosettacommons/foundry works
Foundry is a shared framework for biomolecular model training and inference, shipping four model families: RFD3 and RFD3NA for constrained all-atom design, RF3 for structure prediction, and ProteinMPNN/LigandMPNN for inverse folding. The user-facing workflow is to provide a structure or design specification, prepare model-specific inputs, run the model or sampler, and obtain designed sequences or predicted/generated structures. AtomWorks supplies structure manipulation and preprocessing across model workflows. The graph captures documented capabilities and indexed module references; several model internals and the RF3 engine were not excerpted, so those links are shown as unverified.
Main entry points: rfd3/engine.py Design Engine · rfd3na/engine.py Design Engine · rf3.py Inference Engine · mpnn.py Inference Engine
Components 27
Foundry Core
- Inference Base
src/foundry/inference_engines/base.py - Checkpoint Registry
src/foundry/inference_engines/checkpoint_registry.py - Component Utilities
src/foundry/utils/components.py - Fabric Training
src/foundry/trainers/fabric.py
RFD3 Design
- Input Preparation
models/rfd3/src/rfd3/utils/inference.py - Conditioning Pipeline
models/rfd3/src/rfd3/transforms/pipelines.py - Design Engine
models/rfd3/src/rfd3/engine.py - Diffusion Sampler
models/rfd3/src/rfd3/model/inference_sampler.py - Design Model
- Designed Structures
models/rfd3/src/rfd3/engine.py
RFD3NA Design
- Input Preparation
models/rfd3na/src/rfd3na/utils/inference.py - Conditioning Pipeline
models/rfd3na/src/rfd3na/transforms/pipelines.py - Design Engine
models/rfd3na/src/rfd3na/engine.py - Diffusion Sampler
models/rfd3na/src/rfd3na/model/inference_sampler.py - Design Model
models/rfd3na/src/rfd3na/model/RFD3.py - Designed Structures
models/rfd3na/src/rfd3na/engine.py
RF3 Folding
- Data Pipelines
models/rf3/src/rf3/data/pipelines.py - Inference Engine
models/rf3/src/rf3/inference_engines/rf3.py - Folding Model
models/rf3/src/rf3/model/RF3.py - Predicted Structures
models/rf3/src/rf3/utils/inference.py
MPNN Inverse Folding
- Inference Inputs
models/mpnn/src/mpnn/utils/inference.py - Inference Engine
models/mpnn/src/mpnn/inference_engines/mpnn.py - Sequence Model
models/mpnn/src/mpnn/model/mpnn.py - Graph Embeddings
models/mpnn/src/mpnn/model/layers/graph_embeddings.py - Designed Sequences
models/mpnn/src/mpnn/inference.py
Other components
- Researcher
- AtomWorks
Connections 29
- Researcher → Design Engine: specifies design
- Design Engine → Input Preparation: prepares inputs
models/rfd3/src/rfd3/engine.py - Design Engine → Diffusion Sampler: runs sampler
models/rfd3/src/rfd3/engine.py - Conditioning Pipeline → Input Preparation: uses conditioning
models/rfd3/src/rfd3/transforms/pipelines.py - Diffusion Sampler → Design Model: denoises with
- Design Engine → Designed Structures: writes outputs
models/rfd3/src/rfd3/engine.py - Researcher → Design Engine: specifies design
- Design Engine → Input Preparation: prepares inputs
models/rfd3na/src/rfd3na/engine.py - Design Engine → Diffusion Sampler: runs sampler
models/rfd3na/src/rfd3na/engine.py - Conditioning Pipeline → Input Preparation: uses conditioning
models/rfd3na/src/rfd3na/transforms/pipelines.py - Diffusion Sampler → Design Model: denoises with
- Design Engine → Designed Structures: writes outputs
models/rfd3na/src/rfd3na/engine.py - Researcher → Inference Engine: requests folding
- Inference Engine → Data Pipelines: loads data
- Inference Engine → Folding Model: runs prediction
- Inference Engine → Predicted Structures: returns structures
- Researcher → Inference Inputs: provides backbone
- Inference Inputs → Inference Engine: builds request
models/mpnn/src/mpnn/inference.py - Inference Engine → Sequence Model: runs inference
models/mpnn/src/mpnn/inference_engines/mpnn.py - Sequence Model → Graph Embeddings: uses embeddings
models/mpnn/src/mpnn/model/mpnn.py - Inference Engine → Designed Sequences: returns sequences
models/mpnn/src/mpnn/inference.py - AtomWorks → Input Preparation: processes structures
- AtomWorks → Input Preparation: processes structures
- AtomWorks → Data Pipelines: processes structures
- AtomWorks → Inference Inputs: processes structures
- Inference Base → Checkpoint Registry: looks up weights
src/foundry/inference_engines/base.py - Fabric Training → Component Utilities: instantiates components
src/foundry/trainers/fabric.py - Design Engine → Inference Base: extends engine
models/rfd3/src/rfd3/engine.py - Design Engine → Inference Base: extends engine
models/rfd3na/src/rfd3na/engine.py