
RFdiffusion一条命令跑通蛋白质设计【免费下载链接】RFdiffusionCode for running RFdiffusion项目地址: https://gitcode.com/gh_mirrors/rf/RFdiffusion手里有一份靶标蛋白的 PDB30 分钟内拿到一批候选结合剂结构——这是 RFdiffusion 最常见的用法。更准确地说RFdiffusion 是一个基于扩散模型的蛋白质骨架生成工具它不预测结构也不分配序列而是从噪声里长出一串新的 Cα 坐标。输出的 .pdb 里所有残基都是甘氨酸、没有侧链序列要靠下游的 ProteinMPNN 补齐。理解这个分工后面的命令就好读了——你只是在告诉模型在哪里长、长多长、按什么对称性长。命令的核心是 contig 字符串[150-150]表示生成一条 150 残基的单体A10-25表示固定输入 PDB 中 A 链 10-25 号残基作为 motif/0注意那个空格表示断链。70-100这类长度区间会在每次设计中随机采样所以 10 次设计会得到 10 种不同长度。仓库在 examples/input_pdbs/ 里放了 11 个现成的靶标与 motif PDB可以直接拿来练手。⚡ 第一次跑通从克隆到第一个 PDB环境准备三步git clone https://gitcode.com/gh_mirrors/rf/RFdiffusion cd RFdiffusion bash scripts/download_models.sh models再建 SE3nv 环境conda env create -f env/SE3nv.yml进 env/SE3Transformer 子目录执行pip install -r requirements.txt和python setup.py install回仓库根目录pip install -e .。官方提示全程约 30 分钟GPU 驱动不匹配时改一下 yml 里的 cudatoolkit 版本即可。然后跑最简单的无条件单体生成./scripts/run_inference.py contigmap.contigs[150-150] inference.output_prefixtest_outputs/test inference.num_designs10预期输出10 个 .pdb 文件纯骨架、全甘氨酸加对应数量的 .trb 元数据traj/ 子目录里保存每一步去噪轨迹。第一次运行会在 Calculating IGSO3 处停一会儿那是缓存旋转群积分表之后每次运行都很快。 靶向结合类让结构长在指定位置设计结合剂用 hotspot 残基锚定结合位点给出靶标 PDB 和带断链的 contig。以胰岛素为靶标./scripts/run_inference.py inference.input_pdbinput_pdbs/insulin_target.pdb contigmap.contigs[A1-150/0 70-100] ppi.hotspot_res[A59,A83,A91] inference.num_designs10 denoiser.noise_scale_ca0 denoiser.noise_scale_frame0A1-150/0 70-100的意思是A 链 1-150 号残基作为固定靶标断链再长一条 70-100 残基的结合剂。ppi.hotspot_res列出结合剂必须接触的 3 个残基——模型训练时就学过这个信号界面会准确落在这些位置上。实操时建议把大靶标裁剪到 30-100 残基扩散开销随残基数平方增长hotspot 给 3-6 个给太多反而冗余。完整参数见 examples/design_ppi.sh。酶活性位点小 motif 用专门的模型撑住motif 只有几个催化残基时base 模型容易让 motif 在输出里漂移。换用活性位点微调权重inference.ckpt_override_pathmodels/ActiveSite_ckpt.pt再配上substrate_contacts势隐式建模底物potentials.substrate里填底物残基码。examples/design_enzyme.sh 就是这个套路从 retroaldolase 里固定 3 个单残基催化位点每两个位点之间各长 10-100 残基的自由骨架。大环肽普通结合剂命令上加两个开关RFpeptides 协议能设计原子精度闭环的大环肽在常规 binder 命令后追加inference.cyclicTrue inference.cyc_chainsa被生成的链就会自动成环。大环肽的 contig 长度建议 12-18 残基左右参考 examples/design_macrocyclic_binder.sh。对称组装与局部改造两种复用已知结构的方式对称寡聚体contig 长度必须能被链数整除换用 symmetry 配置文件对称类型可选循环对称c4、c6、二面体对称d2、四面体tetrahedral./scripts/run_inference.py --config-name symmetry inference.symmetrytetrahedral contigmap.contigs[600-600] inference.output_prefixoutputs/tetrahedral600 是寡聚体总长度四面体对称有 4 条链每条恰好 150 残基。对称模式里通常再加olig_contacts势促进链间接触weight_intra:1, weight_inter:0.1是稳妥起点完整命令在 examples/design_tetrahedral_oligos.sh。对称 motif 支架基序要沿对称轴摆正想搭 C4 对称的镍结合域先按规范对称轴把 motif 本身做对称化、原点居中再跑 examples/design_nickel.shcontig 也必须严格对称——否则传播出来的链不会落在你预期的位置。局部改造partial diffusion 围绕已有折叠撒点已经有一条不错的骨架想围绕它抖出变体直接给输入结构用diffuser.partial_T指定加噪步数./scripts/run_inference.py inference.input_pdbinput_pdbs/2KL8.pdb contigmap.contigs[79-79] diffuser.partial_T20硬约束contig 长度必须与输入 PDB 完全相等否则多出来的残基没有扩散起点。partial_T 越小越贴近原结构越大越自由想钉住部分残基的序列再加contigmap.provide_seq比如把一段螺旋肽的序列在多样化过程中保持不变。结果不满意时转这三个旋钮大部分参数在 config/inference/base.yaml 里都有默认值model、preprocess这些训练相关字段别动。值得反复试的是下面三个参数作用调法denoiser.noise_scale_ca/noise_scale_frame采样噪声强度降到 0.5 甚至 0单个结构质量更高但多样性下降建议两者联动diffuser.T/inference.final_step去噪步数 / 提前停止默认 50 步已接近 200 步质量final_step越大提前停得越早potentials.guiding_potentials去噪过程中的外部势从空列表起步逐步加大guide_scale衰减用quadratic让前期引导更强进阶路线是scaffoldguided折叠条件用 helper_scripts/make_secstruc_adj.py 从现有 PDB 生成二级结构和块邻接文件模型就能按三螺旋束或TIM 桶这类拓扑规格生长现成示例在 examples/tim_barrel_scaffold/。下一步可以做什么跑通之后建议按这三个动作加深手感打开任意 .pdb 进 PyMOL对照 hotspot 残基检查结合剂界面是否落在指定位置.trb 里记录了该设计实际采样的长度和完整配置方便核对。保持其他参数不动把inference.symmetry依次换成 c4、d2、tetrahedral总长度记得重新取整对比三批输出的拓扑差异。固定一切只把diffuser.partial_T在 5、15、30 之间切换观察结构从原始折叠漂移的速度也可以把denoiser.noise_scale_ca设为 0看质量与多样性的取舍。再往后可以换用 models/Complex_beta_ckpt.pt 增加拓扑多样性实验验证较少或者给一段只指定了二级结构的肽设计结合剂examples/design_ppi_flexible_peptide_with_secondarystructure_specification.sh。【免费下载链接】RFdiffusionCode for running RFdiffusion项目地址: https://gitcode.com/gh_mirrors/rf/RFdiffusion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考