boileroom powers BAGEL’s oracle inference. When you create an oracle like
bg.oracles.ESMFold(use_modal=True) in BAGEL, boileroom handles model loading, GPU execution, and dependency isolation behind the scenes. See the BAGEL Oracles documentation for how oracles integrate with energy terms.Architecture
Quick start
Available models
Import patterns
Constructor
All models share the same constructor signature:str
default:"modal"
Backend to use for execution. Supported values:
"modal" (serverless GPU) or "apptainer" (local GPU via container). See Backends.str | None
default:"None"
GPU device identifier (e.g.,
"cuda:0", "cpu"). If None, defaults to "cuda:0" when a GPU is available.dict | None
default:"None"
Model-specific configuration overrides merged with defaults. Each model has its own config keys — see the model’s page or Configuration.
Context manager
All models can be used as context managers to ensure the backend is properly shut down:Folding models
ESMFold
Fast single-sequence protein structure prediction.
Chai-1
Diffusion-based structure prediction.
Boltz-2
Diffusion-based structure prediction with MSA support.
Embedding models
ESM2
Protein language model for sequence embeddings.
Reference
Output Types
Shared output types and cross-model comparison.
Configuration
Static vs dynamic config, per-model config keys.
Backends
Modal (serverless) and Apptainer (local) backends.
