Ersilia Model Hub

The Ersilia Model Hub is an open source platform to serve AI/ML models for infectious disease drug discovery.

41
mentions
3
contributors
Get started
2073 commitsLast commit ≈ 5 days ago251 stars158 forks

Cite this software

Description

💊 Welcome to the Ersilia Model Hub!

Donate Contributor Covenant License: GPL v3 PyPI version fury.io Conda Version Python 3.8 Code style: black DOI Project Status: Active

Table of Contents

  1. Project Description
  2. Quick Start Guide
  3. Contribute
  4. License and Citation
  5. About Us

Project Description

The Ersilia Model Hub is a unified platform of pre-trained AI/ML models for 🦠 infectious and neglected disease research. Our mission is to offer an open-source, 🛠 low-code solution that provides seamless access to AI/ML models for 💊 drug discovery. Models housed in our hub come from two sources:

  • Published models from literature (with due third-party acknowledgement)
  • Custom models developed by the Ersilia team or our valued contributors

In Ersilia, you can find models related to antibiotic activity prediction, ADMET prediction, molecular representation, generative chemistry, and much more.

Quick Start Guide

Installation

Please check the package requirements in the Installation Guide. In brief:

  1. You need to install the Ersilia CLI. This is the central tool to manage models in the Ersilia Model Hub.
  2. Each model is packaged independently in its own environment.

To install the Ersilia CLI, create a Conda environment and activate it:

conda create -n ersilia python=3.10
conda activate ersilia

Then, clone the current repository and install with pip:

git clone https://github.com/ersilia-os/ersilia.git
cd ersilia
pip install -e .

Alternatively, you can directly install from PyPi:

pip install ersilia

Check that Ersilia is properly installed:

ersilia --help

To install each model, you have two options. You can either package them from source, in which case only Conda is required, or as Docker containers. We highly recommend having Docker installed and active in your computer. In any case, the Ersilia CLI takes care of the packaging seamlessly.

Running a Model

Once the Ersilia package is installed, you can use the CLI to run any model seamlessly. First, select a model from the Ersilia Model Hub and fetch it. Each model in the Ersilia Model Hub has an associated identifier. For example, the broad spectrum activity prediction model from Stokes et al. (2020) has the identifier eos4e40. You can fetch it as follows:

ersilia fetch eos4e40

Now you can serve the model:

ersilia serve eos4e40

To view some information about the model, type the following:

ersilia info

The simplest way to run a model is by passing a CSV file as input. If you don't have one, you can generate it easily. In this case, we take 5 molecules as an example:

ersilia example -n 5 -f my_input.csv

Now you can run the model:

ersilia run -i my_input.csv -o my_output.csv

To stop the service, you can simply close the model:

ersilia close

Finally, if you don't want to use the model anymore, delete it as follows:

ersilia delete eos4e40

Basic Commands

Below is a list of the most important commands of the Ersilia CLI:

CommandDescription
catalogList a catalog of models
closeClose model
deleteDelete model from local computer
exampleGenerate input examples for the model of interest
fetchFetch model from the Ersilia Model Hub
infoGet model information
runRun a served model
serveServe model
testTest a model

Please see the a full reference of all commands available here.

Contribute

The Ersilia Model Hub is a free, open source software and we highly value new contributors. There are several ways in which you can contribute to the project:

The Ersilia Open Source Initiative adheres to the Contributor Covenant code of conduct.

Submit a New Model

If you want to incorporate a new model in the platform, open a new issue using the Model Request template or contact us using this form.

After submitting your model request via an issue (suggested), an Ersilia maintainer will review your request. If they approve your request, a new model respository will be created for you to fork and use following the eos-template. There is a demo repository explaining the steps one-by-one.

License and Citation

This repository is open sourced under the GPL-3 License.

If you find this software useful, please cite us:

Ersilia Model Hub: a repository of AI/ML models for infectious and neglected tropical diseases
Gemma Turon, Abel Legese, Dhanshree Arora, Miquel Duran-Frigola
Version: 0.1.43
DOI: 10.5281/zenodo.7274645
GitHub: https://github.com/ersilia-os/ersilia

Authorship

Please note that Ersilia distinguises between software contributors and software authors. The Ersilia Model Hub Authorship guidelines can be found in the Authorship file and current authors can be found in the Citation file. We acknowledge past authors of the software below:

  • Carolina Caballero

Cited By

The Ersilia Model Hub is used in a number of scientific projects. Read more about how we are implementing it in:

In addition, our views on how the Ersilia Model Hub can be deployed effectively in Africa can be found in these two articles:

To see a full list of all Ersilia publications, please visit this link.

About Us

The Ersilia Open Source Initiative is a tech non-profit organization with the mission to equip laboratories, universities, and clinics in the Global South with AI/ML tools for infectious disease research. We work on the principles of open science, decolonized research, and egalitarian access to knowledge and research outputs. You can support Ersilia by clicking here.

Funding

The Ersilia Model Hub is our flagship project. The tool is funded via a combination of sources. Full disclosure can be found in our website. Highlighted supporters include the Mozilla Builders Accelerator, Fast Forward, Splunk Pledge, the AI2050 Program by Schmidt Sciences, and the Spanish Ministry of Science, Innovation, and Universities (grant PID2023-148309OA-I00 funded by MICIU/AEI/10.13039/501100011033).

Logo of Ersilia Model Hub
Keywords
Programming languages
  • Python 96%
  • Jupyter Notebook 3%
  • Dockerfile 1%
License
</>Source code

Participating organisations

Ersilia Open Source Initiative

Reference papers

Mentions

Contributors

DA
Dhanshree Arora
Author
Ersilia Open Source Initiative
MD
Miquel Duran-Frigola
Author and Creator
Ersilia Open Source Initiative
GTR
Gemma Turon Rodrigo