ColabFold sur votre PC local (ou macOS). Voir également le référentiel ColabFold.
LocalColabFold est un script d'installation conçu pour rendre la fonctionnalité ColabFold disponible sur les machines locales des utilisateurs. Il prend en charge une large gamme de systèmes d'exploitation, tels que Windows 10 ou version ultérieure (en utilisant le sous-système Windows pour Linux 2), macOS et Linux.
Si vous avez uniquement l'intention de prédire un petit nombre de protéines naturelles, je vous recommande d'utiliser le bloc-notes ColabFold ou de télécharger des structures à partir de la base de données de structures de protéines AlphaFold ou d'UniProt. LocalColabFold convient aux applications plus avancées, telles que le traitement par lots de prédictions de structure pour des complexes naturels, des protéines non naturelles ou des prédictions avec des MSA/modèles spécifiés manuellement.
L'inférence et la relaxation de structure seront accélérées si votre PC dispose de pilotes Nvidia GPU et CUDA.
Pas de temps mort (90 minutes et 12 heures)
Aucune limitation du GPU
PAS nécessaire de préparer la grande base de données requise pour AlphaFold2 natif .
Étant donné que jax > 0.4.26 actuellement pris en charge par GPU nécessite CUDA 12.1 ou version ultérieure et cudnn 9, veuillez mettre à niveau ou installer votre pilote CUDA et cudnn. CUDA 12.4 est recommandé.
ColabFold passe désormais à la version 1.5.5 (compatible avec AlphaFold 2.3.2). LocalColabFold nécessite désormais CUDA 12.1 ou version ultérieure . Veuillez mettre à jour votre pilote CUDA si vous ne l'avez pas fait.
Désormais (Local)ColabFold peut prédire les structures des protéines sans connexion Internet. Utilisez le script setup_databases.sh
pour télécharger et créer les bases de données (voir également Téléchargements ColabFold). Une instruction pour exécuter colabfold_search
pour obtenir le MSA et les modèles localement est écrite dans ce commentaire.
30 janvier 2024, ColabFold 1.5.5 (Compatible avec AlphaFold 2.3.2). LocalColabFold nécessite désormais CUDA 12.1 ou version ultérieure . Veuillez mettre à jour votre pilote CUDA.
30 avril 2023, mise à jour pour utiliser Python 3.10 pour la compatibilité avec Google Colaboratory.
09 mars 2023, version 1.5.1 publiée. Le répertoire de base a été remplacé par colabfold_batch
en localcolabfold
pour le distinguer de la commande d'exécution.
09 mars 2023, version 1.5.0 publiée. Voir la version v1.5.0
05 février 2023, version 1.5.0-pré-publiée.
16 juin 2022, version 1.4.0 publiée. Voir la version v1.4.0
07 mai 2022, mise à jour update_linux.sh
. Voir aussi Comment mettre à jour. Veuillez utiliser une nouvelle option --use-gpu-relax
si une relaxation GPU est requise (recommandé).
12 avril 2022, version 1.3.0 publiée. Voir la version v1.3.0
09 décembre 2021, version 1.2.0 bêta publiée. ajout de scripts de mise à jour faciles à utiliser. Voir Comment mettre à jour.
04 décembre 2021, LocalColabFold est désormais compatible avec le dernier ColabFold installable par pip. Dans ce référentiel, je fournirai un script pour installer ColabFold avec des fichiers de paramètres externes pour effectuer une relaxation avec AMBER. Les paramètres de poids d'AlphaFold et d'AlphaFold-Multimer seront téléchargés automatiquement lors de votre première exécution.
Assurez-vous que les commandes curl
, git
et wget
sont déjà installées sur votre PC. S’ils ne sont pas présents, vous devez d’abord les installer. Pour Ubuntu, tapez sudo apt -y install curl git wget
.
Assurez-vous que votre pilote de compilateur Cuda est 11.8 ou version ultérieure (la dernière version 12.4 est préférable). Si vous n'avez pas de GPU ou ne prévoyez pas d'en utiliser, vous pouvez ignorer cette étape :
$ nvcc --version nvcc : pilote du compilateur NVIDIA (R) Cuda Copyright (c) 2005-2022 NVIDIA Corporation Construit le Wed_Sep_21_10:33:58_PDT_2022 Outils de compilation Cuda, version 11.8, V11.8.89 Construire cuda_11.8.r11.8/compiler.31833905_0
N'utilisez PAS nvidia-smi
pour vérifier la version.
Consultez le guide d'installation de NVIDIA CUDA pour Linux si vous ne l'avez pas installé.
Assurez-vous que la version de votre compilateur GNU est 9.0 ou ultérieure car GLIBCXX_3.4.26
est requis pour openmm :
$ gcc --version gcc (Ubuntu 9.3.0-17ubuntu1 ~ 20.04) 9.3.0 Copyright (C) 2019 Free Software Foundation, Inc. Il s'agit d'un logiciel gratuit ; voir la source pour les conditions de copie. Il n'y a PAS garantie; pas même pour la QUALITÉ MARCHANDE ou l'ADAPTATION À UN USAGE PARTICULIER.
Si la version est 8.5.0 ou antérieure (par exemple CentOS 7, Rocky/Almalinux 8, etc.), installez-en une nouvelle et ajoutez-y PATH
.
Téléchargez install_colabbatch_linux.sh
depuis ce référentiel :
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_linux.sh
et exécutez-le dans le répertoire où vous souhaitez installer :
$ bash install_colabbatch_linux.sh
Environ 5 minutes plus tard, le répertoire localcolabfold
sera créé. Ne déplacez pas ce répertoire après l'installation.
Gardez le réseau débloqué. Et vérifiez la sortie du journal pour voir s’il y a des erreurs.
Si vous trouvez des erreurs dans le journal de sortie, le moyen le plus simple consiste à vérifier le réseau et à supprimer le répertoire localcolabfold, puis à réexécuter le script d'installation.
Ajoutez la variable d'environnement PATH :
# Pour bash ou zsh # par exemple, export PATH="/home/moriwaki/Desktop/localcolabfold/colabfold-conda/bin:$PATH" export PATH="/path/to/your/localcolabfold/colabfold-conda/bin:$PATH"
Il est recommandé d'ajouter cette commande d'exportation à ~/.bashrc
et de redémarrer bash ( ~/.bashrc
sera exécuté à chaque démarrage de bash)
Pour exécuter la prédiction, tapez
colabfold_batch entrée répsortie/
Les fichiers de résultats seront créés dans le outputdir
. Cette commande exécutera la prédiction sans modèles ni relaxation (minimisation de l'énergie). Si vous souhaitez utiliser des modèles et de la relaxation, ajoutez respectivement les indicateurs --templates
et --amber
. Par exemple,
colabfold_batch --templates --amber entrée rép_sortie/
colabfold_batch
détectera automatiquement si la prédiction concerne une prédiction monomère ou complexe. Dans la plupart des cas, les utilisateurs n'ont pas besoin d'ajouter --model-type alphafold2_multimer_v3
pour activer la prédiction multimère. alphafold2_multimer_v1, alphafold2_multimer_v2
sont également disponibles. La valeur par défaut est auto
(utilisez alphafold2_ptm
pour les monomères et alphafold2_multimer_v3
pour les complexes.)
Pour plus de détails, consultez Flags et colabfold_batch --help
.
Attention : Si votre installation échoue en raison de problèmes de création de liens symboliques ( symlink
), cela est dû au fait que le système de fichiers Windows n'est pas sensible à la casse (alors que le système de fichiers Linux est sensible à la casse). Pour résoudre ce problème, exécutez la commande suivante sur Windows Powershell :
fsutil file SetCaseSensitiveInfo pathtolocalcolabfoldinstallation enable
Remplacez pathtocolabfoldinstallation
par le chemin d'accès au répertoire dans lequel vous installez LocalColabFold. Assurez-vous également que vous exécutez la commande sur Windows Powershell (et non sur WSL). Pour plus de détails, consultez Ajuster la sensibilité à la casse (Microsoft).
Avant d'exécuter la prédiction :
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"
Il est recommandé d'ajouter ces commandes d'exportation à ~/.bashrc
et de redémarrer bash ( ~/.bashrc
sera exécuté à chaque démarrage de bash)
Attention : en raison de l'absence de pilote Nvidia GPU/CUDA, la prédiction de structure sur macOS est 5 à 10 fois plus lente que sur Linux+GPU . Pour la séquence de test (58 aa), cela peut prendre 30 minutes. Cependant, il peut être utile de jouer avec avant de préparer l'environnement Linux+GPU.
Vous pouvez vérifier si votre Mac est Intel ou Apple Silicon en tapant uname -m
sur le terminal.
$ unname -m x86_64 # Intelarm64 # Apple Silicium
Veuillez utiliser le programme d'installation approprié pour votre Mac.
Installez Homebrew s'il n'est pas présent :
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Installez wget
, gnu-sed
, HH-suite et kalign en utilisant Homebrew :
$ Brew Installer wget gnu-sed $ Brew Installer Brewsci/bio/hh-suite Brewsci/bio/kalign
Téléchargez install_colabbatch_intelmac.sh
à partir de ce référentiel :
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_intelmac.sh
et exécutez-le dans le répertoire où vous souhaitez installer :
$ bash install_colabbatch_intelmac.sh
Environ 5 minutes plus tard, le répertoire colabfold_batch
sera créé. Ne déplacez pas ce répertoire après l'installation.
La procédure restante est la même que "Pour Linux".
Remarque : ce programme d'installation est expérimental car la plupart des packages dépendants ne sont pas entièrement testés sur Apple Silicon Mac.
Installez Homebrew s'il n'est pas présent :
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Installez plusieurs commandes à l'aide de Homebrew (maintenant kalign 3.3.2 est disponible !) :
$ Brew install wget cmake gnu-sed $ Brew install Brewsci/bio/hh-suite $ Brew Installer Brewsci/bio/kalign
Installez la commande miniforge
à l'aide de Homebrew :
$ Brew Install --Cask Miniforge
Téléchargez install_colabbatch_M1mac.sh
à partir de ce référentiel :
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_M1mac.sh
et exécutez-le dans le répertoire où vous souhaitez installer :
$ bash install_colabbatch_M1mac.sh
Environ 5 minutes plus tard, le répertoire colabfold_batch
sera créé. Ne déplacez pas ce répertoire après l'installation. Vous pouvez ignorer les erreurs d'installation qui apparaissent en cours de route .
La procédure restante est la même que "Pour Linux".
ColabFold peut accepter plusieurs formats de fichiers ou répertoires.
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
Il est recommandé que la ligne d'en-tête commençant par >
soit courte puisque la description sera le préfixe du fichier de sortie. Il est acceptable d'insérer des sauts de ligne dans la séquence d'acides aminés.
>sp|P61823
MALKSLVLLSLLVLVLLLVRVQPSLGKETAAAKFERQHMDSSTSAASSSNYCNQMMKSRN
LTKDRCKPVNTFVHESLADVQAVCSQKNVACKNGQTNCYQSYSTMSITDCRETGSSKYPN
CAYKTTQANKHIIVACEGNPYVPVHFDASV
Pour la prédiction des multimères, insérez :
entre les séquences protéiques.
>1BJP_homohexamer PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR
>3KUD_RasRaf_complex MTEYKLVVVGAGGVGKSALTIQLIQNHFVDEYDPTIEDSYRKQVVIDGETCLLDILDTAGQEEYSAMRDQ YMRTGEGFLCVFAINNTKSFEDIHQYREQIKRVKDSDDVPMVLVGNKCDLAARTVESRQAQDLARSYGIP YIETSAKTRQGVEDAFYTLVREIRQH: PSKTSNTIRVFLPNKQRTVVNVRNGMSLHDCLMKALKVRGLQPECCAVFRLLHEHKGKKARLDWNTDAAS LIGEELQVDFL
Plusieurs lignes d'en-tête >
avec des séquences dans un fichier au format FASTA génèrent plusieurs prédictions à la fois dans le répertoire de sortie spécifié.
Au format csv, id
et sequence
doivent être séparés par ,
.
id,sequence
5AWL_1,YYDPETGTWY
3G5O_A_3G5O_B,MRILPISTIKGKLNEFVDAVSSTQDQITITKNGAPAAVLVGADEWESLQETLYWLAQPGIRESIAEADADIASGRTYGEDEIRAEFGVPRRPH:MPYTVRFTTTARRDLHKLPPRILAAVVEFAFGDLSREPLRVGKPLRRELAGTFSARRGTYRLLYRIDDEHTTVVILRVDHRADIYRR
Vous pouvez saisir votre fichier MSA au format a3m. Pour les prédictions multimères, le fichier a3m doit être compatible avec le format colabfold.
Ces drapeaux sont utiles pour les prédictions.
--amber
: Utiliser l'ambre pour le raffinement de la structure (relaxation/minimisation de l'énergie). Pour contrôler le nombre de structures les mieux classées, l'ensemble --num-relax
est détendu.
--templates
: utilisez les modèles de pdb.
--use-gpu-relax
: Exécutez Amber sur le GPU NVidia au lieu du CPU. Cette fonctionnalité n'est disponible que sur une machine équipée de GPU Nvidia.
--num-recycle
: Nombre de recyclages de prédictions. L'augmentation des recyclages peut améliorer la qualité mais ralentit la prévision. La valeur par défaut est 3
. (par exemple --num-recycle 10
)
--custom-template-path
: restreindre les fichiers modèles utilisés pour --template
à ceux contenus dans le répertoire spécifié. Cet indicateur nous permet d'utiliser des fichiers PDB non publics pour la prédiction. Voir aussi sokrypton/ColabFold#177 .
--random-seed
Changer la graine du générateur de nombres aléatoires peut entraîner différentes prédictions de structure. (par exemple --random-seed 42
)
--num-seeds
Nombre de graines à essayer. Itérera à partir de la plage (random_seed, random_seed+num_seeds). (par exemple --num-seed 5
)
--max-msa
: Définit : max-seq:max-extra-seq
nombre de séquences à utiliser (par exemple --max-msa 512:1024
). Les arguments --max-seq
et --max-extra-seq
sont également disponibles si vous souhaitez les spécifier séparément. Il s'agit d'une réimplémentation de l'article sur l'échantillonnage d'états conformationnels alternatifs de transporteurs et de récepteurs avec AlphaFold2 démontré par del Alamo et al .
--use-dropout
: active les abandons lors de l'inférence pour échantillonner à partir de l'incertitude des modèles.
--overwrite-existing-results
: Écrase les fichiers de résultats.
Pour plus d'informations, colabfold_batch --help
.
Étant donné que ColabFold est toujours en cours de développement, votre localcolabfold doit également être mis à jour fréquemment pour utiliser les dernières fonctionnalités. Un script de mise à jour facile à utiliser est fourni à cet effet.
Pour mettre à jour votre localcolabfold, exécutez simplement ce qui suit :
# définissez votre système d'exploitation. Sélectionnez l'une des variables suivantes {linux,intelmac,M1mac}$ OS=linux # si Linux# accédez au répertoire dans lequel vous avez installé localcolabfold, par exemple$ cd /home/moriwaki/Desktop/localcolabfold/# obtenez la dernière mise à jour$ wget https ://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/update_${OS}.sh -O update_${OS}.sh $ chmod +x update_${OS}.sh# exécutez-le.$ ./update_${OS}.sh .
Que dois-je faire d'autre avant l'installation ? Ai-je besoin des privilèges sudo ?
Non, sauf pour l'installation des commandes curl
et wget
.
Dois-je préparer la grande base de données telle que PDB70, BFD, Uniclust30, MGnify ?
Non, ce n’est pas nécessaire. La génération de MSA est effectuée par le serveur Web MMseqs2, tout comme implémenté dans ColabFold.
Le score pLDDT et les chiffres PAE sont-ils disponibles ?
Oui, ils seront générés tout comme le ColabFold.
Est-il possible de prédire les homooligomères et les complexes ?
Oui, le format de la séquence d'entrée est le même que celui de ColabFold. Voir query_sequence:
et son utilisation de ColabFold : AlphaFold2 à l'aide de MMseqs2.
Est-il possible de créer du MSA par jackhmmer ?
Non, il n'est pas pris en charge actuellement .
Je souhaite utiliser plusieurs GPU pour effectuer la prédiction.
AlphaFold et ColabFold ne prennent pas en charge plusieurs GPU . Un seul GPU peut modéliser votre protéine.
J'ai plusieurs GPU. Puis-je spécifier d’exécuter LocalColabfold sur chaque GPU ?
Utilisez la variable d'environnement CUDA_VISIBLE_DEVICES
. Voir #200.
J'ai reçu un message d'erreur CUDA_ERROR_ILLEGAL_ADDRESS: an illegal memory access was encountered
.
Vous n'avez peut-être pas mis à jour vers CUDA 11.8 ou version ultérieure. Veuillez vérifier la version du compilateur Cuda avec la commande nvcc --version
, et non avec nvidia-smi
.
Est-ce disponible sur Windows 10 ?
Vous pouvez exécuter LocalColabFold sur votre Windows 10 avec WSL2.
(Nouveau !)Je souhaite utiliser un fichier MSA personnalisé au format a3m.
ColabFold peut désormais accepter divers fichiers d'entrée . Voir le message d'aide. Vous pouvez définir votre propre fichier A3M, un fichier fasta contenant plusieurs séquences (au format FASTA) ou un répertoire contenant plusieurs fichiers fasta.
Tutoriel ColabFold présenté au Boston Protein Design and Modeling Club. [vidéo] [diapositives].
Le colabfold original a été créé pour la première fois par Sergey Ovchinnikov (@sokrypton), Milot Mirdita (@milot_mirdita) et Martin Steinegger (@thesteinegger).
Mirdita M, Schütze K, Moriwaki Y, Heo L, Ovchinnikov S et Steinegger M. ColabFold - Rendre le repliement des protéines accessible à tous.
Méthodes naturelles (2022) doi : 10.1038/s41592-022-01488-1
Si vous utilisez AlphaFold , veuillez également citer :
Jumper et coll. "Prédiction très précise de la structure des protéines avec AlphaFold."
Nature (2021) est ce que je : 10.1038/s41586-021-03819-2
Si vous utilisez AlphaFold-multimer , veuillez également citer :
Evans et coll. "Prédiction des complexes protéiques avec AlphaFold-Multimer."
BioRxiv (2022) est ce que je: 10.1101/2021.10.04.463034v2