Skip to content

Tutorial 1 Input generation

LucaChiesa edited this page Nov 7, 2024 · 3 revisions

Introduction

LIT-AlphaFold was built on top of AlphaPulldown which uses .pkl files to contain the monomer inputs for structure prediction.

In this tutorial you will learn how to generate monomer files, and how to set the basic parameters for input generation. Tutorial 2 will cover more complex input generation parameters.

To perform input generation, regardless of the method, it is necessary to give LIT-AlphaFold the sequences of the target proteins in a .fasta file. For this tutorial the sequences are in the input_sequences.fasta file.

>CXCR4
MEGISIYTSDNYTEEMGSGDYDSMKEPCFREENANFNKIFLPTIYSIIFLTGIVGNGLVILVMGYQKKLRSMTDKYRLHLSVADLLFVITLPFWAVDAVANWYFGNFLCKAVHVIYTVNLYSSVLILAFISLDRYLAIVHATNSQRPRKLLAEKVVYVGVWIPALLLTIPDFIFANVSEADDRYICDRFYPNDLWVVVFQFQHIMVGLILPGIVILSCYCIIISKLSHSKGHQKRKALKTTVILILAFFACWLPYYIGISIDSFILLEIIKQGCEFENTVHKWISITEALAFFHCCLNPILYAFLGAKFKTSAQHALTSVSRGSSLKILSKGKRGGHSSVSTESESSSFHSS
>CXCL12
KPVSLSYRCPCRFFESHVARANVKHLKILNTPNCALQIVARLKNNNRQVCIDPKLKWIQEYLEKALNK

NOTE: The lines starting with > are the descriptions of the sequence and are used to name the output files (CXCR4.pkl and CXCL12.pkl in this case). If the description contains spaces these will be automatically replaced by _ to guarantee the correct functioning of the program.

Three different use cases are considered:

  1. Input generation using local databases
  2. Input generation using the MMSeqs2 webserver
  3. Input generation using the MMseqs2 webserver for MSA and a local database for templates

NOTE: Generating monomer files using local databases might require multiple hours, while using the MMseqs2 webserver requires few minutes. Take these time constrains into account while following these tutorials.

NOTE: While using the MMseqs2 webserver is considerably faster than local search, it is a public resource with a limited number of slots per day. In case you need to perform large calculations on multiple targets we ask you to use a local database, or to spread your requests over multiple days.

NEW: Starting from LIT-AlphaFold 1.1.0 the script inputs and some of the input files have been changed to use hydra to handle configurations, and structured .in.yaml file have replaced the unstructured .in input files.

Script parameters

Inputs files are generated by the script create_individual_features.py. Regardelss of the searched database certain arguments of the function are common to all methods.

python $LITAF/create_individual_features.py fasta_paths=[input_sequences.fasta] output_dir=protein_features_local run=local

Arguments:

  • fasta_paths, file or files containing the sequences to search in the databases.
  • output_dir, directory where to save the search results.
  • run, which type of databases to use for calculation

Input generation using local databases

python $LITAF/create_individual_features.py fasta_paths=[input_sequences.fasta] output_dir=protein_features_local

Input generation using the MMseqs2 webserver

This is the method used by ColabFold. The search is performed using only the MMseqs2 webserver, leading to faster results. Important, the results of the search using MMseqs2 are different from the ones obtained using the default local databases.

python $LITAF/create_individual_features.py fasta_paths=[input_sequences.fasta] output_dir=protein_features_mmseqs2 run=mmseqs2

MMseqs2 arguments:

  • use_mmseqs2, use MMseqs2 for MSA search
  • use_mmseqs2_templates, use MMseqs2 for template search

Input generation using the MMseqs2 webserver for MSA and the local template database

This is the method originally used by AlphaPulldown when using the MMseqs2 server. The MSA is computed using the MMseqs2 server, while the template serach is performed in the default local template database.

python $LITAF/create_individual_features.py fasta_paths=[input_sequences.fasta] output_dir=protein_features_mmseqs2_local run=local_templates

Conclusion

In this tutorial you have learned how to generate inputs using LIT-AF using local database and the MMseqs2 server.

Clone this wiki locally