About lab
Boltz: Boltz2AffinityPredictor Lab
This lab runs Boltz-2 to jointly predict the 3D structure of a protein-ligand complex and a binding-affinity summary from sequence-only inputs. The protein is provided as an amino-acid string and the ligand as a SMILES string. The lab ships with a real protein/ligand example baked into lab.yaml so a fresh run produces a renderable complex and an affinity readout without any extra setup.
The wrapper drives the upstream Boltz CLI pinned at boltz[cuda]==2.0.2, runs the diffusion and recycling pipeline on a GPU runner, and returns the parsed affinity and confidence summaries plus file-backed structure artifacts (mmCIF by default).
This lab is for single-complex, sequence-only Boltz-2 affinity runs. It does not handle batch screening, custom MSAs without an MSA server, alternative Boltz model variants, or non-Boltz structural runtimes. Those belong in adjacent labs.
What You'll See
The lab opens as a small canvas with one Boltz-2 node and a run-results panel. With the bundled defaults, the run produces:
- a structure3d view of the predicted protein-ligand complex,
- an affinity summary with binding probability and predicted affinity,
- a confidence summary with pTM, ipTM, and pLDDT bands for the top-ranked prediction,
- run metadata with the truncated Boltz stdout/stderr and the resolved output paths.
The first screenshot shows the canvas and results panel with the interactive 3D complex structure and confidence annotations. The second scrolls down to the same run's confidence, affinity, and summary-table metrics.


