ColabFold en su PC local (o macOS). Consulte también el repositorio de ColabFold.
LocalColabFold es un script de instalación diseñado para que la funcionalidad ColabFold esté disponible en las máquinas locales de los usuarios. Es compatible con una amplia gama de sistemas operativos, como Windows 10 o posterior (usando el subsistema de Windows para Linux 2), macOS y Linux.
Si solo tiene la intención de predecir una pequeña cantidad de proteínas naturales, le recomiendo usar el cuaderno ColabFold o descargar estructuras de la base de datos de estructuras de proteínas AlphaFold o UniProt. LocalColabFold es adecuado para aplicaciones más avanzadas, como el procesamiento por lotes de predicciones estructurales para complejos naturales, proteínas no naturales o predicciones con MSA/plantillas especificadas manualmente.
La inferencia de estructuras y la relajación se acelerarán si su PC tiene controladores Nvidia GPU y CUDA.
Sin tiempo de espera (90 minutos y 12 horas)
Sin limitaciones de GPU
NO es necesario preparar la gran base de datos requerida para AlphaFold2 nativo .
Dado que la versión actual jax > 0.4.26 compatible con GPU requiere CUDA 12.1 o posterior y cudnn 9, actualice o instale su controlador CUDA y cudnn. Se recomienda CUDA 12.4.
ColabFold ahora se actualiza a 1.5.5 (compatible con AlphaFold 2.3.2). Ahora LocalColabFold requiere CUDA 12.1 o posterior . Actualice su controlador CUDA si aún no lo ha hecho.
Ahora (Local)ColabFold puede predecir estructuras de proteínas sin conectarse a Internet. Utilice el script setup_databases.sh
para descargar y crear las bases de datos (consulte también Descargas de ColabFold). En este comentario se escribe una instrucción para ejecutar colabfold_search
para obtener el MSA y las plantillas localmente.
30 de enero de 2024, ColabFold 1.5.5 (Compatible con AlphaFold 2.3.2). Ahora LocalColabFold requiere CUDA 12.1 o posterior . Actualice su controlador CUDA.
30 de abril de 2023, actualizado para usar Python 3.10 para compatibilidad con Google Colaboratory.
09 de marzo de 2023, versión 1.5.1 lanzada. El directorio base se cambió a localcolabfold
desde colabfold_batch
para distinguirlo del comando de ejecución.
09 de marzo de 2023, versión 1.5.0 lanzada. Ver versión v1.5.0
5 de febrero de 2023, versión 1.5.0 prelanzada.
16 de junio de 2022, versión 1.4.0 lanzada. Ver versión v1.4.0
07 de mayo de 2022, actualizado update_linux.sh
. Consulte también Cómo actualizar. Utilice una nueva opción --use-gpu-relax
si se requiere relajación de GPU (recomendado).
12 de abril de 2022, versión 1.3.0 lanzada. Ver versión v1.3.0
09 de diciembre de 2021, versión 1.2.0-beta lanzada. Se agregaron scripts de actualización fáciles de usar. Consulte Cómo actualizar.
4 de diciembre de 2021, LocalColabFold ahora es compatible con el último ColabFold instalable con pip. En este repositorio, proporcionaré un script para instalar ColabFold con algunos archivos de parámetros externos para realizar la relajación con AMBER. Los parámetros de peso de AlphaFold y AlphaFold-Multimer se descargarán automáticamente en su primera ejecución.
Asegúrese de que los comandos curl
, git
y wget
ya estén instalados en su PC. Si no están presentes, primero deberá instalarlos. Para Ubuntu, escriba sudo apt -y install curl git wget
.
Asegúrese de que el controlador del compilador Cuda sea 11.8 o posterior (es preferible la última versión 12.4). Si no tiene una GPU o no planea usar una GPU, puede omitir este paso:
$ nvcc --versión nvcc: controlador del compilador NVIDIA (R) Cuda Copyright (c) 2005-2022 NVIDIA Corporation Construido el miércoles_21_septiembre_10:33:58_PDT_2022 Herramientas de compilación Cuda, versión 11.8, V11.8.89 Compile cuda_11.8.r11.8/compiler.31833905_0
NO utilice nvidia-smi
para comprobar la versión.
Consulte la Guía de instalación de NVIDIA CUDA para Linux si no la ha instalado.
Asegúrese de que la versión de su compilador GNU sea 9.0 o posterior porque se requiere GLIBCXX_3.4.26
para openmm:
$ gcc --versión gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 Copyright (C) 2019 Free Software Foundation, Inc. Este es un software gratuito; consulte la fuente para conocer las condiciones de copia. NO hay garantía; ni siquiera por COMERCIABILIDAD o IDONEIDAD PARA UN FIN DETERMINADO.
Si la versión es 8.5.0 o anterior (por ejemplo, CentOS 7, Rocky/Almalinux 8, etc.), instale una nueva y agréguele PATH
.
Descargue install_colabbatch_linux.sh
desde este repositorio:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_linux.sh
y ejecútelo en el directorio donde desea instalar:
$ bash install_colabbatch_linux.sh
Aproximadamente 5 minutos después, se creará el directorio localcolabfold
. No mueva este directorio después de la instalación.
Mantenga la red desbloqueada. Y verifique la salida del registro para ver si hay algún error.
Si encuentra errores en el registro de salida, la forma más sencilla es comprobar la red y eliminar el directorio localcolabfold y luego volver a ejecutar el script de instalación.
Agregue la variable de entorno RUTA:
# Para bash o zsh # por ejemplo, export PATH="/home/moriwaki/Desktop/localcolabfold/colabfold-conda/bin:$PATH" export PATH="/ruta/a/su/localcolabfold/colabfold-conda/bin:$PATH"
Se recomienda agregar este comando de exportación a ~/.bashrc
y reiniciar bash ( ~/.bashrc
se ejecutará cada vez que se inicie bash)
Para ejecutar la predicción, escriba
colabfold_batch entrada salidadir/
Los archivos de resultados se crearán en el outputdir
. Este comando ejecutará la predicción sin plantillas ni relajación (minimización de energía). Si desea utilizar plantillas y relajación, agregue las banderas --templates
y --amber
, respectivamente. Por ejemplo,
colabfold_batch --templates --amber entrada salidadir/
colabfold_batch
detectará automáticamente si la predicción es monomérica o compleja. En la mayoría de los casos, los usuarios no tienen que agregar --model-type alphafold2_multimer_v3
para activar la predicción de multimeros. alphafold2_multimer_v1, alphafold2_multimer_v2
también están disponibles. El valor predeterminado es auto
(use alphafold2_ptm
para monómeros y alphafold2_multimer_v3
para complejos).
Para obtener más detalles, consulte Banderas y colabfold_batch --help
.
Precaución: Si su instalación falla debido a problemas de creación de enlaces simbólicos ( symlink
), esto se debe a que el sistema de archivos de Windows no distingue entre mayúsculas y minúsculas (mientras que el sistema de archivos de Linux sí lo hace). Para resolver esto, ejecute el siguiente comando en Windows Powershell:
fsutil file SetCaseSensitiveInfo pathtolocalcolabfoldinstallation enable
Reemplace pathtocolabfoldinstallation
con la ruta al directorio donde está instalando LocalColabFold. Además, asegúrese de estar ejecutando el comando en Windows Powershell (no en WSL). Para obtener más detalles, consulte Ajustar la sensibilidad a mayúsculas y minúsculas (Microsoft).
Antes de ejecutar la predicción:
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"
Se recomienda agregar estos comandos de exportación a ~/.bashrc
y reiniciar bash ( ~/.bashrc
se ejecutará cada vez que se inicie bash)
Precaución: Debido a la falta del controlador Nvidia GPU/CUDA, la predicción de la estructura en macOS es de 5 a 10 veces más lenta que en Linux+GPU . Para la secuencia de prueba (58 aa), puede tardar 30 minutos. Sin embargo, puede resultar útil jugar con él antes de preparar el entorno Linux+GPU.
Puedes comprobar si tu Mac es Intel o Apple Silicon escribiendo uname -m
en la Terminal.
$ uname -m x86_64 # Intelarm64 # Apple Silicio
Utilice el instalador correcto para su Mac.
Instale Homebrew si no está presente:
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Instale wget
, gnu-sed
, HH-suite y kalign usando Homebrew:
$ cerveza instalar wget gnu-sed $ instalar cerveza brewsci/bio/hh-suite brewsci/bio/kalign
Descargue install_colabbatch_intelmac.sh
desde este repositorio:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_intelmac.sh
y ejecútelo en el directorio donde desea instalar:
$ bash install_colabbatch_intelmac.sh
Aproximadamente 5 minutos después, se creará el directorio colabfold_batch
. No mueva este directorio después de la instalación.
El resto del procedimiento es el mismo que "Para Linux".
Nota: Este instalador es experimental porque la mayoría de los paquetes dependientes no se han probado completamente en Apple Silicon Mac.
Instale Homebrew si no está presente:
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Instale varios comandos usando Homebrew (¡ahora kalign 3.3.2 está disponible!):
$brebaje instalar wget cmake gnu-sed $brebajeinstalarbrewsci/bio/hh-suite $brebajeinstalarbrewsci/bio/kalign
Instale el comando miniforge
usando Homebrew:
$ instalación de cerveza --cask miniforge
Descargue install_colabbatch_M1mac.sh
desde este repositorio:
$ wget https://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/install_colabbatch_M1mac.sh
y ejecútelo en el directorio donde desea instalar:
$ bash install_colabbatch_M1mac.sh
Aproximadamente 5 minutos después, se creará el directorio colabfold_batch
. No mueva este directorio después de la instalación. Puedes ignorar los errores de instalación que aparecen en el camino .
El resto del procedimiento es el mismo que "Para Linux".
ColabFold puede aceptar múltiples formatos de archivos o directorios.
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
Se recomienda que la línea de encabezado que comienza con >
sea corta ya que la descripción será el prefijo del archivo de salida. Es aceptable insertar saltos de línea en la secuencia de aminoácidos.
>sp|P61823
MALKSLVLLSLLVLVLLLVRVQPSLGKETAAAKFERQHMDSSTSAASSSNYCNQMMKSRN
LTKDRCKPVNTFVHESLADVQAVCSQKNVACKNGQTNCYQSYSTMSITDCRETGSSKYPN
CAYKTTQANKHIIVACEGNPYVPVHFDASV
Para la predicción de multímeros, inserte :
entre las secuencias de proteínas.
>1BJP_homohexamer PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR: PIAQIHILEGRSDEQKETLIREVSEAISRSLDAPLTSVRVIITEMAKGHFGIGGELASKVRR
>3KUD_RasRaf_complex MTEYKLVVVGAGGVGKSALTIQLIQNHFVDEYDPTIEDSYRKQVVIDGETCLLDILDTAGQEEYSAMRDQ YMRTGEGFLCVFAINNTKSFEDIHQYREQIKRVKDSDDVPMVLVGNKCDLAARTVESRQAQDLARSYGIP YIETSAKTRQGVEDAFYTLVREIRQH: PSKTSNTIRVFLPNKQRTVVNVRNGMSLHDCLMKALKVRGLQPECCAVFRLLHEHKGKKARLDWNTDAAS LIGEELQVDFL
Varias líneas de encabezado >
con secuencias en un archivo de formato FASTA producen múltiples predicciones a la vez en el directorio de salida especificado.
En formato csv, id
y sequence
deben estar separadas por ,
id,sequence
5AWL_1,YYDPETGTWY
3G5O_A_3G5O_B,MRILPISTIKGKLNEFVDAVSSTQDQITITKNGAPAAVLVGADEWESLQETLYWLAQPGIRESIAEADADIASGRTYGEDEIRAEFGVPRRPH:MPYTVRFTTTARRDLHKLPPRILAAVVEFAFGDLSREPLRVGKPLRRELAGTFSARRGTYRLLYRIDDEHTTVVILRVDHRADIYRR
Puede ingresar su archivo MSA en formato a3m. Para predicciones multiméricas, el archivo a3m debe ser compatible con el formato colabfold.
Estas banderas son útiles para las predicciones.
--amber
: Utilice ámbar para refinar la estructura (relajación/minimización de energía). Para controlar el número de estructuras mejor clasificadas, se relaja el conjunto --num-relax
.
--templates
: utiliza plantillas de pdb.
--use-gpu-relax
: ejecuta ámbar en la GPU NVidia en lugar de en la CPU. Esta función solo está disponible en una máquina con GPU Nvidia.
--num-recycle
: Número de reciclajes de predicción. Aumentar los reciclados puede mejorar la calidad pero ralentiza la predicción. El valor predeterminado es 3
. (por ejemplo, --num-recycle 10
)
--custom-template-path
: restringe los archivos de plantilla utilizados para --template
solo a aquellos contenidos en el directorio especificado. Esta bandera nos permite utilizar archivos pdb no públicos para la predicción. Véase también sokrypton/ColabFold#177.
--random-seed
Cambiar la semilla del generador de números aleatorios puede dar como resultado predicciones de estructuras diferentes. (por ejemplo, --random-seed 42
)
--num-seeds
Número de semillas a probar. Iterará desde el rango (random_seed, random_seed+num_seeds). (por ejemplo, --num-seed 5
)
--max-msa
: Define: max-seq:max-extra-seq
número de secuencias a usar (por ejemplo, --max-msa 512:1024
). Los argumentos --max-seq
y --max-extra-seq
también están disponibles si desea especificarlos por separado. Esta es una reimplementación del artículo de Muestreo de estados conformacionales alternativos de transportadores y receptores con AlphaFold2 demostrado por del Alamo et al .
--use-dropout
: activa los abandonos durante la inferencia para muestrear a partir de la incertidumbre de los modelos.
--overwrite-existing-results
: sobrescribe los archivos de resultados.
Para obtener más información, colabfold_batch --help
.
Dado que ColabFold aún es un trabajo en progreso, su colabfold local también debe actualizarse con frecuencia para utilizar las funciones más recientes. Para este fin se proporciona un script de actualización fácil de usar.
Para actualizar su localcolabfold, simplemente ejecute lo siguiente:
# configura tu sistema operativo. Seleccione una de las siguientes variables {linux,intelmac,M1mac}$ OS=linux # si Linux# navegue hasta el directorio donde instaló localcolabfold, por ejemplo $ cd /home/moriwaki/Desktop/localcolabfold/# obtenga el último actualizador$ wget https ://raw.githubusercontent.com/YoshitakaMo/localcolabfold/main/update_${OS}.sh -O actualización_${OS}.sh $ chmod +x update_${OS}.sh# ejecutarlo.$ ./update_${OS}.sh .
¿Qué más necesito hacer antes de la instalación? ¿Necesito privilegios de sudo?
No, excepto para la instalación de los comandos curl
y wget
.
¿Necesito preparar una base de datos grande como PDB70, BFD, Uniclust30, MGnify?
No, no es necesario. La generación de MSA la realiza el servidor web MMseqs2, tal como se implementa en ColabFold.
¿Están disponibles la puntuación pLDDT y las cifras de PAE?
Sí, se generarán igual que ColabFold.
¿Es posible predecir homooligómeros y complejos?
Sí, el formato de la secuencia de entrada es el mismo que el de ColabFold. Consulte query_sequence:
y su uso de ColabFold: AlphaFold2 usando MMseqs2.
¿Es posible crear MSA mediante jackhmmer?
No, actualmente no es compatible .
Quiero utilizar varias GPU para realizar la predicción.
AlphaFold y ColabFold no admiten múltiples GPU . Sólo una GPU puede modelar tu proteína.
Tengo varias GPU. ¿Puedo especificar ejecutar LocalColabfold en cada GPU?
Utilice la variable de entorno CUDA_VISIBLE_DEVICES
. Ver #200.
Recibí un mensaje de error CUDA_ERROR_ILLEGAL_ADDRESS: an illegal memory access was encountered
.
Es posible que no hayas actualizado a CUDA 11.8 o posterior. Verifique la versión del compilador Cuda con el comando nvcc --version
, no con nvidia-smi
.
¿Está disponible en Windows 10?
Puede ejecutar LocalColabFold en su Windows 10 con WSL2.
(¡Nuevo!) Quiero usar un archivo MSA personalizado en el formato a3m.
ColabFold ahora puede aceptar varios archivos de entrada . Ver el mensaje de ayuda. Puede configurar su propio archivo A3M, un archivo fasta que contenga múltiples secuencias (en formato FASTA) o un directorio que contenga múltiples archivos fasta.
Tutorial de ColabFold presentado en el Boston Protein Design and Modeling Club. [vídeo] [diapositivas].
La colabfold original fue creada por primera vez por Sergey Ovchinnikov (@sokrypton), Milot Mirdita (@milot_mirdita) y Martin Steinegger (@thesteinegger).
Mirdita M, Schütze K, Moriwaki Y, Heo L, Ovchinnikov S y Steinegger M. ColabFold: hacer que el plegamiento de proteínas sea accesible para todos.
Métodos de la naturaleza (2022) doi: 10.1038/s41592-022-01488-1
Si está utilizando AlphaFold , cite también:
Saltador y col. "Predicción de la estructura de proteínas de alta precisión con AlphaFold".
Naturaleza (2021) doi: 10.1038/s41586-021-03819-2
Si está utilizando AlphaFold-multimer , cite también:
Evans y cols. "Predicción de complejos proteicos con AlphaFold-Multimer".
BioRxiv (2022) doi: 10.1101/2021.10.04.463034v2