로컬 PC(또는 macOS)의 ColabFold. ColabFold 저장소도 참조하세요.
LocalColabFold는 사용자의 로컬 컴퓨터에서 ColabFold 기능을 사용할 수 있도록 설계된 설치 프로그램 스크립트입니다. Windows 10 이상(Linux 2용 Windows 하위 시스템 사용), macOS, Linux 등 광범위한 운영 체제를 지원합니다.
소수의 자연 발생 단백질만 예측하려는 경우 ColabFold 노트북을 사용하거나 AlphaFold 단백질 구조 데이터베이스 또는 UniProt에서 구조를 다운로드하는 것이 좋습니다. LocalColabFold는 천연 복합체, 비천연 단백질에 대한 구조 예측의 일괄 처리 또는 수동으로 지정된 MSA/템플릿을 사용한 예측과 같은 고급 애플리케이션에 적합합니다.
PC에 Nvidia GPU 및 CUDA 드라이버가 있으면 구조 추론 및 완화가 가속화됩니다.
타임아웃 없음(90분 및 12시간)
GPU 제한 없음
기본 AlphaFold2에 필요한 대규모 데이터베이스를 준비하는 데 필요하지 않습니다 .
현재 GPU 지원 jax > 0.4.26에는 CUDA 12.1 이상 및 cudnn 9가 필요하므로 CUDA 드라이버 및 cudnn을 업그레이드하거나 설치하십시오. CUDA 12.4를 권장합니다.
ColabFold는 이제 1.5.5로 업그레이드됩니다(AlphaFold 2.3.2와 호환 가능). 이제 LocalColabFold에는 CUDA 12.1 이상이 필요합니다. 아직 업데이트하지 않았다면 CUDA 드라이버를 업데이트하세요.
이제 (로컬)ColabFold는 인터넷에 연결하지 않고도 단백질 구조를 예측할 수 있습니다. setup_databases.sh
스크립트를 사용하여 데이터베이스를 다운로드하고 구축합니다(ColabFold 다운로드 참조). MSA와 템플릿을 로컬로 얻기 위해 colabfold_search
실행하는 지침이 이 주석에 기록되어 있습니다.
2024년 1월 30일, ColabFold 1.5.5(AlphaFold 2.3.2와 호환 가능). 이제 LocalColabFold에는 CUDA 12.1 이상이 필요합니다. CUDA 드라이버를 업데이트하세요.
2023년 4월 30일, Google Colaboratory와의 호환성을 위해 Python 3.10을 사용하도록 업데이트되었습니다.
2023년 3월 9일, 버전 1.5.1이 출시되었습니다. 실행 명령어와 구분하기 위해 기본 디렉터리를 colabfold_batch
에서 localcolabfold
로 변경했습니다.
2023년 3월 9일, 버전 1.5.0이 출시되었습니다. 릴리스 v1.5.0을 참조하세요.
2023년 2월 5일, 버전 1.5.0-사전 출시됨.
2022년 6월 16일, 버전 1.4.0이 출시되었습니다. 릴리스 v1.4.0을 참조하세요.
2022년 5월 7일, update_linux.sh
업데이트됨. 업데이트 방법도 참조하세요. GPU 완화가 필요한 경우 새로운 옵션 --use-gpu-relax
사용하십시오(권장).
2022년 4월 12일 버전 1.3.0이 출시되었습니다. 릴리스 v1.3.0을 참조하세요.
2021년 12월 9일 버전 1.2.0-베타가 출시되었습니다. 사용하기 쉬운 업데이터 스크립트가 추가되었습니다. 업데이트 방법을 참조하세요.
2021년 12월 4일, LocalColabFold는 이제 최신 pip 설치 가능 ColabFold와 호환됩니다. 이 저장소에서는 AMBER로 완화를 수행하기 위해 일부 외부 매개변수 파일과 함께 ColabFold를 설치하는 스크립트를 제공합니다. AlphaFold 및 AlphaFold-Multimer의 중량 매개변수는 첫 번째 실행 시 자동으로 다운로드됩니다.
curl
, git
및 wget
명령이 PC에 이미 설치되어 있는지 확인하십시오. 존재하지 않는 경우 먼저 설치해야 합니다. Ubuntu의 경우 sudo apt -y install curl git wget
입력합니다.
Cuda 컴파일러 드라이버가 11.8 이상 인지 확인하세요(최신 버전 12.4가 바람직함). GPU가 없거나 GPU를 사용할 계획이 없다면 이 단계를 건너뛸 수 있습니다.
$ nvcc --버전 nvcc: NVIDIA (R) Cuda 컴파일러 드라이버 저작권 (c) 2005-2022 NVIDIA Corporation Wed_Sep_21_10:33:58_PDT_2022에 구축됨 Cuda 컴파일 도구, 릴리스 11.8, V11.8.89 cuda_11.8.r11.8/compiler.31833905_0 빌드
버전을 확인하기 위해 nvidia-smi
사용하지 마십시오.
아직 설치하지 않은 경우 Linux용 NVIDIA CUDA 설치 가이드를 참조하세요.
openmm에는 GLIBCXX_3.4.26
이 필요하므로 GNU 컴파일러 버전이 9.0 이상 인지 확인하세요.
$ gcc --버전 gcc(우분투 9.3.0-17ubuntu1~20.04) 9.3.0 저작권 (C) 2019 자유 소프트웨어 재단, Inc. 이것은 무료 소프트웨어입니다. 조건 복사에 대한 소스를 참조하세요. 없다 보증; 상품성이나 특정 목적에의 적합성을 위해서도 아닙니다.
버전이 8.5.0 이하(예: CentOS 7, Rocky/Almalinux 8 등)인 경우 새 버전을 설치하고 PATH
추가하세요.
다음 저장소에서 install_colabbatch_linux.sh
를 다운로드하세요.
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbaatch_linux.sh
설치하려는 디렉토리에서 실행하십시오.
$ bash install_colabbaatch_linux.sh
약 5분 정도 지나면 localcolabfold
디렉터리가 생성됩니다. 설치 후에 이 디렉터리를 이동하지 마십시오.
네트워크를 차단되지 않은 상태로 유지하세요. 그리고 로그 출력을 확인하여 오류가 있는지 확인하세요.
출력 로그에서 오류를 발견하면 가장 쉬운 방법은 네트워크를 확인하고 localcolabfold 디렉터리를 삭제한 후 설치 스크립트를 다시 실행하는 것입니다.
환경 변수 PATH를 추가합니다.
# bash 또는 zsh의 경우 # 예: 내보내기 PATH="/home/moriwaki/Desktop/localcolabfold/colabfold-conda/bin:$PATH" 내보내기 PATH="/path/to/your/localcolabfold/colabfold-conda/bin:$PATH"
이 내보내기 명령을 ~/.bashrc
에 추가하고 bash를 다시 시작하는 것이 좋습니다( ~/.bashrc
bash가 시작될 때마다 실행됩니다).
예측을 실행하려면 다음을 입력하세요.
colabfold_batch 입력 출력dir/
결과 파일은 outputdir
에 생성됩니다. 이 명령은 템플릿과 완화(에너지 최소화) 없이 예측을 실행합니다. 템플릿과 완화 기능을 사용하려면 각각 --templates
및 --amber
플래그를 추가하세요. 예를 들어,
colabfold_batch --templates --amber 입력 출력 디렉터리/
colabfold_batch
예측이 단위체 예측인지 복잡한 예측인지 자동으로 감지합니다. 대부분의 경우 사용자는 멀티머 예측을 켜기 위해 --model-type alphafold2_multimer_v3
추가할 필요가 없습니다. alphafold2_multimer_v1, alphafold2_multimer_v2
도 사용할 수 있습니다. 기본값은 auto
입니다(단량체에는 alphafold2_ptm
사용하고 복합체에는 alphafold2_multimer_v3
사용합니다.)
자세한 내용은 플래그 및 colabfold_batch --help
참조하세요.
주의: 기호 링크( symlink
) 생성 문제로 인해 설치가 실패하는 경우 이는 Windows 파일 시스템이 대소문자를 구분하지 않기 때문입니다(Linux 파일 시스템은 대소문자를 구분함). 이 문제를 해결하려면 Windows Powershell에서 다음 명령을 실행하세요.
fsutil file SetCaseSensitiveInfo pathtolocalcolabfoldinstallation enable
pathtocolabfoldinstallation
LocalColabFold를 설치하는 디렉터리의 경로로 바꿉니다. 또한 WSL이 아닌 Windows Powershell에서 명령을 실행하고 있는지 확인하세요. 자세한 내용은 대소문자 구분 조정(Microsoft)을 참조하세요.
예측을 실행하기 전에:
export TF_FORCE_UNIFIED_MEMORY="1" export XLA_PYTHON_CLIENT_MEM_FRACTION="4.0" export XLA_PYTHON_CLIENT_ALLOCATOR="platform" export TF_FORCE_GPU_ALLOW_GROWTH="true"
이러한 내보내기 명령을 ~/.bashrc
에 추가하고 bash를 다시 시작하는 것이 좋습니다( ~/.bashrc
bash가 시작될 때마다 실행됩니다).
주의: Nvidia GPU/CUDA 드라이버가 없기 때문에 macOS의 구조 예측은 Linux+GPU보다 5~10배 느립니다 . 테스트 시퀀스(58 aa)의 경우 30분 정도 걸릴 수 있습니다. 하지만 Linux+GPU 환경을 준비하기 전에 미리 플레이해 보시는 것도 도움이 될 것 같습니다.
터미널에 uname -m
입력하여 Mac이 Intel인지 Apple Silicon인지 확인할 수 있습니다.
$ 이름 없음 -m x86_64 # Intelarm64 # 애플 실리콘
Mac에 맞는 설치 프로그램을 사용하세요.
Homebrew가 없으면 설치합니다.
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrew를 사용하여 wget
, gnu-sed
, HH-suite 및 kalign을 설치합니다.
$ 양조 설치 wget gnu-sed $ 양조 설치 Brewsci/bio/hh-suite Brewsci/bio/kalign
다음 저장소에서 install_colabbatch_intelmac.sh
다운로드하세요.
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbaatch_intelmac.sh
설치하려는 디렉토리에서 실행하십시오.
$ bash install_colabbaatch_intelmac.sh
약 5분 정도 지나면 colabfold_batch
디렉터리가 생성됩니다. 설치 후에 이 디렉터리를 이동하지 마십시오.
나머지 과정은 "Linux의 경우"와 동일합니다.
참고: 대부분의 종속 패키지가 Apple Silicon Mac에서 완전히 테스트되지 않았기 때문에 이 설치 프로그램은 실험적입니다.
Homebrew가 없으면 설치합니다.
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrew를 사용하여 여러 명령을 설치합니다(이제 kalign 3.3.2를 사용할 수 있습니다!).
$ 양조 설치 wget cmake gnu-sed $ 양조 설치 Brewsci/bio/hh-suite $ 양조 설치 Brewsci/bio/kalign
Homebrew를 사용하여 miniforge
명령을 설치합니다.
$ 양조 설치 --cask miniforge
다음 저장소에서 install_colabbatch_M1mac.sh
다운로드하세요.
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbaatch_M1mac.sh
설치하려는 디렉토리에서 실행하십시오.
$ bash install_colabbaatch_M1mac.sh
약 5분 정도 지나면 colabfold_batch
디렉터리가 생성됩니다. 설치 후에 이 디렉터리를 이동하지 마십시오. 도중에 나타나는 설치 오류는 무시해도 됩니다 .
나머지 과정은 "Linux의 경우"와 동일합니다.
ColabFold는 여러 파일 형식이나 디렉터리를 허용할 수 있습니다.
positional arguments: input Can be one of the following: Directory with fasta/a3m files, a csv/tsv file, a fasta file or an a3m file results Directory to write the results to
설명이 출력 파일의 접두사가 되므로 >
로 시작하는 헤더 줄은 짧게 하는 것이 좋습니다. 아미노산 서열에 줄바꿈을 삽입하는 것은 허용됩니다.
>sp|P61823
MALKSLVLLSLLVLVLLLVRVQPSLGKETAAAKFERQHMDSSTSAASSSNYCNQMMKSRN
LTKDRCKPVNTFVHESLADVQAVCSQKNVACKNGQTNCYQSYSTMSITDCRETGSSKYPN
CAYKTTQANKHIIVACEGNPYVPVHFDASV
다량체를 예측하려면 단백질 서열 사이에 :
를 삽입하세요.
>1BJP_homohexamer PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR
>3KUD_RasRaf_complex MTEYKLVVVGAGGVGKSALTIQLIQNHFVDEYDPTIEDSYRKQVVIDGETCLLDILDTAGQEEYSAMRDQ YMRTGEGFLCVFAINNTKSFEDIHQYREQIKRVKDSDDVPMVLVGNKCDLAARTVESRQAQDLARSYGIP YIETSAKTRQGVEDAFYTLVREIRQH: PSKTSNTIRVFLPNKQRTVVNVRNGMSLHDCLMKALKVRGLQPECCAVFRLLHEHKGKKARLDWNTDAAS LIGEELQVDFL
FASTA 형식 파일의 시퀀스가 포함된 다중 >
헤더 행은 지정된 출력 디렉토리에서 한 번에 여러 예측을 생성합니다.
csv 형식에서는 id
와 sequence
,
로 구분해야 합니다.
id,sequence
5AWL_1,YYDPETGTWY
3G5O_A_3G5O_B,MRILPISTIKGKLNEFVDAVSSTQDQITITKNGAPAAVLVGADEWESLQETLYWLAQPGIRESIAEADADIASGRTYGEDEIRAEFGVPRRPH:MPYTVRFTTTARRDLHKLPPRILAAVVEFAFGDLSREPLRVGKPLRRELAGTFSARRGTYRLLYRIDDEHTTVVILRVDHRADIYRR
a3m 형식의 MSA 파일을 입력할 수 있습니다. 다중체 예측을 위해서는 a3m 파일이 colabfold 형식과 호환되어야 합니다.
이러한 플래그는 예측에 유용합니다.
--amber
: 구조 개선(완화/에너지 최소화)을 위해 호박을 사용합니다. 최상위 구조의 수를 제어하려면 --num-relax
로 설정하면 됩니다.
--templates
: pdb의 템플릿을 사용합니다.
--use-gpu-relax
: CPU 대신 NVidia GPU에서 amber를 실행합니다. 이 기능은 Nvidia GPU가 있는 시스템에서만 사용할 수 있습니다.
--num-recycle
: 예측 재활용 횟수입니다. 재활용을 늘리면 품질이 향상될 수 있지만 예측 속도가 느려집니다. 기본값은 3
입니다. (예: --num-recycle 10
)
--custom-template-path
: --template
에 사용되는 템플릿 파일을 지정된 디렉터리에 포함된 파일로만 제한합니다. 이 플래그를 사용하면 예측에 비공개 pdb 파일을 사용할 수 있습니다. sokrypton/ColabFold#177 도 참조하세요.
--random-seed
난수 생성기의 시드를 변경하면 구조 예측이 달라질 수 있습니다. (예: --random-seed 42
)
--num-seeds
시도할 시드 수입니다. 범위(random_seed, random_seed+num_seeds)에서 반복됩니다. (예: --num-seed 5
)
--max-msa
: 정의: max-seq:max-extra-seq
사용할 시퀀스 수(예 --max-msa 512:1024
). 별도로 지정하려는 경우 --max-seq
및 --max-extra-seq
인수도 사용할 수 있습니다. 이는 del Alamo et al 이 입증한 AlphaFold2를 사용하여 수송체 및 수용체의 대체 형태 상태 샘플링 논문을 다시 구현한 것입니다.
--use-dropout
: 모델의 불확실성으로부터 샘플링을 추론하는 동안 드롭아웃을 활성화합니다.
--overwrite-existing-results
: 결과 파일을 덮어씁니다.
자세한 내용은 colabfold_batch --help
참조하세요.
ColabFold는 아직 진행 중인 작업이므로 최신 기능을 사용하려면 localcolabfold도 자주 업데이트해야 합니다. 이를 위해 사용하기 쉬운 업데이트 스크립트가 제공됩니다.
localcolabfold를 업데이트하려면 다음을 실행하면 됩니다.
# OS를 설정합니다. 다음 변수 중 하나를 선택합니다. {linux,intelmac,M1mac}$ OS=linux # Linux#인 경우 localcolabfold를 설치한 디렉터리로 이동합니다. 예:$ cd /home/moriwaki/Desktop/localcolabfold/# 최신 업데이트 받기$ wget https ://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/update_${OS}.sh -O update_${OS}.sh $ chmod +x update_${OS}.sh# 실행합니다.$ ./update_${OS}.sh .
설치하기 전에 또 무엇을 해야 합니까? sudo 권한이 필요합니까?
아니요. curl
및 wget
명령 설치는 제외됩니다.
PDB70, BFD, Uniclust30, MGnify 등 대용량 데이터베이스를 준비해야 하나요?
아니요. 그럴 필요는 없습니다. MSA 생성은 ColabFold에서 구현된 것과 마찬가지로 MMseqs2 웹 서버에서 수행됩니다.
pLDDT 점수와 PAE 수치가 제공됩니까?
예, ColabFold와 마찬가지로 생성됩니다.
동종올리고머와 복합체를 예측하는 것이 가능합니까?
네, 입력 시퀀스의 형식은 ColabFold와 동일합니다. query_sequence:
및 ColabFold 사용: MMseqs2를 사용하는 AlphaFold2를 참조하세요.
jackhmmer로 MSA를 생성할 수 있습니까?
아니요, 현재는 지원되지 않습니다 .
여러 GPU를 사용하여 예측을 수행하고 싶습니다.
AlphaFold 및 ColabFold는 다중 GPU를 지원하지 않습니다 . 단 하나의 GPU만 단백질을 모델링할 수 있습니다.
GPU가 여러 개 있습니다. 각 GPU에서 LocalColabfold를 실행하도록 지정할 수 있나요?
CUDA_VISIBLE_DEVICES
환경 변수를 사용하세요. #200을 참조하세요.
오류 메시지 CUDA_ERROR_ILLEGAL_ADDRESS: an illegal memory access was encountered
.
CUDA 11.8 이상으로 업데이트하지 않았을 수 있습니다. nvidia-smi
아닌 nvcc --version
명령을 사용하여 Cuda 컴파일러 버전을 확인하세요.
Windows 10에서 사용할 수 있나요?
WSL2를 사용하여 Windows 10에서 LocalColabFold를 실행할 수 있습니다.
(New!)a3m 형식의 사용자 정의 MSA 파일을 사용하고 싶습니다.
ColabFold는 이제 다양한 입력 파일을 수용할 수 있습니다 . 도움말 메시지를 참조하세요. 자신만의 A3M 파일, 여러 시퀀스(FASTA 형식)가 포함된 fasta 파일 또는 여러 fasta 파일이 포함된 디렉터리를 설정할 수 있습니다.
보스턴 단백질 디자인 및 모델링 클럽에서 ColabFold 튜토리얼이 발표되었습니다. [동영상] [슬라이드].
원본 colabfold는 Sergey Ovchinnikov(@sokrypton), Milot Mirdita(@milot_mirdita) 및 Martin Steinegger(@thesteinegger)가 처음 만들었습니다.
Mirdita M, Schütze K, Moriwaki Y, Heo L, Ovchinnikov S 및 Steinegger M. ColabFold - 누구나 접근 가능한 단백질 접힘을 만듭니다.
네이처 메소드 (2022) doi: 10.1038/s41592-022-01488-1
AlphaFold를 사용하는 경우 다음 사항도 인용해 주세요.
Jumperet al. "AlphaFold를 이용한 매우 정확한 단백질 구조 예측."
네이처 (2021) 도이:10.1038/s41586-021-03819-2
AlphaFold-multimer를 사용하는 경우 다음 사항도 인용해 주세요.
Evanset al. "AlphaFold-Multimer를 이용한 단백질 복합체 예측."
BioRxiv (2022) doi: 10.1101/2021.10.04.463034v2