DiffDock 是面向基于结构药物发现的扩散模型分子对接工具,用于预测小分子配体与蛋白靶点的三维结合姿态。主要能力:支持蛋白质 PDB 文件或氨基酸序列(经 ESMFold),配体支持 SMILES、SDF、MOL2;可处理单复合物或批量虚拟筛选;输出多个排序姿态并给出置信度分数。它预测结合姿态与预设置信度,不预测结合亲和力(ΔG、Kd),需配合 GNINA、MM/GBSA 等打分函数评估亲和力。
安装:可 conda(git clone https://github.com/gcorso/DiffDock.git;conda env create --file environment.yml;conda activate diffdock)或 Docker(docker pull rbgcsail/diffdock)。强烈建议 GPU,首次运行需预计算查找表,模型检查点自动下载。
用法:单复合物运行 python -m inference --config default_inference_args.yaml --protein_path protein.pdb --ligand "SMILES" --out_dir results/single_docking/;批量用 --protein_ligand_csv batch_input.csv --batch_size 10,CSV 含 complex_name、protein_path、ligand_description、protein_sequence 列。结果可用 python scripts/analyze_results.py 分析,置信度 >0 高、-1.5~0 中、<-1.5 低。可用 python app/main.py 启动本地界面。
适用场景:小分子(约100-1000 Da)对接、虚拟筛选、结合位点预测、先导优化。限制:不适用蛋白-蛋白对接、大肽、共价对接与亲和力预测,膜蛋白需谨慎;大配体、多链或新蛋白家族可能降低置信度;需实验验证。