AlphaFold3 安装与运行指南:从零开始部署蛋白质结构预测系统
前言
AlphaFold3 是 DeepMind 推出的最新蛋白质结构预测工具,它在预测精度和适用范围上都较前代有显著提升。本文将详细介绍如何在 Linux 系统上完整部署 AlphaFold3 环境,包括硬件要求、软件依赖安装、数据库获取以及实际运行预测的全过程。
系统要求
硬件需求
- 计算设备:必须使用 Linux 系统(推荐 Ubuntu 22.04 LTS)
- GPU:NVIDIA GPU,计算能力 8.0 或更高(如 A100/H100 80GB)
- 已验证 A100 80GB 可处理最多 5,120 tokens 的输入
- 内存:至少 64GB RAM(处理长序列目标时需要更多)
- 存储:推荐 1TB SSD 空间用于存储遗传数据库
软件依赖
- CUDA 12.6
- cuDNN
- Docker 或 Singularity
- NVIDIA 驱动
环境准备
1. 基础系统配置
建议使用干净的 Ubuntu 22.04 LTS 系统镜像。如果使用云服务,可以选择配备 A100 80GB GPU 的实例类型。
2. Docker 安装与配置
安装 Docker CE
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world
配置 Rootless Docker
sudo apt-get install -y uidmap systemd-container
sudo machinectl shell $(whoami)@ /bin/bash -c 'dockerd-rootless-setuptool.sh install && sudo loginctl enable-linger $(whoami) && DOCKER_HOST=unix:///run/user/1001/docker.sock docker context use rootless'
3. NVIDIA 驱动与工具安装
安装驱动
sudo apt-get -y install alsa-utils ubuntu-drivers-common
sudo ubuntu-drivers install
sudo nvidia-smi --gpu-reset
nvidia-smi # 验证驱动安装
配置 Docker NVIDIA 支持
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
nvidia-ctk runtime configure --runtime=docker --config=$HOME/.config/docker/daemon.json
systemctl --user restart docker
sudo nvidia-ctk config --set nvidia-container-cli.no-cgroups --in-place
验证 GPU 容器访问:
docker run --rm --gpus all nvidia/cuda:12.6.0-base-ubuntu22.04 nvidia-smi
获取 AlphaFold3 资源
1. 源代码获取
git clone https://github.com/google-deepmind/alphafold3.git
cd alphafold3
2. 遗传数据库下载
AlphaFold3 需要以下数据库:
- BFD small
- MGnify
- PDB (mmCIF 格式)
- PDB seqres
- UniProt
- UniRef90
- NT
- RFam
- RNACentral
使用提供的脚本下载(约 252GB 下载,解压后 630GB):
./fetch_databases.sh [<DB_DIR>]
注意:
- 数据库目录不应放在 AlphaFold3 仓库内
- 推荐使用 SSD 存储以提高性能
- 确保数据库目录有读写权限
3. 模型参数获取
需要填写申请表获取模型参数,审批通常需要 2-3 个工作日。获取后将参数保存在 <MODEL_PARAMETERS_DIR> 目录。
构建运行环境
Docker 方式
构建镜像
docker build -t alphafold3 -f docker/Dockerfile .
运行预测
准备输入 JSON 文件后:
docker run -it \
--volume $HOME/af_input:/root/af_input \
--volume $HOME/af_output:/root/af_output \
--volume <MODEL_PARAMETERS_DIR>:/root/models \
--volume <DB_DIR>:/root/public_databases \
--gpus all \
alphafold3 \
python run_alphafold.py \
--json_path=/root/af_input/fold_input.json \
--model_dir=/root/models \
--output_dir=/root/af_output
Singularity 方式
安装 Singularity
wget https://github.com/sylabs/singularity/releases/download/v4.2.1/singularity-ce_4.2.1-jammy_amd64.deb
sudo dpkg --install singularity-ce_4.2.1-jammy_amd64.deb
sudo apt-get install -f
构建 Singularity 镜像
docker run -d -p 5000:5000 --restart=always --name registry registry:2
docker tag alphafold3 localhost:5000/alphafold3
docker push localhost:5000/alphafold3
SINGULARITY_NOHTTPS=1 singularity build alphafold3.sif docker://localhost:5000/alphafold3:latest
运行预测
singularity exec \
--nv \
--bind $HOME/af_input:/root/af_input \
--bind $HOME/af_output:/root/af_output \
--bind <MODEL_PARAMETERS_DIR>:/root/models \
--bind <DB_DIR>:/root/public_databases \
alphafold3.sif \
python run_alphafold.py \
--json_path=/root/af_input/fold_input.json \
--model_dir=/root/models \
--output_dir=/root/af_output
性能优化建议
- 数据库位置:将常用数据库放在 SSD 上可显著提高搜索速度
- 多数据库路径:可以同时指定多个数据库路径,系统会优先使用前面的路径
- 内存管理:处理大型蛋白质时监控内存使用情况
- GPU 选择:更大显存的 GPU 可以处理更复杂的结构预测
常见问题解决
- GPU 通信错误:如果
nvidia-smi报错,尝试重启系统 - 权限问题:确保数据库目录有正确权限(755)
- 存储空间不足:预留足够的空间用于数据库和中间文件
- 驱动兼容性:确保 CUDA 版本与驱动版本匹配
结语
本文详细介绍了 AlphaFold3 的完整安装和运行流程。作为目前最先进的蛋白质结构预测工具,AlphaFold3 的部署需要一定的硬件资源和配置工作,但按照本指南步骤操作,大多数用户应该能够成功搭建自己的预测环境。对于研究用途,建议仔细阅读并遵守模型参数的使用条款。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



