wuxing0105 commited on
Commit
6aab6b3
·
verified ·
1 Parent(s): 15c0a1f

Upload folder using huggingface_hub

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +3 -0
  2. .github/workflows/python-publish.yml +59 -0
  3. .gitignore +217 -0
  4. .ms_upload_cache +0 -0
  5. LICENSE +21 -0
  6. README.md +282 -0
  7. conf/config.json +18 -0
  8. conf/example/7rpz.cif +0 -0
  9. conf/example/8r3a.cif +0 -0
  10. conf/example/README.md +434 -0
  11. conf/example/binding_disordered_peptides/tpp4.yaml +11 -0
  12. conf/example/binding_disordered_regions_of_proteins/hoxd13.cif +0 -0
  13. conf/example/binding_disordered_regions_of_proteins/hoxd13.yaml +55 -0
  14. conf/example/binding_disordered_regions_of_proteins/npm1.cif +0 -0
  15. conf/example/binding_disordered_regions_of_proteins/npm1.yaml +28 -0
  16. conf/example/binding_disordered_regions_of_proteins/nup98.cif +0 -0
  17. conf/example/binding_disordered_regions_of_proteins/nup98.yaml +20 -0
  18. conf/example/cyclic_against_hiv_antibody_site/9d3d.cif +0 -0
  19. conf/example/cyclic_against_hiv_antibody_site/9d3d.yaml +40 -0
  20. conf/example/cyclotide/3ivq.cif +0 -0
  21. conf/example/cyclotide/3ivq.yaml +34 -0
  22. conf/example/cyclotide/5wrd.cif +0 -0
  23. conf/example/cyclotide/5wrd.yaml +34 -0
  24. conf/example/cylcic_against_kras_with_specific_site/8jjs.cif +0 -0
  25. conf/example/cylcic_against_kras_with_specific_site/cyclicdesign.yaml +26 -0
  26. conf/example/denovo_zinc_finger_against_dna/vanilla_protein.yaml +16 -0
  27. conf/example/denovo_zinc_finger_against_dna/zf.cif +0 -0
  28. conf/example/denovo_zinc_finger_against_dna/zinc_finger.yaml +40 -0
  29. conf/example/design_spec_showcasing_all_functionalities.yaml +191 -0
  30. conf/example/disulfide_peptide_with_betahairpin_conditioning/7nre.cif +0 -0
  31. conf/example/disulfide_peptide_with_betahairpin_conditioning/cropped_target.yaml +33 -0
  32. conf/example/disulfide_peptide_with_betahairpin_conditioning/proximity_cropped_target.yaml +43 -0
  33. conf/example/double_disulfide_peptide_against_specific_site/8wtw.cif +0 -0
  34. conf/example/double_disulfide_peptide_against_specific_site/norepinephrine.yaml +29 -0
  35. conf/example/fab_scaffolds/adalimumab.6cr1.cif +0 -0
  36. conf/example/fab_scaffolds/adalimumab.6cr1.yaml +95 -0
  37. conf/example/fab_scaffolds/belimumab.5y9k.cif +0 -0
  38. conf/example/fab_scaffolds/belimumab.5y9k.yaml +95 -0
  39. conf/example/fab_scaffolds/crenezumab.5vzy.cif +0 -0
  40. conf/example/fab_scaffolds/crenezumab.5vzy.yaml +95 -0
  41. conf/example/fab_scaffolds/dupilumab.6wgb.cif +0 -0
  42. conf/example/fab_scaffolds/dupilumab.6wgb.yaml +95 -0
  43. conf/example/fab_scaffolds/golimumab.5yoy.cif +0 -0
  44. conf/example/fab_scaffolds/golimumab.5yoy.yaml +95 -0
  45. conf/example/fab_scaffolds/guselkumab.4m6m.cif +0 -0
  46. conf/example/fab_scaffolds/guselkumab.4m6m.yaml +95 -0
  47. conf/example/fab_scaffolds/mab1.3h42.cif +0 -0
  48. conf/example/fab_scaffolds/mab1.3h42.yaml +95 -0
  49. conf/example/fab_scaffolds/necitumumab.6b3s.cif +0 -0
  50. conf/example/fab_scaffolds/necitumumab.6b3s.yaml +95 -0
