SoluProtMutDemo / README.md
vvelda's picture
Update README.md
d0b21b7 verified

A newer version of the Gradio SDK is available: 6.14.0

Upgrade
metadata
title: SoluProtMut
emoji: 🔬
colorFrom: red
colorTo: blue
sdk: gradio
sdk_version: 4.44.1
app_file: app.py
pinned: false

Installation

Clone the repository ???.
Then, extract the FoldX distribution for your operating system into external/foldx in the cloned project folder, make sure the binary is named foldx.
Finally, install the dependencies and check the installation works:

pip install -r requirements.in
python -m tests.inference

If the installation fails, or the application crashes, try to install pinned dependencies instead: pip install -r requirements.txt. Also check the table below.

Tested configurations:

OS Python PyTorch Engine Project version
Win 10 3.8.18 2.1.2 CPU January 16, 2024
Linux 3.9.19 2.1.2 CPU January 16, 2024
Linux 3.8.13 1.10.0 CUDA 11.3 January 16, 2024

Usage

wrapper.py [-h] [-v] pdb-code [chain] wild-type location mutation

Solubility change preditor:
  Predicts the change in the solubility of a given protein variant

positional arguments:
  pdb-code       PDB code
  chain          target chain          character; default=A
  wild-type      wild-type residue(s)  amino-acid[n]
  location       mutated position(s)   integer[n]
  mutation       1 or n substituents   amino-acid|amino-acid[n]

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose

Amino acids can be specified by both 1- or 3-letter code.

Example usage (double-point mutant in erythropoietin)`and its outpus:

./wrapper.py 1EER F,R 48,150 D --verbose
Predicted solubility change: 5.000398e-01 (solubilizing)

Development

Reproducible environment

requirements.in – project (direct) dependencies required for inference. Keep the PyTorch version specified here in sync with the link for the pyg wheels specified ibidem.

requirements.txtresolved and pinned dependencies based on the file above, a result of pip install -r requirements.in && pip freeze in a fresh Python environment.
note: pip-compile of pip-tools does not seem to work with complex PyTorch ecosystem

Style guide

Indentation

Use tabs \t for an indentation, spaces (after tabs) for an alignment (reasoning, reasoning2)

Naming conventions (PEP8-based)

module_name, CONSTANT_NAME, ClassName (capitalize first letters of words), subroutine_name, variable_name

ClassName, function_name: keep acronyms in their original case: GetPDB, get_PDB