Agent Skills
› synthetic-sciences/openscience
› molecular-rag
molecular-rag
GitHub基于MolRAG,从ChEMBL/ZINC检索结构相似且具已知性质的化合物,为LLM分子属性预测、先导优化及SAR分析提供实验数据支撑,防止幻觉。
Trigger Scenarios
分子属性预测前检索类似物
先导化合物优化寻找有效修饰
评估生成分子的 novelty
基于实验数据的SAR推理
Install
npx skills add synthetic-sciences/openscience --skill molecular-rag -g -y
SKILL.md
Frontmatter
{
"name": "molecular-rag",
"tags": [
"drug-discovery",
"RAG",
"retrieval",
"ChEMBL",
"analog-search",
"grounding"
],
"license": "MIT",
"version": "1.0.0",
"category": "chemistry",
"metadata": {
"skill-author": "Synthetic Sciences"
},
"description": "Retrieve structurally similar compounds with known properties from ChEMBL\/ZINC to ground predictions and inform optimization. Based on MolRAG (Xian 2025, ACL).",
"dependencies": [
"rdkit-pypi",
"requests",
"pandas"
]
}
Molecular RAG (Retrieval-Augmented Generation)
Overview
LLMs hallucinate molecular properties. This skill grounds predictions by retrieving structurally similar compounds with experimentally measured properties from ChEMBL and ZINC. When the agent says "this compound should have good hERG safety," it can now check what happened with similar compounds in real assays.
Based on:
- MolRAG (Xian et al., 2025, ACL): RAG for molecular property prediction — retrieves similar compounds to ground LLM predictions
When to Use This Skill
- Before property prediction: Retrieve analogs with known properties for context
- Lead optimization: Find what modifications worked for similar scaffolds
- Novelty assessment: Check if your generated molecule is truly novel or already known
- SAR grounding: Ground structure-activity reasoning in experimental data
Do NOT use this skill for:
- Bulk database queries (use
chembl-databaseorpubchem-databasedirectly) - De novo generation (use
denovo-design)
Related Skills
- chembl-database: Direct ChEMBL API access
- pubchem-database: PubChem compound lookup
- zinc-database: ZINC compound search
- admet-reasoning: Interpret properties of retrieved analogs
Installation
pip install rdkit-pypi requests pandas
Core Workflows
1. Find Similar Compounds with Known Properties
python scripts/retrieve_analogs.py \
--smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
--similarity-threshold 0.6 \
--max-results 20 \
--output analogs.json
2. Target-Specific Analog Search
python scripts/retrieve_analogs.py \
--smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
--target CHEMBL25 \
--output target_analogs.json
3. SAR Context for Optimization
python scripts/retrieve_analogs.py \
--smiles "c1ccc(NC(=O)c2ccccc2Cl)cc1" \
--include-activities \
--output sar_context.json
Script Reference
| Script | Purpose | Key Outputs |
|---|---|---|
retrieve_analogs.py |
Find similar compounds with experimental data | JSON with analogs, similarities, bioactivities |
Version History
- e9844a4 Current 2026-07-11 17:21
Dependencies
-
required
rdkit-pypi -
required
requests -
required
pandas


