本家様 https://github.com/RosettaCommons/RFdiffusion
[root@rockylinux9 ~]# cat /etc/redhat-release
Rocky Linux release 9.1 (Blue Onyx)
[root@rockylinux9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 525.105.17 Tue Mar 28 18:02:59 UTC 2023
GCC version: gcc version 11.3.1 20220421 (Red Hat 11.3.1-2) (GCC)
[root@rockylinux9 ~]# nvidia-smi -L
GPU 0: NVIDIA RTX A2000 (UUID: GPU-23cc3ee7-31d3-a068-2f61-5aa00052d084)
[root@rockylinux9 ~]# ls -l /usr/local/cuda
ls: cannot access '/usr/local/cuda': No such file or directory
[root@rockylinux9 ~]#
[root@rockylinux9 ~]# cd /apps/
[root@rockylinux9 apps]# git clone https://github.com/RosettaCommons/RFdiffusion.git
[root@rockylinux9 apps]# cd RFdiffusion/
[root@rockylinux9 RFdiffusion]# ls -lF
total 64
drwxr-xr-x. 3 root root 23 Apr 5 03:20 config/
drwxr-xr-x. 3 root root 45 Apr 5 03:20 env/
drwxr-xr-x. 5 root root 4096 Apr 5 03:20 examples/
drwxr-xr-x. 2 root root 50 Apr 5 03:20 helper_scripts/
drwxr-xr-x. 2 root root 4096 Apr 5 03:20 img/
-rw-r--r--. 1 root root 1631 Apr 5 03:20 LICENSE
-rw-r--r--. 1 root root 42734 Apr 5 03:20 README.md
drwxr-xr-x. 4 root root 4096 Apr 5 03:20 rfdiffusion/
drwxr-xr-x. 2 root root 30 Apr 5 03:20 scripts/
-rw-r--r--. 1 root root 394 Apr 5 03:20 setup.py
[root@rockylinux9 RFdiffusion]# mkdir models && cd models
[root@rockylinux9 models]#
modelsフォルダの中で下記を実行
wget http://files.ipd.uw.edu/pub/RFdiffusion/6f5902ac237024bdd0c176cb93063dc4/Base_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/e29311f6f1bf1af907f9ef9f44b8328b/Complex_base_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/60f09a193fb5e5ccdc4980417708dbab/Complex_Fold_base_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/74f51cfb8b440f50d70878e05361d8f0/InpaintSeq_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/76d00716416567174cdb7ca96e208296/InpaintSeq_Fold_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/5532d2e1f3a4738decd58b19d633b3c3/ActiveSite_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/12fc204edeae5b57713c5ad7dcb97d39/Base_epoch8_ckpt.pt
wget http://files.ipd.uw.edu/pub/RFdiffusion/f572d396fae9206628714fb2ce00f72e/Complex_beta_ckpt.pt
っで
[root@rockylinux9 models]# ls -l
total 3778064
-rw-r--r--. 1 root root 483616107 Mar 30 10:31 ActiveSite_ckpt.pt
-rw-r--r--. 1 root root 483616107 Mar 30 10:31 Base_ckpt.pt
-rw-r--r--. 1 root root 483616427 Mar 30 10:30 Base_epoch8_ckpt.pt
-rw-r--r--. 1 root root 483619179 Mar 30 10:30 Complex_base_ckpt.pt
-rw-r--r--. 1 root root 483380617 Mar 30 12:36 Complex_beta_ckpt.pt
-rw-r--r--. 1 root root 483626923 Mar 30 10:30 Complex_Fold_base_ckpt.pt
-rw-r--r--. 1 root root 483619243 Mar 30 10:30 InpaintSeq_ckpt.pt
-rw-r--r--. 1 root root 483626987 Mar 30 10:30 InpaintSeq_Fold_ckpt.pt
[root@rockylinux9 models]#
次にpyenv/anaconda環境でconda実行環境を作ります
まずはそのpyenv/anaconda環境の準備
git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install anaconda3-2023.03
pyenv global anaconda3-2023.03
export PATH=$PYENV_ROOT/versions/anaconda3-2023.03/bin/:$PATH
conda update conda
(すでにpyenv/anaconda環境があるなら)
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
export PATH=$PYENV_ROOT/versions/anaconda3-2023.03/bin/:$PATH
っで
[root@rockylinux9 ~]# cd /apps/RFdiffusion/
[root@rockylinux9 RFdiffusion]# cat env/SE3nv.yml
name: SE3nv
channels:
- defaults
- conda-forge
- pytorch
- dglteam
- nvidia
dependencies:
- python=3.9
- pytorch=1.9
- torchaudio
- torchvision
- cudatoolkit=11.1
- dgl-cuda11.1
- icecream
- pip
- pip:
- hydra-core
- pyrsistent
[root@rockylinux9 RFdiffusion]# conda env create -f env/SE3nv.yml
[root@rockylinux9 RFdiffusion]# source activate SE3nv
(SE3nv) [root@rockylinux9 RFdiffusion]#
(SE3nv) [root@rockylinux9 RFdiffusion]# cd env/SE3Transformer
(SE3nv) [root@rockylinux9 SE3Transformer]# ls -l
total 56
-rw-r--r--. 1 root root 2276 Apr 5 03:20 Dockerfile
drwxr-xr-x. 2 root root 33 Apr 5 03:20 images
-rw-r--r--. 1 root root 1071 Apr 5 03:20 LICENSE
-rw-r--r--. 1 root root 280 Apr 5 03:20 NOTICE
-rw-r--r--. 1 root root 35388 Apr 5 03:20 README.md
-rw-r--r--. 1 root root 110 Apr 5 03:20 requirements.txt
drwxr-xr-x. 2 root root 158 Apr 5 03:20 scripts
drwxr-xr-x. 5 root root 73 Apr 5 03:20 se3_transformer
-rw-r--r--. 1 root root 307 Apr 5 03:20 setup.py
drwxr-xr-x. 2 root root 69 Apr 5 03:20 tests
(SE3nv) [root@rockylinux9 SE3Transformer]# cat requirements.txt
e3nn==0.3.3
wandb==0.12.0
pynvml==11.0.0
git+https://github.com/NVIDIA/dllogger#egg=dllogger
decorator==5.1.0
(SE3nv) [root@rockylinux9 SE3Transformer]#
(SE3nv) [root@rockylinux9 SE3Transformer]# pip install --no-cache-dir -r requirements.txt
(SE3nv) [root@rockylinux9 SE3Transformer]# which python
/apps/pyenv/versions/anaconda3-2023.03/envs/SE3nv/bin/python
(SE3nv) [root@rockylinux9 SE3Transformer]# python setup.py install
(SE3nv) [root@rockylinux9 SE3Transformer]# cd ../..
(SE3nv) [root@rockylinux9 RFdiffusion]# pwd
/apps/RFdiffusion
(SE3nv) [root@rockylinux9 RFdiffusion]#
(SE3nv) [root@rockylinux9 RFdiffusion]# pip install -e .
(SE3nv) [root@rockylinux9 RFdiffusion]# conda deactivate
[root@rockylinux9 RFdiffusion]#
EnvironmentModules †
[root@rockylinux9 ~]# vi /apps/modulefiles/RFdiffusion
#%Module
set root /apps/pyenv/versions/anaconda3-2023.03/envs/SE3nv
prepend-path PATH $root/bin:/apps/RFdiffusion/scripts
[root@rockylinux9 ~]#
使ってみる †
[saber@rockylinux9 ~]$ module use /apps/modulefiles/
[saber@rockylinux9 ~]$ module load RFdiffusion
[saber@rockylinux9 ~]$ mkdir -p test/RFdiffusion
[saber@rockylinux9 ~]$ cd test/RFdiffusion
[saber@rockylinux9 RFdiffusion]$
[saber@rockylinux9 RFdiffusion]$ ls -CF /apps/RFdiffusion/examples
design_cyclic_oligos.sh* design_nickel.sh* design_tetrahedral_oligos.sh* target_folds/
design_dihedral_oligos.sh* design_partialdiffusion.sh* design_timbarrel.sh* tim_barrel_scaffold/
design_enzyme.sh* design_partialdiffusion_withseq.sh* design_unconditional.sh*
design_motifscaffolding_inpaintseq.sh* design_ppi_scaffolded.sh* input_pdbs/
design_motifscaffolding.sh* design_ppi.sh* ppi_scaffolds_subset.tar.gz
[saber@rockylinux9 RFdiffusion]$ cp -r /apps/RFdiffusion/examples .
[saber@rockylinux9 RFdiffusion]$ ls -l
total 4
drwxr-xr-x. 5 saber saber 4096 Apr 5 03:50 examples
[saber@rockylinux9 RFdiffusion]$ tar xf examples/ppi_scaffolds_subset.tar.gz -C examples/
[saber@rockylinux9 RFdiffusion]$ ls -CF examples/
design_cyclic_oligos.sh* design_nickel.sh* design_tetrahedral_oligos.sh* ppi_scaffolds_subset.tar.gz
design_dihedral_oligos.sh* design_partialdiffusion.sh* design_timbarrel.sh* target_folds/
design_enzyme.sh* design_partialdiffusion_withseq.sh* design_unconditional.sh* tim_barrel_scaffold/
design_motifscaffolding_inpaintseq.sh* design_ppi_scaffolded.sh* input_pdbs/
design_motifscaffolding.sh* design_ppi.sh* ppi_scaffolds/
[saber@rockylinux9 RFdiffusion]$
[saber@rockylinux9 RFdiffusion]$ run_inference.py 'contigmap.contigs=[150-150]' inference.output_prefix=test_outputs/test inference.num_designs=10 inference.schedule_directory_path=./schedules
:
:
:
[saber@rockylinux9 RFdiffusion]$ ls -l
total 8
drwxr-xr-x. 6 saber saber 4096 Apr 5 03:51 examples
drwxr-xr-x. 3 saber saber 24 Apr 5 03:57 outputs
drwxr-xr-x. 3 saber saber 4096 Apr 5 04:11 test_outputs
[saber@rockylinux9 RFdiffusion]$
[saber@rockylinux9 RFdiffusion]$ ls -l test_outputs/
total 764
-rw-r--r--. 1 saber saber 40200 Apr 5 04:01 test_0.pdb
-rw-r--r--. 1 saber saber 33308 Apr 5 04:01 test_0.trb
-rw-r--r--. 1 saber saber 40200 Apr 5 04:02 test_1.pdb
-rw-r--r--. 1 saber saber 33308 Apr 5 04:02 test_1.trb
:
:
-rw-r--r--. 1 saber saber 40200 Apr 5 04:11 test_9.pdb
-rw-r--r--. 1 saber saber 33308 Apr 5 04:11 test_9.trb
drwxr-xr-x. 2 saber saber 4096 Apr 5 04:11 traj
[saber@rockylinux9 RFdiffusion]$
「inference.schedule_directory_path=./schedules」と自分が書ける場所にフォルダを用意できるように定義を加える必要あり.