How to Read the Visualizations
The structure3d view shows the predicted complex assembled from the top-ranked Boltz output. Use it to sanity-check that the ligand is positioned in a plausible binding pocket on the predicted fold. If the ligand sits outside the protein density, the prediction is unreliable for that pair regardless of what the affinity summary says.
The affinity summary reports a binding probability (dimensionless, 0 to 1) and a predicted affinity expressed as pIC50. Higher pIC50 is a stronger predicted bind. Treat both as Boltz-2 model outputs, not experimental measurements: they are useful for ranking related candidates against the same target, less useful as absolute numbers.
The confidence summary captures Boltz's internal confidence bands. pTM and ipTM track global and interface fold confidence (0 to 1, higher is better). pLDDT is per-residue confidence (0 to 100, higher is better). Low ipTM with reasonable pTM usually means the protein fold is fine but the ligand placement is uncertain.
In the screenshot run, the top-ranked prediction reports high confidence metrics for the default protein-ligand pair: confidence score about 0.92, pTM about 0.93, ipTM about 0.91, and complex pLDDT about 0.92. The affinity table reports predicted affinity about 2.18 pIC50 with binder probability about 0.54.
The run metadata records which Boltz version executed, the resolved output directory, the truncated stdout/stderr from the Boltz CLI, and status: ok or status: error so a failed run is still inspectable.
What This Lab Contains
lab.yamldescribes the lab, exposes its inputs and outputs, and pins the bundled defaults.wiring-layout.jsonplaces the model on the canvas.model/model.yamldescribes the model package, parameters, and ports.models/core/src/boltz2_affinity_predictor.pycontains the wrapper and managed-runtime install logic.models/visualisation/src/docking_visualisation.pyturns the structure, affinity, confidence, and run metadata records into Biosimulant visuals.model/tests/checks the wrapper, manifest, and lab contract.
The bundled defaults are encoded as strings inside lab.yaml (default_protein_sequence, default_ligand_smiles). There is no model/data/ directory because Boltz-2 takes sequence-only inputs.
Inputs
The model accepts four input signals. Each one falls back to the matching default_* parameter in lab.yaml when the signal is not wired, which is what makes the lab runnable out of the box.
protein_sequence(string): amino-acid sequence string. Defaults to the bundled example protein.ligand_smiles(string): SMILES string for the ligand. Defaults to the bundled example tyrosine derivative.msa_path(path, optional): path to a pre-computed MSA (.a3m). When unset anduse_msa_server: true, Boltz queries the configured MSA server instead.run_options(record, optional): Boltz options dict merged onto the defaults. Useful for overridingrecycling_steps,sampling_steps,diffusion_samples,output_format, oracceleratoron a per-run basis without changinglab.yaml.
Outputs
affinity_summary(record): binding probability and predicted affinity (pIC50) for the top-ranked prediction.confidence_summary(record): pTM, ipTM, and pLDDT bands for the top-ranked prediction.structure_artifacts(record): absolute paths to the Boltz output structure files (mmCIF or PDB depending onoutput_format).run_metadata(record): runtime metadata, Boltz version, output directory, truncated stdout/stderr, andstatus: okorstatus: error.
Running in Biosimulant Desktop
Import the lab once with the Biosim CLI, then open it from the desktop app. The bundled defaults mean the first run requires no parameter editing.
biosimulant labs import labs/boltz-boltz2-affinity-predictor
To predict a different complex, override protein_sequence and ligand_smiles in the lab's run sidebar (or wire them to a source module that produces the strings). The model treats wired input signals as overrides on top of the defaults, so partial overrides work too.
Notes
- Boltz-2 is GPU-bound. Remote runs use the GPU-enabled runtime image; local runs need a CUDA device or they will be unusably slow.
- Managed runtime mode installs
boltz[cuda]==2.0.2on first run. Plan for a multi-minute first-run install; subsequent runs are offline. - The bundled defaults rely on
use_msa_server: truebecause no MSA file is shipped. To run fully offline, setdefault_msa_pathto a local.a3mand toggleuse_msa_serveroff. - The lab's
runtime.durationis intentionally short. Boltz is event-driven; the wrapper runs the prediction inside a single advance window. - The lab sets
runtime.settle_steps: 1so the downstream visualization module can consume the final structure artifacts without extending simulated time.
Multi-model lab with an embedded visualisation sibling for Boltz-2 affinity-focused protein-ligand predictions. Ships with a real protein/ligand pair so the lab runs out of the box on a GPU runner.
Runtime
Runs
Metadata
Manifest
{
"io": {
"inputs": [
{
"name": "protein_sequence",
"label": "Target Protein Sequence",
"maps_to": "boltz_boltz2_affinity_predictor.protein_sequence",
"description": "Amino-acid sequence passed directly to the Boltz-2 protein input."
},
{
"name": "ligand_smiles",
"label": "Ligand SMILES",
"maps_to": "boltz_boltz2_affinity_predictor.ligand_smiles",
"description": "Ligand structure encoded as a SMILES string and passed directly to Boltz-2."
},
{
"name": "msa_path",
"label": "Precomputed MSA Path",
"maps_to": "boltz_boltz2_affinity_predictor.msa_path",
"description": "Optional path to a precomputed MSA file; leave unset when the MSA server is used."
},
{
"name": "run_options",
"label": "Boltz Run Options",
"maps_to": "boltz_boltz2_affinity_predictor.run_options",
"description": "Optional structured Boltz workflow controls such as MSA-server use, output format, and sampling settings."
}
],
"outputs": [
{
"name": "affinity_summary",
"label": "Affinity-Style Summary",
"maps_to": "boltz_boltz2_affinity_predictor.affinity_summary",
"description": "Parsed Boltz-2 affinity outputs, including binder probability and predicted affinity-like value when emitted."
},
{
"name": "confidence_summary",
"label": "Structure Confidence Summary",
"maps_to": "boltz_boltz2_affinity_predictor.confidence_summary",
"description": "Parsed Boltz-2 confidence outputs for the top-ranked predicted complex."
},
{
"name": "structure_artifacts",
"label": "Predicted Complex Structure Artifacts",
"maps_to": "boltz_boltz2_affinity_predictor.structure_artifacts",
"description": "File-backed structure artifacts, usually mmCIF, used by the 3D structure visualisation."
},
{
"name": "run_metadata",
"label": "Boltz Run Metadata",
"maps_to": "boltz_boltz2_affinity_predictor.run_metadata",
"description": "Runtime status, command metadata, logs, and caveats for the latest Boltz invocation."
}
]
},
"tags": [
"docking",
"boltz",
"structural-biology",
"protein-ligand",
"affinity",
"gpu"
],
"title": "Boltz: Boltz2AffinityPredictor Lab",
"models": [
{
"path": "owned/models/boltz_boltz2_affinity_predictor",
"alias": "boltz_boltz2_affinity_predictor",
"parameters": {
"override": true,
"accelerator": "gpu",
"runtime_mode": "managed",
"output_format": "mmcif",
"sampling_steps": 200,
"use_msa_server": true,
"recycling_steps": 3,
"diffusion_samples": 1,
"default_ligand_smiles": "N[C@@H](Cc1ccc(O)cc1)C(=O)O",
"default_protein_sequence": "MVTPEGNVSLVDESLLVGVTDEDRAVRSAHQFYERLIGLWAPAVMEAAHELGVFAALAEAPADSGELARRLDCDARAMRVLLDALYAYDVIDRIHDTNGFRYLLSAEARECLLPGTLFSLVGKFMHDINVAWPAWRNLAEVVRHGARDTSGAESPNGIAQEDYESLVGGINFWAPPIVTTLSRKLRASGRSGDATASVLDVGCGTGLYSQLLLREFPRWTATGLDVERIATLANAQALRLGVEERFATRAGDFWRGGWGTGYDLVLFANIFHLQTPASAVRLMRHAAACLAPDGLVAVVDQIVDADREPKTPQDRFALLFAASMTNTGGGDAYTFQEYEEWFTAAGLQRIETLDTPMHRILLARRATEPSAVPEGQASENLYFQ"
},
"provenance": {
"owned_path": "owned/models/boltz_boltz2_affinity_predictor"
}
},
{
"path": "owned/models/visualisation",
"alias": "visualisation",
"parameters": {
"integration_step": 0.01
},
"provenance": {
"owned_path": "owned/models/visualisation"
}
}
],
"wiring": [
{
"to": [
"visualisation.boltz_boltz2_affinity_predictor_affinity_summary"
],
"from": "boltz_boltz2_affinity_predictor.affinity_summary"
},
{
"to": [
"visualisation.boltz_boltz2_affinity_predictor_confidence_summary"
],
"from": "boltz_boltz2_affinity_predictor.confidence_summary"
},
{
"to": [
"visualisation.boltz_boltz2_affinity_predictor_structure_artifacts"
],
"from": "boltz_boltz2_affinity_predictor.structure_artifacts"
},
{
"to": [
"visualisation.boltz_boltz2_affinity_predictor_run_metadata"
],
"from": "boltz_boltz2_affinity_predictor.run_metadata"
}
],
"runtime": {
"duration": 0.01,
"settle_steps": 1,
"initial_inputs": {},
"communication_step": 0.01
},
"description": "Multi-model lab with an embedded visualisation sibling for Boltz-2 affinity-focused protein-ligand predictions. Ships with a real protein/ligand pair so the lab runs out of the box on a GPU runner.",
"schema_version": "2.0"
}Sign in to start your own run. Public-lab history stays visible here.
Preparing remote execution...
Staging package artifacts for remote execution...
Submitting remote job...
Running simulation remotely...
BSIM_PROGRESS:{"message": "Validating Boltz-2 inputs", "phase": "inputs"}BSIM_PROGRESS:{"message": "Writing Boltz-2 request payload", "phase": "inputs"}BSIM_PROGRESS:{"message": "Preparing Boltz-2 runtime", "phase": "runtime"}BSIM_PROGRESS:{"message": "Using external Boltz executable at /usr/local/bin/boltz", "phase": "runtime"}BSIM_PROGRESS:{"message": "Inspecting and repairing Boltz cache if needed", "phase": "runtime"}BSIM_PROGRESS:{"message": "Launching boltz predict", "phase": "inference"}Validating Boltz-2 inputs
Writing Boltz-2 request payload
Preparing Boltz-2 runtime
Using external Boltz executable at /usr/local/bin/boltz
Inspecting and repairing Boltz cache if needed
Launching boltz predict
BSIM_PROGRESS:{"duration": 30.0, "message": "Boltz-2 prediction is still running (30s elapsed)", "phase": "inference", "tick": 1}Boltz-2 prediction is still running (30s elapsed)
BSIM_PROGRESS:{"duration": 60.0, "message": "Boltz-2 prediction is still running (60s elapsed)", "phase": "inference", "tick": 2}Boltz-2 prediction is still running (60s elapsed)
BSIM_PROGRESS:{"duration": 90.0, "message": "Boltz-2 prediction is still running (90s elapsed)", "phase": "inference", "tick": 3}Boltz-2 prediction is still running (90s elapsed)
BSIM_PROGRESS:{"duration": 120.0, "message": "Boltz-2 prediction is still running (120s elapsed)", "phase": "inference", "tick": 4}Boltz-2 prediction is still running (120s elapsed)
BSIM_PROGRESS:{"duration": 150.0, "message": "Boltz-2 prediction is still running (150s elapsed)", "phase": "inference", "tick": 5}Boltz-2 prediction is still running (150s elapsed)
BSIM_PROGRESS:{"duration": 180.0, "message": "Boltz-2 prediction is still running (180s elapsed)", "phase": "inference", "tick": 6}Boltz-2 prediction is still running (180s elapsed)
BSIM_PROGRESS:{"duration": 210.0, "message": "Boltz-2 prediction is still running (210s elapsed)", "phase": "inference", "tick": 7}Boltz-2 prediction is still running (210s elapsed)
BSIM_PROGRESS:{"duration": 240.0, "message": "Boltz-2 prediction is still running (240s elapsed)", "phase": "inference", "tick": 8}Boltz-2 prediction is still running (240s elapsed)
BSIM_PROGRESS:{"duration": 270.0, "message": "Boltz-2 prediction is still running (270s elapsed)", "phase": "inference", "tick": 9}Boltz-2 prediction is still running (270s elapsed)
BSIM_PROGRESS:{"duration": 300.0, "message": "Boltz-2 prediction is still running (300s elapsed)", "phase": "inference", "tick": 10}Boltz-2 prediction is still running (300s elapsed)
BSIM_PROGRESS:{"duration": 330.0, "message": "Boltz-2 prediction is still running (330s elapsed)", "phase": "inference", "tick": 11}Boltz-2 prediction is still running (330s elapsed)
BSIM_PROGRESS:{"duration": 360.0, "message": "Boltz-2 prediction is still running (360s elapsed)", "phase": "inference", "tick": 12}Boltz-2 prediction is still running (360s elapsed)
BSIM_PROGRESS:{"duration": 390.0, "message": "Boltz-2 prediction is still running (390s elapsed)", "phase": "inference", "tick": 13}Boltz-2 prediction is still running (390s elapsed)
BSIM_PROGRESS:{"duration": 420.0, "message": "Boltz-2 prediction is still running (420s elapsed)", "phase": "inference", "tick": 14}Boltz-2 prediction is still running (420s elapsed)
BSIM_PROGRESS:{"duration": 450.0, "message": "Boltz-2 prediction is still running (450s elapsed)", "phase": "inference", "tick": 15}Boltz-2 prediction is still running (450s elapsed)
BSIM_PROGRESS:{"duration": 480.0, "message": "Boltz-2 prediction is still running (480s elapsed)", "phase": "inference", "tick": 16}Boltz-2 prediction is still running (480s elapsed)
BSIM_PROGRESS:{"message": "boltz predict finished", "phase": "inference"}BSIM_PROGRESS:{"message": "Boltz-2 prediction finished", "phase": "inference"}JSON
{
"outputs": {
"boltz_boltz2_affinity_predictor": {
"affinity_summary": {
"type": "record",
"source": "boltz_boltz2_affinity_predictor",
"name": "affinity_summary",
"emitted_at": 0.01,
"spec": {
"signal_type": "record",
"kind": "state",
"dtype": null,
"shape": null,
"emitted_unit": null,
"accepted_profiles": null,
"interpolation": "zoh",
"max_age": null,
"stale_policy": "warn",
"schema": {
"payload": "json"
},
"description": "Parsed Boltz affinity summary for the latest run"
},
"value": {
"payload": {
"affinity_pred_value": 2.184854030609131,
"affinity_probability_binary": 0.5395844578742981,
"affinity_pred_value1": 2.3018550872802734,
"affinity_probability_binary1": 0.44812509417533875,
"affinity_pred_value2": 2.067852735519409,
"affinity_probability_binary2": 0.6310437917709351
}
}
},
"confidence_summary": {
"type": "record",
"source": "boltz_boltz2_affinity_predictor",
"name": "confidence_summary",
"emitted_at": 0.01,
"spec": {
"signal_type": "record",
"kind": "state",
"dtype": null,
"shape": null,
"emitted_unit": null,
"accepted_profiles": null,
"interpolation": "zoh",
"max_age": null,
"stale_policy": "warn",
"schema": {
"payload": "json"
},
"description": "Parsed Boltz confidence summary for the top-ranked prediction"
},
"value": {
"payload": {
"confidence_score": 0.9206151366233826,
"ptm": 0.9331286549568176,
"iptm": 0.9058650135993958,
"ligand_iptm": 0.9058650135993958,
"protein_iptm": 0,
"complex_plddt": 0.9243025779724121,
"complex_iplddt": 0.8609288334846497,
"complex_pde": 0.5228868126869202,
"complex_ipde": 2.0138497352600098,
"chains_ptm": {
"0": 0.934418261051178,
"1": 0.9448723196983337
},
"pair_chains_iptm": {
"0": {
"0": 0.934418261051178,
"1": 0.4091123640537262
},
"1": {
"0": 0.9058650135993958,
"1": 0.9448723196983337
}
}
}
}
},
"structure_artifacts": {
"type": "record",
"source": "boltz_boltz2_affinity_predictor",
"name": "structure_artifacts",
"emitted_at": 0.01,
"spec": {
"signal_type": "record",
"kind": "state",
"dtype": null,
"shape": null,
"emitted_unit": null,
"accepted_profiles": null,
"interpolation": "zoh",
"max_age": null,
"stale_policy": "warn",
"schema": {
"payload": "json"
},
"description": "Absolute paths to the latest Boltz output artifacts"
},
"value": {
"payload": {
"prediction_dir": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request",
"structure_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/request_model_0.cif",
"confidence_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/confidence_request_model_0.json",
"affinity_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/affinity_request.json",
"pae_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/pae_request_model_0.npz",
"pde_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/pde_request_model_0.npz",
"plddt_file": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/plddt_request_model_0.npz"
}
}
},
"run_metadata": {
"type": "record",
"source": "boltz_boltz2_affinity_predictor",
"name": "run_metadata",
"emitted_at": 0.01,
"spec": {
"signal_type": "record",
"kind": "state",
"dtype": null,
"shape": null,
"emitted_unit": null,
"accepted_profiles": null,
"interpolation": "zoh",
"max_age": null,
"stale_policy": "warn",
"schema": {
"payload": "json"
},
"description": "Execution metadata and captured logs for the latest Boltz invocation"
},
"value": {
"payload": {
"status": "completed",
"command": [
"/usr/local/bin/boltz",
"predict",
"/tmp/boltz2-run-xcl7r6rw/request.yaml",
"--out_dir",
"/tmp/boltz2-run-xcl7r6rw/output",
"--accelerator",
"gpu",
"--devices",
"1",
"--output_format",
"mmcif",
"--recycling_steps",
"3",
"--sampling_steps",
"200",
"--diffusion_samples",
"1",
"--cache",
"/__modal/volumes/vo-dfUaIL1uGeVQVITc1qHrdd/runtime-cache/boltz",
"--use_msa_server",
"--override"
],
"cwd": "/tmp/boltz2-run-xcl7r6rw",
"input_yaml_path": "/tmp/boltz2-run-xcl7r6rw/request.yaml",
"output_dir": "/tmp/boltz2-run-xcl7r6rw/output",
"cache_dir": "/__modal/volumes/vo-dfUaIL1uGeVQVITc1qHrdd/runtime-cache/boltz",
"use_msa_server": true,
"stdout": "Downloading and extracting the CCD data to /__modal/volumes/vo-dfUaIL1uGeVQVITc1qHrdd/runtime-cache/boltz/mols. This may take a bit of time. You may change the cache directory with the --cache flag.\nDownloading the Boltz-2 weights to /__modal/volumes/vo-dfUaIL1uGeVQVITc1qHrdd/runtime-cache/boltz/boltz2_conf.ckpt. You may change the cache directory with the --cache flag.\nDownloading the Boltz-2 affinity weights to /__modal/volumes/vo-dfUaIL1uGeVQVITc1qHrdd/runtime-cache/boltz/boltz2_aff.ckpt. You may change the cache directory with the --cache flag.\nChecking input data.\nProcessing 1 inputs with 1 threads.\nGenerating MSA for /tmp/boltz2-run-xcl7r6rw/request.yaml with 1 protein entities.\nRunning structure prediction for 1 input.\n\nPredicting: | | 0/? [00:00<?, ?it/s]\nPredicting: 0%| | 0/1 [00:00<?, ?it/s]\nPredicting DataLoader 0: 0%| | 0/1 [00:00<?, ?it/s]\nPredicting DataLoader 0: 100%|██████████| 1/1 [02:08<00:00, 0.01it/s]Number of failed examples: 0\n\nPredicting DataLoader 0: 100%|██████████| 1/1 [02:08<00:00, 0.01it/s]\n\nPredicting property: affinity\n\nChecking input data for affinity.\nRunning affinity prediction for 1 input.\n\nPredicting: | | 0/? [00:00<?, ?it/s]\nPredicting: 0%| | 0/1 [00:00<?, ?it/s]\nPredicting DataLoader 0: 0%| | 0/1 [00:00<?, ?it/s]\nPredicting DataLoader 0: 100%|██████████| 1/1 [01:22<00:00, 0.01it/s]Number of failed examples: 0\n\nPredicting DataLoader 0: 100%|██████████| 1/1 [01:22<00:00, 0.01it/s]\n",
"stderr": "\n 0%| | 0/1 [00:00<?, ?it/s]\n\n 0%| | 0/150 [elapsed: 00:00 remaining: ?]\u001b[A\n\nSUBMIT: 0%| | 0/150 [elapsed: 00:00 remaining: ?]\u001b[A\n\nCOMPLETE: 0%| | 0/150 [elapsed: 00:00 remaining: ?]\u001b[A\n\nCOMPLETE: 100%|██████████| 150/150 [elapsed: 00:00 remaining: 00:00]\u001b[A\nCOMPLETE: 100%|██████████| 150/150 [elapsed: 00:01 remaining: 00:00]\n\n100%|██████████| 1/1 [00:02<00:00, 2.26s/it]\n100%|██████████| 1/1 [00:02<00:00, 2.26s/it]\nUsing bfloat16 Automatic Mixed Precision (AMP)\nGPU available: True (cuda), used: True\nTPU available: False, using: 0 TPU cores\nHPU available: False, using: 0 HPUs\n/usr/local/lib/python3.11/site-packages/pytorch_lightning/trainer/connectors/logger_connector/logger_connector.py:76: Starting from v1.9.0, `tensorboardX` has been removed as a dependency of the `pytorch_lightning` package, due to potential conflicts with other packages in the ML ecosystem. For this reason, `logger=True` will use `CSVLogger` as the default logger, unless the `tensorboard` or `tensorboardX` packages are found. Please `pip install lightning[extra]` or one of them to enable TensorBoard support by default\n/usr/local/lib/python3.11/site-packages/pytorch_lightning/utilities/migration/utils.py:56: The loaded checkpoint was produced with Lightning v2.5.0.post0, which is newer than your current Lightning version: v2.5.0\nLOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n/usr/local/lib/python3.11/site-packages/pytorch_lightning/utilities/_pytree.py:21: `isinstance(treespec, LeafSpec)` is deprecated, use `isinstance(treespec, TreeSpec) and treespec.is_leaf()` instead.\n/usr/local/lib/python3.11/site-packages/pytorch_lightning/utilities/migration/utils.py:56: The loaded checkpoint was produced with Lightning v2.5.0.post0, which is newer than your current Lightning version: v2.5.0\nLOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0]\n/usr/local/lib/python3.11/site-packages/pytorch_lightning/utilities/_pytree.py:21: `isinstance(treespec, LeafSpec)` is deprecated, use `isinstance(treespec, TreeSpec) and treespec.is_leaf()` instead.\n",
"runtime_mode": "external",
"runtime_dir": "/tmp/.runtime/boltz2",
"runtime_bootstrapped": false,
"runtime_setup_commands": [],
"cache_repaired": false,
"retry_count": 0,
"resolved_boltz_executable": "/usr/local/bin/boltz",
"returncode": 0,
"prediction_dir": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request"
}
}
}
}
},
"state": {
"boltz_boltz2_affinity_predictor": {}
},
"visuals": [
{
"module": "boltz_boltz2_affinity_predictor",
"module_class": "Boltz2AffinityPredictor",
"visuals": [
{
"render": "structure3d",
"data": {
"title": "Predicted Complex Structure",
"source": {
"kind": "artifact",
"artifact_id": "structure-446bae1bb4bbb329",
"path": "/tmp/bsim-clones/remote-artifacts/2f7e5b91-c26a-4e02-8474-3f5a95a9312c/boltz_boltz2_affinity_predictor/request/request_model_0.cif"
},
"format": "mmcif",
"annotations": [
{
"label": "Confidence Score",
"value": 0.9206151366233826
},
{
"label": "pTM",
"value": 0.9331286549568176
},
{
"label": "ipTM",
"value": 0.9058650135993958
},
{
"label": "Complex pLDDT",
"value": 0.9243025779724121
},
{
"label": "Affinity Prediction",
"value": 2.184854030609131
},
{
"label": "Binder Probability",
"value": 0.5395844578742981
}
],
"initial_view": {
"reset_camera": true
}
},
"description": "Top-ranked Boltz structure prediction for the latest protein-ligand run."
},
{
"render": "table",
"data": {
"title": "Boltz Summary",
"columns": [
"Metric",
"Value"
],
"rows": [
[
"Confidence Score",
"0.9206151366233826"
],
[
"pTM",
"0.9331286549568176"
],
[
"ipTM",
"0.9058650135993958"
],
[
"Complex pLDDT",
"0.9243025779724121"
],
[
"Affinity Prediction",
"2.184854030609131"
],
[
"Binder Probability",
"0.5395844578742981"
]
]
},
"description": "Key affinity and confidence metrics extracted from the latest Boltz outputs."
}
]
}
],
"duration": 0.01,
"communication_step": 0.01,
"modules": [
"boltz_boltz2_affinity_predictor"
],
"lab_commit": "72d5c53a7961d9fdf6cb0c99b11c4fe7ca52a5613e876fb8f8ec11e4ce4651b0",
"model_resolutions": [
{
"alias": "boltz_boltz2_affinity_predictor",
"model_id": "embedded:owned/models/boltz_boltz2_affinity_predictor",
"repo_full_name": null,
"commit_sha": null
}
],
"module_ports": {
"boltz_boltz2_affinity_predictor": {
"inputs": [
"ligand_smiles",
"msa_path",
"protein_sequence",
"run_options"
],
"outputs": [
"affinity_summary",
"confidence_summary",
"run_metadata",
"structure_artifacts"
]
}
},
"dependency_installs": [],
"dependency_policy_enabled": true
}