RFdiffusion 蛋白质设计快速上手从第一次生成到跑通主流场景【免费下载链接】RFdiffusionCode for running RFdiffusion项目地址: https://gitcode.com/gh_mirrors/rf/RFdiffusionRFdiffusion 是一个基于扩散模型的蛋白质设计工具给定条件motif、靶蛋白、对称群它直接在 3D 结构层面生成新的蛋白骨架。本文按真实使用顺序带你从 0 到 1 跑通装好环境、出第一批结构、看懂参数体系再切换到结合剂、对称寡聚体等场景并调参。克隆仓库并准备好首次运行先拿到代码git clone https://gitcode.com/gh_mirrors/rf/RFdiffusion接着把预训练权重放进仓库根目录的 models/ 文件夹下载命令写在 README 的 Getting started 一节Base_ckpt.pt 等几个基础权重必下。环境按 README 说明用 conda 建创建 SE3nv 环境、在 env/SE3Transformer 子目录里 pip install 加 setup.py install 装好 NVIDIA 的 SE(3)-Transformer最后回到根目录 pip install -e .。整套流程通常半小时以内提供的 yml 只覆盖 CUDA 11.1其他版本需要自己改 cudatoolkit 和 PyTorch官方 README 里有说明。装完之后有个关键事实要记住所有任务最终都是调用scripts/run_inference.py参数全部走 Hydra 配置。默认值不是随便写的而是直接取自你使用的模型 checkpoint所以推理默认行为与训练保持一致。因此不建议动 model、diffuser 这类训练侧配置块改错容易崩命令行覆盖时整个参数串要用单引号包住contig 串里的方括号和斜杠才不会被打壳吃掉。设计一个结合蛋白PPI 场景怎么起步结合剂设计PPI是 RFdiffusion 用得最多的场景核心是把靶点待生成区写成一条 contig 串。官方示例 examples/design_ppi.sh 的写法值得逐词读contigmap.contigs[A1-150/0 70-100]表示保留输入 PDB A 链的 1-150 残基作靶点/0是链断开后面 70-100 是随机采样的待扩散链长ppi.hotspot_res[A59,A83,A91]则告诉模型结合必须接触这三个热点残基。操作要点有三条。其一大靶点先裁剪到界面附近——扩散计算量随残基数近似平方增长整条受体蛋白一起跑会非常慢。其二hotspot 一般给 3-6 个训练时模型只看到 0-20% 的界面残基它预期要比你给的做更多接触给太死反而限制结果。其三denoiser.noise_scale_ca0 denoiser.noise_scale_frame0把采样噪声降到 0质量会明显提升代价是多样性下降适合结合剂这类约束强的任务。生成出来的.pdb里设计区是甘氨酸骨架没有序列——后续要用 ProteinMPNN 加 Relax 定序列再用 AF2 的 pAE_interaction经验阈值小于 10做筛选。如果想指定结合剂拓扑比如只要三螺旋束可以开 fold conditioning用 helper_scripts/make_secstruc_adj.py 从 PDB 提取二级结构和邻接文件配scaffoldguided.scaffoldguidedTrue使用完整示例见 examples/design_ppi_scaffolded.sh。换场景contig 串怎么写部分扩散在哪开换个任务90% 的情况只是改写 contig。骨架支架的例子examples/design_motifscaffolding.sh 用contigmap.contigs[10-40/A163-181/10-40]把 5TPN.pdb 的 A163-181 固定不动两端各随机生成 10-40 残基把它接进新骨架。注意字母开头表示取自输入 PDB 的固定区不带字母的长度区间表示待生成区/0带空格表示换链。motif 特别小时模型会轻微漂移官方做法是换成专用权重inference.ckpt_override_pathmodels/ActiveSite_ckpt.pt。我已经有一个结构想要一批相似变体则用部分扩散examples/design_partialdiffusion.sh 对 2KL8.pdb 加噪 10 步再反扩散diffuser.partial_T10控制扰动幅度现在默认 T50所以数值比旧文献里 T200 时代的 80 要小得多。有个硬约束contig 总长必须等于输入 PDB 全长模型不知道多出来的残基该从哪长出来。还有宏环肽在 examples/design_macrocyclic_binder.sh 基础上加inference.cyclicTrue和inference.cyc_chains即可。配置对称约束并调好噪声参数对称参数不在 base 配置里而是靠--config-name symmetry切到 config/inference/symmetry.yaml。支持循环c4、二面体d2、四面体tetrahedral、八面体、二十面体几类对称群写法参考 examples/design_tetrahedral_oligos.shcontigmap.contigs[600-600]是寡聚体总长必须能被亚基数整除四面体 600 即每个亚基 150。该脚本还叠加了导向势olig_contactsweight_intra:1,weight_inter:0.1、guide_scale2.0、guide_decayquadratic让链内链间接触更强、结构更紧凑——对称生成时加上这类势效果明显。调参优先动两件事。第一降采样噪声denoiser.noise_scale_ca和noise_scale_frame默认 1可以降到 0.5 甚至 0质量换多样性建议成对修改。第二扩散步数diffuser.T默认 50官方说约 20 步就能拿到接近 200 步的质量想快就调小但别去动b_0、b_T这些噪声调度内部参数。进阶玩法是自己在 rfdiffusion/potentials/potentials.py 里加可微分势函数对结构做定向引导。读懂输出并决定下一步每次运行在输出前缀目录下给出三类文件.pdb是最终骨架设计区为甘氨酸、不含侧链.trb记录了本次实际采到的 contig 和完整配置排查我到底跑了什么就靠它traj/是逐步预测的多帧结构PyMOL 里当多步 PDB 打开即可回放生成过程。想评估骨架质量可以直接复用 tutorials/protein_binder_design/Part2-Backbone-assessment/ 里的analyze_backbones.py和filter_backbones.py那是官方教程的筛选脚本。后续想深入按顺序看这几处examples/下 20 多个脚本覆盖了大环肽、柔性肽靶点、TIM 桶支架等完整配方照着改 contig 就能开跑需要容器化部署时用 docker/Dockerfile 构建镜像配合 scripts/download_models.sh 拉取权重。【免费下载链接】RFdiffusionCode for running RFdiffusion项目地址: https://gitcode.com/gh_mirrors/rf/RFdiffusion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考