☰
AlphaFold 蛋白结构预测完整指南:4 步从零跑通,附质量判断方法
2026/10/1 2:12:11 网站建设 项目流程

AlphaFold 蛋白结构预测完整指南:4 步从零跑通,附质量判断方法

【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold

如果你手头只有一段氨基酸序列,却想知道它折叠成什么形状,AlphaFold 蛋白结构预测能直接给出答案:这个仓库是 DeepMind 开源的 AlphaFold 2 推理管线(Apache 2.0 协议),输入 FASTA 序列,输出带置信度标注的三维结构文件,同时支持 AlphaFold-Multimer 多聚体模式来预测蛋白质复合物的组装形态。

它解决了什么痛点,凭什么可信

实验手段获取蛋白结构一直不便宜:X 射线晶体学要养晶体,冷冻电镜要排队机时,周期从几个月到一两年不等。AlphaFold 把这件事变成了一次 GPU 计算——输入序列,几十分钟拿到预测结构,并且每个残基都自带置信度分数。

它不是"看起来不错的工具",在 2020 年 CASP14 结构预测大赛中,其对真实靶点的预测精度已接近实验分辨率。下图左绿色、右蓝色分别代表实验结构和 AlphaFold 的预测,两者几乎重合,GDT 分数超过 90(满分 100):

这个仓库除了单链(monomer)预测,还提供:

  • AlphaFold-Multimer:多链复合物的联合建模,v2.3.0 版权重对大型复合物(训练时最多 20 条链)有明显提升,详见v2.3.0 技术笔记
  • CASP15 基线预测集:附人工干预说明,可用于复现与校验
  • 简化版 Colab 笔记本:notebooks/AlphaFold.ipynb,不用本机搭环境也能体验

硬件与数据预算:动手前先算清 3 笔账

AlphaFold 只支持 Linux,官方路径是 Docker 容器 + NVIDIA GPU(显存越大,能预测的蛋白越长)。在开始下载之前,先看这 3 个数字:

项目完整配置精简配置(reduced_dbs)
数据库下载量约 556 GB明显更小
解压后磁盘占用约 2.62 TB约 600 GB
硬件底线高速 SSD 强烈建议8 核 CPU / 8 GB 内存
  • 精简配置通过--db_preset=reduced_dbs启用,用的是小版 BFD 数据库,适合先跑通流程、硬件一般的用户
  • 数据库需要 UniRef90、UniRef30、BFD(或小 BFD)、MGnify、PDB mmCIF、PDB70(单链用)、UniProt 与 PDB SeqRes(多聚体用)等,scripts/ 目录下每个数据库都有对应下载脚本
  • 预测耗时大致参考(A100 单卡,不含 MSA 搜索):300 残基约 13 秒,1000 残基约 96 秒,2000 残基约 450 秒,5000 残基则接近 5 小时

首次预测的 4 个步骤:环境、数据、镜像、运行命令

第 1 步:装好 Docker 与 NVIDIA Container Toolkit,并让当前用户免 root 运行 Docker(官方 README 里有完整步骤,见官方 README)。装完可用docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi验证容器能看到 GPU。

第 2 步:下载数据库。安装aria2c后运行下载脚本(耗时较长,建议后台执行):

# 完整数据库;加 reduced_dbs 参数则为精简版 scripts/download_all_data.sh <DOWNLOAD_DIR> # 构建 Docker 镜像 docker build -f docker/Dockerfile -t alphafold .

两个关键提醒:<DOWNLOAD_DIR>不要放在仓库目录内部,否则构建镜像时大数据库会被复制进 Docker 构建上下文,慢到无法接受;下载目录需保证读写权限(chmod 755 -R),否则 MSA 工具会抛出莫名其妙的报错。

第 3 步:准备输入 FASTA。单链就一条序列;多聚体则把每条链的序列都写进去(>链名+ 序列,换行分隔)。注意:FASTA 里写了几条序列,模型就按几个亚基来组装,这就是复合物的化学计量比。

第 4 步:运行预测。装好docker/requirements.txt的依赖后:

python3 docker/run_docker.py \ --fasta_paths=your_protein.fasta \ --max_template_date=2022-01-01 \ --data_dir=$DOWNLOAD_DIR \ --output_dir=/绝对路径/输出目录

--max_template_date限制模板结构的最晚发布日期,避免"泄漏"到目标结构之后才公布的模板;--output_dir必须是可写的绝对路径。

预测流水线内部发生了什么

一次运行大致经历 5 个阶段,理解它有助于你定位卡在哪一步:

  • MSA(多序列比对)阶段最耗时,也是磁盘与带宽的大头;如果后续只改模型参数,可用--use_precomputed_msas=true复用已算好的 MSA
  • 默认跑 5 个模型、取置信度最高者,这种"多模型投票"能压制单个随机种子的波动
  • 排序完成后,--models_to_relax控制弛豫范围:best(默认,只弛豫第一名)、all、none;GPU 上弛豫更快但偶尔不稳定,CPU 更稳

