Loading...
Loading...
Run ProteinMPNN inverse folding via NVIDIA NIM to design protein sequences for a target backbone. Use for ProteinMPNN, inverse folding, sequence design, backbone redesign, fixed chains/residues, omit_AAs, sampling temperature, soluble model, hosted NVIDIA API, local Docker, PDB input, and multi-FASTA output.
npx skill4agent add nvidia-bionemo/bionemo-agent-toolkit proteinmpnn-nimSKILL.mdreferences/api.mdreferences/science.mdreferences/parameters.mdreferences/validation.mdreferences/examples.mdNIM_API_MODE=localPROTEINMPNN_NIM_URLhttp://localhost:8000Hosted NVIDIA API or local Docker NIM?
https://health.api.nvidia.com/v1/biology/ipd/proteinmpnn/predict${PROTEINMPNN_NIM_URL:-http://localhost:8000}/biology/ipd/proteinmpnn/predict/v1/Authorization: Bearer $NGC_API_KEYNGC_API_KEYNVIDIA_API_KEY-e NGC_API_KEYdocker logindocker run.envNGC_API_KEYNVIDIA_API_KEYdocker runnvcr.io/nim/ipd/proteinmpnn:latestreferences/api.md/home/nvs/.cache/nim/opt/nim/.cachePROTEINMPNN_NIM_URLproteinmpnn_nim_url="${PROTEINMPNN_NIM_URL:-http://localhost:8000}"
until curl -sf "${proteinmpnn_nim_url%/}/v1/health/ready"; do sleep 5; doneimport os
from pathlib import Path
import requests
HOSTED = os.getenv("NIM_API_MODE", "hosted").strip().lower() != "local"
pdb_content = Path("1R42.pdb").read_text()
nim_url = os.getenv("PROTEINMPNN_NIM_URL", "http://localhost:8000").rstrip("/")
url = (
"https://health.api.nvidia.com/v1/biology/ipd/proteinmpnn/predict"
if HOSTED else f"{nim_url}/biology/ipd/proteinmpnn/predict"
)
headers = {"Content-Type": "application/json"}
if HOSTED:
headers["Authorization"] = f"Bearer {os.environ['NGC_API_KEY']}"
payload = {
"input_pdb": pdb_content,
"num_seq_per_target": 10,
"sampling_temp": [0.1],
"use_soluble_model": False,
"ca_only": False,
}
response = requests.post(url, headers=headers, json=payload, timeout=300)
response.raise_for_status()
result = response.json()"input_pdb_chains": ["A"]"omit_AAs": ["C"]"omit_AAs": ["M"]"sampling_temp": [0.1, 0.3, 0.5]"use_soluble_model": Truenum_seq_per_targetmfastareferences/examples.mdreferences/validation.mdsampling_tempmfastainput_pdbnum_seq_per_target >= 1/v1//home/nvs/.cache/nim