用途:用 DiffDock 扩散模型预测小分子配体在蛋白靶点上的 3D 结合构象,适用于盲对接、虚拟筛选、基于结构的药物设计与先导优化。支持蛋白 PDB 文件或氨基酸序列(经 ESMFold),配体可用 SMILES、SDF、MOL2。
主要能力:单复合物对接;批量 CSV 对接与化合物库筛选;输出每复合物多个构象并带置信度(文件名后缀 confidenceN.NN,rank1 最好);脚本 analyze_results.py 按 >0 高、-1.5~0 中、<-1.5 低分类并导出 CSV。默认模型为 DiffDock-L(2024-02)。
使用方式:先运行 python scripts/setup_check.py 检查环境;安装可选 conda env create --file environment.yml 或 docker pull rbgcsail/diffdock。单次对接:python -m inference --config default_inference_args.yaml --protein_path protein.pdb --ligand "CC(=O)Oc1ccccc1C(=O)O" --out_dir results/single_docking/。批量:先 python scripts/prepare_batch_csv.py --create --output batch_input.csv,再 python -m inference --config default_inference_args.yaml --protein_ligand_csv batch_input.csv --out_dir results/batch/ --batch_size 10。网页界面:python app/main.py,访问 http://localhost:7860。
参数注意:--config 的 YAML 值会覆盖同名命令行参数,samples_per_complex、inference_steps、temp_* 需改 YAML 副本;--batch_size 不在默认 YAML 中,命令行有效。
限制:仅预测构象与置信度,不预测亲和力(ΔG、Kd),需配合 GNINA、MM/GBSA 等打分。不适合蛋白-蛋白/核酸复合物、大肽(>20 残基)、共价对接、膜蛋白(未专门训练)。建议 GPU,首次运行需预计算查找表并下载约 500MB 权重。资源:https://github.com/gcorso/DiffDock ;演示 https://huggingface.co/spaces/reginabarzilaygroup/DiffDock-Web(常不可用)。引用 Corso et al. ICLR 2024(arXiv:2402.18396)与 ICLR 2023(arXiv:2210.01776)。