← Files Biohub ESMARCHIVED FILE
examples/starter-examples.json
30.5 KB · Sep 30, 2026 · 23:14 UTC
{
"schema_version": "1.0",
"structure_viewer_contract": {
"capability": "interactive-molecular-structure-viewing",
"request_artifact": "presentation-request.json",
"artifact_path": "verified-absolute",
"open_intent_field": "openIntentId",
"open_intent_policy": "reuse-exact-emitted-value",
"open_intent_reuse": "delivery-retry-only",
"legacy_open_intent_policy": "generate-new-stable-only-when-request-artifact-missing",
"open_policy": "once",
"session_policy": "retain-returned-session-within-same-task",
"verification": "list-primary-object",
"style_when": "ready",
"predicted_confidence_style": {
"semantic": "predicted-confidence",
"source": "coordinate-b-factor"
},
"timed_out_mutation": "inspect-acknowledged-state-before-retry",
"blocked_outcomes": ["pending", "unavailable"],
"scientific_success_independent": true
},
"prompt_max_characters": 128,
"qualificationStatus": "pending-clean-host-qualification",
"qualification": {
"cleanInstalledHostQualified": false,
"claim": "Structural validation and source tests pass; clean installed-host starter execution has not yet been claimed.",
"gates": [
"Install the exact plugin payload in a clean Codex home with a read-only, network-disabled qualification boundary.",
"Exercise all three natural-language starters through model-driven routing while resolving the pinned GB1 fixture internally.",
"Capture no-provider clean-host evidence: managed starters stop at an exact scope/cost preview pending separate current-turn confirmation, while all three prove their pinned request and presentation plans.",
"Re-run this contract validator against the exact qualified payload."
]
},
"sequence": {
"id": "gb1-1pga-chain-a",
"name": "Streptococcal protein G B1 domain (GB1), RCSB PDB 1PGA chain A",
"literal": "MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"source": {
"title": "RCSB PDB 1PGA: B1 immunoglobulin-binding domain of streptococcal protein G",
"reference": "https://www.rcsb.org/structure/1PGA",
"fasta_url": "https://www.rcsb.org/fasta/entry/1PGA/display",
"accession": "1PGA",
"chain": "A",
"entry_revision": "1.4",
"snapshot_date": "2026-07-12",
"raw_fasta_bytes": 115,
"raw_fasta_sha256": "a56ce69e9e80a566367b6b4b3a01a263d61e9b5c58dd55e9eb8e49a50bd6b561",
"usage": "Exact 56-residue chain A sequence from the experimentally determined 1PGA entry",
"numbering": "One-based residue positions on the exact 56-residue literal sequence in this contract"
},
"length": 56,
"sha256": "7e859d82171047700fd3e9632f7a47eab4a39baedc8c3316d2fc62d3ce2260bb"
},
"surface_contract": {
"readme": "README.md",
"router_skill": "skills/biohub-esm/SKILL.md",
"routing_reference": "skills/biohub-esm/references/routing.md",
"activation_fixture": "examples/activation-cases.json",
"agent_defaults": {
"gb1-esmc-w43f-masked-llr": "skills/esmc/agents/openai.yaml",
"gb1-esmfold2-fast-fold": "skills/esmfold2/agents/openai.yaml",
"gb1-atlas-similarity-search": "skills/esm-atlas/agents/openai.yaml"
}
},
"examples": [
{
"id": "gb1-esmc-w43f-masked-llr",
"prompt": "What might W43F do to GB1?",
"route": {
"skill": "esmc",
"model": "esmc-600m-2024-12",
"provider": "biohub-managed",
"may_incur_cost": true,
"confirmation_boundary": "not_required_for_managed_tutorial_scale",
"prompt_authorizes_execution": true,
"required_confirmation": "not required; report the credits consumed with the result instead",
"request_policy": "exactly one managed logits request with no implicit retries",
"local_alternative": "biohub/ESMC-600M at the pinned revision on user-owned compute"
},
"input_validation": {
"sequence_id": "gb1-1pga-chain-a",
"alphabet": "ACDEFGHIKLMNPQRSTVWY",
"maximum_sequence_length": 2046,
"mutations": [
"W43F"
],
"checks": [
"Verify the literal sequence hash and canonical amino-acid alphabet before tokenization.",
"Interpret mutations as one-based substitutions on this exact literal sequence.",
"Reject any mutation whose stated wild-type residue does not match the literal sequence."
]
},
"ordered_workflow": [
"Run status-only preflight first; if managed access is missing, give the user the key page from $biohub-esm-setup and resume automatically once it is configured.",
"Resolve the natural launcher to the pinned GB1 fixture and validate its sequence, SHA-256, length, and mutation numbering without making a provider call.",
"Validate the managed model ID, endpoint, and pinned client SDK revision, tokenize locally with the pinned SDK, and make exactly one managed logits request without implicit retries.",
"Compute the W43F masked log-likelihood ratio with one documented masking and scoring method.",
"Serialize the raw response, score, deterministic SVG score card, parameters, and provenance without claiming fitness, stability, or function, then display the SVG inline and note the credits consumed."
],
"artifacts": [
{
"name": "raw-response.json",
"format": "JSON",
"required": true
},
{
"name": "mutation-score.json",
"format": "JSON",
"required": true,
"derivation": "Derive the documented masked log-likelihood ratio from the raw response, preserve both log probabilities and one-based numbering, checksum it, and include it in provenance."
},
{
"name": "mutation-score.svg",
"format": "SVG",
"required": true,
"derivation": "Render a deterministic self-contained score card from mutation-score.json and label it as a model hypothesis rather than fitness, stability, or function."
},
{
"name": "provenance.json",
"format": "JSON",
"required": true
}
],
"results": [
"The W43F masked log-likelihood ratio and the exact scoring convention",
"An inline deterministic score card labeled as a language-model hypothesis, not experimental fitness, stability, or function"
],
"presentation": {
"mode": "inline-image",
"automatic": true,
"primary_artifact": "mutation-score.svg",
"capability": "inline-image-display",
"style": "Display the deterministic score card inline and label it as a model score rather than a biological effect.",
"fallback": "Return the verified SVG and JSON artifact paths if inline image display is unavailable; the JSON artifacts remain authoritative."
},
"provenance": [
"sequence id, literal SHA-256, source reference, and numbering convention",
"route, provider, model id, endpoint, scoring method, access time, and pinned client SDK revision",
"whether the managed service exposed a model revision, execution parameters, raw response digest, and artifact SHA-256 values"
],
"limits": [
"Scores from different models, layers, contexts, or revisions are not directly comparable.",
"Zero-shot ESMC scores do not establish stability, activity, binding, or organismal fitness."
],
"failure_and_nondeterminism": {
"failure_modes": [
"invalid residue or mutation numbering",
"missing credential or declined confirmation",
"provider error or model revision mismatch"
],
"nondeterminism": "Record all provider and model parameters; reruns may differ if an unpinned service changes.",
"retry_policy": "Do not retry an indeterminate provider call until its provider state is reconciled."
},
"qualification_gates": [
"Clean-installed-host starter is visible and activates only biohub-esm plus esmc.",
"A no-provider clean-host trace must prove that when no separate explicit current-turn confirmation is provided, the model stops at the scope/cost preview.",
"A no-provider validation trace must prove the hidden exact literal, W43F numbering, exact one-request route, SVG presentation plan, and artifact plan."
],
"qualification_response": {
"format": "exact-lines-v1",
"lines": [
"ESMC input: GB1 1PGA chain A; 56 residues; mutation W43F in one-based residue numbering; sequence SHA-256 7e859d82171047700fd3e9632f7a47eab4a39baedc8c3316d2fc62d3ce2260bb.",
"ESMC request: exactly one Biohub managed POST /api/v1/logits with model esmc-600m-2024-12 using ESM_API_KEY; no implicit retries.",
"Mutation score formula: use one masked context and compute the alternate logit minus the wild-type logit.",
"ESMC artifacts: raw-response.json, mutation-score.json, mutation-score.svg, and provenance.json with checksums.",
"ESMC provenance: preserve the route, provider, endpoint, exact model ID, any managed model revision exposed, pinned ESM and Transformers SDK revisions, input digest, parameters, timestamps, raw-response and artifact checksums, masked context, both natural-log probabilities, one-based residue index, zero-based tensor index, and W43F score.",
"ESMC cost: running this consumes a small number of provider credits, reported with the result. A managed request at this scale runs without a separate confirmation; Modal, self-hosted, and bulk transfers still ask first.",
"Scientific status: model output is a model hypothesis, not an experimental truth, and experimental validation is required before biological interpretation.",
"No provider call or request was sent."
]
},
"execution_contract": {
"request_count": 1,
"method": "POST",
"endpoint": "https://biohub.ai/api/v1/logits",
"sequence": "MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"mutation": "W43F",
"model": "esmc-600m-2024-12",
"scoring_method": "masked-log-likelihood-ratio",
"command": [
"<python-3.12-with-pinned-esm>",
"<plugin-root>/scripts/biohub_esm.py",
"esmc-mutation-score",
"--sequence",
"MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"--mutation",
"W43F",
"--model",
"esmc-600m-2024-12",
"--output-dir",
"/absolute/path/gb1-esmc-w43f-masked-llr"
],
"output_dir": "/absolute/path/gb1-esmc-w43f-masked-llr",
"artifacts": [
"raw-response.json",
"mutation-score.json",
"mutation-score.svg",
"provenance.json"
],
"follow_up_requests": []
}
},
{
"id": "gb1-esmfold2-fast-fold",
"prompt": "Show me what GB1 looks like.",
"route": {
"skill": "esmfold2",
"model": "esmfold2-fast-2026-05",
"provider": "biohub-managed",
"may_incur_cost": true,
"confirmation_boundary": "not_required_for_managed_tutorial_scale",
"prompt_authorizes_execution": true,
"required_confirmation": "not required; report the credits consumed with the result instead",
"request_policy": "exactly one managed fold request with no implicit retries",
"local_alternative": "biohub/ESMFold2-Fast at the pinned revision on user-owned compute"
},
"qualification_response": {
"format": "exact-lines-v1",
"lines": [
"Fold input: GB1 1PGA chain A; 56 residues; sequence SHA-256 7e859d82171047700fd3e9632f7a47eab4a39baedc8c3316d2fc62d3ce2260bb; msa=null.",
"Fold request: exactly one Biohub managed POST /api/v1/fold with model esmfold2-fast-2026-05 using examples/gb1-esmfold2-fast-fold-request.json; no implicit retries.",
"Fold parameters: include_distogram=false; include_embeddings=false; include_pair_chains_iptm=false; num_sampling_steps=100; num_loops=20; lm_dropout=0.3; lm_mask_pct=0.1; msa_max_depth=1024; msa_column_mask_rate=0.1.",
"Fold pAE request parameter: include_pae=true.",
"Fold confidence scope: provider-native pLDDT=per-residue on the 0-1 scale; pAE=residue-pair in angstroms.",
"Fold artifacts: prediction.pdb, presentation-request.json, result.json, raw-response.json, and provenance.json with checksums.",
"Fold presentation: after successful artifact creation, consume the validated presentation-request.json and pass its verified absolute prediction.pdb path once to the available molecular-structure-viewing capability using its exact retained openIntentId. Generate a new stable ID only for a legacy artifact set without presentation-request.json. Retain the returned session within this task, verify the primary object, and request predicted-confidence coloring only when ready, labeling the coordinate B-factor field as serializer-scaled 0-100 pLDDT rather than an experimental temperature factor. If presentation is pending or unavailable, report that separately and return the checksummed artifacts without invalidating the fold.",
"Fold cost: running this consumes a small number of provider credits, reported with the result. A managed request at this scale runs without a separate confirmation; Modal, self-hosted, and bulk transfers still ask first.",
"Scientific status: model output is a static conformational model hypothesis, not an experimental truth, and experimental validation is required before biological interpretation.",
"No provider call or request was sent."
]
},
"input_validation": {
"sequence_id": "gb1-1pga-chain-a",
"alphabet": "ACDEFGHIKLMNPQRSTVWY",
"maximum_sequence_length": null,
"length_policy": "No universal ESMFold2 cap is asserted; validate the chosen endpoint, model, hardware, and current provider contract.",
"mutations": [],
"checks": [
"Verify the literal sequence hash, canonical amino-acid alphabet, and single-chain input.",
"Use Fast only as a single-sequence route and do not attach or imply MSA conditioning.",
"Validate managed model parameters before constructing the request.",
"Require finite atom37 N, CA, and C coordinates for every biological residue; an all-null coordinate row is valid only at an explicit chain-break placeholder."
]
},
"ordered_workflow": [
"Using the same resolved <python-3.12-with-pinned-esm> interpreter that will execute the request, run status-only preflight --endpoint fold first; if managed access is missing, give the user the key page from $biohub-esm-setup and resume automatically once it is configured.",
"Resolve the natural launcher to the pinned GB1 fixture and validate its sequence, SHA-256, length, and Fast single-sequence constraints without making a provider call.",
"Run the pinned managed-post --endpoint fold command exactly once, without implicit retries, from examples/gb1-esmfold2-fast-fold-request.json with include_pae=true and the validated Fast parameters.",
"Write the PDB, retained presentation request, normalized confidence result, raw response, provenance, and cryptographic artifact hashes; after successful creation, consume presentation-request.json, open its verified absolute prediction.pdb path once with its exact retained openIntentId, retain and verify the same-task session, request predicted-confidence coloring only when ready, report pending or unavailable presentation separately, and note the credits consumed."
],
"artifacts": [
{
"name": "prediction.pdb",
"format": "PDB",
"required": true
},
{
"name": "presentation-request.json",
"format": "JSON",
"required": true
},
{
"name": "result.json",
"format": "JSON",
"required": true
},
{
"name": "raw-response.json",
"format": "JSON",
"required": true
},
{
"name": "provenance.json",
"format": "JSON",
"required": true
}
],
"results": [
"The exact sequence-fold PDB coordinate artifact returned for the literal GB1 sequence",
"pLDDT and pAE values preserved in result.json; labeled pLDDT 0-1 per-residue and pAE angstrom residue-pair summaries preserved in provenance.json",
"Every returned quality_warnings item reported visibly without silent coordinate repair; high pLDDT cannot override chemistry or geometry warnings",
"A warning that the fold is a static model hypothesis rather than experimental truth"
],
"presentation": {
"mode": "structure-viewer",
"automatic": true,
"primary_artifact": "prediction.pdb",
"capability": "interactive-molecular-structure-viewing",
"contract": "structure_viewer_contract",
"style": "Request predicted-confidence coloring only when the viewer is ready and label coordinate B-factor values as pLDDT rather than experimental temperature factors.",
"fallback": "If presentation is pending, retain the intent and report it as pending; if the capability is unavailable, return the verified PDB and result/provenance paths. Neither presentation outcome invalidates the fold."
},
"provenance": [
"sequence id, literal SHA-256, source reference, and numbering convention",
"route, provider, model id, endpoint, access time, validated parameters, and pinned client SDK revision",
"whether the managed service exposed a model revision, raw response digest, confidence fields, and artifact SHA-256 values"
],
"limits": [
"ESMFold2-Fast is not MSA-conditioned and should not be presented as the accuracy-priority route.",
"One static prediction does not establish dynamics, binding affinity, function, or experimental correctness."
],
"failure_and_nondeterminism": {
"failure_modes": [
"invalid sequence or incompatible Fast parameters",
"missing credential or declined confirmation",
"provider error, malformed response, or model revision mismatch",
"viewer pending or unavailable after successful artifact creation"
],
"nondeterminism": "The managed /fold API exposes no seed; retain every pinned inference parameter and treat provider or model changes as potentially nondeterministic.",
"retry_policy": "Do not retry an indeterminate provider call until its provider state is reconciled; inspect acknowledged state before retrying a timed-out viewer mutation, and never discard artifacts for pending or unavailable presentation."
},
"qualification_gates": [
"Clean-installed-host starter is visible and activates only biohub-esm plus esmfold2.",
"A no-provider clean-host trace must prove that when no separate explicit current-turn confirmation is provided, the model stops at the scope/cost preview.",
"A no-provider validation trace must prove the hidden exact literal, exact one-request Fast sequence-fold route, artifact plan, pLDDT and pAE scopes, retained presentation-request.json/openIntentId consumption with legacy-only ID generation, same-task session verification, ready-only predicted-confidence coloring, timeout reconciliation, and pending/unavailable artifact fallback."
],
"execution_contract": {
"request_count": 1,
"method": "POST",
"endpoint": "https://biohub.ai/api/v1/fold",
"request_file": "examples/gb1-esmfold2-fast-fold-request.json",
"request": {
"model": "esmfold2-fast-2026-05",
"sequence": "MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"msa": null,
"include_distogram": false,
"include_pae": true,
"include_pair_chains_iptm": false,
"num_sampling_steps": 100,
"num_loops": 20,
"lm_dropout": 0.3,
"lm_mask_pct": 0.1,
"msa_max_depth": 1024,
"msa_column_mask_rate": 0.1,
"include_embeddings": false
},
"command": [
"<python-3.12-with-pinned-esm>",
"<plugin-root>/scripts/biohub_esm.py",
"managed-post",
"--endpoint",
"fold",
"--input",
"<plugin-root>/examples/gb1-esmfold2-fast-fold-request.json",
"--output-dir",
"/absolute/path/gb1-esmfold2-fast-fold"
],
"output_dir": "/absolute/path/gb1-esmfold2-fast-fold",
"offline_validation": {
"function": "validate_fold_config",
"model": "esmfold2-fast-2026-05",
"endpoint": "fold"
},
"follow_up_requests": []
}
},
{
"id": "gb1-atlas-similarity-search",
"prompt": "Find proteins similar to GB1.",
"route": {
"skill": "esm-atlas",
"model": "not-applicable-public-data-api",
"provider": "esm-atlas-v1alpha1-public-api",
"may_incur_cost": false,
"confirmation_boundary": "not_required_for_public_alpha_read",
"prompt_authorizes_execution": true,
"required_confirmation": "not required for the documented public alpha read",
"request_policy": "exactly one public search request with zero detail follow-ups",
"local_alternative": "anonymous ESM Atlas S3 data for deliberately scoped bulk analysis"
},
"qualification_response": {
"format": "exact-lines-v1",
"lines": [
"Atlas authentication: ESM Atlas currently does not require a client-side API key or client authentication.",
"Atlas similarity-search ceiling: at most 800 residues.",
"Atlas on-demand-fold ceiling: at most 699 residues.",
"Atlas starter fold scope: no on-demand fold is planned or authorized.",
"Atlas starter search (public v1alpha1): 56-residue GB1 query; topk_results=10 (up to 10 actual ranked hits); topk_features=20; min_similarity=0.5; include_cluster_info=true.",
"Atlas execution plan: exactly one similarity search; zero protein or cluster-detail follow-ups.",
"Atlas presentation: use only coordinates embedded in the one search response; if absent and the result is non-empty, make at most one public pLDDT thumbnail request for the top-ranked hit.",
"Atlas structure status: absent authoritative origin metadata, returned coordinates are model hypotheses and pLDDT thumbnails are model-confidence summaries, not experimental structures or evidence; experimental validation is required.",
"Atlas evidence: preserve raw-response.json, result.json, and provenance.json with endpoint and request parameters, access timestamps, response and artifact checksums, v1alpha1 schema, and CC-BY-4.0 attribution.",
"Atlas schema: v1alpha1 is alpha and unstable.",
"No Atlas request was sent and no results were obtained."
]
},
"input_validation": {
"sequence_id": "gb1-1pga-chain-a",
"alphabet": "ACDEFGHIKLMNPQRSTVWY",
"maximum_sequence_length": 800,
"mutations": [],
"checks": [
"Verify the literal sequence hash and canonical amino-acid alphabet.",
"Keep the query within the conservative 800-residue similarity-search bound.",
"Validate the live v1alpha1 response schema while retaining the raw response."
]
},
"ordered_workflow": [
"Resolve the natural launcher to the pinned GB1 fixture and validate its sequence, SHA-256, length, and Atlas query constraints.",
"Make exactly one public v1alpha1 similarity-search GET with topk_results=10, topk_features=20, min_similarity=0.5, include_cluster_info=true, and the pinned output directory.",
"Retain the raw response and return up to ten actual ranked hits with unique MD5s, nonincreasing similarity scores from 1.0 down to the requested 0.5 minimum, non-empty accessions, and positive integer lengths; never manufacture missing hits.",
"Use only cluster metadata embedded in returned hit records; make zero protein or cluster-detail follow-up requests.",
"Serialize hits, embedded cluster metadata, attribution, schema, access-time, and request provenance.",
"Automatically open the first returned coordinate artifact; otherwise, for a non-empty result, make at most one public pLDDT thumbnail GET for the first-ranked hit, save its provenance sidecar, and display the image inline."
],
"artifacts": [
{
"name": "raw-response.json",
"format": "JSON",
"required": true
},
{
"name": "result.json",
"format": "JSON",
"required": true
},
{
"name": "provenance.json",
"format": "JSON",
"required": true
}
],
"results": [
"Up to ten actual returned hits with unique MD5, non-empty accession, positive integer length, and nonincreasing similarity in the validated 0-1 range at or above 0.5",
"Available cluster metadata preserved only when embedded in the single search response",
"ESM Atlas CC-BY-4.0 attribution and an explicit v1alpha1 schema warning"
],
"presentation": {
"mode": "structure-or-inline-image",
"automatic": true,
"primary_artifact": "the first-ranked normalized hit containing pdb_artifact; otherwise top-hit-plddt.png for a non-empty result",
"capability": "interactive-molecular-structure-viewing-or-inline-image-display",
"style": "Open returned coordinates through the structure-viewing capability, or display one pLDDT thumbnail inline when coordinates are absent.",
"fallback": "For a pending viewer retain the intent and report it as pending; for an empty result or unavailable presentation return verified JSON artifacts. Never trigger an on-demand fold implicitly."
},
"provenance": [
"sequence id, literal SHA-256, source reference, and numbering convention",
"v1alpha1 base URL, endpoint, request parameters, access timestamp, and raw response SHA-256",
"returned identifiers and embedded cluster metadata, CC-BY-4.0 attribution, schema version, and artifact SHA-256 values"
],
"limits": [
"ESM Atlas is an unstable public alpha API; validate schemas and preserve raw responses.",
"Learned similarity and cluster context do not establish shared function, mechanism, or experimental structure."
],
"failure_and_nondeterminism": {
"failure_modes": [
"invalid sequence or overlength query",
"rate limit, unavailable service, or changed alpha schema",
"fewer than ten hits or missing cluster/coordinate metadata"
],
"nondeterminism": "Atlas contents and rankings can change; retain access time, raw response, and request digest.",
"retry_policy": "Retry only idempotent reads with bounded backoff; never invent results or implicitly request a fold on a miss."
},
"qualification_gates": [
"Clean-installed-host starter is visible and activates only biohub-esm plus esm-atlas.",
"A no-provider clean-host trace must prove the exact one-search, zero-detail-follow-up plan without making the public read during qualification.",
"The trace must validate include_cluster_info=true, the pinned ranked-hit response contract, zero protein or cluster-detail follow-ups, and at most one conditional pLDDT thumbnail GET.",
"The planned visible result must automatically open returned coordinates or display the conditional thumbnail after success while retaining raw-response.json, result.json, provenance.json, CC-BY-4.0 attribution, and alpha-schema warnings."
],
"execution_contract": {
"request_count": 1,
"method": "GET",
"endpoint": "https://biohub.ai/esm/protein/api/v1alpha1/similarity-search",
"query": {
"sequence": "MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"topk_results": 10,
"topk_features": 20,
"min_similarity": 0.5,
"cluster_pct_characterized_max": null,
"include_cluster_info": true
},
"command": [
"python3",
"<plugin-root>/scripts/biohub_esm.py",
"atlas",
"search",
"--sequence",
"MTYKLILNGKTLKGETTTEAVDAATAEKVFKQYANDNGVDGEWTYDDATKTFTVTE",
"--topk-results",
"10",
"--topk-features",
"20",
"--min-similarity",
"0.5",
"--include-cluster-info",
"--output-dir",
"/absolute/path/gb1-atlas-similarity-search"
],
"output_dir": "/absolute/path/gb1-atlas-similarity-search",
"response_contract": {
"maximum_hits": 10,
"required_hit_fields": [
"protein_hash",
"protein_accession",
"sequence_length",
"similarity_score"
],
"unique_by": "protein_hash",
"similarity_range": [
0.0,
1.0
],
"minimum_similarity": 0.5,
"order": "nonincreasing-similarity"
},
"detail_follow_up_requests": [],
"presentation_request": {
"condition": "non-empty search result with no returned coordinate artifact",
"maximum_request_count": 1,
"method": "GET",
"endpoint_template": "https://biohub.ai/esm/protein/api/v1alpha1/proteins/<top-hit-md5>/thumbnail/plddt",
"command": [
"python3",
"<plugin-root>/scripts/biohub_esm.py",
"atlas",
"thumbnail",
"--protein-hash",
"<top-hit-md5>",
"--thumbnail-type",
"plddt",
"--output",
"/absolute/path/gb1-atlas-similarity-search/top-hit-plddt.png"
],
"artifact": "top-hit-plddt.png",
"provenance_artifact": "top-hit-plddt.png.provenance.json"
},
"viewer_selection": "first-ranked normalized hit containing pdb_artifact; otherwise use the conditional pLDDT thumbnail presentation request for a non-empty result"
},
"optional_artifacts": [
{
"name_pattern": "search-<n>.pdb",
"format": "PDB",
"condition": "Only when the provider embeds coordinates in a returned search hit."
},
{
"name": "top-hit-plddt.png",
"format": "PNG",
"condition": "Only for a non-empty search result when no returned hit contains a coordinate artifact."
},
{
"name": "top-hit-plddt.png.provenance.json",
"format": "JSON",
"condition": "Written with the conditional top-hit pLDDT thumbnail."
}
]
}
]
}
SHA-256: 40594ccaaa5829c983719df2bc206d70674d2872b83cd73f5b04abf8da36043e