Skip to content
/ Flint Public

Tool for directed evolution of protein receptors specifically for a ligand of interest ; implementation and fine-tuning of @zaixizhang 's PocketGen focused on maximizing binding affinity.

Notifications You must be signed in to change notification settings

Phagevo/Flint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Flint : AI-powered protein receptor mutation

A computational tool designed to generate protein receptor mutants that allows enhanced binding specificity towards a target ligand, based on PocketGen. While generating a set of mutated receptor structures, Flint evaluates their affinity with the ligand using AutoDock Vina. By default, our custom __MODELNAME__ pre-trained model checkpoint is used for the generation. The key point is that the docking simulation was embedded as the scoring function during the learning transfer, making it the target of the gradient descent (see Model article on the wiki).

Outputs and expected results

If executed correctly, Flint will generate a set of unique mutated receptor proteins in PDB format, designed to maximize the binding affinity for the ligand ; and a summary file containing, for each receptor :

  • The corresponding docking score, affinity constant and number of mutations compared to the original receptor.
  • Additional information about the receptor-ligand interaction (e.g. ligand position, residues involved).
  • The sequence of mutations that leads to its creation, starting from the original receptor.

Getting started with Flint

Make sure your machine meets all requirements and has git and anaconda installed.

git clone https://github.com/Phagevo/Flint.git
cd Flint
git clone https://github.com/Phagevo/PocketGen.git

Install the environment and dependencies using the conda config file :

conda env create -f env.yaml
conda activate flint

If you intend to build environment without conda, keep in mind that installing AutoDock Vina from pip or any other package manager is deprecated. Besides, to run the project from Windows, follow this tutorial.

├── PocketGen # can be cloned from PocketGen repository
├── checkpoints
│   ├── __MODELNAME__.pt # flint custom & fine-tuned model
│   └── pocketgen.pt # the pocketgen pre-trained model

├── eval
├── model
└── main.py

This (above) is what should ressemble your working directory after installing Flint. The checkpoints folder should be created manually and is necessary for the program to run, and you can find the PocketGen checkpoint file on the official repository.

Usage from command line

python main.py --receptor <receptor.pdb> --ligand <ligand.sdf>
  • <receptor.pdb>: Path to the input protein receptor file in PDB format.
  • <ligand.sdf>: Path to the input ligand file in SDF format.

Additional parameters can be found by running python main.py --help.

About

Tool for directed evolution of protein receptors specifically for a ligand of interest ; implementation and fine-tuning of @zaixizhang 's PocketGen focused on maximizing binding affinity.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages