作为学术界的fast follow,RoseTTAfold以其占用的资源有限以及预测蛋白复合物而占据了一定的优势。
当然其安装也不需要docker,为一些非root用户提供了方便之处,而且说不定CASP15就进化完全体了。
顺便提一句AlphaFold2的A100好像4万 - 7万。
步骤以及相关的坑:
1. 下载RosettaFold
git clone https://github.com/RosettaCommons/RoseTTAFold.git cd RoseTTAFold
2. 下载各种文件
# 权重文件 wget https://files.ipd.uw.edu/pub/RoseTTAFold/weights.tar.gz tar xfz weights.tar.gz # 下载序列以及相关的结构文件 # uniref30 [46G] wget http://wwwuser.gwdg.de/~compbiol/uniclust/2020_06/UniRef30_2020_06_hhsuite.tar.gz mkdir -p UniRef30_2020_06 tar xfz UniRef30_2020_06_hhsuite.tar.gz -C ./UniRef30_2020_06 # BFD [272G] 这个alphafold也有用 wget https://bfd.mmseqs.com/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt.tar.gz mkdir -p bfd tar xfz bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt.tar.gz -C ./bfd # 结构模版 [over 100G] wget https://files.ipd.uw.edu/pub/RoseTTAFold/pdb100_2021Mar03.tar.gz tar xfz pdb100_2021Mar03.tar.gz # for CASP14 benchmarks, we used this one: https://files.ipd.uw.edu/pub/RoseTTAFold/pdb100_2020Mar11.tar.gz
3. 使用conda安装相关的环境
# create conda environment for RoseTTAFold # NVIDIA driver == cuda11,进行如下操作 conda env create -f RoseTTAFold-linux.yml # NVIDIA driver == cuda10 ,进行如下操作 conda env create -f RoseTTAFold-linux-cu101.yml # 如果你使用pyrosetta进行如下操作 conda env create -f folding-linux.yml
4. 直接运行
正如你所看到到直接运行即可,把一切交给计算机
../run_e2e_ver.sh input.fa .
5. 结果
输出文件夹:
结果蛋白:
后记
- RoseTTAfold 有两种模式,他也可以预测复合物结构,但是我目前没跑,过段时间看看
- 你可以使用
run_e2e_ver.sh
也可以使用run_pyrosetta_ver.sh
,如果你选择后者,那么请注意- 获取Pyrosetta相关软件下载license,并将其安装在conda
的folding
环境中 - 运行
install_dependencies.sh
,为Pyrosetta安装相关的第三方软件
- 获取Pyrosetta相关软件下载license,并将其安装在conda
- GPU还是CPU ?,well,如果你想运行CPU,请按照我的提示进行操作
RoseTTAFold/network/predict_e2e.py
找到这个文件- 找到这一句
def __init__(self, model_dir=None, device="cuda:0"):
,并将其替换为def __init__(self, model_dir=None,device="cpu"):
4. 运行中遇见了segmentation fault
?
- 首先,使用conda卸载掉RoseTTAFold中的hhsuite
- 然后重新下载一个并将其放到环境变量中
wget https://github.com/soedinglab/hh-suite/releases/download/v3.2.0/hhsuite-3.2.0-AVX2-Linux.tar.gz --no-check-certificate tar xvfz hhsuite-3.2.0-AVX2-Linux.tar.gz
相关链接:
- github:https://github.com/RosettaCommons/RoseTTAFold
- gitee:https://gitee.com/zerodesigner/RoseTTAFold
- pyrosetta:https://www.pyrosetta.org/
- Conda:https://docs.conda.io/en/latest/miniconda.html
- Hhsuite:https://github.com/RosettaCommons/RoseTTAFold/issues/2
- RosettaFold: M Baek, et al., Accurate prediction of protein structures and interactions using a 3-track network, bioRxiv (2021)