genmol-nim
Generate novel drug-like molecules using the GenMol NIM microservice. Use for de novo generation, scaffold decoration, motif extension, lead optimization, SAFE notation, QED or LogP ranking, hosted NVIDIA API calls, or local Docker deployment.
Install / Use
npx skills add NVIDIA/skills --skill bionemo-genmol-nimInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
OperationsSupported Platforms
Our assessment of genmol-nim
genmol-nim scores 87/100 on our quality scale, 453rd of 751 Operations skills we index.
Its SKILL.md is 5.3 KB long, split into 7 sections with 2 code examples: a solid amount of guidance for an agent.
With 3,421 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 16 days ago, so genmol-nim is actively maintained.
- It is released under the Apache-2.0 license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
genmol-nim compared with similar skills
All 4 of these similar skills score higher than genmol-nim; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| genmol-nim (this skill)by NVIDIA | 87 | 3.4k | 16d ago | SKILL.md |
| Agent-Reachby Panniantong | 100 | 95.3k | 2d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 74.9k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 86.6k | 1d ago | MCP Server |
| crawl4aiby unclecode | 100 | 85.1k | 5d ago | MCP Server |
Frequently asked questions
- How do I install genmol-nim?
- Run
npx skills add NVIDIA/skills --skill genmol-nim. The install tabs above show the steps for each supported agent. - Which AI agents does genmol-nim work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is genmol-nim safe to use?
- It is Apache-2.0-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is genmol-nim still maintained?
- The repository was last updated 16 days ago, so genmol-nim is actively maintained.
Skill content
View source on GitHubname: genmol-nim description: > Generate novel drug-like molecules using the GenMol NIM microservice. Use for de novo generation, scaffold decoration, motif extension, lead optimization, SAFE notation, QED or LogP ranking, hosted NVIDIA API calls, or local Docker deployment. GenMol takes SAFE notation in the smiles field, not ordinary SMILES. license: Apache-2.0 AND CC-BY-4.0 compatibility: "safe-mol>=0.1.14; requests>=2.28" allowed-tools: Bash, Read, Write, AskUserQuestion
GenMol NIM
Generate drug-like molecules with GenMol. Use this guide for first-pass hosted and local usage; load supplemental files only when needed:
references/api.md: endpoints, schema, Docker flags, response fields.references/science.md: use cases, strengths, limits, and handoffs.references/parameters.md: SAFE patterns and tuning effects.references/validation.md: chemical and artifact checks.references/examples.md: compact request patterns.
Choose Mode
Ask only when context is unclear:
Hosted NVIDIA API or local Docker NIM?
- Hosted:
https://health.api.nvidia.com/v1/biology/nvidia/genmol/generate - Local:
http://localhost:8000/generate
Hosted requests use Authorization: Bearer $NGC_API_KEY. For local Docker,
authenticate image pulls with docker login nvcr.io using NGC_API_KEY
(or NVIDIA_API_KEY via the preflight). Pass -e NGC_API_KEY into the
container for entitlement checks and first-run model downloads. Local inference
requests use no auth header after readiness, so bind the published port to
loopback with -p 127.0.0.1:8000:8000. Warm-cache key-free startup varies by
image version and should not be assumed.
Local Docker
Use credentials already supplied in the shell environment or injected by a
secret manager. Do not load credential files, print keys, or enable shell tracing.
For local setup answers, include this sequence: env preflight, docker login
with --password-stdin, docker run, readiness loop, then a no-auth localhost
request. Do not invent a cache default or drop the NVIDIA_API_KEY fallback.
Before executing local setup, explain that registry authentication sends the key
to the NVIDIA registry at https://nvcr.io and first-run model downloads use
about 20 GB in LOCAL_NIM_CACHE.
Execute deployment only when the user requests it; for a setup guide, provide
the commands without running them.
For the exact startup preflight (environment checks, NVIDIA_API_KEY fallback,
--shm-size=2G, both --ulimit flags, docker login, and the docker run
for nvcr.io/nim/nvidia/genmol:1.0.1), copy the command block in
references/api.md under Local container startup verbatim.
GenMol is single-GPU; NIM_TEST_GPU defaults to 0. Wait for readiness:
until curl -sf http://localhost:8000/v1/health/ready; do sleep 5; done
SAFE Input
The API field is named smiles, but GenMol expects SAFE notation. Masked
positions use [*{min-max}].
- De novo:
safe_input = "[*{20-30}]" - Scaffold decoration:
safe_input = scaffold_to_safe("C1CC(=O)NC1", 10, 15) - Motif extension:
safe_input = f"[*{{5-10}}].{motif_safe}.[*{{5-10}}]" - Lead optimization: encode the hit, then replace a fragment with
.[*{5-12}]
Use safe-mol for conditioned generation. Simple ring scaffolds may raise
SAFEFragmentationError; fall back to the original SMILES plus a SAFE mask.
See the scaffold_to_safe helper in
references/examples.md under Scaffold Decoration.
Wider masks increase diversity; tight masks keep analog size more predictable.
Request Pattern
import os
import requests
HOSTED = True
url = (
"https://health.api.nvidia.com/v1/biology/nvidia/genmol/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 = {
"smiles": "[*{20-30}]", # SAFE notation
"num_molecules": 30,
"temperature": "1", # string, not float
"noise": "1", # string, not float
"step_size": 1,
"scoring": "QED", # or "LogP"
"unique": False,
}
response = requests.post(url, headers=headers, json=payload, timeout=180)
response.raise_for_status()
result = response.json()
Gotchas:
temperatureandnoiseare strings.num_moleculesis 1-1000; invalid/duplicate molecules may be filtered, so request extra when the user needs a minimum count.scoringis"QED"for drug-likeness or"LogP"for lipophilicity.- Set
unique=Truefor deduplicated analog lists.
Save And Report Output
Sort molecules by score, print the top ranks, and write a .smi file as shown
in references/examples.md under Save Ranked
Results. For chemical validity, uniqueness, PAINS/alerts, and visualization
with RDKit, read references/validation.md.
Limits And Troubleshooting
- Fewer molecules than requested is expected after filtering.
- Invalid SAFE strings cause
status: "failed"or validation errors. - Install
safe-molonly for scaffold, motif, or lead-optimization workflows; de novo masks work without conversion. - Local startup downloads about 20 GB into
LOCAL_NIM_CACHE. - Container issues: confirm
nvidia-smi, NVIDIA Container Toolkit, and--runtime=nvidia; useNIM_TEST_GPUto choose the single visible GPU.
Related Skills
Agent-Reach
95.3kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
74.9kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Scrapling
86.6k🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
crawl4ai
85.1kOpen-source web crawler and scraper for LLMs and AI agents: any website into clean, LLM-ready Markdown. Run it yourself, or use Crawl4AI Cloud with one key.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
