<span style="font-size:2em;">**EmPATHi**</span><br>
<span style="font-size:1.15em;">**Embedding-based Phage Protein Annotation Tool by Hierarchical assignment**</span>
<!-- TABLE OF CONTENTS -->
<details>
<summary>Table of Contents</summary>
<ol>
<li>
<a href="#about-the-project">About the Project</a>
</li>
<li>
<a href="#getting-started">Getting Started</a>
<ul>
<li><a href="#prerequisites">Prerequisites</a></li>
<li><a href="#installation">Installation</a></li>
</ul>
</li>
<li><a href="#usage">Usage</a></li>
<li><a href="#contact">Contact</a></li>
</ol>
</details>
## About the Project
Little description.
Preprint can be found at: [link]
## Getting Started
EmPATHi has been packaged in [PyPI](https://pypi.org/project/empathi/0.0.1/) and as an Apptainer container for ease of use. \
The source code can also be downloaded from [HuggingFace](https://huggingface.co/AlexandreBoulay/EmPATHi).
### Prerequisites
The full list of dependencies and versions we tested to be compatible can be found in [requirements.txt](https://huggingface.co/AlexandreBoulay/EmPATHi/blob/main/requirements.txt).
Dependencies are taken care of by pip and Apptainer. See instructions below.
```
python/3.11.5
joblib==1.2.0
numpy==1.26.4
pandas==2.2.1
matplotlib==3.9.0
torch==2.3.0
scipy==1.13.1
scikit-learn==1.5.0
transformers==4.43.1
sentencepiece==0.2.0
seaborn==0.13.2
```
The models used by EmPATHi must be obtained seperately. See instructions below.\
The [models](https://huggingface.co/AlexandreBoulay/EmPATHi/tree/main/models) folder for EmPATHi must be obtained from HuggingFace.\
[ProtT5](https://huggingface.co/Rostlab/prot_t5_xl_half_uniref50-enc) must also be downloaded from HuggingFace.
### Installation
First, create a virtual environement in python 3.11.5. This can be done using tools such as conda and virtualenv.
Download models for EmPATHi and ProtT5:
```
git lfs install
git clone https://huggingface.co/AlexandreBoulay/EmPATHi
git clone https://huggingface.co/Rostlab/prot_t5_xl_half_uniref50-enc Rostlab/prot_t5_xl_half_uniref50-enc
export PATH="/path/to/EmPATHi/models:$PATH"
export PATH="/path/to/Rostlab/prot_t5_xl_half_uniref50-enc:$PATH"
```
#### 1. PIP
```
pip install empathi
```
#### 2. Apptainer
#### 3. From source code
Clone the repo if it isn't already done:
```
git lfs install
git clone https://huggingface.co/AlexandreBoulay/EmPATHi
```
Install dependencies:
```
cd EmPATHi
pip install -r requirements.txt
```
### Usage
For pip:
```
python
from empathi import empathi
empathi(input_file, name, output_folder="path/to/output")
```
For Apptainer:
From command line:
```
python src/empathi/empathi.py -h
```
Options:
- input_file: Path to input file containing protein sequencs (.fa*) or protein embeddings (.pkl/.csv).
- name: Name of file you want to save to (wOut extension). Should be different between runs to avoid overwriting files.
- --models_folder: Path to folder containing EmPATHi models. Can be left unspecified if it was added to PATH earlier.
- --only_embeddings: Whether to only calculate embeddings (no functional prediction).
- --output_folder: Path to the output folder. Default is ./results/.
- --mode: Which types of proteins you want to predict. Accepted arguments are "all", "pvp", "rbp", "lysin", "regulator"...
When launching from python omit the '--' in front of args.
## Contact
Raw data
{
"_id": null,
"home_page": null,
"name": "empathi",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11.5",
"maintainer_email": null,
"keywords": "bacteriophages, bioinformatics, phages, protein functions",
"author": "Clovis Galiez, Elsa Rousseau",
"author_email": "Alexandre Boulay <alexandre.boulay.6@ulaval.ca>",
"download_url": "https://files.pythonhosted.org/packages/a0/e2/d2c91c50a9c23b64eed182711763ec38c6e0ce2d3f4393005d8f3d946c91/empathi-0.0.2.tar.gz",
"platform": null,
"description": "\n<span style=\"font-size:2em;\">**EmPATHi**</span><br>\n<span style=\"font-size:1.15em;\">**Embedding-based Phage Protein Annotation Tool by Hierarchical assignment**</span>\n\n\n<!-- TABLE OF CONTENTS -->\n<details>\n <summary>Table of Contents</summary>\n <ol>\n <li>\n <a href=\"#about-the-project\">About the Project</a>\n </li>\n <li>\n <a href=\"#getting-started\">Getting Started</a>\n <ul>\n <li><a href=\"#prerequisites\">Prerequisites</a></li>\n <li><a href=\"#installation\">Installation</a></li>\n </ul>\n </li>\n <li><a href=\"#usage\">Usage</a></li>\n <li><a href=\"#contact\">Contact</a></li>\n </ol>\n</details>\n\n## About the Project\n\nLittle description.\n\nPreprint can be found at: [link]\n\n\n## Getting Started\nEmPATHi has been packaged in [PyPI](https://pypi.org/project/empathi/0.0.1/) and as an Apptainer container for ease of use. \\\nThe source code can also be downloaded from [HuggingFace](https://huggingface.co/AlexandreBoulay/EmPATHi).\n\n### Prerequisites\nThe full list of dependencies and versions we tested to be compatible can be found in [requirements.txt](https://huggingface.co/AlexandreBoulay/EmPATHi/blob/main/requirements.txt).\nDependencies are taken care of by pip and Apptainer. See instructions below.\n```\npython/3.11.5\njoblib==1.2.0\nnumpy==1.26.4\npandas==2.2.1\nmatplotlib==3.9.0\ntorch==2.3.0\nscipy==1.13.1\nscikit-learn==1.5.0\ntransformers==4.43.1\nsentencepiece==0.2.0\nseaborn==0.13.2\n```\n\nThe models used by EmPATHi must be obtained seperately. See instructions below.\\\nThe [models](https://huggingface.co/AlexandreBoulay/EmPATHi/tree/main/models) folder for EmPATHi must be obtained from HuggingFace.\\\n[ProtT5](https://huggingface.co/Rostlab/prot_t5_xl_half_uniref50-enc) must also be downloaded from HuggingFace.\n\n\n### Installation\nFirst, create a virtual environement in python 3.11.5. This can be done using tools such as conda and virtualenv.\n\nDownload models for EmPATHi and ProtT5:\n```\ngit lfs install\ngit clone https://huggingface.co/AlexandreBoulay/EmPATHi\ngit clone https://huggingface.co/Rostlab/prot_t5_xl_half_uniref50-enc Rostlab/prot_t5_xl_half_uniref50-enc\nexport PATH=\"/path/to/EmPATHi/models:$PATH\"\nexport PATH=\"/path/to/Rostlab/prot_t5_xl_half_uniref50-enc:$PATH\"\n```\n\n#### 1. PIP\n```\npip install empathi\n```\n\n#### 2. Apptainer\n\n\n#### 3. From source code\nClone the repo if it isn't already done:\n```\ngit lfs install\ngit clone https://huggingface.co/AlexandreBoulay/EmPATHi\n```\n\nInstall dependencies:\n```\ncd EmPATHi\npip install -r requirements.txt\n```\n\n### Usage\nFor pip:\n```\npython\nfrom empathi import empathi\nempathi(input_file, name, output_folder=\"path/to/output\")\n```\n\nFor Apptainer:\n\nFrom command line:\n```\npython src/empathi/empathi.py -h\n```\n\nOptions:\n - input_file: Path to input file containing protein sequencs (.fa*) or protein embeddings (.pkl/.csv).\n - name: Name of file you want to save to (wOut extension). Should be different between runs to avoid overwriting files.\n - --models_folder: Path to folder containing EmPATHi models. Can be left unspecified if it was added to PATH earlier.\n - --only_embeddings: Whether to only calculate embeddings (no functional prediction).\n - --output_folder: Path to the output folder. Default is ./results/.\n - --mode: Which types of proteins you want to predict. Accepted arguments are \"all\", \"pvp\", \"rbp\", \"lysin\", \"regulator\"...\n\nWhen launching from python omit the '--' in front of args.\n\n## Contact\n\n",
"bugtrack_url": null,
"license": null,
"summary": "An embedding-based phage protein annotation tool by hierarchical assignment",
"version": "0.0.2",
"project_urls": {
"Homepage": "https://huggingface.co/AlexandreBoulay/EmPATHi"
},
"split_keywords": [
"bacteriophages",
" bioinformatics",
" phages",
" protein functions"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b4b5546eff999fe8f7d5812c7e7d66bb0a08f9ffa2b2007b96afee4d0604921e",
"md5": "9bec8ef391b93ae71a4e47b58b60610b",
"sha256": "c3c8b5ee2c57c299c7385f788987cb71189df9cd49675436900856ab7547cab8"
},
"downloads": -1,
"filename": "empathi-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9bec8ef391b93ae71a4e47b58b60610b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11.5",
"size": 25384,
"upload_time": "2024-07-26T05:18:17",
"upload_time_iso_8601": "2024-07-26T05:18:17.491061Z",
"url": "https://files.pythonhosted.org/packages/b4/b5/546eff999fe8f7d5812c7e7d66bb0a08f9ffa2b2007b96afee4d0604921e/empathi-0.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a0e2d2c91c50a9c23b64eed182711763ec38c6e0ce2d3f4393005d8f3d946c91",
"md5": "2c6ddc4660ebd4aa7387da4c21ecd27b",
"sha256": "df56eba9b773ad460c196cb999fd2b25a7874655479e63bb8023a4e28efd043e"
},
"downloads": -1,
"filename": "empathi-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "2c6ddc4660ebd4aa7387da4c21ecd27b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11.5",
"size": 5014332,
"upload_time": "2024-07-26T05:18:19",
"upload_time_iso_8601": "2024-07-26T05:18:19.348183Z",
"url": "https://files.pythonhosted.org/packages/a0/e2/d2c91c50a9c23b64eed182711763ec38c6e0ce2d3f4393005d8f3d946c91/empathi-0.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-07-26 05:18:19",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "empathi"
}