bio_tools 0.1.3

Install, run, and inspect computational biology and chemistry tools, e.g. AlphaFold, Boltz, RFdiffusion3, and ProteinMPNN
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
{
  "fields": [
    {
      "name": "job_name",
      "label": "Job name",
      "kind": "text",
      "default": "proteinmpnn-demo",
      "required": false,
      "help": "A label for this run and its results.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Inputs"
    },
    {
      "name": "pdb_path",
      "label": "Backbone structure",
      "kind": "file",
      "default": "",
      "required": true,
      "help": "A single protein backbone to design or score. Leave chains blank to use every chain.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": ".pdb,.ent,.cif,.mmcif",
      "task": "",
      "group": "Inputs",
      "help_note": "Upload a PDB or mmCIF, or choose a preset with an included structure. The first model is used for multi-model structures. mmCIF is converted to PDB and requires single-character chain IDs."
    },
    {
      "name": "pdb_path_chains",
      "label": "Chains to design or score",
      "kind": "text",
      "default": "",
      "required": false,
      "help": "Space-separated chain IDs, e.g. A C. Other chains supply fixed sequence and structural context. Blank selects all chains.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Inputs"
    },
    {
      "name": "path_to_fasta",
      "label": "Sequences to score (FASTA)",
      "kind": "file",
      "default": "",
      "required": false,
      "help": "Optional sequences for score-only mode. The native sequence is also scored.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": ".fa,.fasta,.faa",
      "task": "score_only",
      "group": "Inputs",
      "help_note": "Supply one sequence per FASTA record, with designed chains in alphabetical order separated by /. Each chain must match its parsed backbone length."
    },
    {
      "name": "model_name",
      "label": "Model checkpoint",
      "kind": "select",
      "default": "v_48_020",
      "required": false,
      "help": "48-neighbor models trained with backbone noise of 0.02, 0.10, 0.20 or 0.30 angstroms. CA-only weights are available through v_48_020.",
      "options": [
        {
          "value": "v_48_002",
          "label": "v_48_002 (0.02 Ă… training noise)"
        },
        {
          "value": "v_48_010",
          "label": "v_48_010 (0.10 Ă… training noise)"
        },
        {
          "value": "v_48_020",
          "label": "v_48_020 (0.20 Ă… training noise)"
        },
        {
          "value": "v_48_030",
          "label": "v_48_030 (0.30 Ă… training noise)"
        }
      ],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "use_soluble_model",
      "label": "Use soluble-protein weights",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Use weights trained on soluble proteins. Cannot be combined with CA-only mode.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "ca_only",
      "label": "Use CA-only structures and weights",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Use only alpha-carbon coordinates. Requires a CA-only checkpoint; v_48_030 is unavailable.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "num_seq_per_target",
      "label": "Samples per target",
      "kind": "number",
      "default": 1,
      "required": false,
      "help": "Sequences per temperature in design mode; repeated evaluations in score/probability modes. Must be a multiple of batch size.",
      "options": [],
      "rows": null,
      "minimum": 1,
      "maximum": 1000,
      "step": 1,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling",
      "help_note": "This service accepts up to 1,000 samples per target."
    },
    {
      "name": "batch_size",
      "label": "Batch size",
      "kind": "number",
      "default": 1,
      "required": false,
      "help": "Samples processed together. Reduce if GPU memory runs out. Must divide the sample count exactly.",
      "options": [],
      "rows": null,
      "minimum": 1,
      "maximum": 1000,
      "step": 1,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "sampling_temp",
      "label": "Sampling temperatures",
      "kind": "text",
      "default": "0.1",
      "required": false,
      "help": "One or more positive temperatures separated by spaces, e.g. 0.1 0.2 0.3. Higher values give more sequence diversity.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Model and sampling"
    },
    {
      "name": "seed",
      "label": "Random seed",
      "kind": "number",
      "default": 0,
      "required": false,
      "help": "Zero chooses a random seed. Set a nonzero seed for reproducible sampling in the same runtime.",
      "options": [],
      "rows": null,
      "minimum": 0,
      "maximum": 2147483647,
      "step": 1,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "backbone_noise",
      "label": "Inference backbone noise",
      "kind": "number",
      "default": 0.0,
      "required": false,
      "help": "Standard deviation in angstroms of Gaussian noise added to backbone coordinates during inference; separate from checkpoint training noise.",
      "options": [],
      "rows": null,
      "minimum": 0,
      "maximum": null,
      "step": "any",
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "max_length",
      "label": "Maximum total sequence length",
      "kind": "number",
      "default": 200000,
      "required": false,
      "help": "Maximum parsed sequence length across all chains. Longer inputs are rejected before running.",
      "options": [],
      "rows": null,
      "minimum": 1,
      "maximum": 200000,
      "step": 1,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Model and sampling"
    },
    {
      "name": "fixed_positions_jsonl",
      "label": "Fixed positions (JSON)",
      "kind": "textarea",
      "default": "",
      "required": false,
      "help": "Positions whose native amino acids are retained, e.g. {\"A\": [1, 2, 3], \"C\": [10]}. Omitted chains are designed in full.",
      "options": [],
      "rows": 4,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Position constraints",
      "help_note": "Positions are 1-based indices in each parsed chain, including gaps and insertion-code residues, not PDB residue numbers. Enter the chain dictionary or the upstream dictionary keyed by structure name."
    },
    {
      "name": "tied_positions_jsonl",
      "label": "Tied positions (JSON)",
      "kind": "textarea",
      "default": "",
      "required": false,
      "help": "Groups sampled as the same amino acid, e.g. [{\"A\": [1], \"C\": [1]}, {\"A\": [2], \"C\": [2]}].",
      "options": [],
      "rows": 4,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Position constraints",
      "help_note": "Uses the same 1-based parsed positions. Weighted groups also accept {\"A\": [[1], [0.5]], \"C\": [[1], [0.5]]}."
    },
    {
      "name": "homo_oligomer",
      "label": "Tie all designed chains as a homo-oligomer",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Tie matching positions across the designed chains. Requires at least two chains of equal parsed length.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Position constraints",
      "help_note": "Convenience equivalent of the official homooligomer helper. Use either this option or custom tied positions."
    },
    {
      "name": "omit_AAs",
      "label": "Omit amino acids",
      "kind": "text",
      "default": "X",
      "required": false,
      "help": "One-letter amino-acid codes excluded from sampling everywhere, e.g. AC excludes alanine and cysteine. X excludes the unknown residue.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Amino-acid preferences"
    },
    {
      "name": "bias_AA_jsonl",
      "label": "Global amino-acid bias (JSON)",
      "kind": "textarea",
      "default": "",
      "required": false,
      "help": "Bias for each amino acid, e.g. {\"A\": -1.1, \"F\": 0.7}. Positive values favor an amino acid; negative values discourage it.",
      "options": [],
      "rows": 3,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Amino-acid preferences"
    },
    {
      "name": "omit_AA_jsonl",
      "label": "Per-position omitted amino acids (JSON)",
      "kind": "textarea",
      "default": "",
      "required": false,
      "help": "Chain-specific exclusions, e.g. {\"A\": [[[1, 2], \"CP\"], [[3], \"W\"]]}. Uses 1-based parsed positions.",
      "options": [],
      "rows": 4,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Amino-acid preferences",
      "help_note": "Enter a chain dictionary or an upstream dictionary keyed by structure name. Missing chains have no local exclusions."
    },
    {
      "name": "bias_by_res_jsonl",
      "label": "Per-position amino-acid bias (JSON)",
      "kind": "file",
      "default": "",
      "required": false,
      "help": "Chain dictionary of L Ă— 21 numeric bias matrices in alphabet order ACDEFGHIKLMNPQRSTVWYX. L is the parsed chain length.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": ".json,.jsonl",
      "task": "design",
      "group": "Amino-acid preferences",
      "help_note": "Upload JSON or provide an object through the API. An upstream dictionary keyed by structure name is also accepted. Missing chains receive zero bias."
    },
    {
      "name": "pssm_jsonl",
      "label": "PSSM guidance (JSON)",
      "kind": "file",
      "default": "",
      "required": false,
      "help": "Chain dictionaries containing pssm_coef (L), pssm_bias (L Ă— 21 probability distributions), and pssm_log_odds (L Ă— 21). Alphabet: ACDEFGHIKLMNPQRSTVWYX.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": ".json,.jsonl",
      "task": "design",
      "group": "PSSM guidance",
      "help_note": "Use the output of the official make_pssm_input_dict.py helper, or a chain dictionary. The PSSM presets include converted official inputs."
    },
    {
      "name": "pssm_multi",
      "label": "PSSM mixing weight",
      "kind": "number",
      "default": 0.0,
      "required": false,
      "help": "Global PSSM weight from 0 to 1, multiplied by each position’s pssm_coef. Zero uses ProteinMPNN alone; one with coefficient one uses PSSM alone.",
      "options": [],
      "rows": null,
      "minimum": 0,
      "maximum": 1,
      "step": "any",
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "PSSM guidance"
    },
    {
      "name": "pssm_bias_flag",
      "label": "Mix in PSSM probabilities",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Enable probability mixing using pssm_multi and per-position pssm_coef.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "PSSM guidance"
    },
    {
      "name": "pssm_log_odds_flag",
      "label": "Restrict amino acids using PSSM log odds",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Apply the PSSM log-odds mask to sampling.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "PSSM guidance"
    },
    {
      "name": "pssm_threshold",
      "label": "PSSM log-odds threshold",
      "kind": "number",
      "default": 0.0,
      "required": false,
      "help": "Keep amino acids whose PSSM log odds are greater than this threshold when the log-odds option is enabled.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": "any",
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "PSSM guidance"
    },
    {
      "name": "conditional_probs_only_backbone",
      "label": "Condition only on the backbone",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "For conditional probabilities, compute p(amino acid | backbone) instead of also conditioning on the other residues.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "conditional_probs_only",
      "group": "Outputs"
    },
    {
      "name": "save_score",
      "label": "Save sampled sequence scores",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Save negative log probabilities for designed residues and global scores as NumPy .npz files.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Outputs"
    },
    {
      "name": "save_probs",
      "label": "Save sampled sequence probabilities",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Save per-position probabilities, log probabilities, sequences, masks and chain order as NumPy .npz files.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "design",
      "group": "Outputs"
    },
    {
      "name": "suppress_print",
      "label": "Suppress progress output",
      "kind": "checkbox",
      "default": false,
      "required": false,
      "help": "Suppress ProteinMPNN’s progress messages. Result files are still saved.",
      "options": [],
      "rows": null,
      "minimum": null,
      "maximum": null,
      "step": null,
      "maxlength": null,
      "accept": "",
      "task": "",
      "group": "Outputs"
    }
  ],
  "tasks": [
    {
      "value": "design",
      "label": "Design sequences"
    },
    {
      "value": "score_only",
      "label": "Score sequences"
    },
    {
      "value": "conditional_probs_only",
      "label": "Conditional probabilities"
    },
    {
      "value": "unconditional_probs_only",
      "label": "Unconditional probabilities"
    }
  ],
  "task_group": "Inputs",
  "field_groups": [
    {
      "label": "Inputs",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    },
    {
      "label": "Model and sampling",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    },
    {
      "label": "Position constraints",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    },
    {
      "label": "Amino-acid preferences",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    },
    {
      "label": "PSSM guidance",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    },
    {
      "label": "Outputs",
      "docs_url": "https://github.com/dauparas/ProteinMPNN/blob/8907e6671bfbfc92303b5f79c4b5e6ce47cdef57/README.md"
    }
  ]
}