输出目录怎么读:ranked_0.pdb、pLDDT 与 PAE

运行结束后,--output_dir下会按输入文件名建立子目录,核心文件如下:

文件内容
ranked_0.pdb置信度最高的预测结构,日常主要看它(ranked_1~4.pdb依次降低)
unrelaxed_model_*.pdb/relaxed_model_*.pdb模型原始输出 / Amber 弛豫后的结构
result_model_*.pkl每个模型的完整原始输出(pLDDT、PAE、ptm 等 NumPy 数组)
confidence_model_*.json/pae_model_*.json按模型导出的 pLDDT 与 PAE 数值
ranking_debug.json各模型排序得分及名次映射
features.pkl/msas/输入特征与 MSA 搜索中间产物,用于复现与调试
timings.json各阶段耗时

质量判断看 3 个指标:

  • pLDDT(0–100,越高越可信):残基级置信度。PDB 文件里它被写进 B-factor 列——注意与常规 B 因子含义相反,这里数值越高越好,用它做分子替换时要格外小心。粗略参照:>90 高置信、70–90 较可信、50–70 中等、<50 谨慎使用
  • PAE(预测对齐误差,越低越好):N×N 矩阵,描述任意两个残基的相对位置误差。链内对角块低而链间区块偏高,说明单链本身可靠、但复合物取向不确定
  • ptm / iptm:多聚体模式还会输出整体质量分,ranking_debug.json里多聚体的排序依据就是iptm+ptm,单链则用 pLDDT

多聚体(复合物)预测:只差两个参数

预测复合物的流程与单链完全一致,区别仅在于:输入 FASTA 写入全部亚基序列,并设置--model_preset=multimer:

python3 docker/run_docker.py \ --fasta_paths=complex.fasta \ --model_preset=multimer \ --data_dir=$DOWNLOAD_DIR \ --output_dir=/绝对路径/输出目录

需要心里有数的几点:

  • 多聚体模式必须额外下载 UniProt 和 PDB SeqRes 数据库,且 PDB mmCIF 与 SeqRes 版本要一致(模板搜索用)
  • 默认每个模型跑 5 个随机种子,5 个模型共 25 次预测,耗时可观;--num_multimer_predictions_per_model=1可降到每模型 1 次,精度略有下降
  • v2.3.0 的多聚体权重在化学计量比已知时普遍优于单链模式,包括已知为单体的蛋白;但如果亚基数量未知(如基因组规模预测),单链模式平均反而更准
  • 官方声明 AlphaFold-Multimer 仍在迭代中,稳定性弱于单链系统,解读结果时留一手

常见坑与绕过办法

  1. 磁盘告急:2.62 TB 是完整库解压后的体量,先规划好独立磁盘;小硬盘直接用精简配置
  2. MSA 工具报诡异错误:九成是数据库目录权限问题,补全读写权限即可
  3. 容器看不到 GPU:先跑 README 里的nvidia-smi验证命令;容器外能看到、容器内看不到,基本是 NVIDIA Container Toolkit 没装对
  4. 同一条序列两次结果差异大:属正常现象(个别靶点波动尤其明显),官方用 5 模型取最高置信度来缓解,重要结果建议固定--random_seed复跑
  5. 弛豫阶段报错或太慢:可先设--models_to_relax=none拿到原始结构,弛豫是改善局部几何、不是提升预测本身
  6. ⚠️复现 CASP14 结果:需要锁定当年的数据库版本,仅靠--max_template_date不够,详见 README 的复现性说明

适用边界与进阶方向

用之前明确边界:AlphaFold 输出是理论建模结果,不用于临床用途;它预测的是静态单构象,不显式建模配体、小分子或膜环境;对无序区域(pLDDT 长期 <50 的片段)不要期望可靠结构。

进阶路线:

  • 大型或困难靶点:技术笔记建议把每模型种子数提高到 20、增加 recycle 次数,精度更好但耗时同步上升
  • 批量预测:推理脚本默认按单蛋白编译模型,重复跑小蛋白时编译开销占比升高,可基于RunModel.predict与make_fixed_size自行搭建批量流水线
  • 学习入口:官方 README 是总纲,docs/technical_note_v2.3.0.md 讲清 v2.3.0 权重更新动机,run_alphafold.py 则是容器内主流程源码,想看参数如何生效直接读它

一段序列到可信的三维模型,AlphaFold 把结构生物学的"几个月"压缩到了"几十分钟"——把数据库、Docker 和 FASTA 三件事备好,你的第一次预测今天就绪。💡

【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询