Info |
---|
The amount of GPU memory required by alphafold and openfold increases quadratically with the number of amino acids in the system being modeled. If you are modeling a protein complex longer than 1500 residues or so add the following options to the ai-folding submit command: --gpu-type=a100 --run-relax=false |
Using the API
The “AI Folding” api The AI Folding
API provides a common interface to AI based protein structure prediction tools. The API currently supports openfold (https://github.com/CyrusBiotechnology/openfold) and alphafold ( https://github.com/deepmind/alphafold#alphafold-output ).
To model a single chain protein with alphafold or openfold
cyrus submit ai-folding input.fasta OpenFold, AlphaFold, and ESMFold. The API runs a post-processing protocol on the results to minimize the output structure into the Rosetta energy function and correct any atomic level errors in sidechain positioning (See Notes for more detail).
Contents
Quickstart
Model a monomer using AlphaFold
Code Block |
---|
cyrus engine submit ai-folding input.fasta --mode=monomer --ai-tool= |
...
alphafold``` |
Model multiple monomers in parallel using OpenFold
Code Block |
---|
cyrus engine submit ai-folding input.fasta input2.fasta --mode=monomer --ai-tool=openfold |
To submit an alphafold SingleSeq job you can set the mode to “singleseq” and specify the number of recycles with the “af-n-recycles” flag:
...
Model a monomer using OpenFold with weights trained by DeepMind (AlphaFold)
Default = OpenFold weights
Code Block |
---|
cyrus engine submit ai-folding input.fasta --mode=monomer --ai-tool=openfold --model-sets=alphafold |
Create a model using AlphaFold's SingleSeq mode with 2 recycles
Code Block |
---|
cyrus engine submit ai-folding input.fasta --mode=singleseq --ai-tool=alphafold --af-n-recycles=2 |
Multiple fasta files can be evaluated in a single job like this:
...
Model a multimer (AlphaFold only)
Code Block |
---|
cyrus engine submit ai-folding input.fasta |
...
--mode= |
...
multimer --ai-tool= |
...
The Openfold tool can run with either the weights trained by deepmind for alphafold, or weights trained by the AlQuarashi lab for openfold. The openfold trained weights are the default, to use the alphafold weights with the openfold tool, run
cyrus submit ai-folding input.fasta --mode=monomer --ai-tool=openfold --model-sets=alphafold
When modeling a large protein, you can use a larger a100 GPU with --gpu-type=a100
and disable the rosetta relax post-processing step with --run-relax=false
Info |
---|
Currently, openfold does not support multichain modeling |
To model a multi-chain protein
cyrus submit input.fasta --mode=multimer --ai-tool=alphafold
API Outputs
...
alphafold |
Inputs
FASTA file containing sequence(s) of interest to model.
Options
--ai-tool
AI folding tool to run (openfold
,alphafold
,esmfold
), default =alphafold
--mode
Mode to run with AI tool (monomer
,multimer
,singleseq
), default =monomer
--model-sets
The set of model weights to use with OpenFold (alphafold
,openfold
), default =openfold
(See Notes for more detail)--existing-model-data
Location of existing model data in GCS, default =null
--precomputed-alignments
Directory path to precomputed alignments that will be upload and used for AlphaFold jobs, default =null
--run-relax
Enable or disable the Rosetta relax phase of post-processing, default =true
--gpu-type
Select the GPU type to use (t4
,a100
), default =t4
(See Notes for more detail)
Outputs
predictions
(directory) AI tool model predictionsinitial_molprobity_reports
(directory) Molprobity report for models output by AI toolrosetta_relaxed_models
(directory) Rosetta relaxed AI tool modelsfinal_molprobity_reports
(directory) Molprobity report for relaxed models
Notes
Model weight sets
alphafold
- weights trained by DeepMindopenfold
- weights trained by the AlQuarashi Lab for OpenFold
API Post-Processing
The API post-processing protocol consists of the following three steps:
Generate a molprobity report for the models output from the AI tool
Idealize and relax the models output from the AI tool with rosettaRosetta
Generate a molprobity report for the rosetta relaxed models.
Alongside the raw output from the AI tool, the API will produce the following directories:
initial_molprobity_reports
– Molprobity reports from step 1 of the post-processingrosetta_relaxed_models
– relaxed models from step 2final_molprobity_reports
-- relaxed models from step 3
...
Modeling large proteins
The amount of GPU memory required increases quadratically with the number of amino acids in the system being modeled. If you are modeling a protein longer than 1500 residues or so, add the following options to the ai-folding submit command: --gpu-type=a100 --run-relax=false