【AlphaFold3】开源本地的安装及使用

文章目录

  • 安装
    • 安装Docker
      • [Installing Docker on Host](#Installing Docker on Host)
      • [启用Rootless Docker](#启用Rootless Docker)
    • [安装 GPU 支持](#安装 GPU 支持)
      • [安装 NVIDIA 驱动程序](#安装 NVIDIA 驱动程序)
      • [安装 NVIDIA 对 Docker 的支持](#安装 NVIDIA 对 Docker 的支持)
    • [获取 AlphaFold 3 源代码](#获取 AlphaFold 3 源代码)
    • 获取基因数据库
    • 获取模型参数
    • [构建将运行 AlphaFold 3 的 Docker 容器](#构建将运行 AlphaFold 3 的 Docker 容器)
  • 参考

AlphaFold3:
https://github.com/google-deepmind/alphafold3

安装

参考官方文档:安装并运行您的第一个预测

本教程使用WSL2-Ubuntu22.04

安装Docker

Installing Docker on Host

参考Docker官方:
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository

  1. 设置 Docker 的apt存储库。
c 复制代码
# Add Docker's official GPG key:
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

# Add the repository to Apt sources:
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
  1. 安装 Docker 软件包。
    安装最新版本:
c 复制代码
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  1. 通过运行hello-world映像来验证安装是否成功:
c 复制代码
sudo docker run hello-world

此时报错:

解决方法:

换源

c 复制代码
sudo vim /etc/docker/daemon.json

查询网络各种方法,改用阿里云镜像均不成功

从闲鱼上买了个源成功了= ='

换源后记得重启:

c 复制代码
sudo service docker restart

需注意:!

如果是一般的Linux操作系统,可能是因为Linux中没有使用systemd,想用systemd命令来管理Linux上的服务,因此会报错,很可能是使用的是经典的SysV init(sysvinit)系统。

本教程使用window11下WSL2的Ubuntu,就会使SysV init而不是systemd。

解决方法:

更换命令,用SysV init的命令代替systemd的

启用Rootless Docker

安装 GPU 支持

安装 NVIDIA 驱动程序

官方方法:

bash 复制代码
sudo apt-get -y install alsa-utils ubuntu-drivers-common
sudo ubuntu-drivers install

sudo nvidia-smi --gpu-reset

nvidia-smi  # Check that the drivers are installed.

此步骤个人之前已实现,详见:
CUDA升级/安装/使用 最新说明记录

有以下输入表明安装成功,才可以继续。

安装 NVIDIA 对 Docker 的支持

获取 AlphaFold 3 源代码

bash 复制代码
git clone https://github.com/google-deepmind/alphafold3.git

或手动下载:

获取基因数据库

此步骤需要curlzstd安装在您的计算机上

bash 复制代码
# 检查是否安装
curl -V
zstd -V
#sudo apt install zstd

AlphaFold 3 需要多个遗传(序列)蛋白质和 RNA 数据库才能运行:

官方提供了一个 Python 程序fetch_databases.py,可用于下载并设置所有这些数据库。如果不在本地SSD上安装,这个过程大约需要45分钟。我们建议在 screentmux会话中运行以下命令,因为下载和解压缩数据库需要一些时间。

bash 复制代码
cd alphafold3  # cd 到包含AlphaFold 3存储库的目录
python3 fetch_databases.py --download_destination=<DATABASES_DIR>

此脚本从 GCS 上托管的镜像下载数据库,其中包含所有 版本与 AlphaFold 3 论文中使用的版本相同。
Note: 下载目录<DATABASES_DIR>不应是AlphaFold 3存储库目录中的子目录。如果是这样,Docker构建将很慢,因为大型数据库将在映像创建过程中被复制。
Note: 完整数据库的总下载大小约为252 GB,解压缩后的总大小为630 GB。

请确保您有足够的硬盘空间、带宽和时间来下载。我们建议使用SSD以获得更好的基因搜索性能,以及fetch_databases.py的更快运行时间。
Note: 如果下载目录和数据集没有完全的读写权限,可能会导致MSA工具出现错误,错误消息不明确。请确保应用了所需的权限,例如使用sudo chmod 755 --recursive <DATABASES_DIR>命令。

脚本完成后,应该拥有以下目录结构:

bash 复制代码
pdb_2022_09_28_mmcif_files.tar  # ~200k PDB mmCIF files in this tar.
bfd-first_non_consensus_sequences.fasta
mgy_clusters_2022_05.fa
nt_rna_2023_02_23_clust_seq_id_90_cov_80_rep_seq.fasta
pdb_seqres_2022_09_28.fasta
rfam_14_9_clust_seq_id_90_cov_80_rep_seq.fasta
rnacentral_active_seq_id_90_cov_80_linclust.fasta
uniprot_all_2021_04.fa
uniref90_2022_05.fa

获取模型参数

可参考:AlphaFold 3 权重申请指南

构建将运行 AlphaFold 3 的 Docker 容器

参考

[1]AlphaFold3 最全食用指南

[2]window10下WSL使用Ubuntu报错: System has not been booted with systemd as init system (PID 1)

[3]如何修复 System has not been booted with systemd 报错信息?

[4]

[5]

[6]

相关推荐
生命是有光的10 小时前
【开源风云】从若依系列脚手架汲取编程之道(七)
开源
同元软控10 小时前
2024 CCF中国开源大会“开源科学计算与系统建模openSCS”分论坛成功举办
开源·工业软件
一尘之中10 小时前
AMD 与密歇根大学合作为生物信息学社区提供高性能开源解决方案
人工智能·学习·开源
FIT2CLOUD飞致云10 小时前
新增支持Elasticsearch数据源,支持自定义在线地图风格,DataEase开源BI工具v2.10.2 LTS发布
开源·数据可视化·dataease·bi·数据大屏
声网12 小时前
「AI Infra 软件开源不是一个选项,而是必然」丨云边端架构和 AI Infra专场回顾@RTE2024
人工智能·架构·开源
李楷杰12 小时前
PaddlePaddle 开源产业级文档印章识别PaddleX-Pipeline “seal_recognition”模型 开箱即用篇(一)
人工智能·python·开源·ocr·paddlepaddle·印章识别
Boundivore 班德沃13 小时前
使用阿里云快速搭建 DataLight 平台
大数据·阿里云·开源·云计算
小华同学ai13 小时前
WukongCRM:github高分开源项目,基于微服务架构 +vue ElementUI的前后端分离CRM系统
架构·开源·github
liugddx14 小时前
Qwen2-VL:发票数据提取、视频聊天和使用 PDF 的多模态 RAG 的实践指南
人工智能·gpt·ai·pdf·开源·音视频