Demo repository for testing the Ersilia Model Hub incorporation pipeline, based on GitHub Actions
- Go to the Ersilia main repository issues page.
- Click on New issue. Then 🦠 Model Request (Get started)
- For the purpose of this demo, you can use the following information:
- 🦠 Model Request: Demo Malaria Model
- Model Name: Demo Malaria Model
- Model Description: Prediction of the antimalarial potential of small molecules. This model was originally trained on proprietary data from various sources, up to a total of >7M compounds. The training sets belong to Evotec, Johns Hopkins, MRCT, MMV - St. Jude, AZ, GSK, and St. Jude Vendor Library. In this implementation, we have used a teacher-student approach to train a surrogate model based on ChEMBL data (2M molecules) to provide a lite downloadable version of the original MAIP
- Slug: demo-malaria-model
- Tag: Malaria,P.falciparum
- Publication: https://jcheminf.biomedcentral.com/articles/10.1186/s13321-021-00487-2
- Code: https://www.ebi.ac.uk/chembl/maip/
- License: GPL-3.0
- The Ersilia team will revise your model requests and likely start a public discussion around it.
- At some point, your model will be approved. You will see an
/approve
comment in the GitHub issues. - Approval will trigger some GitHub Actions. Eventually, the
ersilia-bot
will post an informative message in your issue. Importantly, this message will contain a link to a new model repository placeholder, named, for example,ersilia-os/eosXabc
. This code is arbitrarily assigned by Ersilia and will change every time. You should not worry about creating one manually and you should never modify it.
- Go to the model repository page: https://github.com/ersilia-os/eosXabc, in this case.
- Fork the repository to your username.
- Clone the forked repository. This should create a
eosXabc
folder in your local filesystem.
- For this demo, you have to clone the current repository (
ersilia-os/eos-demo
). This will create aneos-demo
folder in your local filesystem. - Run the following script to populate your forked model with the demo data:
python /path/to/eos-demo/populate.py /path/to/eosXabc
. - Your
eosXabc
has been populated with model parameters, dependencies and extra metadata. It is now ready for commit.
- Commit changes and push changes to
eosXabc
. - Open a PR to the
main
branch atersilia-os/eosXabc
. GitHub Actions workflows will be triggered to ensure that your code works as expected.
- The Ersilia team will revise your PR and merge it eventually. More GitHub Actions workflows will be triggered at this point.
- Once the model is merged, you should see it in Ersilia's AirTable.
- The
ersilia-bot
will open a new issue atersilia-os/eosXabc
. As you will see, someone from the Ersilia community will be assigned as a reviewer of the model. - If you are a member of the Ersilia Slack workspace, then you may also see activity triggered around your model.
You can test the model following these steps:
To run the model locally, you can fetch is with the fetch
command.
ersilia fetch esoXabc
You can create an example file and run predictions easily:
ersilia serve eosXabc
ersilia example -f my_input.csv
ersilia api -i my_input -o my_output.csv
ersilia close