Skip to main content

Pipeline allows massive screening using alphafold

Project description

AlphaPulldown

Downloads python3.10 GPL3 license

🥳 AlphaPulldown has entered the era of version 2.0 (beta)

We have brought some exciting useful features to AlphaPulldown and updated its computing environment.

AlphaPulldown is a Python package that streamlines protein-protein interaction screens and high-throughput modelling of higher-order oligomers using AlphaFold-Multimer:

  • provides a convenient command line interface to screen a bait protein against many candidates, calculate all-versus-all pairwise comparisons, test alternative homo-oligomeric states, and model various parts of a larger complex
  • separates the CPU stages (MSA and template feature generation) from GPU stages (the actual modeling)
  • allows modeling fragments of proteins without recalculation of MSAs and keeping the original full-length residue numbering in the models
  • summarizes the results in a CSV table with AlphaFold scores, pDockQ and mpDockQ, PI-score, and various physical parameters of the interface
  • provides a Jupyter notebook for an interactive analysis of PAE plots and models
  • 🆕 refactorised codes and removed redundancy
  • 🆕 added a new way of integrating experimental models into AlphaFold pipeline using custom multimeric databases
  • 🆕 integrates cross-link mass spec data with AlphaFold predictions via AlphaLink2 models

Pre-installation

Check if you have downloaded necessary parameters and databases (e.g. BFD, MGnify etc.) as instructed in AlphFold's documentation. You should have a directory like below:

alphafold_database/                             # Total: ~ 2.2 TB (download: 438 GB)
   bfd/                                   # ~ 1.7 TB (download: 271.6 GB)
       # 6 files.
   mgnify/                                # ~ 64 GB (download: 32.9 GB)
       mgy_clusters_2018_12.fa
   params/                                # ~ 3.5 GB (download: 3.5 GB)
       # 5 CASP14 models,
       # 5 pTM models,
       # 5 AlphaFold-Multimer models,
       # LICENSE,
       # = 16 files.
   pdb70/                                 # ~ 56 GB (download: 19.5 GB)
       # 9 files.
   pdb_mmcif/                             # ~ 206 GB (download: 46 GB)
       mmcif_files/
           # About 180,000 .cif files.
       obsolete.dat
   pdb_seqres/                            # ~ 0.2 GB (download: 0.2 GB)
       pdb_seqres.txt
   small_bfd/                             # ~ 17 GB (download: 9.6 GB)
       bfd-first_non_consensus_sequences.fasta
   uniclust30/                            # ~ 86 GB (download: 24.9 GB)
       uniclust30_2018_08/
           # 13 files.
   uniprot/                               # ~ 98.3 GB (download: 49 GB)
       uniprot.fasta
   uniref90/                              # ~ 58 GB (download: 29.7 GB)
       uniref90.fasta

Create Anaconda environment

Firstly, install Anaconda and create AlphaPulldown environment, gathering necessary dependencies

conda create -n AlphaPulldown -c omnia -c bioconda -c conda-forge python==3.10 openmm==8.0 pdbfixer==1.9 kalign2 cctbx-base pytest importlib_metadata hhsuite

Optionally, if you do not have it yet on your system, install HMMER from Anaconda

source activate AlphaPulldown
conda install -c bioconda hmmer

This usually works, but on some compute systems users may wish to use other versions or optimized builds of already installed HMMER and HH-suite.

Installation using pip

Activate the AlphaPulldown environment and install AlphaPulldown

source activate AlphaPulldown

python3 -m pip install alphapulldown==2.0.0b1
pip install jax==0.4.23 jaxlib==0.4.23+cuda11.cudnn86 -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html

For older versions of AlphaFold: If you haven't updated your databases according to the requirements of AlphaFold 2.3.0, you can still use AlphaPulldown with your older version of AlphaFold database. Please follow the installation instructions on the dedicated branch

How to develop

Follow the instructions at Developing guidelines


Manuals

AlphaPulldown supports four different modes of massive predictions:

  • pulldown - to screen a list of "bait" proteins against a list or lists of other proteins
  • all_vs_all - to model all pairs of a protein list
  • homo-oligomer - to test alternative oligomeric states
  • custom - to model any combination of proteins and their fragments, such as a pre-defined list of pairs or fragments of a complex

AlphaPulldown will return models of all interactions, summarize results in a score table, and will provide a Jupyter notebook for an interactive analysis, including PAE plots and 3D displays of models colored by chain and pLDDT score.

Examples

Example 1 is a case where pulldown mode is used. Manual: example_1

Example 2 is a case where custom and homo-oligomer modes are used. Manual: example_2

Example 3 is demonstrating the usage of multimeric templates for guiding AlphaFold predictions. Manual: example_3

all_vs_all mode can be viewed as a special case of the pulldown mode thus the instructions of this mode are added as Appendix in both manuals mentioned above.

Citations

If you use this package, please cite as the following:

@Article{AlphaPUlldown,
  author  = {Dingquan Yu, Grzegorz Chojnowski, Maria Rosenthal, and Jan Kosinski},
  journal = {Bioinformatics},
  title   = {AlphaPulldowna python package for proteinprotein interaction screens using AlphaFold-Multimer},
  year    = {2023},
  volume  = {39},
  issue  = {1},
  doi     = {https://doi.org/10.1093/bioinformatics/btac749}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alphapulldown-2.0.0b2.tar.gz (461.5 kB view details)

Uploaded Source

Built Distribution

alphapulldown-2.0.0b2-py3-none-any.whl (607.4 kB view details)

Uploaded Python 3

File details

Details for the file alphapulldown-2.0.0b2.tar.gz.

File metadata

  • Download URL: alphapulldown-2.0.0b2.tar.gz
  • Upload date:
  • Size: 461.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.0

File hashes

Hashes for alphapulldown-2.0.0b2.tar.gz
Algorithm Hash digest
SHA256 67b534f8b877e109388f0a47f0b50c3c0b1e11a137b083989faa9c8c72f50c67
MD5 ebf789c4c847ffe7077b0dd786cd6c30
BLAKE2b-256 95e1c8184ac2401667a24e661e968d21f0883ebfbcdeb67c63c07a4ba77f435b

See more details on using hashes here.

File details

Details for the file alphapulldown-2.0.0b2-py3-none-any.whl.

File metadata

File hashes

Hashes for alphapulldown-2.0.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 5d49647266792fd96bf8e9a0677f69eb93828feba4eb57cec2b16250419e92ec
MD5 9d127aa85d6fe3c93f2a458190392fe9
BLAKE2b-256 26b01abd2688f6a80cd5915135becb1ca7fe4cc0df51ba6ee771f68fe0971350

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page