ZhiyuanChen commited on
Commit
48fd0be
·
verified ·
1 Parent(s): d2558a5

Align AlphaFold2 model card with OFoldX

Browse files
Files changed (1) hide show
  1. README.md +89 -103
README.md CHANGED
@@ -14,42 +14,27 @@ Pre-trained model for protein structure prediction from amino-acid sequences, mu
14
 
15
  ## Disclaimer
16
 
17
- This is an unofficial OFoldX implementation of
18
- [AlphaFold 2](https://doi.org/10.1038/s41586-021-03819-2) by John Jumper,
19
- Richard Evans, Alexander Pritzel, Tim Green, Michael Figurnov, Olaf
20
- Ronneberger, Kathryn Tunyasuvunakool, Russ Bates, Augustin Žídek, Anna
21
- Potapenko, Alex Bridgland, Clemens Meyer, Simon A. A. Kohl, Andrew J. Ballard,
22
- Andrew Cowie, Bernardino Romera-Paredes, Stanislav Nikolov, and Rishub Jain,
23
- and [AlphaFold-Multimer](https://doi.org/10.1101/2021.10.04.463034). The
24
- upstream authors did not write, review, or endorse this implementation or
25
- model card. The official implementation is maintained by
26
- [Google DeepMind](https://github.com/google-deepmind/alphafold).
27
 
28
  ## Model Details
29
 
30
- AlphaFold 2 predicts protein three-dimensional structure from amino-acid
31
- sequence, multiple-sequence alignments, and optional structural templates. Its
32
- Evoformer jointly updates MSA and residue-pair representations before an
33
- invariant-point-attention Structure Module produces backbone frames, side-chain
34
- angles, atomic coordinates, and confidence estimates. AlphaFold-Multimer extends
35
- the same design with paired MSAs and chain-relative features for protein
36
- complexes.
37
 
38
  ### Variants
39
 
40
- - **[oteam/alphafold2](https://huggingface.co/oteam/alphafold2)**: AlphaFold 2 monomer model with pLDDT confidence.
41
- - **CASP14 five-model Pipeline**: The fixed released `model_1` through
42
- `model_5` monomer ensemble. Every checkpoint uses eight input ensembles; one
43
- shared processed input is evaluated sequentially, all samples are
44
- stable-ranked by mean pLDDT, and the concrete Pipeline owns optional Amber
45
- relaxation of none, the best prediction, or all predictions.
46
- - **[oteam/alphafold2-ptm](https://huggingface.co/oteam/alphafold2-ptm)**: Monomer model with predicted aligned error and pTM confidence.
47
- - **AF2 initial guess**: Distinct monomer/pTM Model--Processor--Pipeline pair
48
- using `model_1_ptm` weights. It seeds the first recycled atom37 `prev_pos`
49
- state from an in-memory target--binder structure without initializing
50
- Structure Module frames. Its all-GAP template retains backbone/CB geometry
51
- for every chain and masks target--binder template pair features.
52
- - **[oteam/alphafold2-multimer](https://huggingface.co/oteam/alphafold2-multimer)**: AlphaFold-Multimer for multi-chain protein complexes.
53
 
54
  ### Model Specification
55
 
@@ -66,118 +51,106 @@ complexes.
66
  - **Upstream attribution**: AlphaFold 2 parameters © 2022 DeepMind Technologies Limited; [parameter license](https://github.com/google-deepmind/alphafold#model-parameters)
67
  - **Upstream source revision**: `c77e5d2a8961d1a353632c462914ff0a32a950f6`
68
  - **Code**: [ofoldx.models.alphafold2](https://github.com/OTeam-AI4S/OFoldX/tree/main/ofoldx/models/alphafold2)
69
- - **Paper**: [Highly accurate protein structure prediction with AlphaFold](https://doi.org/10.1038/s41586-021-03819-2)
70
- - **Multimer Paper**: [Protein complex prediction with AlphaFold-Multimer](https://doi.org/10.1101/2021.10.04.463034)
71
- - **Developed by**: John Jumper, Richard Evans, Alexander Pritzel, Tim Green,
72
- Michael Figurnov, Olaf Ronneberger, Kathryn Tunyasuvunakool, Russ Bates,
73
- Augustin Žídek, Anna Potapenko, Alex Bridgland, Clemens Meyer, Simon A. A.
74
- Kohl, Andrew J. Ballard, Andrew Cowie, Bernardino Romera-Paredes,
75
- Stanislav Nikolov, Rishub Jain, Jonas Adler, Trevor Back, Stig Petersen,
76
- David Reiman, Ellen Clancy, Michal Zielinski, Martin Steinegger,
77
- Michalina Pacholska, Tamas Berghammer, Sebastian Bodenstein, David
78
- Silver, Oriol Vinyals, Andrew W. Senior, Koray Kavukcuoglu, Pushmeet
79
- Kohli, and Demis Hassabis
80
- - **Model type**: MSA- and template-conditioned protein structure predictor with an Evoformer trunk and invariant-point-attention structure module
81
  - **Original Repository**: [google-deepmind/alphafold](https://github.com/google-deepmind/alphafold)
82
 
83
- ## Feature and geometry contract
84
-
85
- All public model coordinate boundaries consume an explicit finite numerical projection. Unavailable values are selected out under the declared mask before arithmetic or dtype conversion and have zero coordinate derivatives. Active nonfinite values are invalid requests; finite values outside the model dtype range are an unsupported numeric range. Normalization returns the same input carrier type without changing canonical membership, source masks, or source precision. Decode uses prepared atom correspondences. APIs without an availability mask require complete finite model fields.
86
-
87
- The model's atom37/atom14 slots and pseudo-beta convention belong to its residue vocabulary. Template observations and initial model coordinates have separate masks. Physical backbone frames additionally require available, noncollinear defining atoms. Relaxation and its linear-neighbor diagnostics admit only the actual closed standard linear protein graph; sequence labels alone do not certify this chemistry. The clash calculation exempts the admitted peptide C–N pair and has no blanket exemption for slot 5 or putative disulfides.
88
-
89
  ## Usage
90
 
91
- The model depends on the [`ofoldx`](https://github.com/OTeam-AI4S/OFoldX)
92
- library. Install it with pip:
93
 
94
  ```bash
95
  pip install ofoldx
96
  ```
97
 
98
- ### Structure Prediction
 
 
99
 
100
- Load the concrete folding Pipeline:
101
 
102
  ```python
103
  import ofoldx
104
-
105
  from ofoldx.io import read_structure
106
 
107
  structure, report = read_structure("input.cif")
108
  pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2")
109
- output = pipeline.fold(structure)
110
  ```
111
 
112
- Every prediction is decoded onto the input `Structure`: each residue's atom37
113
- atoms get predicted coordinates in a new frame, and atoms the model does not
114
- predict (ligands, hydrogens, a terminal OXT) have none.
115
-
116
- The Pipeline is callable with the same arguments as `fold`. For staged execution:
117
 
118
- ```python
119
- prepared = pipeline.prepare(structure)
120
- raw = pipeline.forward(prepared.input, num_samples=1)
121
- result = pipeline.postprocess(prepared, raw)
122
- ```
123
 
124
- An ordinary Pipeline returns raw `AlphaFold2Output` values from `forward`.
125
- The CASP14 ensemble returns checkpoint-labelled predictions; its `postprocess`
126
- ranks them and accepts `models_to_relax`, `platform`, and `platform_properties`.
127
- Stages describe the operation and do not prescribe CPU or GPU placement.
128
 
129
- Load the CASP14 five-model ensemble through the same high-level API:
130
 
131
  ```python
 
 
 
 
132
  pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2-casp14")
133
- result = pipeline.fold(structure, num_samples=1, models_to_relax="best", platform="CPU")
134
  best = result.best
135
  ```
136
 
137
- `result.ranked` retains every prediction, its official checkpoint name,
138
- zero-based sample index, and any Amber relaxation result. Equal mean-pLDDT
139
- values retain checkpoint and sample generation order.
140
-
141
- The initial-guess variant consumes a sequence-assigned target--binder
142
- `Structure` and an explicit binder instance:
143
 
144
- ```python
145
- initial_guess_pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2-initial-guess")
146
- result = initial_guess_pipeline.fold(structure, binder_instance_id="binder", num_recycles=4)
147
  ```
148
 
149
- Amber relaxation also remains an independently callable family operation over a
150
- decoded structure.
 
151
 
152
- Install [OpenMM](https://docs.openmm.org/latest/userguide/application/01_getting_started.html)
153
- and [PDBFixer](https://github.com/openmm/pdbfixer) in the same environment before
154
- requesting Amber relaxation, including `models_to_relax="best"`:
155
 
156
- ```bash
157
- conda install -c conda-forge openmm pdbfixer
 
 
 
 
 
 
 
158
  ```
159
 
160
- These packages are required for the requested relaxation operation. The folding
161
- Model and the default unrelaxed prediction use the ordinary OFoldX installation.
 
 
162
 
163
  ## Training Details
164
 
 
 
165
  ### Training Data
166
 
167
- Refer to the AlphaFold 2 and AlphaFold-Multimer papers and supplementary
168
- materials for the upstream training corpora and data construction. OFoldX does
169
- not redistribute those corpora, sequence databases, or template databases.
170
 
171
  ### Training Procedure
172
 
173
- The upstream monomer models use recycling, MSA and template evidence, and the
174
- released auxiliary losses; the pTM variants were fine-tuned with the
175
- predicted-aligned-error head. AlphaFold-Multimer adds paired-MSA and
176
- chain-relative features and interface confidence.
177
 
178
- OFoldX preserves a differentiable final recycle and exposes a masked-MSA
179
- reconstruction loss covering that recycle. It is not the complete released
180
- structural and auxiliary-loss program; MSA, template, and sequence-database
181
  generation remain caller-owned.
182
 
183
  ## Citation
@@ -197,20 +170,33 @@ generation remain caller-owned.
197
  For AlphaFold-Multimer predictions, also cite
198
  [Protein complex prediction with AlphaFold-Multimer](https://doi.org/10.1101/2021.10.04.463034).
199
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200
  ## Contact
201
 
202
- Please use [OFoldX GitHub issues](https://github.com/OTeam-AI4S/OFoldX/issues)
203
- for questions about this implementation or model card. Questions about the
204
- original models should be directed to the upstream AlphaFold authors.
205
 
206
  ## License
207
 
208
  The model weights, implementation, configuration, and documentation distributed by OFoldX are licensed under the
209
  [GNU Affero General Public License](license.md).
210
 
211
- For additional terms and clarifications, please refer to our [License FAQ](license-faq.md).
 
212
 
213
  ```spdx
214
  SPDX-License-Identifier: AGPL-3.0-or-later
215
  ```
216
-
 
14
 
15
  ## Disclaimer
16
 
17
+ This is an UNOFFICIAL implementation of the [Highly accurate protein structure prediction with AlphaFold](https://doi.org/10.1038/s41586-021-03819-2) by John Jumper, et al.
18
+
19
+ The OFFICIAL repository of AlphaFold 2 is at [google-deepmind/alphafold](https://github.com/google-deepmind/alphafold).
20
+
21
+ **The team releasing AlphaFold 2 did not write this model card for this model so this model card has been written by the OFoldX team.**
 
 
 
 
 
22
 
23
  ## Model Details
24
 
25
+ AlphaFold 2 jointly updates MSA and residue-pair representations with an Evoformer, then uses an
26
+ invariant-point-attention structure module to predict backbone frames, side-chain angles, atomic coordinates, and
27
+ confidence. AlphaFold-Multimer extends the model with paired MSAs and chain-relative features for protein complexes.
28
+
29
+ Please refer to the [Training Details](#training-details) section for more information on the training process.
 
 
30
 
31
  ### Variants
32
 
33
+ - **[oteam/alphafold2](https://huggingface.co/oteam/alphafold2)**: Monomer structure prediction with pLDDT confidence.
34
+ - **[oteam/alphafold2-ptm](https://huggingface.co/oteam/alphafold2-ptm)**: Monomer prediction with PAE and pTM confidence.
35
+ - **[oteam/alphafold2-multimer](https://huggingface.co/oteam/alphafold2-multimer)**: Multi-chain protein complex prediction.
36
+ - **[oteam/alphafold2-casp14](https://huggingface.co/oteam/alphafold2-casp14)**: The five-model CASP14 protocol with eight input ensembles per checkpoint.
37
+ - **[oteam/alphafold2-initial-guess](https://huggingface.co/oteam/alphafold2-initial-guess)**: The `model_1_ptm` initial-guess evaluator used by PXDesign.
 
 
 
 
 
 
 
 
38
 
39
  ### Model Specification
40
 
 
51
  - **Upstream attribution**: AlphaFold 2 parameters © 2022 DeepMind Technologies Limited; [parameter license](https://github.com/google-deepmind/alphafold#model-parameters)
52
  - **Upstream source revision**: `c77e5d2a8961d1a353632c462914ff0a32a950f6`
53
  - **Code**: [ofoldx.models.alphafold2](https://github.com/OTeam-AI4S/OFoldX/tree/main/ofoldx/models/alphafold2)
54
+ - **Paper**: [Highly accurate protein structure prediction with AlphaFold](https://doi.org/10.1038/s41586-021-03819-2); [Protein complex prediction with AlphaFold-Multimer](https://doi.org/10.1101/2021.10.04.463034)
55
+ - **Developed by**: John Jumper, Richard Evans, Alexander Pritzel, Tim Green, Michael Figurnov, Olaf Ronneberger,
56
+ Kathryn Tunyasuvunakool, Russ Bates, Augustin Žídek, Anna Potapenko, Alex Bridgland, Clemens Meyer, Simon A. A. Kohl,
57
+ Andrew J. Ballard, Andrew Cowie, Bernardino Romera-Paredes, Stanislav Nikolov, Rishub Jain, Jonas Adler, Trevor Back,
58
+ Stig Petersen, David Reiman, Ellen Clancy, Michal Zielinski, Martin Steinegger, Michalina Pacholska, Tamas Berghammer,
59
+ Sebastian Bodenstein, David Silver, Oriol Vinyals, Andrew W. Senior, Koray Kavukcuoglu, Pushmeet Kohli, and Demis
60
+ Hassabis
61
+ - **Model type**: MSA- and template-conditioned protein structure predictor with an Evoformer trunk and
62
+ invariant-point-attention structure module
 
 
 
63
  - **Original Repository**: [google-deepmind/alphafold](https://github.com/google-deepmind/alphafold)
64
 
 
 
 
 
 
 
65
  ## Usage
66
 
67
+ The model file depends on the [`ofoldx`](https://ofoldx.valhalla.technology/) library. You can install it using pip:
 
68
 
69
  ```bash
70
  pip install ofoldx
71
  ```
72
 
73
+ ### Direct Use
74
+
75
+ #### Structure Prediction
76
 
77
+ You can use this model directly with a pipeline for protein structure prediction:
78
 
79
  ```python
80
  import ofoldx
 
81
  from ofoldx.io import read_structure
82
 
83
  structure, report = read_structure("input.cif")
84
  pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2")
85
+ result = pipeline(structure, seed=7)
86
  ```
87
 
88
+ The result contains predicted structures and confidence values. Each prediction uses a new coordinate frame;
89
+ unpredicted atoms, including ligands, hydrogens, and terminal OXT, have unavailable coordinates.
 
 
 
90
 
91
+ ### Downstream Use
 
 
 
 
92
 
93
+ #### CASP14 Ensemble
 
 
 
94
 
95
+ You can use the five-model ensemble to rank predictions and optionally relax the best structure:
96
 
97
  ```python
98
+ import ofoldx
99
+ from ofoldx.io import read_structure
100
+
101
+ structure, report = read_structure("input.cif")
102
  pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2-casp14")
103
+ result = pipeline(structure, num_samples=1, models_to_relax="best", platform="CPU", seed=7)
104
  best = result.best
105
  ```
106
 
107
+ Each checkpoint evaluates eight input ensembles from shared preparation. `result.ranked` retains checkpoint names,
108
+ sample indices, and relaxation results; equal mean-pLDDT scores retain generation order. Amber relaxation requires
109
+ [OpenMM](https://docs.openmm.org/latest/userguide/application/01_getting_started.html) and
110
+ [PDBFixer](https://github.com/openmm/pdbfixer), installed in the same environment:
 
 
111
 
112
+ ```bash
113
+ conda install -c conda-forge openmm pdbfixer
 
114
  ```
115
 
116
+ Relaxation requires a closed, standard linear protein graph. Relaxed coordinates replace experimental coordinate
117
+ metadata; source identity and independent chemical facts are retained. Ordinary unrelaxed prediction needs neither
118
+ additional package.
119
 
120
+ #### Initial-Guess Evaluation
 
 
121
 
122
+ You can evaluate a sequence-assigned target-binder complex using its existing coordinates as the initial guess:
123
+
124
+ ```python
125
+ import ofoldx
126
+ from ofoldx.io import read_structure
127
+
128
+ structure, report = read_structure("target_binder.cif")
129
+ pipeline = ofoldx.pipeline("fold", model="oteam/alphafold2-initial-guess")
130
+ result = pipeline(structure, binder_instance_id="binder", num_recycles=4, seed=7)
131
  ```
132
 
133
+ The input must contain the named binder instance. The initial guess seeds recycled atom37 positions; the dedicated
134
+ processor retains the target-binder template masking used by PXDesign.
135
+
136
+ See the [pipeline guide](https://github.com/OTeam-AI4S/OFoldX/blob/main/ofoldx/pipelines/README.md) for staged execution and composition.
137
 
138
  ## Training Details
139
 
140
+ AlphaFold 2 is trained for protein structure prediction with structural and masked-MSA objectives.
141
+
142
  ### Training Data
143
 
144
+ The AlphaFold 2 and AlphaFold-Multimer papers describe the upstream protein structure, sequence, and template corpora.
145
+ OFoldX does not redistribute those corpora or databases.
 
146
 
147
  ### Training Procedure
148
 
149
+ The upstream models use recycling and structural and auxiliary objectives. The pTM variants were fine-tuned with a
150
+ predicted-aligned-error head; AlphaFold-Multimer adds paired-MSA and chain-relative features and interface confidence.
 
 
151
 
152
+ OFoldX exposes a differentiable final recycle and a masked-MSA reconstruction objective for that recycle. This does not
153
+ reproduce the complete upstream structural and auxiliary-loss training program. MSA, template, and sequence-database
 
154
  generation remain caller-owned.
155
 
156
  ## Citation
 
170
  For AlphaFold-Multimer predictions, also cite
171
  [Protein complex prediction with AlphaFold-Multimer](https://doi.org/10.1101/2021.10.04.463034).
172
 
173
+ > [!NOTE]
174
+ > The artifacts distributed in this repository are part of the OFoldX project.
175
+ > If OFoldX supports your research, please cite the OFoldX project as follows:
176
+
177
+ ```bibtex
178
+ @software{chen2026ofoldx,
179
+ author = {Chen, Zhiyuan},
180
+ title = {OFoldX},
181
+ year = {2026},
182
+ url = {https://github.com/OTeam-AI4S/OFoldX},
183
+ }
184
+ ```
185
+
186
  ## Contact
187
 
188
+ Please use GitHub issues of [OFoldX](https://github.com/OTeam-AI4S/OFoldX/issues) for any questions or comments on the model implementation or model card.
189
+
190
+ Please contact the authors of the [AlphaFold 2 paper](https://doi.org/10.1038/s41586-021-03819-2) for questions or comments on the paper/model.
191
 
192
  ## License
193
 
194
  The model weights, implementation, configuration, and documentation distributed by OFoldX are licensed under the
195
  [GNU Affero General Public License](license.md).
196
 
197
+ For additional terms and clarifications, please refer to our
198
+ [License FAQ](license-faq.md).
199
 
200
  ```spdx
201
  SPDX-License-Identifier: AGPL-3.0-or-later
202
  ```