nvidia-skill-finder
Use for NVIDIA-related requests where an NVIDIA skill might help, even if the user did not…
Use this skill for MolMIM, NVIDIA's BioNeMo NIM microservice for small-molecule latent-space generation and optimization. Invoke for MolMIM, molecular embeddings, hidden states, latent decoding, sampling around a seed SMILES, CMA-ES guided molecule generation, QED or plogP
$ npx -y skills add NVIDIA/skills --skill bionemo-molmim-nim --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/bionemo-molmim-nimContext preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill for MolMIM, NVIDIA's BioNeMo NIM microservice for small-molecule latent-space generation and optimization. Invoke for MolMIM, molecular embeddings, hidden states, latent decoding, sampling around a seed SMILES, CMA-ES guided molecule generation, QED or plogP
name: molmim-nim description: > Use this skill for MolMIM, NVIDIA's BioNeMo NIM microservice for small-molecule latent-space generation and optimization. Invoke for MolMIM, molecular embeddings, hidden states, latent decoding, sampling around a seed SMILES, CMA-ES guided molecule generation, QED or plogP optimization, hosted NVIDIA API calls, or local Docker deployment. license: Apache-2.0 AND CC-BY-4.0 compatibility: "requests>=2.28; rdkit" allowed-tools: Bash, Read, Write, AskUserQuestion
Generate, sample, embed, and decode small molecules with MolMIM. Use this guide for first-pass hosted/local usage; load supplemental files only when needed:
Ask only when context is unclear:
> Hosted NVIDIA API or local Docker NIM?
See [`references/api.md`](references/api.md) under **Endpoints** for the full hosted/local endpoint list.
Mode difference: the hosted API reference exposes `/generate`; the local container exposes the broader latent-space workflow (`/embedding`, `/hidden`, `/decode`, `/sampling`, `/generate`). Do not invent hosted latent endpoints.
Hosted requests use `Authorization: Bearer $NGC_API_KEY`. Local inference uses no auth header after readiness.
Use shell env first; source repo-root `.env` only if present. Do not print keys. MolMIM docs use `NGC_CLI_API_KEY` for the local container; this repo accepts `NGC_API_KEY` or `NVIDIA_API_KEY` and maps to `NGC_CLI_API_KEY` for startup. Mount `LOCAL_NIM_CACHE` at `/home/nvs/.cache/nim`.
For the exact startup preflight (the `NGC_API_KEY`/`NVIDIA_API_KEY` → `NGC_CLI_API_KEY` mapping, `docker login`, and the `docker run` for `nvcr.io/nim/nvidia/molmim:1.0.0`), copy the command block in [`references/api.md`](references/api.md) under **Local Docker** verbatim.
Readiness check:
until curl -sf http://localhost:8000/v1/health/ready; do sleep 5; done
Local embedding smoke test after readiness. Local inference uses no `Authorization` header:
import requests
seed = "CN1C=NC2=C1C(=O)N(C(=O)N2C)C"
response = requests.post(
"http://localhost:8000/embedding",
headers={"Content-Type": "application/json"},
json={"sequences": [seed]},
timeout=60,
)
response.raise_for_status()
embedding_data = response.json()
embeddings = embedding_data["embeddings"]
print(f"received {len(embeddings)} embedding vector(s)")Use hosted `/generate` for seed-SMILES generation or optimization. Use `algorithm: "CMA-ES"` for guided property optimization and `algorithm: "none"` for unguided sampling around the seed.
import os
import requests
hosted = True
url = (
"https://health.api.nvidia.com/v1/biology/nvidia/molmim/generate"
if hosted else "http://localhost:8000/generate"
)
headers = {"Content-Type": "application/json"}
if hosted:
headers["Authorization"] = f"Bearer {os.getenv('NGC_API_KEY')}"
payload = {
"smi": "CN1C=NC2=C1C(=O)N(C(=O)N2C)C",
"algorithm": "CMA-ES",
"num_molecules": 10,
"property_name": "QED",
"minimize": False,
"min_similarity": 0.4,
"particles": 8,
"iterations": 3,
}
response = requests.post(url, headers=headers, json=payload, timeout=180)
response.raise_for_status()
result = response.json()Generation gotchas:
common values up to 0.7 for constrained optimization.
`/sampling`.
Use local-only endpoints for embedding, hidden-state manipulation, and decode. This is also the surface used by the guided optimization example package. For local latent workflows, state explicitly that the hosted API reference exposes `/generate`; `/embedding`, `/hidden`, `/decode`, and `/sampling` are local-only in the current docs.
seed = "CC(Cc1ccc(cc1)C(C(=O)O)C)C"
base = "http://localhost:8000"
headers = {"Content-Type": "application/json"}
embedding = requests.post(
f"{base}/embedding",
headers=headers,
json={"sequences": [seed]},
timeout=60,
)
embedding.raise_for_status()
embedding_data = embedding.json()
embeddings = embedding_data["embeddings"]
print(f"received {len(embeddings)} embedding vector(s)")
hidden = requests.post(
f"{base}/hidden",
headers=headers,
json={"sequences": [seed]},
timeout=60,
)
hidden.raise_for_status()
hidden_data = hidden.json()
hiddens = hidden_data["hiddens"]
mask = hidden_data["mask"]
decoded = requests.post(
f"{base}/decode",
headers=headers,
json={"hiddens": hiddens, "mask": mask},
timeout=60,
)
decoded.raise_for_status()
sampled = requests.post(
f"{base}/sampling",
headers=headers,
json={"sequences": [seed], "num_molecules": 10, "scaled_radius": 0.7},
timeout=60,
)
sampled.raise_for_status()Save generated SMILES and validate before using them downstream.
from pathlib import Path
import json
def molmim_smiles(result):
values = []
if isinstance(result.get("generated"), list):
for item in result["generated"]:
if isinstance(item, str):
values.append(item)
elif isinstance(item, list):
values.extend(x for x in item if isinstance(x, str))
molecules = result.get("molecules")
if isinstance(molecules, str):
molecules = json.loOfficial, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.
Use for NVIDIA-related requests where an NVIDIA skill might help, even if the user did not…
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration,…
Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use…
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip)…
Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for…
Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use…