SuperAPI AI 工具集

medchem

数据与分析

查看项目

更新于 10-15 22:39

技能介绍

Medchem 是面向药物发现工作流的 Python 分子过滤与优先级排序库,用于对化合物库进行大规模筛选、结构警报检测和成药性评估。

用途:应用成药性规则(Lipinski、Veber 等)、PAINS 与结构警报过滤、先导优化优先级排序、化合物质量与药化性质评估、反应性或问题官能团检测、分子复杂度计算。

主要能力:medchem.rules 提供 Rule of Five、Oprea、CNS、leadlike(soft/strict)、three、Reos、drug、Veber、Golden triangle、PAINS 等规则,可用 RuleFilters 组合并并行执行;medchem.structural 提供 Common Alerts、NIBR Filters、Lilly Demerits(275 条规则,超过 100 demerits 拒绝);medchem.functional 提供 nibr_filter、common_alerts_filter 等高层函数;medchem.groups 检测 hinge binders、phosphate binders、Michael acceptors、反应性基团及自定义 SMARTS;medchem.catalogs 提供官能团、保护基、常用试剂、标准片段等命名目录;medchem.complexity 计算 Bertz、Whitlock、Barone 复杂度并可按阈值过滤;medchem.constraints 支持分子量、LogP、TPSA、可旋转键等自定义约束;medchem.query 提供查询语言,如 "rule_of_five AND NOT common_alerts"。

安装:micromamba install -c conda-forge medchem 或 pip install medchem。

使用方式:将 SMILES 转为分子对象后调用相应过滤器,批量处理时可用 n_jobs=-1 并行。典型流程包括化合物库初筛、先导优化严格过滤、特定化学基团识别。

限制:规则与过滤器具有情境依赖性,应作为指南并结合领域知识使用;上市药物常不符合标准过滤器,前药可能有意违反规则;结果需验证并记录过滤决策以保证可复现。官方文档见 https://medchem-docs.datamol.io/,代码库见 https://github.com/datamol-io/medchem。