{
"fields": [
{
"name": "job_name",
"label": "Job name",
"kind": "text",
"default": "proteinmpnn-ddg-demo",
"required": false,
"help": "A label for this run and its results.",
"options": [],
"rows": null,
"minimum": null,
"maximum": null,
"step": null,
"maxlength": 80,
"accept": "",
"task": "",
"group": "Inputs"
},
{
"name": "pdb_path",
"label": "Protein structure",
"kind": "file",
"default": "",
"required": true,
"help": "PDB structure whose point mutations will be scored.",
"options": [],
"rows": null,
"minimum": null,
"maximum": null,
"step": null,
"maxlength": null,
"accept": ".pdb,.ent",
"task": "",
"group": "Inputs",
"help_note": "Upload PDB text or choose the preset containing the official AlphaFold example structure."
},
{
"name": "chains",
"label": "Chains to load",
"kind": "text",
"default": "A",
"required": false,
"help": "Comma-separated PDB chains used as structural and sequence context, e.g. A,B,C. By default, substitutions are predicted for the first chain.",
"options": [],
"rows": null,
"minimum": null,
"maximum": null,
"step": null,
"maxlength": 100,
"accept": "",
"task": "",
"group": "Inputs"
},
{
"name": "chain_to_predict",
"label": "Chain to predict",
"kind": "text",
"default": "",
"required": false,
"help": "Optional chain whose substitutions are predicted. It is moved to the front of the loaded chain list; blank uses the first chain above.",
"options": [],
"rows": null,
"minimum": null,
"maximum": null,
"step": null,
"maxlength": 1,
"accept": "",
"task": "",
"group": "Inputs"
},
{
"name": "model_name",
"label": "ProteinMPNN model",
"kind": "select",
"default": "v_48_020",
"required": false,
"help": "48-neighbor ProteinMPNN checkpoint trained with the indicated backbone noise.",
"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 averaging"
},
{
"name": "seed",
"label": "Random seed",
"kind": "number",
"default": 42,
"required": false,
"help": "Seed used to split the per-repeat JAX random keys.",
"options": [],
"rows": null,
"minimum": 0,
"maximum": 2147483647,
"step": 1,
"maxlength": null,
"accept": "",
"task": "",
"group": "Model and averaging"
},
{
"name": "nrepeats",
"label": "Model repeats",
"kind": "number",
"default": 1,
"required": false,
"help": "Run with this many keys split from the input seed and average the resulting predictions.",
"options": [],
"rows": null,
"minimum": 1,
"maximum": 100,
"step": 1,
"maxlength": null,
"accept": "",
"task": "",
"group": "Model and averaging"
},
{
"name": "without_ddG_correction",
"label": "Disable the ddG correction",
"kind": "checkbox",
"default": false,
"required": false,
"help": "Write raw logit differences without the paper's single-residue ddG correction. The correction is defined only for v_48_020, so this must be enabled with every other model.",
"options": [],
"rows": null,
"minimum": null,
"maximum": null,
"step": null,
"maxlength": null,
"accept": "",
"task": "",
"group": "Model and averaging"
}
],
"tasks": [],
"field_groups": [
{
"label": "Inputs",
"docs_url": "https://github.com/PeptoneLtd/proteinmpnn_ddg/blob/98302b5e7d6b2962aa03336cf950196c33f2c3a1/README.md#usage"
},
{
"label": "Model and averaging",
"docs_url": "https://github.com/PeptoneLtd/proteinmpnn_ddg/blob/98302b5e7d6b2962aa03336cf950196c33f2c3a1/predict.py"
}
],
"_comment": "Field names and defaults follow predict.py. The service manages outpath. ProteinMPNN-ddG always scores every standard point mutation for one chain; top-k filtering is not part of its public CLI."
}