AlphaFold3¶
AlphaFold3 predicts the 3D structure of biomolecular complexes including proteins, DNA, RNA, ligands, and ions. It runs on Hyperion as an optimized Apptainer container.
Non-commercial use only
AlphaFold3 model parameters are subject to strict Terms of Use. Usage is limited to non-commercial research by academic institutions and non-profits. Commercial use, model training on outputs, and clinical applications are prohibited. Contact your institution's legal department if you have questions about compliance.
Loading the module¶
module load AlphaFold/3.0.1
This sets up the container path (AF3_CONTAINER), model weights (AF3_WEIGHTS), reference databases (AF3_DB), and wrapper scripts.
Expand to see all available modules on each cluster
AlphaFold/2.3.1-foss-2022a-CUDA-11.7.0 |
AlphaFold/3.0.1 |
AlphaFold/2.0.1-fosscuda-2020b |
AlphaFold/2.1.1-fosscuda-2020b |
Not available on this cluster.
To verify the installation before your first run:
alphafold3-check
Batch job examples¶
#!/bin/bash
#SBATCH --qos=regular
#SBATCH --job-name=alphafold3
#SBATCH --partition=general
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=48
#SBATCH --mem=100G
#SBATCH --gpus=1
#SBATCH --time=12:00:00
#SBATCH --output=%x.%j.out
#SBATCH --error=%x.%j.err
module load AlphaFold/3.0.1
alphafold3-run input.json results_${SLURM_JOB_ID}/
For systems above ~2000 tokens, request an A100 GPU:
#!/bin/bash
#SBATCH --qos=regular
#SBATCH --job-name=af3_large
#SBATCH --partition=general
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=48
#SBATCH --mem=200G
#SBATCH --gpus=1
#SBATCH --constraint=a100
#SBATCH --time=24:00:00
#SBATCH --output=%x.%j.out
#SBATCH --error=%x.%j.err
module load AlphaFold/3.0.1
alphafold3-run input.json results_${SLURM_JOB_ID}/
Input format¶
AlphaFold3 takes a JSON file defining the molecular system. A minimal example for a protein:
{
"name": "my_prediction",
"sequences": [
{
"protein": {
"id": ["A"],
"sequence": "MAFSAEDVLK..."
}
}
],
"modelSeeds": [1, 2, 3],
"dialect": "alphafold3",
"version": 1
}
Supported entity types in the sequences array:
| Entity | Key | Identifier |
|---|---|---|
| Protein | "protein" |
"sequence": amino acid one-letter codes |
| DNA | "dna" |
"sequence": nucleotide sequence |
| RNA | "rna" |
"sequence": nucleotide sequence |
| Ligand | "ligand" |
"smiles" or "ccdCodes" (array) |
| Ion | "ion" |
"ccdCodes": e.g. ["MG"], ["ZN"] |
Use "id": ["A", "B"] to create homodimers (multiple copies of the same chain). Each modelSeeds entry generates an independent structure prediction.
Common JSON mistakes
"ccdCodes" must be an array (["ATP"], not "ATP"). The "dialect" field must be exactly "alphafold3" and "version" must be an integer.
For complex inputs (post-translational modifications, covalent bonds, custom MSAs), see Advanced usage.
GPU and memory selection¶
GPU memory scales roughly quadratically with system size. Count your tokens to choose the right resources:
- Proteins: 1 token per residue
- DNA/RNA: 1 token per nucleotide
- Ligands: 1 token per heavy atom
- Ions: 1 token each
| System size | GPU | System RAM | Typical runtime |
|---|---|---|---|
| < 1000 tokens | RTX 3090 | 32-48 GB | 2-4 hours |
| 1000-2000 tokens | RTX 3090 | 48 GB | 4-8 hours |
| 2000-3500 tokens | A100 (--constraint=a100) |
64 GB | 8-12 hours |
| > 3500 tokens | A100 (--constraint=a100) |
128 GB | 12-24+ hours |
Output files¶
AlphaFold3 produces one structure per seed in mmCIF format, plus confidence metrics:
output_dir/
├── job_name_model_0.cif # 3D structure (seed 1)
├── job_name_model_1.cif # 3D structure (seed 2)
├── job_name_confidences.json # pLDDT scores and PAE matrices
├── job_name_summary_confidences.json # Prediction summary
└── job_name_data.json # Full prediction data
Open .cif files in PyMOL, ChimeraX, or VMD. Evaluate prediction quality using pLDDT scores: above 90 indicates high confidence, 70-90 is reliable for the backbone, below 50 suggests disorder.
Troubleshooting¶
Out of memory (GPU): Switch to A100 with --constraint=a100, or reduce modelSeeds to fewer entries. GPU memory scales quadratically with token count.
Process killed by SLURM (OOM-kill): This is system RAM, not GPU memory. Increase --mem (try 200G for large systems).
No CUDA GPUs available: Verify --gpus=1 is in your SLURM script and that the module is loaded.
Invalid JSON format: Check that "dialect": "alphafold3" and "version": 1 are present. Validate syntax with python -m json.tool input.json.
See also¶
-
Advanced AlphaFold3 usage
Detailed input format, performance tuning, array jobs, direct container usage.
-
Software catalog
Versions available on each cluster.
-
GPU accelerators
Requesting GPUs in SLURM.
-
AlphaFold3 on GitHub
Source code and official documentation.