.gitattributes CHANGED
@@ -33,3 +33,6 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ conf/img/cover.png filter=lfs diff=lfs merge=lfs -text
37
+ conf/img/fig1.png filter=lfs diff=lfs merge=lfs -text
38
+ model/boltzgen/data/feature/__pycache__/featurizer._prepare_msa_arrays_inner-545.py311.1.nbc filter=lfs diff=lfs merge=lfs -text
.github/workflows/python-publish.yml ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This workflow will upload a Python Package to PyPI when a release is created
2
+ # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries
3
+
4
+ name: Upload Python Package
5
+
6
+ on:
7
+ release:
8
+ types: [published]
9
+
10
+ permissions:
11
+ contents: read
12
+
13
+ jobs:
14
+ release-build:
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+
20
+ - uses: actions/setup-python@v5
21
+ with:
22
+ python-version: "3.12"
23
+
24
+ - name: Build release distributions
25
+ run: |
26
+ python -m pip install build
27
+ python -m build
28
+
29
+ - name: Upload distributions
30
+ uses: actions/upload-artifact@v4
31
+ with:
32
+ name: release-dists
33
+ path: dist/
34
+
35
+ pypi-publish:
36
+ runs-on: ubuntu-latest
37
+ needs:
38
+ - release-build
39
+ permissions:
40
+ # IMPORTANT: this permission is mandatory for trusted publishing
41
+ id-token: write
42
+
43
+ # Dedicated environments with protections for publishing are strongly recommended.
44
+ # For more information, see: https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment#deployment-protection-rules
45
+ environment:
46
+ name: pypi
47
+ url: https://pypi.org/p/boltzgen
48
+
49
+ steps:
50
+ - name: Retrieve release distributions
51
+ uses: actions/download-artifact@v4
52
+ with:
53
+ name: release-dists
54
+ path: dist/
55
+
56
+ - name: Publish release distributions to PyPI
57
+ uses: pypa/gh-action-pypi-publish@release/v1
58
+ with:
59
+ packages-dir: dist/
.gitignore ADDED
@@ -0,0 +1,217 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ scripts/bindcraft/utils.py
2
+ .tmp_wandb
3
+ # OneScience package runtime assets and generated outputs
4
+ weight/*.ckpt
5
+ weight/mols.zip
6
+ weight/mols/
7
+ output/
8
+ *.ipynb
9
+ !filter.ipynb
10
+ !similarity.ipynb
11
+ cache
12
+ results
13
+ workdir
14
+ workbench
15
+ .vscode/
16
+ wandb
17
+ tmp
18
+ slurm_out
19
+ small_data
20
+ .idea
21
+ *.pkl
22
+ *.out
23
+ .DS_Store
24
+
25
+ # Development files
26
+ .vscode
27
+ outputs/
28
+ workdir
29
+ results
30
+ notebooks/
31
+ *.ckpt
32
+ samples/
33
+ workbench
34
+ workdir_fold
35
+ wandb
36
+ tmp
37
+ debug.txt
38
+ *.pt
39
+
40
+ # Byte-compiled / optimized / DLL files
41
+ __pycache__/
42
+ *.py[cod]
43
+ *$py.class
44
+
45
+ # C extensions
46
+ *.so
47
+
48
+ # Distribution / packaging
49
+ .Python
50
+ build/
51
+ develop-eggs/
52
+ dist/
53
+ downloads/
54
+ eggs/
55
+ .eggs/
56
+ lib/
57
+ lib64/
58
+ parts/
59
+ sdist/
60
+ var/
61
+ wheels/
62
+ share/python-wheels/
63
+ *.egg-info/
64
+ .installed.cfg
65
+ *.egg
66
+ MANIFEST
67
+
68
+ # PyInstaller
69
+ # Usually these files are written by a python script from a template
70
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
71
+ *.manifest
72
+ *.spec
73
+
74
+ # Installer logs
75
+ pip-log.txt
76
+ pip-delete-this-directory.txt
77
+
78
+ # Unit test / coverage reports
79
+ htmlcov/
80
+ .tox/
81
+ .nox/
82
+ .coverage
83
+ .coverage.*
84
+ .cache
85
+ nosetests.xml
86
+ coverage.xml
87
+ *.cover
88
+ *.py,cover
89
+ .hypothesis/
90
+ .pytest_cache/
91
+ cover/
92
+
93
+ # Translations
94
+ *.mo
95
+ *.pot
96
+
97
+ # Django stuff:
98
+ *.log
99
+ local_settings.py
100
+ db.sqlite3
101
+ db.sqlite3-journal
102
+
103
+ # Flask stuff:
104
+ instance/
105
+ .webassets-cache
106
+
107
+ # Scrapy stuff:
108
+ .scrapy
109
+
110
+ # Sphinx documentation
111
+ docs/_build/
112
+
113
+ # PyBuilder
114
+ .pybuilder/
115
+ target/
116
+
117
+ # Jupyter Notebook
118
+ .ipynb_checkpoints
119
+
120
+ # IPython
121
+ profile_default/
122
+ ipython_config.py
123
+
124
+ # pyenv
125
+ # For a library or package, you might want to ignore these files since the code is
126
+ # intended to run in multiple environments; otherwise, check them in:
127
+ # .python-version
128
+
129
+ # pipenv
130
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
131
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
132
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
133
+ # install all needed dependencies.
134
+ #Pipfile.lock
135
+
136
+ # poetry
137
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
138
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
139
+ # commonly ignored for libraries.
140
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
141
+ #poetry.lock
142
+
143
+ # pdm
144
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
145
+ #pdm.lock
146
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
147
+ # in version control.
148
+ # https://pdm.fming.dev/#use-with-ide
149
+ .pdm.toml
150
+
151
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
152
+ __pypackages__/
153
+
154
+ # Celery stuff
155
+ celerybeat-schedule
156
+ celerybeat.pid
157
+
158
+ # SageMath parsed files
159
+ *.sage.py
160
+
161
+ # Environments
162
+ .env
163
+ .venv
164
+ env/
165
+ venv/
166
+ ENV/
167
+ env.bak/
168
+ venv.bak/
169
+
170
+ # Spyder project settings
171
+ .spyderproject
172
+ .spyproject
173
+
174
+ # Rope project settings
175
+ .ropeproject
176
+
177
+ # mkdocs documentation
178
+ /site
179
+
180
+ # mypy
181
+ .mypy_cache/
182
+ .dmypy.json
183
+ dmypy.json
184
+
185
+ # ruff
186
+ .ruff_cache/
187
+
188
+ # Pyre type checker
189
+ .pyre/
190
+
191
+ # pytype static type analyzer
192
+ .pytype/
193
+
194
+ # Cython debug symbols
195
+ cython_debug/
196
+
197
+ # PyCharm
198
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
199
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
200
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
201
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
202
+ #.idea/
203
+
204
+ # Scratch dir
205
+ scratch
206
+
207
+ # pt and yaml files
208
+ *.pt
209
+
210
+ data/PepPC/
211
+ data/PepPC*
212
+ *.err
213
+ *.csv
214
+ data/test_set
215
+ visualization_data_designed_only
216
+ visualization_results_designed_only
217
+ similarity.ipynb
.ms_upload_cache ADDED
The diff for this file is too large to render. See raw diff
 
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Hannes Stärk
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
README.md ADDED
@@ -0,0 +1,282 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ frameworks:
3
+ - PyTorch
4
+ language:
5
+ - en
6
+ license: mit
7
+ tags:
8
+ - OneScience
9
+ - bioscience
10
+ - protein-design
11
+ - binder-design
12
+ - BoltzGen
13
+ tasks:
14
+ - protein-design
15
+ ---
16
+
17
+ <p align="center">
18
+ <strong>
19
+ <span style="font-size: 30px;">BoltzGen</span>
20
+ </strong>
21
+ </p>
22
+
23
+ # Model Introduction
24
+
25
+ BoltzGen is a generative model for biomolecular binder design. Given a protein, peptide, nucleic acid, or small-molecule target together with design constraints, BoltzGen can generate candidate three-dimensional structures, perform inverse folding to generate amino acid sequences, and use Boltz-2 for structure refolding, confidence analysis, filtering, and ranking.
26
+
27
+ Official project: https://github.com/HannesStark/boltzgen
28
+
29
+ # Model Description
30
+
31
+ The complete design pipeline consists of six stages:
32
+
33
+ 1. `design`: A diffusion model generates candidate three-dimensional backbones satisfying the target and design constraints;
34
+ 2. `inverse_folding`: An inverse-folding model generates amino acid sequences for the candidate backbones;
35
+ 3. `folding`: Boltz-2 predicts structures for the designed sequences;
36
+ 4. `design_folding`: The designs are folded again under the design conditions to evaluate adherence to the specified constraints;
37
+ 5. `analysis`: RMSD, confidence scores, sequence composition, and other quality metrics are calculated;
38
+ 6. `filtering`: Candidates are filtered and ranked according to predefined thresholds, and structure files, CSV files, and summary PDFs are generated.
39
+
40
+ The model package contains the following major pretrained checkpoints:
41
+
42
+ - `boltzgen1_diverse.ckpt`: diffusion design model emphasizing structural diversity;
43
+ - `boltzgen1_adherence.ckpt`: diffusion design model emphasizing adherence to design conditions;
44
+ - `boltzgen1_ifold.ckpt`: inverse-folding model for amino acid sequence generation;
45
+ - `boltz2_conf_final.ckpt`: Boltz-2 structure prediction and confidence model;
46
+ - `boltz2_aff.ckpt`: affinity model used for protein-small-molecule tasks.
47
+
48
+ # Use Cases
49
+
50
+ | Use Case | Description |
51
+ | :---: | :--- |
52
+ | Protein binder design | Generate binder backbones and amino acid sequences for a specified protein target. |
53
+ | Peptide and cyclic peptide design | Generate linear peptides, cyclic peptides, disulfide-containing peptides, and related candidate structures. |
54
+ | Antibody and nanobody design | Generate candidate designs using framework, CDR, or binding-site constraints. |
55
+ | Small-molecule binder design | Design proteins targeting small molecules and optionally calculate affinity-related model scores. |
56
+ | Inverse folding | Generate candidate amino acid sequences for a given protein backbone. |
57
+ | Training pipeline validation | Use the official training entry point to validate data loading, forward propagation, loss computation, backward propagation, and parameter updates. |
58
+
59
+ # Usage
60
+
61
+ ## 1. OneCode
62
+
63
+ You can use the OneCode online environment for an intelligent one-click AI4S programming experience:
64
+
65
+ [Try OneCode for AI4S Programming](https://web-2069360198568017922-iaaj.ksai.scnet.cn:58043/home)
66
+
67
+ ## 2. Manual Installation
68
+
69
+ **Hardware Requirements**
70
+
71
+ - Supports DCU devices in the OneScience DTK environment;
72
+ - DTK/HIP devices are accessed through PyTorch's `torch.cuda` compatibility interface;
73
+ - The complete design pipeline is recommended to run on DCU;
74
+ - CPU execution is currently suitable mainly for package import, configuration validation, and lightweight data inspection.
75
+
76
+ ### Download the Model Package
77
+
78
+ Install the Hugging Face command-line tool and download the model repository:
79
+
80
+ ```bash
81
+ python -m pip install -U huggingface_hub
82
+
83
+ hf download OneScience-Group/BoltzGen --local-dir ./BoltzGen
84
+ cd BoltzGen
85
+ ```
86
+
87
+ ### Install the Runtime Environment
88
+
89
+ **DCU Environment**
90
+
91
+ ```bash
92
+ conda create -n onescience311 python=3.11 -y
93
+ conda activate onescience311
94
+
95
+ python -m pip install "onescience[bio-dcu]" \
96
+ -i http://mirrors.onescience.ai:3141/pypi/simple/ \
97
+ --trusted-host mirrors.onescience.ai
98
+ ```
99
+
100
+ Install the additional BoltzGen dependencies on top of the OneScience environment.
101
+
102
+ The `bf16-mixed` configuration used by BoltzGen cannot be parsed by the older `pytorch-lightning==1.8.6`, so PyTorch Lightning has been upgraded to `pytorch-lightning==2.5.6` in the adapted environment:
103
+
104
+ ```bash
105
+ python -m pip install --no-deps -r requirements.txt
106
+ ```
107
+
108
+ Verify that the BoltzGen command-line entry point can be imported successfully:
109
+
110
+ ```bash
111
+ python scripts/boltzgen.py --help
112
+ ```
113
+
114
+ ### Weights and Molecular Dictionary Preparation
115
+
116
+ The official checkpoints are stored under `weight/`:
117
+
118
+ | Relative Path | Purpose |
119
+ | --- | --- |
120
+ | `weight/boltzgen1_diverse.ckpt` | Binder backbone diffusion model emphasizing structural diversity |
121
+ | `weight/boltzgen1_adherence.ckpt` | Binder backbone diffusion model emphasizing adherence to design conditions |
122
+ | `weight/boltzgen1_ifold.ckpt` | Inverse-folding model for sequence generation |
123
+ | `weight/boltz2_conf_final.ckpt` | Boltz-2 structure prediction and confidence model |
124
+ | `weight/boltz2_aff.ckpt` | Affinity model for protein-small-molecule tasks |
125
+ | `weight/mols` | CCD molecular dictionary required for inference |
126
+
127
+ ### Minimal DCU Inference
128
+
129
+ **Purpose:** Use the official `1g13` example and local checkpoints to run a complete protein binder design pipeline with one candidate.
130
+
131
+ First, enable offline mode:
132
+
133
+ ```bash
134
+ export HF_HUB_OFFLINE=1
135
+ export TRANSFORMERS_OFFLINE=1
136
+ export HF_DATASETS_OFFLINE=1
137
+ ```
138
+
139
+ These environment variables prevent compute nodes from attempting to access external networks.
140
+
141
+ Generate the pipeline configuration:
142
+
143
+ ```bash
144
+ python scripts/boltzgen.py configure \
145
+ conf/example/vanilla_protein/1g13prot.yaml \
146
+ --output output/dcu_minimal \
147
+ --protocol protein-anything \
148
+ --num_designs 1 \
149
+ --budget 1 \
150
+ --devices 1 \
151
+ --num_workers 0 \
152
+ --use_kernels false \
153
+ --moldir weight/mols \
154
+ --design_checkpoints \
155
+ weight/boltzgen1_diverse.ckpt \
156
+ weight/boltzgen1_adherence.ckpt \
157
+ --inverse_fold_checkpoint weight/boltzgen1_ifold.ckpt \
158
+ --folding_checkpoint weight/boltz2_conf_final.ckpt
159
+ ```
160
+
161
+ This command only generates the stage-specific configuration files under:
162
+
163
+ ```text
164
+ output/dcu_minimal/config/
165
+ ```
166
+
167
+ It does not execute model inference.
168
+
169
+ Successful configuration indicates that the design input, checkpoint paths, molecular dictionary, and pipeline parameters can be parsed correctly.
170
+
171
+ Execute the complete pipeline:
172
+
173
+ ```bash
174
+ python scripts/boltzgen.py execute output/dcu_minimal
175
+ ```
176
+
177
+ This command executes all six configured stages.
178
+
179
+ If every stage exits with code `0`, the end-to-end engineering pipeline is operational. Whether the final candidates are useful designs must still be evaluated using the filtering CSV files, structural quality metrics, and experimental validation.
180
+
181
+ For protein-small-molecule protocols, add the following option during configuration:
182
+
183
+ ```text
184
+ --affinity_checkpoint weight/boltz2_aff.ckpt
185
+ ```
186
+
187
+ This enables the affinity checkpoint.
188
+
189
+ The resulting affinity-related values are intended for model-based evaluation and candidate comparison and should not be interpreted directly as experimentally measured binding constants.
190
+
191
+ ### Stage-Specific Recovery
192
+
193
+ **Purpose:** Reuse existing configuration files and intermediate results when a pipeline is interrupted or only one stage needs to be rerun.
194
+
195
+ For example, to rerun only the final filtering stage:
196
+
197
+ ```bash
198
+ python scripts/boltzgen.py execute output/dcu_minimal --steps filtering
199
+ ```
200
+
201
+ After successful execution, the command regenerates the ranking table, candidate structures, and summary PDF under:
202
+
203
+ ```text
204
+ output/dcu_minimal/final_ranked_designs/
205
+ ```
206
+
207
+ Successful filtering does not necessarily mean that any candidate passes the default thresholds. The number of accepted candidates and the specific failed metrics should also be inspected.
208
+
209
+ ### Inference Outputs
210
+
211
+ The main output structure is:
212
+
213
+ ```text
214
+ output/dcu_minimal/
215
+ ├── config/ # Actual configuration for the six pipeline stages
216
+ ├── design/ # Candidate backbones generated by the diffusion models
217
+ ├── inverse_folding/ # Sequences generated by inverse folding
218
+ ├── folding/ # Refolded sequence structures
219
+ ├── design_folding/ # Design-conditioned refolding results
220
+ ├── analysis/ # Candidate quality metrics
221
+ └── final_ranked_designs/ # Ranked candidates, structures, and summary PDF
222
+ ```
223
+
224
+ Use `final_ranked_designs/` to inspect candidate rankings and quality summaries.
225
+
226
+ The absence of NaN or Inf values in structural coordinates only indicates that the numerical output is valid. It does not by itself establish structural plausibility, binding activity, or experimental validity.
227
+
228
+ ### Minimal Training Pipeline
229
+
230
+ BoltzGen provides an official PyTorch Lightning training entry point for the following model configurations:
231
+
232
+ | Configuration | Trainable Model |
233
+ | --- | --- |
234
+ | `inverse_folding.yaml` | Inverse-folding sequence generation model |
235
+ | `boltzgen_small.yaml` | Small BoltzGen structural diffusion model |
236
+ | `boltzgen.yaml` | Large BoltzGen structural diffusion model |
237
+
238
+ Run the prepared minimal training configuration:
239
+
240
+ ```bash
241
+ python scripts/train.py conf/train_boltzgen_small_smoke.yaml
242
+ ```
243
+
244
+ This command invokes the official training entry point.
245
+
246
+ If one batch completes successfully and the process exits with code `0`, the following components have been validated:
247
+
248
+ - DataLoader;
249
+ - Feature construction;
250
+ - Forward propagation;
251
+ - Loss computation;
252
+ - Backward propagation;
253
+ - `optimizer.step`.
254
+
255
+ This smoke test only verifies that the training pipeline is executable. It does not indicate model convergence or usable prediction quality.
256
+
257
+ Formal training requires data in the official BoltzGen format, including:
258
+
259
+ ```text
260
+ targets/structures/
261
+ targets/records/
262
+ manifest.json
263
+ MSA
264
+ mols
265
+ ```
266
+
267
+ Legacy OpenFold structure NPZ files require field-level compatibility conversion before they can be used by the BoltzGen training pipeline.
268
+
269
+ The complete training dataset must therefore be prepared according to the official BoltzGen data schema.
270
+
271
+ # OneScience Official Resources
272
+
273
+ | Platform | OneScience Main Repository | Skills Repository |
274
+ | --- | --- | --- |
275
+ | Gitee | https://gitee.com/onescience-ai/onescience | https://gitee.com/onescience-ai/oneskills |
276
+ | GitHub | https://github.com/onescience-ai/OneScience | https://github.com/onescience-ai/oneskills |
277
+
278
+ # Citation and License
279
+
280
+ - Official implementation: https://github.com/HannesStark/boltzgen
281
+ - The upstream BoltzGen source code is distributed under the MIT License. See the top-level `LICENSE` file for details.
282
+ - Model checkpoints, RCSB PDB-derived data, OpenFold-derived data, training datasets, and other third-party assets remain subject to their respective original licenses, copyright notices, and terms of use.
conf/config.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "protocol": "protein-anything",
3
+ "design_spec": "conf/example/vanilla_protein/1g13prot.yaml",
4
+ "output": "output/dcu_minimal",
5
+ "devices": 1,
6
+ "num_workers": 0,
7
+ "num_designs": 1,
8
+ "budget": 1,
9
+ "use_kernels": false,
10
+ "weights": {
11
+ "design_diverse": "weight/boltzgen1_diverse.ckpt",
12
+ "design_adherence": "weight/boltzgen1_adherence.ckpt",
13
+ "inverse_fold": "weight/boltzgen1_ifold.ckpt",
14
+ "folding": "weight/boltz2_conf_final.ckpt",
15
+ "affinity": "weight/boltz2_aff.ckpt"
16
+ },
17
+ "moldir": "weight/mols"
18
+ }
conf/example/7rpz.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/8r3a.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/README.md ADDED
@@ -0,0 +1,434 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # How to make a design specification .yaml
2
+
3
+
4
+ **IMPORTANT:** ⚠️ All residue indices are specified **starting at 1** and we use the canonical mmcif residue index `label_asym_id`, and **not** the `auth_asym_id` author residue index!
5
+ You can check the indexing in your mmcif file by opening it in https://molstar.org/viewer/, hovering over a residue, and checking the index on the bottom right. You will see something like this where **41 is the index we use, the auth id 22 is incorrect**:
6
+
7
+ ![](../assets/label_seq_id.png)
8
+
9
+ After you constructed your `.yaml` file we recommend that you run the `check` command on it:
10
+ 1. Run `boltzgen check example/vanilla_peptide_with_target_binding_site/beetletert.yaml`.
11
+ 2. Visualize the resulting mmcif file in a protein structure viewer (e.g. PyMOL, Chimera, or online: https://molstar.org/viewer/).
12
+ 3. Your viewer should show the binding site in a different color than the rest of the target.
13
+
14
+
15
+ # Example based explanation:
16
+ We provide many example `.yaml` files in the `example/` directory, including:
17
+
18
+ - [design_spec_showcasing_all_functionalities.yaml](design_spec_showcasing_all_functionalities.yaml)
19
+ - [vanilla_peptide_with_target_binding_site/beetletert.yaml](vanilla_peptide_with_target_binding_site/beetletert.yaml)
20
+ - [peptide_against_specific_site_on_ragc/rragc.yaml](peptide_against_specific_site_on_ragc/rragc.yaml)
21
+ - [nanobody/penguinpox.yaml](nanobody/penguinpox.yaml)
22
+ - [fab_targets/pdl1.yaml](fab_targets/pdl1.yaml)
23
+ - [denovo_zinc_finger_against_dna/zinc_finger.yaml](denovo_zinc_finger_against_dna/zinc_finger.yaml)
24
+ - [protein_binding_small_molecule/chorismite.yaml](protein_binding_small_molecule/chorismite.yaml)
25
+ - [small_molecule_from_file_and_smiles/4g37.yaml](small_molecule_from_file_and_smiles/4g37.yaml)
26
+
27
+ Small example of a protein design against a target protein without binding site specified:
28
+ ```yaml
29
+ entities:
30
+ # Designed protein with between 80 and 140 residues
31
+ # (The length is randomly sampled)
32
+ - protein:
33
+ id: B
34
+ sequence: 80..140
35
+
36
+ # The target is extracted from a .cif file
37
+ - file:
38
+ path: hard_targets/6m1u.cif
39
+
40
+ # Which chain in the .cif file to use as target (uses all chains if unspecified)
41
+ include:
42
+ - chain:
43
+ id: A
44
+ ```
45
+
46
+ **IMPORTANT:** ⚠️ File references inside a yaml file (e.g. to cif files) are interpreted relative to the directory of the yaml file.
47
+
48
+
49
+ Example highlighting many (not all) functionalities:
50
+ ```yaml
51
+ entities:
52
+ # Specification of the target which is extracted from a .cif file
53
+ - file:
54
+ path: 8r3a.cif
55
+
56
+ # Which chain and residues in the .cif file to use as target (uses all chains if unspecified)
57
+ include:
58
+ - chain:
59
+ id: A
60
+ res_index: 2..50,55.. # residues between 2 and 50 and anything larger than 55
61
+ - chain:
62
+ id: B
63
+
64
+ # Which regions of the target the design should or should NOT
65
+ # bind to (this can be left unspecified, then we just bind anywhere)
66
+ binding_types:
67
+ - chain:
68
+ id: A
69
+ binding: 5..7,13
70
+ - chain:
71
+ id: B
72
+ not_binding: "all"
73
+
74
+ # Which regions of the target should have their structure specified.
75
+ # By default, everything is visibility 1 which means that the structure is specified.
76
+ # If the visibility is 0, then the structure is not specified.
77
+ structure_groups:
78
+ - group:
79
+ visibility: 1
80
+ id: A
81
+ res_index: 10..13
82
+ - group:
83
+ # The relative positioning of things in structure group 2
84
+ # is not specified w.r.t to things in structure group 1
85
+ visibility: 2
86
+ id: B
87
+ # Overwrite the previous visibility setting and set it to 0 for res_index 13
88
+ - group:
89
+ visibility: 0
90
+ id: A
91
+ res_index: 13
92
+
93
+ # Optionally you can say that some residues in a loaded .cif file should also be redesigned.
94
+ design:
95
+ - chain:
96
+ id: A
97
+ res_index: 14..19
98
+
99
+ # For designed regions you can say what secondary structure they should have
100
+ secondary_structure:
101
+ - chain:
102
+ id: A
103
+ loop: 14
104
+ helix: 15..17
105
+ sheet: 19
106
+
107
+ # Specify a NON-designed protein chain
108
+ - protein:
109
+ id: X
110
+ sequence: AAVTTTTPPP
111
+
112
+ # Specify a designed protein chain
113
+ # Numbers specify what is being designed
114
+ - protein:
115
+ id: G
116
+ # random number between 15 and 20 of designed residues (inclusive)
117
+ sequence: 15..20AAAAAAVTTTT18PPP
118
+
119
+ # A designed helical peptides with WHL staple
120
+ # (see the constraints below that connect the peptide with the WHL ligand)
121
+ - protein:
122
+ id: R
123
+ # Random number of design residues between 3 and 5,
124
+ # then a Cysteine, then 6 design residues, then ...
125
+ sequence: 3..5C6C3
126
+ - ligand:
127
+ id: Q
128
+ ccd: WHL
129
+
130
+ # A designed peptide with 17 residues
131
+ - protein:
132
+ id: H
133
+ sequence: 17
134
+
135
+ # specification for a designed peptide with two Cys and a disulfide bond (see constraints)
136
+ - protein:
137
+ id: S
138
+ sequence: 10..14C6C3
139
+
140
+ constraints:
141
+ # specify connections as if the minimum possible number of residues was sampled
142
+ - bond:
143
+ atom1: [R, 4, SG] # connection for a helical peptides with WHL staple between small molecule and designed peptide
144
+ atom2: [Q, 1, CK]
145
+ - bond:
146
+ atom1: [R, 11, SG] # connection for a helical peptides with WHL staple between small molecule and designed peptide
147
+ atom2: [Q, 1, CH]
148
+ - bond:
149
+ atom1: [S, 11, SG] # connection for a disulfide bond between Cys and Cys in designed peptide
150
+ atom2: [S, 18, SG]
151
+
152
+ ```
153
+
154
+
155
+ # Detailed Explanation
156
+
157
+ ```yaml
158
+ entities:
159
+ # Define proteins, ligands, and structure files
160
+ - protein: ...
161
+ - ligand: ...
162
+ - file: ...
163
+
164
+ constraints:
165
+ # Define bonds and total length constraints
166
+ - bond: ...
167
+ - total_len: ...
168
+ ```
169
+
170
+ ### Entities Section
171
+
172
+ The `entities` section defines all the components of your design:
173
+
174
+ #### Protein Sequences
175
+
176
+ Define custom protein sequences with design flexibility:
177
+
178
+ ```yaml
179
+ entities:
180
+ - protein:
181
+ id: G # Unique identifier
182
+ sequence: 15..20AAAAAAVTTTT18PPP # Mix of fixed residues and design regions
183
+ binding_types: uuuuBBBuNNNuBuu # Binding specifications (optional)
184
+ secondary_structure: HHHLLLEEE # Secondary structure constraints for designed regions (optional)
185
+ ```
186
+
187
+ **Sequence notation:**
188
+ - `15..20` - Design between 15-20 residues (inclusive)
189
+ - `AAAA` - Fixed amino acid sequence
190
+ - `18` - Design exactly 18 residues
191
+ - `3..5C6C3` - Variable design residues, then fixed Cys, then more design
192
+
193
+ **Binding types:**
194
+ - `B` - Binding residue
195
+ - `N` - Non-binding residue
196
+ - `u` - Unspecified (default)
197
+ - Can specify as string: `uuuuBBBuNNNuBuu`
198
+ - Or as ranges:
199
+ ```yaml
200
+ binding_types:
201
+ binding: 5..7,13 # Residues 5-7 and 13 are binding
202
+ not_binding: 9..11 # Residues 9-11 are non-binding
203
+ ```
204
+
205
+ #### Ligands
206
+
207
+ Define small molecule ligands using CCD codes or SMILES:
208
+
209
+ ```yaml
210
+ # Using Chemical Component Dictionary (CCD) code
211
+ entities:
212
+ - ligand:
213
+ id: [E, F] # specify list of IDs to copy the entity
214
+ ccd: WHL
215
+ binding_types: B
216
+
217
+ # Using SMILES string
218
+ entities:
219
+ - ligand:
220
+ id: Q
221
+ smiles: 'N[C@@H](Cc1ccc(O)cc1)C(=O)O'
222
+ binding_types: B
223
+ ```
224
+
225
+ #### Structure Files
226
+
227
+ Include existing protein structures from PDB/mmCIF files:
228
+
229
+ ```yaml
230
+ entities:
231
+ - file:
232
+ path: 7rpz.cif
233
+
234
+ # Include specific chains
235
+ include:
236
+ - chain:
237
+ id: A
238
+ - chain:
239
+ id: B
240
+
241
+ # Include by proximity
242
+ include_proximity:
243
+ - chain:
244
+ id: A
245
+ res_index: 10..16
246
+ radius: 35
247
+
248
+ # Exclude specific regions
249
+ exclude:
250
+ - chain:
251
+ id: A
252
+ res_index: ..5 # Exclude residues 1-5
253
+
254
+ # Reset residue numbering
255
+ reset_res_index:
256
+ - chain:
257
+ id: A
258
+ ```
259
+
260
+
261
+ # Advanced Options
262
+
263
+ **Design regions:** Specify which residues to redesign
264
+
265
+ ```yaml
266
+ entities:
267
+ ...
268
+ - file:
269
+ ...
270
+ design:
271
+ - chain:
272
+ id: A
273
+ res_index: ..4,20..27 # Redesign residues 1-4 and 20-27
274
+ ```
275
+
276
+ **Secondary structure constraints:**
277
+ ```yaml
278
+ entities:
279
+ ...
280
+ - protein:
281
+ ...
282
+ secondary_structure:
283
+ - chain:
284
+ id: A
285
+ loop: 1 # Residue 1 should be loop
286
+ helix: 2..3 # Residues 2-3 should be helix
287
+ sheet: 4 # Residue 4 should be sheet
288
+ ```
289
+
290
+ **Structure visibility groups:**
291
+ ```yaml
292
+ entities:
293
+ ...
294
+ - file:
295
+ ...
296
+ structure_groups:
297
+ - group:
298
+ visibility: 1 # Visibility level (0=hidden, 1=visible, 2=highlighted)
299
+ id: A
300
+ res_index: 10..16
301
+ ```
302
+
303
+ **Design insertions:**
304
+ ```yaml
305
+ entities:
306
+ ...
307
+ - file:
308
+ ...
309
+ design_insertions:
310
+ - insertion:
311
+ id: A
312
+ res_index: 20 # Insert after residue 20
313
+ num_residues: 2..9 # Insert 2-9 residues
314
+ secondary_structure: HELIX # UNSPECIFIED, LOOP, HELIX, or SHEET
315
+ ```
316
+
317
+ **Binding type specifications:**
318
+ ```yaml
319
+ entities:
320
+ ...
321
+ - protein:
322
+ ...
323
+ binding_types:
324
+ - chain:
325
+ id: A
326
+ binding: 5..7,13
327
+ - chain:
328
+ id: B
329
+ not_binding: "all"
330
+ ```
331
+
332
+ ### Constraints Section
333
+
334
+ Define structural constraints between components:
335
+
336
+ #### Bond Constraints
337
+
338
+ Create covalent bonds between specific atoms:
339
+
340
+ ```yaml
341
+ constraints:
342
+ - bond:
343
+ atom1: [R, 4, SG] # [chain_id, residue_number, atom_name]
344
+ atom2: [Q, 1, CK] # Connect sulfur of Cys-4 in chain R to atom CK in ligand Q
345
+ ```
346
+
347
+ We now support constraints specifications of small molecules from the input file and from smiles. Check `examples/small_molecule_from_file_and_smiles/4g37.yaml`. Below is brief guidelines:
348
+ * Small molecules from the file: check `atom_name` from the CCD and specify it.
349
+ * Small molecules from the smiles: count index of target element from the smiles and specify its element type with index (e.g. C6, for 6th carbon from the smiles).
350
+
351
+ Here is a comprehensive list of all the keys from your YAML file with explanations for each.
352
+
353
+ ***
354
+
355
+ ### Top-Level Keys
356
+
357
+ * `entities`: The main list containing all molecular components of the system, such as proteins, ligands, or imported files.
358
+ * `constraints`: A list of rules or conditions to apply to the system, like specific bonds between entities or total length restrictions.
359
+
360
+ ---
361
+
362
+ ### Entity Types (Keys within the `entities` list)
363
+
364
+ * `protein`: Defines a protein entity.
365
+ * `ligand`: Defines a small molecule ligand.
366
+ * `file`: Specifies an external structure file (e.g., a `.cif` file) to import parts of the system from.
367
+
368
+ ---
369
+
370
+ ### Keys for `protein` Entities
371
+
372
+ * `id`: A unique identifier for the protein chain (e.g., 'A', 'G').
373
+ * `sequence`: Defines the amino acid sequence of the protein. This can include numbers to specify lengths of residues to be designed.
374
+ * `secondary_structure`: Specifies the secondary structure of the protein.
375
+ * `binding_types`: Defines which residues are involved in binding. Can be a string or a more detailed dictionary.
376
+ * `cyclic`: A boolean (`true` or `false`) indicating if the protein is cyclic.
377
+
378
+ ---
379
+
380
+ ### Keys for `ligand` Entities
381
+
382
+ * `id`: A unique identifier for the ligand. Can be a single ID or a list of IDs.
383
+ * `ccd`: The Chemical Component Dictionary ID for the ligand (e.g., 'SAH').
384
+ * `smiles`: The SMILES string representing the ligand's chemical structure.
385
+ * `binding_types`: Specifies binding information, often a simple character like 'B' for binding.
386
+
387
+ ---
388
+
389
+ ### Keys for `file` Entities
390
+
391
+ * `path`: The file path to the structure file to be included (e.g., 'example/7rpz.cif').
392
+ * `msa`: A global flag for Multiple Sequence Alignment for the chains in the file. Can be overwritten by individual chain settings.
393
+ * `include`: Specifies which parts of the file to include. Can be the string `"all"` or a list of chains.
394
+ * `exclude`: Specifies which parts of an included file to exclude.
395
+ * `fuse`: Specifies a chain to which subsequent protein entities will be fused.
396
+ * `include_proximity`: Includes residues from the file that are within a certain distance of a specified chain.
397
+ * `binding_types`: Defines binding interactions for specific chains within the file.
398
+ * `structure_groups`: Defines groups of residues for visualization or other purposes.
399
+ * `design`: Specifies which residues in the included chains are designable.
400
+ * `secondary_structure`: Defines the secondary structure for specific residues within included chains.
401
+ * `design_insertions`: Specifies where to insert new designable residues.
402
+
403
+ ---
404
+
405
+ ### Keys for `constraints`
406
+
407
+ * `bond`: Defines a covalent bond to be formed between two specified atoms in the system.
408
+ * `atom1`: The first atom in the bond.
409
+ * `atom2`: The second atom in the bond.
410
+ * `total_len`: Constrains the total length of the polymeric system.
411
+ * `min`: The minimum allowed total length.
412
+ * `max`: The maximum allowed total length.
413
+
414
+ ---
415
+
416
+ ### Nested Keys (found within multiple entity types)
417
+
418
+ * `chain`: A sub-dictionary used in `include`, `exclude`, `binding_types`, `design`, and `secondary_structure` to specify a particular protein chain.
419
+ * `id`: The identifier of the chain.
420
+ * `msa`: A specific MSA setting for this chain, overriding the global `msa` flag.
421
+ * `res_index`: Specifies a range or list of residue indices.
422
+ * `radius`: Used in `include_proximity` to define a distance in Angstroms.
423
+ * `binding`: Specifies residues that are part of a binding site.
424
+ * `not_binding`: Specifies residues that are not part of a binding site.
425
+ * `loop`, `helix`, `sheet`: Used in `secondary_structure` to define the structure of specific residues.
426
+ * `group`: Used in `structure_groups` to define a residue group.
427
+ * `id`: The identifier of the chain or `"all"`.
428
+ * `visibility`: A numerical value to control how the group is displayed.
429
+ * `res_index`: The residues included in this group.
430
+ * `insertion`: Used in `design_insertions`.
431
+ * `id`: The chain ID where the insertion occurs.
432
+ * `res_index`: The residue index after which the insertion is made.
433
+ * `num_residues`: The number or range of residues to be inserted.
434
+ * `secondary_structure`: The desired secondary structure for the inserted residues (e.g., `HELIX`).
conf/example/binding_disordered_peptides/tpp4.yaml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # random number between 120 and 140 of designed residues (inclusive)
4
+ - protein:
5
+ id: A
6
+ sequence: 120..140
7
+ # Specify a non-designed protein chain
8
+ # fixed 20-mer, all residues fixed
9
+ - protein:
10
+ id: B
11
+ sequence: GGGILPWKWPWWPWRRGGG
conf/example/binding_disordered_regions_of_proteins/hoxd13.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/binding_disordered_regions_of_proteins/hoxd13.yaml ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ - protein:
4
+ id: B
5
+ # random number between 40 and 80 of designed residues (inclusive)
6
+ sequence: 40..80
7
+ # Specification of the target which is extracted from a .cif file
8
+ - file:
9
+ # path to the target structure
10
+ path: hoxd13.cif
11
+ # Which chain and residues in the .cif file to use as target (uses only A: 1..71 here)
12
+ include:
13
+ - chain:
14
+ id: A
15
+ res_index: ..71
16
+ # Which regions of the target should have their structure specified
17
+ # Here we hide the entire target fragment (no coordinates specified)
18
+ structure_groups:
19
+ - group:
20
+ visibility: 0
21
+ id: "all"
22
+ # Which regions of the target the design should or should NOT bind to
23
+ # Here we specify that the design should bind to residues 57..71 on chain A
24
+ binding_types:
25
+ - chain:
26
+ id: A
27
+ binding: 57..71
28
+
29
+ # Specify a non-designed protein chain fused to chain A
30
+ - protein:
31
+ id: C
32
+ fuse: A
33
+ # fixed 8-mer, all residues fixed, and all residues marked as binding
34
+ sequence: AAAAAAAA
35
+ binding_types: BBBBBBBB
36
+
37
+ # Continue pulling from the rest of chain A of the same file and fuse it to chain A
38
+ - file:
39
+ path: hoxd13.cif
40
+ # Subsequently included residues are fused onto chain A
41
+ fuse: A
42
+ # Include the remainder of chain A (residue 72 to the end)
43
+ include:
44
+ - chain:
45
+ id: A
46
+ res_index: 72..
47
+ # Start with all hidden, then explicitly show structure of a tail segment (281 to the end)
48
+ structure_groups:
49
+ - group:
50
+ visibility: 0
51
+ id: "all"
52
+ - group:
53
+ visibility: 1
54
+ id: A
55
+ res_index: 281..
conf/example/binding_disordered_regions_of_proteins/npm1.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/binding_disordered_regions_of_proteins/npm1.yaml ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ - protein:
4
+ id: G
5
+ # random number between 40 and 80 of designed residues (inclusive)
6
+ sequence: 40..80
7
+ # Specification of the target which is extracted from a .cif file
8
+ - file:
9
+ path: npm1.cif
10
+ # Which chain and residues in the .cif file to use as target (uses only chain A here)
11
+ include:
12
+ - chain:
13
+ id: A
14
+ # Which regions of the target the design should or should NOT bind to
15
+ # Here we specify that the design should bind to residues 123..240 on chain Aand not bind to residues 1..122 on chain A
16
+ binding_types:
17
+ - chain:
18
+ id: A
19
+ binding: 123..240
20
+ not_binding: 1..122
21
+ # Which regions of the target should have their structure specified
22
+ # Here we keep structure specified (visible) for two disjoint segments of chain A
23
+ structure_groups:
24
+ - group:
25
+ visibility: 1
26
+ id: A
27
+ res_index: 12..118, 243..291
28
+
conf/example/binding_disordered_regions_of_proteins/nup98.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/binding_disordered_regions_of_proteins/nup98.yaml ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # random number between 40 and 80 of designed residues (inclusive)
4
+ - protein:
5
+ id: G
6
+ sequence: 40..80
7
+ # Specification of the target which is extracted from a .cif file
8
+ - file:
9
+ path: nup98.cif
10
+ # Which chain and residues in the .cif file to use as target (uses only A: 1..400 here)
11
+ include:
12
+ - chain:
13
+ id: A
14
+ res_index: 1..400
15
+ # Which regions of the target should have their structure specified
16
+ # Here we hide the entire included target fragment (no coordinates specified)
17
+ structure_groups:
18
+ - group:
19
+ visibility: 0
20
+ id: "all"
conf/example/cyclic_against_hiv_antibody_site/9d3d.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/cyclic_against_hiv_antibody_site/9d3d.yaml ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specification of the target which is extracted from a .cif file
3
+ - file:
4
+ path: 9d3d.cif
5
+ # Which chain and residues in the .cif file to use as target
6
+ # Here we include chains A, B, and C (all residues on each chain)
7
+ include:
8
+ - chain:
9
+ id: A
10
+ - chain:
11
+ id: B
12
+ - chain:
13
+ id: C
14
+ # Include residues that are within a radius of a reference region
15
+ # Here we include residues within a radius 30 of G:106..118
16
+ include_proximity:
17
+ - chain:
18
+ id: G
19
+ res_index: 106..118
20
+ radius: 30
21
+ # Which regions of the target the design should or should NOT bind to
22
+ # Here we specify that the design should bind to residues 91, 128, and 131 on chains A, B, and C
23
+ binding_types:
24
+ - chain:
25
+ id: A
26
+ binding: 91,128,131
27
+ - chain:
28
+ id: B
29
+ binding: 91,128,131
30
+ - chain:
31
+ id: C
32
+ binding: 91,128,131
33
+
34
+ # Specify a designed protein chain
35
+ # random number between 8 and 18 of designed residues (inclusive)
36
+ - protein:
37
+ id: E
38
+ sequence: 8..18
39
+ # Make the designed protein chain cyclic
40
+ cyclic: True
conf/example/cyclotide/3ivq.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/cyclotide/3ivq.yaml ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ - protein:
4
+ id: B
5
+ # 3 design residues, Cystein, 8 design residues, Cystein,
6
+ # 6 design residues, Cystein, 5 design residues, Cystein,
7
+ # 3 design residues, Cystein, 1 design residue, Cystein, 2 design residues
8
+ sequence: 3C8C6C5C3C1C2
9
+ # Make the designed peptide cyclic
10
+ cyclic: true
11
+
12
+ # Specification of the target which is extracted from a .cif file
13
+ - file:
14
+ path: 3ivq.cif
15
+ # Which chain and residues in the .cif file to use as target (here includes all residues on chain A)
16
+ include:
17
+ - chain:
18
+ id: A
19
+
20
+ # Which regions of the target should have their structure specified
21
+ # Here we specify that all included target residues should have their structure specified
22
+ structure_groups: "all"
23
+
24
+ constraints:
25
+ # Specify covalent disulfide bonds between the designed residues on chain B
26
+ - bond:
27
+ atom1: [B, 4, SG] # connect SG of residue 4 to SG of residue 26 on chain B
28
+ atom2: [B, 26, SG]
29
+ - bond:
30
+ atom1: [B, 13, SG] # connect SG of residue 13 to SG of residue 30 on chain B
31
+ atom2: [B, 30, SG]
32
+ - bond:
33
+ atom1: [B, 20, SG] # connect SG of residue 20 to SG of residue 32 on chain B
34
+ atom2: [B, 32, SG]
conf/example/cyclotide/5wrd.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/cyclotide/5wrd.yaml ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # 3 design residues, Cystein, 8 design residues, Cystein,
4
+ # 6 design residues, Cystein, 5 design residues, Cystein,
5
+ # 3 design residues, Cystein, 1 design residue, Cystein, 2 design residues
6
+ - protein:
7
+ id: B
8
+ sequence: 3C8C6C5C3C1C2
9
+ # Make the designed peptide cyclic
10
+ cyclic: true
11
+
12
+ # Specification of the target which is extracted from a .cif file
13
+ - file:
14
+ path: 5wrd.cif
15
+ # Which chain and residues in the .cif file to use as target (here all residues on chain A)
16
+ include:
17
+ - chain:
18
+ id: A
19
+
20
+ # Which regions of the target should have their structure specified
21
+ # Here we specify that all included target residues should have their structure specified
22
+ structure_groups: "all"
23
+
24
+ constraints:
25
+ # Specify covalent difulside bonds within designed chain B
26
+ - bond:
27
+ atom1: [B, 4, SG] # connect SG of residue 4 to SG of residue 26 on chain B
28
+ atom2: [B, 26, SG]
29
+ - bond:
30
+ atom1: [B, 13, SG] # connect SG of residue 13 to SG of residue 30 on chain B
31
+ atom2: [B, 30, SG]
32
+ - bond:
33
+ atom1: [B, 20, SG] # connect SG of residue 20 to SG of residue 32 on chain B
34
+ atom2: [B, 32, SG]
conf/example/cylcic_against_kras_with_specific_site/8jjs.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/cylcic_against_kras_with_specific_site/cyclicdesign.yaml ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # random number between 8 and 16 of designed residues (inclusive)
4
+ - protein:
5
+ id: B
6
+ sequence: 8..16
7
+ # Make the designed peptide cyclic
8
+ cyclic: true
9
+
10
+ # Specification of the target which is extracted from a .cif file
11
+ - file:
12
+ path: 8jjs.cif
13
+ # Which chain and residues in the .cif file to use as target
14
+ # Here we include chains A and C (all residues on each chain)
15
+ include:
16
+ - chain:
17
+ id: A
18
+ - chain:
19
+ id: C
20
+ # Which regions of the target the design should or should NOT bind to
21
+ # Here we specify discrete binding residues on chain A
22
+ binding_types:
23
+ - chain:
24
+ id: A
25
+ binding: 12,14,61,63,73,76,77,83,101,104,108
26
+
conf/example/denovo_zinc_finger_against_dna/vanilla_protein.yaml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # random number between 40 and 120 of designed residues (inclusive)
4
+ - protein:
5
+ id: G
6
+ sequence: 40..120
7
+
8
+ # Specification of the target which is extracted from a .cif file
9
+ - file:
10
+ path: zf.cif
11
+ include:
12
+ # Which chain and residues in the .cif file to use as target (here includes all residues on chains C1 and B1)
13
+ - chain:
14
+ id: C1
15
+ - chain:
16
+ id: B1
conf/example/denovo_zinc_finger_against_dna/zf.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/denovo_zinc_finger_against_dna/zinc_finger.yaml ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specification of the target which is extracted from a .cif file
3
+ - file:
4
+ path: zf.cif
5
+ # Which parts of the .cif file to include as target (here includes all chains/residues)
6
+ include: "all"
7
+ # Which parts of the included content to exclude (here excludes residues 10, 63..69, and 185.. in chain A1)
8
+ exclude:
9
+ - chain:
10
+ id: A1
11
+ res_index: ..10,63..69,185..
12
+ # Where to insert new designable residues into existing chains
13
+ # Here we insert 3..8 residues after residue 63 in chain A1
14
+ design_insertions:
15
+ - insertion:
16
+ id: A1
17
+ res_index: 63
18
+ num_residues: 3..8
19
+ # Which regions of the target should have their structure specified
20
+ # Here we hide everything (no structure specified)
21
+ structure_groups:
22
+ - group:
23
+ visibility: 0
24
+ id: "all"
25
+ # Which residues in the target should be redesigned
26
+ # Here we declare A1:11..184 to be redesigned
27
+ design:
28
+ - chain:
29
+ id: A1
30
+ res_index: 11..184
31
+ # Which residues in the target are explicitly not redesignable (override entries in design)
32
+ # Here we carve out fixed positions on chain A1 to not be redesigned
33
+ not_design:
34
+ - chain:
35
+ id: A1
36
+ res_index: 11..20,29,33,39..48,57,61,72..81,90,94,100..109,118,122,129..138,147,151,157..166,175,179
37
+ # Reset residue numbering to be contiguous for chain A1
38
+ reset_res_index:
39
+ - chain:
40
+ id: A1
conf/example/design_spec_showcasing_all_functionalities.yaml ADDED
@@ -0,0 +1,191 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ - protein:
3
+ id: G
4
+ sequence: 15..20AAAAAAVTTTT18PPP # range between 15 and 20 inclusive on both sides
5
+ residue_constraints:
6
+ - position: 1
7
+ allowed: A # Only Alanine at position 1
8
+ - position: 3..5
9
+ disallowed: CM # No Cysteine or Methionine at positions 3-5
10
+ - position: 8
11
+ allowed: AGS # Only Ala, Gly, or Ser at position 8
12
+ - protein:
13
+ id: R
14
+ sequence: 3..5C6C3 # Random number of design residues between 3 and 5, then a Cystein, then 6 design residues, then ...
15
+ - ligand:
16
+ id: Q
17
+ ccd: WHL
18
+ - protein:
19
+ id: H
20
+ sequence: 17
21
+ secondary_structure: # No secondary structure specified, defaults
22
+ - file:
23
+ path: 7rpz.cif
24
+
25
+ include:
26
+ - chain:
27
+ id: A
28
+ - chain:
29
+ id: B
30
+
31
+ include_proximity:
32
+ - chain:
33
+ id: A
34
+ res_index: 10..16
35
+ radius: 35
36
+
37
+ binding_types:
38
+ - chain:
39
+ id: A
40
+ binding: 5..7,13
41
+ - chain:
42
+ id: B
43
+ not_binding: "all"
44
+
45
+
46
+
47
+ structure_groups:
48
+ - group:
49
+ visibility: 1
50
+ id: A
51
+ res_index: 10..16
52
+ - group:
53
+ visibility: 2
54
+ id: B
55
+ - group:
56
+ visibility: 0
57
+ id: A
58
+ res_index: 13
59
+
60
+ design:
61
+ - chain:
62
+ id: A
63
+ res_index: ..4,20..27
64
+
65
+ secondary_structure:
66
+ - chain:
67
+ id: A
68
+ loop: 1
69
+ helix: 2..3
70
+ sheet: 4
71
+
72
+ design_insertions:
73
+ - insertion:
74
+ id: A
75
+ res_index: 20 # The 20th residue will be a designed one (starting to count from 1)
76
+ num_residues: 2..9
77
+ secondary_structure: HELIX # One of UNSPECIFIED (default), LOOP, HELIX, SHEET.
78
+
79
+ - protein:
80
+ id: A
81
+ sequence: AAAAAAAAAAAAAAAAAAAAAAAA
82
+ binding_types: uuuuBBBuNNNuBuu # the missing specifications will be 'u' by default
83
+ - file:
84
+ path: 7rpz.cif
85
+ fuse: A
86
+ include:
87
+ - chain:
88
+ id: A
89
+ res_index: ..5
90
+
91
+ - protein:
92
+ id: B
93
+ sequence: AAAAAAAAAAAAAAAAAAAAAAAA
94
+ binding_types:
95
+ binding: 5..7,13
96
+ not_binding: 9..11
97
+ - ligand:
98
+ id: [C, D]
99
+ ccd: SAH
100
+ - ligand:
101
+ id: [E, F]
102
+ smiles: 'N[C@@H](Cc1ccc(O)cc1)C(=O)O'
103
+ binding_types: B
104
+
105
+
106
+ - file:
107
+ path: 7rpz.cif
108
+ include: "all"
109
+ exclude:
110
+ - chain:
111
+ id: A
112
+ res_index: ..5
113
+
114
+ structure_groups:
115
+ - group:
116
+ visibility: 1
117
+ id: "all"
118
+
119
+ - group:
120
+ visibility: 0
121
+ id: A
122
+ res_index: 10..16
123
+ - file:
124
+ path: 8r3a.cif
125
+
126
+ include:
127
+ - chain:
128
+ id: A
129
+ - chain:
130
+ id: B
131
+
132
+ binding_types:
133
+ - chain:
134
+ id: A
135
+ binding: 5..7,13
136
+ - chain:
137
+ id: B
138
+ not_binding: "all"
139
+
140
+
141
+
142
+ structure_groups:
143
+ - group:
144
+ visibility: 1
145
+ id: A
146
+ res_index: 10..13
147
+ - group:
148
+ visibility: 2
149
+ id: B
150
+ - group:
151
+ visibility: 0
152
+ id: A
153
+ res_index: 13
154
+
155
+ design:
156
+ - chain:
157
+ id: A
158
+ res_index: 14..19
159
+
160
+ secondary_structure:
161
+ - chain:
162
+ id: A
163
+ loop: 14
164
+ helix: 15..17
165
+ sheet: 19
166
+ - protein:
167
+ id: S
168
+ sequence: 10C6C3
169
+ - protein:
170
+ id: T
171
+ sequence: C10C6C3C
172
+ cyclic: true
173
+
174
+ constraints:
175
+ # specify connections as if the minimum possible number of residues was sampled
176
+ - bond:
177
+ atom1: [R, 4, SG] # connection for a helical peptides with WHL staple
178
+ atom2: [Q, 1, CK]
179
+ - bond:
180
+ atom1: [R, 11, SG]
181
+ atom2: [Q, 1, CH]
182
+ - bond:
183
+ atom1: [S, 11, SG] # connection for a disulfide bond
184
+ atom2: [S, 18, SG]
185
+ - bond:
186
+ atom1: [T, 12, SG]
187
+ atom2: [T, 19, SG]
188
+
189
+ - total_len:
190
+ min: 10
191
+ max: 20
conf/example/disulfide_peptide_with_betahairpin_conditioning/7nre.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/disulfide_peptide_with_betahairpin_conditioning/cropped_target.yaml ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # 1 design residue, Cystein, 11..16 design residues, Cystein, 1 design residue, Cystein
4
+ - protein:
5
+ id: B
6
+ sequence: 1C11..16C1
7
+ # Specify the secondary structure of the designed peptide (here we require sheet at residues 1 and 3..11)
8
+ secondary_structure:
9
+ sheet: 1,3..11
10
+
11
+ # Specification of the target which is extracted from a .cif file
12
+ - file:
13
+ path: 7nre.cif
14
+ # Which chain and residues in the .cif file to use as target (here includes residues 24..on chain A)
15
+ include:
16
+ - chain:
17
+ id: A
18
+ res_index: 24..
19
+
20
+ # Which regions of the target the design should or should NOT bind to
21
+ # Here we specify that the design should bind to residues 26..31,381,408 on chain A
22
+ binding_types:
23
+ - chain:
24
+ id: A
25
+ binding: 26..31,381,408
26
+
27
+
28
+ constraints:
29
+ # Specify covalent disulfide bonds between the designed residues on chain B
30
+ - bond:
31
+ atom1: [B, 2, SG] # connect SG of residue 2 to SG of residue 14 on chain B
32
+ atom2: [B, 14, SG]
33
+
conf/example/disulfide_peptide_with_betahairpin_conditioning/proximity_cropped_target.yaml ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # 1 design residue, Cystein, 11..16 design residues, Cystein, 1 design residue, Cystein
4
+ - protein:
5
+ id: B
6
+ sequence: 1C11..16C1
7
+ # Specify the secondary structure of the designed peptide (here we require sheet at residues 1 and 3..11)
8
+ secondary_structure:
9
+ sheet: 1,3..11
10
+
11
+ # Specification of the target which is extracted from a .cif file
12
+ - file:
13
+ path: 7nre.cif
14
+ # Which chain and residues in the .cif file to use as target (here includes residues 24..on chain A)
15
+ include:
16
+ - chain:
17
+ id: A
18
+ res_index: 24..
19
+
20
+ # Which regions of the target the design should or should NOT bind to
21
+ # Here we specify that the design should bind to residues 26..31,381,408 on chain A
22
+ binding_types:
23
+ - chain:
24
+ id: A
25
+ binding: 26..31,381,408
26
+
27
+ # Include residues within a radius of a reference region
28
+ # Here we include residues within a radius 28 of residues 26..31,381,408 on chain A
29
+ include_proximity:
30
+ - chain:
31
+ id: A
32
+ res_index: 26..31,381,408
33
+ radius: 28
34
+
35
+
36
+
37
+
38
+ constraints:
39
+ # Specify covalent disulfide bonds between the designed residues on chain B
40
+ - bond:
41
+ atom1: [B, 2, SG] # connect SG of residue 2 to SG of residue 14 on chain B
42
+ atom2: [B, 14, SG]
43
+
conf/example/double_disulfide_peptide_against_specific_site/8wtw.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/double_disulfide_peptide_against_specific_site/norepinephrine.yaml ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ entities:
2
+ # Specify a designed protein chain
3
+ # 1..3 design residues, Cystein, Cystein, 4 design residues, Cystein, 1..3 design residues, Cystein, 1..3 design residues
4
+ - protein:
5
+ id: B
6
+ sequence: 1..3CC4C1..3C1..3
7
+ # Specification of the target which is extracted from a .cif file
8
+ - file:
9
+ path: 8wtw.cif
10
+ # Which chain and residues in the .cif file to use as target (here includes all residues on chain A)
11
+ include:
12
+ - chain:
13
+ id: A
14
+
15
+ # Which regions of the target the design should or should NOT bind to
16
+ # Here we specify that the design should bind to residue 24 on chain A
17
+ binding_types:
18
+ - chain:
19
+ id: A
20
+ binding: 24
21
+
22
+ constraints:
23
+ # Specify covalent disulfide bonds between the designed residues on chain B
24
+ - bond:
25
+ atom1: [B, 2, SG] # connect SG of residue 2 to SG of residue 10 on chain B
26
+ atom2: [B, 10, SG]
27
+ - bond:
28
+ atom1: [B, 3, SG] # connect SG of residue 3 to SG of residue 8 on chain B
29
+ atom2: [B, 8, SG]
conf/example/fab_scaffolds/adalimumab.6cr1.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/adalimumab.6cr1.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # adalimumab 6cr1
2
+ # Target: TNF/TNFA
3
+ # Heavy chain (label not auth): B
4
+ # Light chain (label not auth): A
5
+ # Full heavy chain sequence: EVQLVESGGGLVQPGRSLRLSCAASGFTFDDYAMHWVRQAPGKGLEWVSAITWNSGHIDYADSVEGRFTISRDNAKNSLYLQMNSLRAEDTAVYYCAKVSYLSTASSLDYWGQGTLVTVSSASTKGPTVKILQSICDGGGHFPPTIQLLCLVSGYTPGTIQITWLEDGQVMDVDLSTASTTQEGELASTQSELTLSQKHWLSDRTYTCQVTYQGHTFEDSTKKCAHHHHHH
6
+ # Full light chain sequence: DIQMTQSPSSLSASVGDRVTITCRASQGIRNYLAWYQQKPGKAPKLLIYAASTLQSGVPSRFSGSGSGTDFTLTISSLQPEDVATYYCQRYNRAPYTFGQGTKVEIKRTVAAPTVKILQSSCDGGGHFPPTIQLLCLVSGYTPGTIQITWLEDGQVMDVDLSTASTTQEGELASTQSELTLSQKHWLSDRTYTCQVTYQGHTFEDSGKKCA
7
+ # Variable heavy region: 1 - 121
8
+ # Variable light region: 1 - 107
9
+ # Heavy CDRs: GFTFDDY TWNSGH VSYLSTASSLDY
10
+ # Light CDRs: RASQGIRNYLA AASTLQS QRYNRAPYT
11
+ #
12
+ path: adalimumab.6cr1.cif
13
+ include:
14
+ - chain:
15
+ id: B # heavy
16
+ res_index: 1..121
17
+ - chain:
18
+ id: A # light
19
+ res_index: 1..107
20
+ design:
21
+ - chain:
22
+ id: B
23
+ res_index: 26..32,52..57,99..110
24
+ - chain:
25
+ id: A
26
+ res_index: 24..34,50..56,89..97
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: B
31
+ visibility: 2
32
+ - group:
33
+ id: A
34
+ visibility: 2
35
+ - group:
36
+ id: B
37
+ res_index: 26..32,52..57,99..110
38
+ visibility: 0
39
+ - group:
40
+ id: A
41
+ res_index: 24..34,50..56,89..97
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: B
47
+ res_index: 26..32
48
+ - chain:
49
+ id: B
50
+ res_index: 52..57
51
+ - chain:
52
+ id: B
53
+ res_index: 99..110
54
+ - chain:
55
+ id: A
56
+ res_index: 24..34
57
+ - chain:
58
+ id: A
59
+ res_index: 50..56
60
+ - chain:
61
+ id: A
62
+ res_index: 89..97
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: B
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: B
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: B
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: A
79
+ res_index: 24
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: A
83
+ res_index: 50
84
+ num_residues: 7
85
+ - insertion:
86
+ id: A
87
+ res_index: 89
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: B
94
+ - chain:
95
+ id: A
conf/example/fab_scaffolds/belimumab.5y9k.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/belimumab.5y9k.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # belimumab 5y9k
2
+ # Target: TNFSF13B/CD257/BAFF
3
+ # Heavy chain (label not auth): B
4
+ # Light chain (label not auth): A
5
+ # Full heavy chain sequence: QVQLQQSGAEVKKPGSSVRVSCKASGGTFNNNAINWVRQAPGQGLEWMGGIIPMFGTAKYSQNFQGRVAITADESTGTASMELSSLRSEDTAVYYCARSRDLLLFPHHALSPWGRGTMVTVSSASTKGPSVFPLAPSSKSTSGGTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTQTYICNVNHKPSNTKVDKKVEPKSCDKTHHHHHH
6
+ # Full light chain sequence: SSELTQDPAVSVALGQTVRVTCQGDSLRSYYASWYQQKPGQAPVLVIYGKNNRPSGIPDRFSGSSSGNTASLTITGAQAEDEADYYCSSRDSSGNHWVFGGGTELTVLGQPKAAPSVTLFPPSSEELQANKATLVCLISDFYPGAVTVAWKADSSPVKAGVETTTPSKQSNNKYAASSYLSLTPEQWKSHRSYSCQVTHEGSTVEKTVAPTECS
7
+ # Variable heavy region: 1 - 123
8
+ # Variable light region: 1 - 108
9
+ # Heavy CDRs: GGTFNNN IPMFGT SRDLLLFPHHALSP
10
+ # Light CDRs: QGDSLRSYYAS GKNNRPS SSRDSSGNHWV
11
+ #
12
+ path: belimumab.5y9k.cif
13
+ include:
14
+ - chain:
15
+ id: B # heavy
16
+ res_index: 1..123
17
+ - chain:
18
+ id: A # light
19
+ res_index: 1..108
20
+ design:
21
+ - chain:
22
+ id: B
23
+ res_index: 26..32,52..57,99..112
24
+ - chain:
25
+ id: A
26
+ res_index: 23..33,49..55,88..98
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: B
31
+ visibility: 2
32
+ - group:
33
+ id: A
34
+ visibility: 2
35
+ - group:
36
+ id: B
37
+ res_index: 26..32,52..57,99..112
38
+ visibility: 0
39
+ - group:
40
+ id: A
41
+ res_index: 23..33,49..55,88..98
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: B
47
+ res_index: 26..32
48
+ - chain:
49
+ id: B
50
+ res_index: 52..57
51
+ - chain:
52
+ id: B
53
+ res_index: 99..112
54
+ - chain:
55
+ id: A
56
+ res_index: 23..33
57
+ - chain:
58
+ id: A
59
+ res_index: 49..55
60
+ - chain:
61
+ id: A
62
+ res_index: 88..98
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: B
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: B
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: B
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: A
79
+ res_index: 23
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: A
83
+ res_index: 49
84
+ num_residues: 7
85
+ - insertion:
86
+ id: A
87
+ res_index: 88
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: B
94
+ - chain:
95
+ id: A
conf/example/fab_scaffolds/crenezumab.5vzy.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/crenezumab.5vzy.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # crenezumab 5vzy
2
+ # Target: Abeta
3
+ # Heavy chain (label not auth): A
4
+ # Light chain (label not auth): B
5
+ # Full heavy chain sequence: EVQLVESGGGLVQPGGSLRLSCAASGFTFSSYGMSWVRQAPGKGLELVASINSNGGSTYYPDSVKGRFTISRDNAKNSLYLQMNSLRAEDTAVYYCASGDYWGQGTTVTVSSASTKGPSVFPLAPSSKSTSGGTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTQTYICNVNHKPSNTKVDKKVEPKSCDKTHT
6
+ # Full light chain sequence: DIVMTQSPLSLPVTPGEPASISCRSSQSLVYSNGDTYLHWYLQKPGQSPQLLIYKVSNRFSGVPDRFSGSGSGTDFTLKISRVEAEDVGVYYCSQSTHVPWTFGQGTKVEIKRTVAAPSVFIFPPSDEQLKSGTASVVCLLNNFYPREAKVQWKVDNALQSGNSQESVTEQDSKDSTYSLSSTLTLSKADYEKHKVYACEVTHQGLSSPVTKSFNRGEC
7
+ # Variable heavy region: 1 - 112
8
+ # Variable light region: 1 - 112
9
+ # Heavy CDRs: GFTFSSY NSNGGS GDY
10
+ # Light CDRs: RSSQSLVYSNGDTYLH KVSNRFS SQSTHVPWT
11
+ #
12
+ path: crenezumab.5vzy.cif
13
+ include:
14
+ - chain:
15
+ id: A # heavy
16
+ res_index: 1..112
17
+ - chain:
18
+ id: B # light
19
+ res_index: 1..112
20
+ design:
21
+ - chain:
22
+ id: A
23
+ res_index: 26..32,52..57,99..101
24
+ - chain:
25
+ id: B
26
+ res_index: 24..39,55..61,94..102
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: A
31
+ visibility: 2
32
+ - group:
33
+ id: B
34
+ visibility: 2
35
+ - group:
36
+ id: A
37
+ res_index: 26..32,52..57,99..101
38
+ visibility: 0
39
+ - group:
40
+ id: B
41
+ res_index: 24..39,55..61,94..102
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: A
47
+ res_index: 26..32
48
+ - chain:
49
+ id: A
50
+ res_index: 52..57
51
+ - chain:
52
+ id: A
53
+ res_index: 99..101
54
+ - chain:
55
+ id: B
56
+ res_index: 24..39
57
+ - chain:
58
+ id: B
59
+ res_index: 55..61
60
+ - chain:
61
+ id: B
62
+ res_index: 94..102
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: A
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: A
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: A
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: B
79
+ res_index: 24
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: B
83
+ res_index: 55
84
+ num_residues: 7
85
+ - insertion:
86
+ id: B
87
+ res_index: 94
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: A
94
+ - chain:
95
+ id: B
conf/example/fab_scaffolds/dupilumab.6wgb.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/dupilumab.6wgb.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # dupilumab 6wgb
2
+ # Target: IL4R/CD124
3
+ # Heavy chain (label not auth): A
4
+ # Light chain (label not auth): B
5
+ # Full heavy chain sequence: EVQLVESGGGLEQPGGSLRLSCAGSGFTFRDYAMTWVRQAPGKGLEWVSSISGSGGNTYYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCAKDRLSITIRPRYYGLDVWGQGTTVTVSSASTKGPSVFPLAPCSRSTSESTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTKTYTCNVDHKPSNTKVDKRVESKYGHHHHHH
6
+ # Full light chain sequence: DIVMTQSPLSLPVTPGEPASISCRSSQSLLYSIGYNYLDWYLQKSGQSPQLLIYLGSNRASGVPDRFSGSGSGTDFTLKISRVEAEDVGFYYCMQALQTPYTFGQGTKLEIKRTVAAPSVFIFPPSDEQLKSGTASVVCLLNNFYPREAKVQWKVDNALQSGNSQESVTEQDSKDSTYSLSSTLTLSKADYEKHKVYACEVTHQGLSSPVTKSFNRGEC
7
+ # Variable heavy region: 1 - 125
8
+ # Variable light region: 1 - 112
9
+ # Heavy CDRs: GFTFRDY SGSGGN DRLSITIRPRYYGLDV
10
+ # Light CDRs: RSSQSLLYSIGYNYLD LGSNRAS MQALQTPYT
11
+ #
12
+ path: dupilumab.6wgb.cif
13
+ include:
14
+ - chain:
15
+ id: A # heavy
16
+ res_index: 1..125
17
+ - chain:
18
+ id: B # light
19
+ res_index: 1..112
20
+ design:
21
+ - chain:
22
+ id: A
23
+ res_index: 26..32,52..57,99..114
24
+ - chain:
25
+ id: B
26
+ res_index: 24..39,55..61,94..102
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: A
31
+ visibility: 2
32
+ - group:
33
+ id: B
34
+ visibility: 2
35
+ - group:
36
+ id: A
37
+ res_index: 26..32,52..57,99..114
38
+ visibility: 0
39
+ - group:
40
+ id: B
41
+ res_index: 24..39,55..61,94..102
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: A
47
+ res_index: 26..32
48
+ - chain:
49
+ id: A
50
+ res_index: 52..57
51
+ - chain:
52
+ id: A
53
+ res_index: 99..114
54
+ - chain:
55
+ id: B
56
+ res_index: 24..39
57
+ - chain:
58
+ id: B
59
+ res_index: 55..61
60
+ - chain:
61
+ id: B
62
+ res_index: 94..102
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: A
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: A
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: A
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: B
79
+ res_index: 24
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: B
83
+ res_index: 55
84
+ num_residues: 7
85
+ - insertion:
86
+ id: B
87
+ res_index: 94
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: A
94
+ - chain:
95
+ id: B
conf/example/fab_scaffolds/golimumab.5yoy.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/golimumab.5yoy.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # golimumab 5yoy
2
+ # Target: TNF/TNFA
3
+ # Heavy chain (label not auth): H
4
+ # Light chain (label not auth): E
5
+ # Full heavy chain sequence: SKLQVQLVESGGGVVQPGRSLRLSCAASGFIFSSYAMHWVRQAPGNGLEWVAFMSYDGSNKKYADSVKGRFTISRDNSKNTLYLQMNSLRAEDTAVYYCARDRGIAAGGNYYYYGMDVWGQGTTVTVSS
6
+ # Full light chain sequence: AGSEIVLTQSPATLSLSPGERATLSCRASQSVYSYLAWYQQKPGQAPRLLIYDASNRATGIPARFSGSGSGTDFTLTISSLEPEDFAVYYCQQRSNWPPFTFGPGTKVDIKTSENLYFQ
7
+ # Variable heavy region: 4 - 129
8
+ # Variable light region: 4 - 111
9
+ # Heavy CDRs: GFIFSSY SYDGSN DRGIAAGGNYYYYGMDV
10
+ # Light CDRs: RASQSVYSYLA DASNRAT QQRSNWPPFT
11
+ #
12
+ path: golimumab.5yoy.cif
13
+ include:
14
+ - chain:
15
+ id: H # heavy
16
+ res_index: 4..129
17
+ - chain:
18
+ id: E # light
19
+ res_index: 4..111
20
+ design:
21
+ - chain:
22
+ id: H
23
+ res_index: 29..35,55..60,102..118
24
+ - chain:
25
+ id: E
26
+ res_index: 27..37,53..59,92..101
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: H
31
+ visibility: 2
32
+ - group:
33
+ id: E
34
+ visibility: 2
35
+ - group:
36
+ id: H
37
+ res_index: 29..35,55..60,102..118
38
+ visibility: 0
39
+ - group:
40
+ id: E
41
+ res_index: 27..37,53..59,92..101
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: H
47
+ res_index: 29..35
48
+ - chain:
49
+ id: H
50
+ res_index: 55..60
51
+ - chain:
52
+ id: H
53
+ res_index: 102..118
54
+ - chain:
55
+ id: E
56
+ res_index: 27..37
57
+ - chain:
58
+ id: E
59
+ res_index: 53..59
60
+ - chain:
61
+ id: E
62
+ res_index: 92..101
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: H
67
+ res_index: 29
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: H
71
+ res_index: 55
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: H
75
+ res_index: 102
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: E
79
+ res_index: 27
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: E
83
+ res_index: 53
84
+ num_residues: 7
85
+ - insertion:
86
+ id: E
87
+ res_index: 92
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: H
94
+ - chain:
95
+ id: E
conf/example/fab_scaffolds/guselkumab.4m6m.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/guselkumab.4m6m.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # guselkumab 4m6m
2
+ # Target: IL23A
3
+ # Heavy chain (label not auth): B
4
+ # Light chain (label not auth): A
5
+ # Full heavy chain sequence: EVQLVQSGAEVKKPGESLKISCKGSGYSFSNYWIGWVRQMPGKGLEWMGIIDPSNSYTRYSPSFQGQVTISADKSISTAYLQWSSLKASDTAMYYCARWYYKPFDVWGQGTLVTVSSASTKGPSVFPLAPSSKSTSGGTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTQTYICNVNHKPSNTKVDKKVEPKSCHHHHHH
6
+ # Full light chain sequence: QSVLTQPPSVSGAPGQRVTISCTGSSSNIGSGYDVHWYQQLPGTAPKLLIYGNSKRPSGVPDRFSGSKSGTSASLAITGLQSEDEADYYCASWTDGLSLVVFGGGTKLTVLGQPKAAPSVTLFPPSSEELQANKATLVCLISDFYPGAVTVAWKADSSPVKAGVETTTPSKQSNNKYAASSYLSLTPEQWKSHRSYSCQVTHEGSTVEKTVAPTECS
7
+ # Variable heavy region: 1 - 117
8
+ # Variable light region: 1 - 111
9
+ # Heavy CDRs: GYSFSNY DPSNSY WYYKPFDV
10
+ # Light CDRs: TGSSSNIGSGYDVH GNSKRPS ASWTDGLSLVV
11
+ #
12
+ path: guselkumab.4m6m.cif
13
+ include:
14
+ - chain:
15
+ id: B # heavy
16
+ res_index: 1..117
17
+ - chain:
18
+ id: A # light
19
+ res_index: 1..111
20
+ design:
21
+ - chain:
22
+ id: B
23
+ res_index: 26..32,52..57,99..106
24
+ - chain:
25
+ id: A
26
+ res_index: 23..36,52..58,91..101
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: B
31
+ visibility: 2
32
+ - group:
33
+ id: A
34
+ visibility: 2
35
+ - group:
36
+ id: B
37
+ res_index: 26..32,52..57,99..106
38
+ visibility: 0
39
+ - group:
40
+ id: A
41
+ res_index: 23..36,52..58,91..101
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: B
47
+ res_index: 26..32
48
+ - chain:
49
+ id: B
50
+ res_index: 52..57
51
+ - chain:
52
+ id: B
53
+ res_index: 99..106
54
+ - chain:
55
+ id: A
56
+ res_index: 23..36
57
+ - chain:
58
+ id: A
59
+ res_index: 52..58
60
+ - chain:
61
+ id: A
62
+ res_index: 91..101
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: B
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: B
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: B
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: A
79
+ res_index: 23
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: A
83
+ res_index: 52
84
+ num_residues: 7
85
+ - insertion:
86
+ id: A
87
+ res_index: 91
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: B
94
+ - chain:
95
+ id: A
conf/example/fab_scaffolds/mab1.3h42.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/mab1.3h42.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # mab1 3h42
2
+ # Target: PCSK9
3
+ # Heavy chain (label not auth): D
4
+ # Light chain (label not auth): C
5
+ # Full heavy chain sequence: EVQLVESGGGLVKPGGSLRLSCAASGFTFSSYSMNWVRQAPGKGLEWVSSISSSSSYISYADSVKGRFTISRDNAKNSLYLQMNSLRAEDTAVYFCARDYDFWSAYYDAFDVWGQGTMVTVSSASTKGPSVFPLAPSSKSTSGGTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTQTYICNVNHKPSNTKVDKKVEPKSCAADEVDHHHHHH
6
+ # Full light chain sequence: ESVLTQPPSVSGAPGQRVTISCTGSSSNIGAGYDVHWYQQLPGTAPKLLISGNSNRPSGVPDRFSGSKSGTSASLAITGLQAEDEADYYCQSYDSSLSGSVFGGGTKLTVLGQPKAAPSVTLFPPSSEELQANKATLVCLISDFYPGAVTVAWKADSSPVKAGVETTTPSKQSNNKYAASSYLSLTPEQWKSHRSYSCQVTHEGSTVEKTVAPTECS
7
+ # Variable heavy region: 1 - 123
8
+ # Variable light region: 1 - 111
9
+ # Heavy CDRs: GFTFSSY SSSSSY DYDFWSAYYDAFDV
10
+ # Light CDRs: TGSSSNIGAGYDVH GNSNRPS QSYDSSLSGSV
11
+ #
12
+ path: mab1.3h42.cif
13
+ include:
14
+ - chain:
15
+ id: D # heavy
16
+ res_index: 1..123
17
+ - chain:
18
+ id: C # light
19
+ res_index: 1..111
20
+ design:
21
+ - chain:
22
+ id: D
23
+ res_index: 26..32,52..57,99..112
24
+ - chain:
25
+ id: C
26
+ res_index: 23..36,52..58,91..101
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: D
31
+ visibility: 2
32
+ - group:
33
+ id: C
34
+ visibility: 2
35
+ - group:
36
+ id: D
37
+ res_index: 26..32,52..57,99..112
38
+ visibility: 0
39
+ - group:
40
+ id: C
41
+ res_index: 23..36,52..58,91..101
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: D
47
+ res_index: 26..32
48
+ - chain:
49
+ id: D
50
+ res_index: 52..57
51
+ - chain:
52
+ id: D
53
+ res_index: 99..112
54
+ - chain:
55
+ id: C
56
+ res_index: 23..36
57
+ - chain:
58
+ id: C
59
+ res_index: 52..58
60
+ - chain:
61
+ id: C
62
+ res_index: 91..101
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: D
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: D
71
+ res_index: 52
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: D
75
+ res_index: 99
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: C
79
+ res_index: 23
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: C
83
+ res_index: 52
84
+ num_residues: 7
85
+ - insertion:
86
+ id: C
87
+ res_index: 91
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: D
94
+ - chain:
95
+ id: C
conf/example/fab_scaffolds/necitumumab.6b3s.cif ADDED
The diff for this file is too large to render. See raw diff
 
conf/example/fab_scaffolds/necitumumab.6b3s.yaml ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # necitumumab 6b3s
2
+ # Target: EGFR
3
+ # Heavy chain (label not auth): B
4
+ # Light chain (label not auth): C
5
+ # Full heavy chain sequence: QVQLQESGPGLVKPSQTLSLTCTVSGGSISSGDYYWSWIRQPPGKGLEWIGYIYYSGSTDYNPSLKSRVTMSVDTSKNQFSLKVNSVTAADTAVYYCARVSIFGVGTFDYWGQGTLVTVSSASTKGPSVFPLAPSSKSTSGTAALGCLVKDYFPEPVTVSWNSGALTSGVHTFPAVLQSSGLYSLSSVVTVPSSSLGTQTYICNVNHKPSNTKVDKKVEPKS
6
+ # Full light chain sequence: EIVMTQSPATLSLSPGERATLSCRASQSVSSYLAWYQQKPGQAPRLLIYDASNRATGIPARFSGSGSGTDFTLTISSLEPEDFAVYYCHQYGSTPLTFGGGTKAEIKRTVAAPSVFIFPPSDEQLKSGTASVVCLLNNFYPREAKVQWKVDNALQSGNSQESVTEQDSKDSTYSLSSTLTLSKADYEKHKVYACEVTHQGLSSPVTKSFNRGA
7
+ # Variable heavy region: 1 - 121
8
+ # Variable light region: 1 - 107
9
+ # Heavy CDRs: GGSISSGDY YYSGS VSIFGVGTFDY
10
+ # Light CDRs: RASQSVSSYLA DASNRAT HQYGSTPLT
11
+ #
12
+ path: necitumumab.6b3s.cif
13
+ include:
14
+ - chain:
15
+ id: B # heavy
16
+ res_index: 1..121
17
+ - chain:
18
+ id: C # light
19
+ res_index: 1..107
20
+ design:
21
+ - chain:
22
+ id: B
23
+ res_index: 26..34,54..58,100..110
24
+ - chain:
25
+ id: C
26
+ res_index: 24..34,50..56,89..97
27
+
28
+ structure_groups:
29
+ - group:
30
+ id: B
31
+ visibility: 2
32
+ - group:
33
+ id: C
34
+ visibility: 2
35
+ - group:
36
+ id: B
37
+ res_index: 26..34,54..58,100..110
38
+ visibility: 0
39
+ - group:
40
+ id: C
41
+ res_index: 24..34,50..56,89..97
42
+ visibility: 0
43
+
44
+ exclude:
45
+ - chain:
46
+ id: B
47
+ res_index: 26..34
48
+ - chain:
49
+ id: B
50
+ res_index: 54..58
51
+ - chain:
52
+ id: B
53
+ res_index: 100..110
54
+ - chain:
55
+ id: C
56
+ res_index: 24..34
57
+ - chain:
58
+ id: C
59
+ res_index: 50..56
60
+ - chain:
61
+ id: C
62
+ res_index: 89..97
63
+
64
+ design_insertions:
65
+ - insertion:
66
+ id: B
67
+ res_index: 26
68
+ num_residues: 7..9
69
+ - insertion:
70
+ id: B
71
+ res_index: 54
72
+ num_residues: 5..8
73
+ - insertion:
74
+ id: B
75
+ res_index: 100
76
+ num_residues: 3..21
77
+ - insertion:
78
+ id: C
79
+ res_index: 24
80
+ num_residues: 10..17
81
+ - insertion:
82
+ id: C
83
+ res_index: 50
84
+ num_residues: 7
85
+ - insertion:
86
+ id: C
87
+ res_index: 89
88
+ num_residues: 8..12
89
+
90
+ # reindex the residue index which is used in the positional encoding
91
+ reset_res_index:
92
+ - chain:
93
+ id: B
94
+ - chain:
95
+ id: C