环境搭建
#下载安装包
wget https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-aarch64.sh
chmod +x Anaconda3-2024.10-1-Linux-aarch64.sh #安装
bash Anaconda3-2024.10-1-Linux-aarch64.sh #设置环境变量
vim ~/.bashrc
export PATH=/home/openfold/anaconda3/bin:$PATH :wq
source ~/.bashrc
#创建 python3.9 环境,并激活环境
conda init
conda create -n openfold_env python=3.9
conda activate openfold_env
#配置 conda 的 lib 库
vim ~/.bashrc
export LD_LIBRARY_PATH=/home/openfold/anaconda3/lib:$LD_LIBRARY_PATH :wq
source ~/.bashrc
复制代码
下载代码及安装依赖
#下载代码
cd /home/openfold
git clone https://gitee.com/ascend/ModelZoo-PyTorch.git
#安装依赖
cd /home/openfold/ModelZoo-PyTorch/PyTorch/built-in/others/OpenFold_for_PyTorch
pip3 install -r 2.1_requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
pip install git+https://github.com/NVIDIA/dllogger.git
pip install torch==2.1.0 -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple #下载安装 torch_npu
wget https://gitee.com/ascend/pytorch/releases/download/v6.0.0.1-pytorch2.1.0/torch_npu- 2.1.0.post11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pip3 install torch_npu-2.1.0.post11-cp39-cp39- manylinux_2_17_aarch64.manylinux2014_aarch64.whl
#安装其它依赖
conda install -c bioconda -c conda-forge hhsuite
conda install -c bioconda kalign2
conda install -c bioconda -c conda-forge mmseqs2
conda install -c conda-forge openmm=7.7.0
conda install -c conda-forge pdbfixer
#构建安装 openfold
bash scripts/install_third_party_dependencies.sh python setup.py install
复制代码
数据集准备
#安装 aws
curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"
unzip awscliv2.zip sudo ./aws/install #获取 pdb_mmcif 数据集 mkdir pdb_data
aws s3 cp s3://openfold/pdb_mmcif.zip pdb_data/ --no-sign-request #获取 duplicate_pdb_chains.txt
aws s3 cp s3://openfold/duplicate_pdb_chains.txt . --no-sign-request 解压 pdb_data
cd pdb_data
unzip pdb_mmcif.zip -d pdb_data
#下载参数
bash scripts/download_alphafold_params.sh openfold/resources
#修改 param 路径
vim /home/openfold/ModelZoo-PyTorch/PyTorch/built- in/others/OpenFold_for_PyTorch/examples/monomer/../../run_pretrained_openfold.py
line 490 改为:
"/home/openfold/ModelZoo-PyTorch/PyTorch/built-in/others/OpenFold_for_PyTorch/openfold", "resources", "params",
#修改 inference.sh
#修改数据集路径和 device
cd examples/monome
vim inference.sh
export MMCIF_DIR=../../pdb_data/mmcif_files/ --model_device "npu:0"
复制代码
推理测试
#执行推理脚本
bash inference.sh
复制代码
报错与解决方法
1、报错 ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/openfold/anaconda3/envs/openfold_env/lib/python3.9/site- packages/numpy/fft/_pocketfft_umath.cpython-39-aarch64-linux-gnu.so)
#更新 numpy 版本
pip3 uninstall numpy
pip3 install numpy==1.24.0
复制代码
2、报错 ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/openfold/anaconda3/envs/openfold_env/lib/python3.9/site- packages/scipy/spatial/_ckdtree.cpython-39-aarch64-linux-gnu.so)
pip3 uninstall scipy
pip install --no-binary :all: scipy
复制代码
3、报错 aria2c: /home/openfold/anaconda3/lib/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /home/openfold/anaconda3/envs/openfold_env/bin/../lib/././libicuuc.so.75)
conda install -c conda-forge libstdcxx-ng=12.2.0
复制代码
4、报错:There is no registered Platform called “CUDA” ValueError:Minimization failed after 100 attempts.
vim ../../openfold/np/relax/amber_minimize.py # 修改 use_gpu 为 False
复制代码
评论