用途:DiffDock 将分子对接视为生成问题,用扩散生成模型直接从蛋白质结构与配体 SMILES 预测蛋白质-配体结合姿态,不需要预定义结合位点,可在整个蛋白表面采样姿态,并输出带置信度分数的排序姿态集合。
适用场景:结合位点未知的盲对接;传统对接失败的全osteric位点、柔性区域或无共晶结构的靶点;探索多种结合模式;SAR 类似物比较;片段筛选假设生成。若结合口袋明确且蛋白刚性,资料建议改用 AutoDock Vina 或 GNINA;大于 10000 化合物的大规模虚拟筛选可考虑 GNINA 或 DiffDock-L。
依赖与安装:需要 diffdock(推荐 conda 安装)、rdkit、torch、biopython、nglview;强烈建议 NVIDIA CUDA GPU,CPU 推理约 5-10 分钟/化合物。安装命令: git clone https://github.com/gcorso/DiffDock.git cd DiffDock conda create -n diffdock python=3.9 conda activate diffdock pip install torch torchvision --extra-index-url https://download.pytorch.org/whl/cu118 pip install -r requirements.txt 再从 utils.download 下载预训练权重。
使用流程:1)用 Bio.PDB 去除 HETATM 清洗蛋白 PDB;2)用 RDKit 将 SMILES 转为 3D SDF;3)命令行运行 inference.py,传入 --protein_path、--ligand、--out_dir、--inference_steps、--samples_per_complex、--batch_size、--no_final_step_noise;4)解析 rank{N}_confidence{score}.sdf 输出并按置信度排序;5)提取结合位点残基(常用 4.0 Å 截断);6)用 NGLview 在 Jupyter 中可视化。
限制:置信度约 0 为边缘,低于 -1 较差;结果目录为空多因 PDB 含 HETATM;CUDA 显存不足需降低 batch_size;CPU 推理很慢。可配合 obabel 转 PDBQT,用 Vina --score_only 重新打分。价格与平台信息资料暂未提供。