尧图精选

AlphaFold 多聚体预测:从 Docker 环境到 PAE 热图判读,四个任务跑通你的第一条多链 PDB

🕒 发布时间:2026/10/1 9:59:19 📁 来源:尧图网络
AlphaFold 多聚体预测从 Docker 环境到 PAE 热图判读四个任务跑通你的第一条多链 PDB【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafoldAlphaFold 开源仓库里同时包含单体和多聚体两条推理管线其中 AlphaFold-Multimer 能把多条蛋白序列一起喂给模型直接输出蛋白复合体结构的 PDB 文件。这篇文章按先判断、再准备、然后跑、最后验收的路径组织帮你跑通一次多聚体预测并学会用 pLDDT 和 PAE 热图判断结果能不能信。先判断手里这个复合物适不适合让 AlphaFold-Multimer 来算多聚体预测不是万能的。AlphaFold-Multimer 的设计前提是你已知复合物的化学计量比——明确知道有几条链、各是什么序列才能把它们都写进输入文件。如果你连亚基组成都不确定比如做基因组规模预测官方技术文档 technical_note_v2.3.0.md 的说法是这种情况下单链 AlphaFold 平均更准除非目标链长达几千残基。另外两个前置条件只支持 Linux且建议有 NVIDIA GPU 的机器多聚体模式比单体模式多要两个数据库UniProt和PDB seqres跑单体的时候用不到满足这些再往下看。用 Docker 把环境搭起来数据库放对位置是关键官方推荐的部署方式就是容器化步骤本身不长坑都藏在目录结构里。1. 装 Docker 和 NVIDIA Container ToolkitGPU 支持靠它然后克隆代码git clone https://gitcode.com/GitHub_Trending/al/alphafold cd alphafold2. 下载遗传数据库和模型权重需要先装aria2cbash scripts/download_all_data.sh /path/to/DOWNLOAD_DIR download.log 2 download_all.log 全量库下载约 556 GB解压后近 3 TBBFD 一个库就占 1.8 TB。强烈建议 SSD。这个下载脚本会顺带拉下模型参数5 个 CASP14 单体模型、5 个带 pTM 头的模型、5 个 AlphaFold-Multimer 模型。这里有一个官方反复强调的坑DOWNLOAD_DIR绝对不能放在仓库目录里面。否则 Docker 构建时会把几个 TB 的数据库整个拷进构建上下文慢到怀疑人生。3. 验证 GPU 对容器可见docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi输出里能看到你的显卡列表才算通过。4. 构建镜像并安装宿主机的run_docker.py依赖docker build -f docker/Dockerfile -t alphafold . pip3 install -r docker/requirements.txt到这一步Docker 部署 AlphaFold 的活儿就算干完了。把多链 FASTA 写对一个文件装下所有亚基多链 FASTA 输入的规则很简单一个文件里放全部亚基每条链一个条目后面的名字自己起比如chain_A MALWMRLLPLLALLALWGPDPAAAFVNQHLCGSHLVEALYLVCGERGFFYTPKTRREAEDLQVGQVELGGGPGAGSLQPLALEGSLQKRGIVEQCCTSICSLYQLENYCN chain_B SLLKTLKRFLPLILPLIFPKAQRAPQVRVPPPVAPLRA注意两点同源多聚体就把同一条序列重复写多份每份是一个独立条目名字各不相同三聚体就写三遍链 ID 按 FASTA 里的出现顺序分配第一条是 A、第二条是 B……上限 20 条链再多的会直接抛异常这个链 ID 映射逻辑在 pipeline_multimer.py 的_make_chain_id_map里想确认输出里某条链对应自己输入的哪段序列时翻这里最准。跑第一条多聚体预测命令里真正要紧的三个参数日常入口是docker/run_docker.py它在容器里替你调run_alphafold.py。多聚体运行的最小命令python3 docker/run_docker.py \ --fasta_pathscomplex.fasta \ --model_presetmultimer \ --num_multimer_predictions_per_model5 \ --max_template_date2021-11-01 \ --data_dir/path/to/DOWNLOAD_DIR \ --output_dir/home/user/abs/path/out参数里真正值得解释的就三个其余--max_template_date限制模板搜索日期、--data_dir指向数据库照着填即可参数作用建议--model_presetmultimer切换多聚体模型同时会额外校验 UniProt 和 PDB seqres 两个库跑复合物必加--num_multimer_predictions_per_model每个模型用多少个随机种子默认 5乘 5 个模型共 25 个预测首次验证设 1 可以省不少时间--models_to_relax松弛哪些模型默认best只松弛最优模型all全松弛none不松弛其余开关知道就行--db_presetreduced_dbs换缩小版 BFD8 核 / 8 GB 内存 / 600 GB 磁盘就能跑--enable_gpu_relaxfalse把能量松弛切到 CPU。跑的过程中管线内部在做什么从输入到ranked_0.pdb大致经过这么几步搜索环节用的是 JackHMMER、HHblits、HHsearch 这一套对应封装都在 data/tools/ 目录下。折叠环节的多链处理在 folding_multimer.py不变点注意力机制就是在那里把链间几何关系算出来的。要跑多久官方给了 A100 上的参考耗时只计折叠阶段不含 MSA 搜索2000 残基约 450 秒3000 残基约 20 分钟5000 残基约 5.2 小时。小结构想快一点可以在 config.py 里调大subbatch_size。跑完别急着画pLDDT 和 PAE 热图先看完结构文件出来了先做验收再谈可视化。第一层pLDDT。残基级置信度0 到 100直接写在每个ranked_*.pdb的 B-factor 字段里注意方向和普通 B-factor 相反值越高越可信。ranking_debug.json里是 5 个模型的 pLDDT 汇总和它们对应原始模型名的映射。第二层PAE 热图。result_model_*.pkl里有predicted_aligned_error数组形状 [N_res, N_res]值域 0 到上限越小代表这两个残基的相对位置越确定。判读时的两个常用姿势矩阵对角块高值大同一结构域内部还算稳块与块之间的区域大 → 结构域之间的相对排布不可靠跨链区域高 → 两条链的界面关系没把握这个复合物的结合模式要存疑画热图最快的方式是用仓库自带的 notebooks/AlphaFold.ipynb直接加载result_model_*.pkl出 pLDDT 条形图和 PAE 热图。输出目录里的文件各管什么output_dir/target_name/ ├── ranked_0.pdb # 置信度最高默认经 Amber 松弛 ├── ranked_1..4.pdb # 其余排名默认未松弛 ├── unrelaxed_model_1..5.pdb ├── relaxed_model_*.pdb ├── result_model_1..5.pkl # plddt / predicted_aligned_error / ptm 等数组 ├── ranking_debug.json # pLDDT 排序依据 ├── relax_metrics.json # 松弛后的残余违规 ├── timings.json # 各阶段耗时 └── msas/ # 序列搜索的原始命中多聚体模型还会在 pkl 里给出pTM一个标量衡量模型对整体结构打包和结合状态有没有信心。pTM 低 跨链 PAE 高基本可以断定这次预测的复合物界面不可靠。跑挂了四种最常见情况的排查顺序docker build卡住或镜像巨大——先检查数据库目录是不是放进了仓库内部。run_docker.py里有硬检查--data_dir落在仓库路径下会直接报错拒跑。MSA 阶段报错且信息含糊——多半是数据库目录读写权限不足。给下载目录递归加权限如chmod 755到下载目录及子目录通常能解决。报缺uniprot_database_path或pdb_seqres_database_path——说明数据库不全。这两个库只有多聚体模式才要用scripts/download_uniprot.sh和scripts/download_pdb_seqres.sh补齐。GPU 上松弛阶段崩掉——--enable_gpu_relaxfalse切到 CPU 松弛慢但稳。还有个省时技巧想反复试不同的折叠参数时加--use_precomputed_msastrue复用第一次跑出来的 MSA直接跳过最耗时的序列搜索环节。至于多聚体预测参数调优CASP15 基线用的配置是把每个模型的种子数从 5 提到 20、最大循环次数提到 20带提前停止官方认为这对大型和困难靶点值得加但计算时间会明显上去。日常建议默认配置先跑发现大复合物置信度可疑再往上加。上文 GIF 已出现一次此处不再重复引用。下一步去scripts/目录确认你的数据库版本把课题里那个复合物的几条链按化学计量比写进一个 FASTA设--num_multimer_predictions_per_model1先快速跑一遍然后打开result_model_1.pkl看跨链区域的 PAE——如果那里是冷色恭喜你这个界面可以信如果是热色把序列再核对一遍确认没有漏掉或写错亚基。【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →