本家様 https://github.com/YoshitakaMo/localcolabfold
localcolabfoldは、ColabFold様の「ColabFold: AlphaFold2 using MMseqs2」をlocal(自分の計算機)で実現できる代物でございます.
ColabFold様による「ColabFold」のご説明はこちら
https://docs.google.com/presentation/d/1mnffk23ev2QMDzGZ5w1skXEadTe54l8-Uei6ACce8eI/edit#slide=id.p
version 1.4.0がリリースされました. それに伴いここの内容を書き換えてます。過去のコンテンツはバックアップからご覧ください
インストール †
計算機に入っているCUDAのライブラリバージョンとGCCのバージョンをチェックします
[root@colabfold ~]# cat /etc/redhat-release
Rocky Linux release 8.6 (Green Obsidian)
[root@colabfold ~]# nvidia-smi -L
GPU 0: NVIDIA RTX A2000 (UUID: GPU-23cc3ee7-31d3-a068-2f61-5aa00052d084)
[root@colabfold ~]# export PATH=/usr/local/cuda/bin:$PATH
[root@colabfold ~]# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_May__3_18:49:52_PDT_2022
Cuda compilation tools, release 11.7, V11.7.64
Build cuda_11.7.r11.7/compiler.31294372_0
[root@colabfold ~]#
[root@colabfold ~]# gcc --version
gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-10)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[root@colabfold ~]#
RHEL8系にはgcc-toolsetなるものがあってより上位のGCCを使うことができますが、ここでは標準の GCC 8.5.0 を使います
それではスクリプトを取得してlocalclabfoldを実装していきます. 実装場所を「$HOME/localcolabfold」の中にしました.
[root@colabfold ~]# mkdir /apps
[root@colabfold ~]# cd /apps/
[root@colabfold apps]#
[root@colabfold apps]# wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_linux.sh
[root@colabfold apps]# bash ./install_colabbatch_linux.sh
:
:
Installation of colabfold_batch finished.
Note: AlphaFold2 weight parameters will be downloaded at /apps/colabfold_batch/colabfold/params directory in the first run.
Add /apps/colabfold_batch/bin to your environment variable PATH to run 'colabfold_batch'.
i.e. For Bash, export PATH="/apps/colabfold_batch/bin:$PATH"
For more details, please type 'colabfold_batch --help'.
[root@colabfold apps]#
これで一応完成.
以前のように必要な時にモデルデータを取得するのではなく構築時に用意されるみたい
EnvironmentModules †
「/apps/modulefiles/localcolabfold」
#%Module1.0
set colabfold /apps/colabfold_batch/colabfold-conda
prepend-path PATH $colabfold/bin
テスト †
予測対象の配列は別途ファイルで用意するみたい
[illya@rockylinux test]$ module load localcolabfold
[illya@rockylinux test]$ colabfold_batch -h
usage: colabfold_batch [-h] [--stop-at-score STOP_AT_SCORE]
[--stop-at-score-below STOP_AT_SCORE_BELOW]
[--num-recycle NUM_RECYCLE]
[--num-ensemble NUM_ENSEMBLE]
:
:
[illya@rockylinux test]$ vi query.fasta
>sample
PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASK
[illya@rockylinux test]$
[illya@rockylinux test]$ colabfold_batch --amber --templates --num-recycle 3 --use-gpu-relax ./query.fasta ./out
2022-06-21 21:11:23,964 Running colabfold 1.3.0 (91ad6898d38d143d8a52dfd5f8b020b694f07f9c)
:
[illya@rockylinux test]$
入力ファイルはソースコードを拝見すると、a3m形式(拡張子が[.a3m])、fasta形式(拡張子が[.fasta]、[.faa]、[.fa])の他に
csvやtsvでも対応みたい.
めも †
「stereo_chemical_props.txt」は既に内部に入っているようなので取得する必要がないのかもしれれない