Closed anamika-yadav99 closed 2 years ago
@anamika-yadav99 Is this the format that issue is meant to have going forward?
Hi @anamika-yadav99 You have done some good work on the CLI! Can you link the relevant issues / PR's that you have contributed to? This way we can better follow your work! Thanks
@GemmaTuron I have completed most of these tasks. Can I do it after a couple of days? I have my exams going on currently.
I have fetched and run chemprop-antibiotic model
Fetched 3 models
Select one issue related to improving the CLI and request to be assigned to it.
I was assigned issue #13
to add model search functionality in CLI : $ersilia catalog --text "chemprop-antibiotic"
and $ersilia catalog --mode 'pretrained'
to cli.
I have completed the task and the issue was closed. Pull Request successfully merged : #41
Suggest at least one missing feature in the CLI
$ersilia --help
.
https://github.com/ersilia-os/ersilia/issues/60#issuecomment-1083385391 by @miquelduranfrigola approving the idea.Link in the comments any other PR you have contributed to.
To build conda recipe for Ersilia I used the recipe used by Tensorflow a few years ago. The recipe downloads the .whl file of Ersilia and then builds it in conda using conda build command.
Raised PR for the same. PR #89 successfully merged 2. Better model catalog display #12
I improved the model display according to discussion in comment https://github.com/ersilia-os/ersilia/issues/12#issuecomment-1096002423
I added a class to slice the catalog table into table of 15.
I also added ersilia catalog --next
and ersilia catalog --previous
in cli which displays the next and previous table
consequently.
I have done so by storing a counter in an auxillary file. Every time the command ersilia catalog
is called the counter is set to 1 and table 0 is displayed. Counter variable is used as index for next table. ersilia catalog --next
displays the next table and increases the counter by 1. In case, the user enters command even after the table is finished the counter is frozen to index of last table and table and the user is prompted to return back. Vise versa in ersilia catalog --previous
.
Raised a pr.
PR #238
3. Improved ModelSearcher functionality as discussed in issue #241
I have added 2 methods to ModelSearcher Class to search using --text
and --mode
. To search using --text
search_text method is added which also performs fuzzy match on the input to the data in catalog table. Fuzzy match is performed on model_id, description and slug.
Raised a PR #262
Hi @anamika-yadav99 thanks for documenting all of this so nicely
Add a screenshot showing that you are able to run predictions using ersilia as a Python library (find more information here). Ideally, use a Jupyter notebook.
Link in the comments any other PR you have contributed to.
- issue Make ersilia conda-installable #9 Added conda recipe which is used to build conda package . Then uploaded a package from my end to test the package. Raised PR for the same. PR added conda recipe #89 successfully merged.
- Currently working on Better model catalog display #12 Implementing the suggestions mentioned in the comment Better model catalog display #12 (comment)
Hi @anamika-yadav99 , you have done a great job over all. I really like your approach in solving issue #13 add model search functionality in CLI . Well done!
Link in the comments any other PR you have contributed to.
- issue Make ersilia conda-installable #9 Added conda recipe which is used to build conda package . Then uploaded a package from my end to test the package. Raised PR for the same. PR added conda recipe #89 successfully merged.
- Currently working on Better model catalog display #12 Implementing the suggestions mentioned in the comment Better model catalog display #12 (comment)
Hi @anamika-yadav99 , you have done a great job over all. I really like your approach in solving issue #13 add model search functionality in CLI . Well done!
Thanks @Amna-28 . You did an amazing job with the streamlit app yourself. The app looks great!
Search the scientific literature and suggest 3 new models (comment in this issue) that would be relevant to incorporate in the Hub.
DeepDTA: deep drug–target binding affinity prediction: https://academic.oup.com/bioinformatics/article/34/17/i821/5093245.
AtomNet: A Deep Convolutional Neural Network for Bioactivity Prediction in Structure-based Drug Discovery: https://arxiv.org/abs/1510.02855
ChemBO: Bayesian Optimization of Small Organic Molecules with Synthesizable Recommendations: https://arxiv.org/abs/1908.01425
DEEPScreen: high performance drug–target interaction prediction with convolutional neural networks using 2-D structural compound representations https://pubs.rsc.org/en/content/articlelanding/2020/sc/c9sc03414e
@GemmaTuron Will this be all or should I also write for the methods in ErsiliaModel Class?
Hi @anamika-yadav99, I think that your CLI feature suggestion is a really nice idea
Link in the comments any other PR you have contributed to.
- issue Make ersilia conda-installable #9 Added conda recipe which is used to build conda package . Then uploaded a package from my end to test the package. Raised PR for the same. PR added conda recipe #89 successfully merged.
- Currently working on Better model catalog display #12 Implementing the suggestions mentioned in the comment Better model catalog display #12 (comment)
Hi @anamika-yadav99 , you have done a great job over all. I really like your approach in solving issue #13 add model search functionality in CLI . Well done!
Thanks @Amna-28 . You did an amazing job with the streamlit app yourself. The app looks great!
Thank you so much @anamika-yadav99
Create a simple Streamlit app using the ersilia Python library. The app can have an input and an output box, and perhaps a few models to select. Add a screenshot of the app as seen in your browser.
Add your card as a comment to this issue
Comment under this issue explaining why you are interested in this project.
I’m a 3rd year undergraduate student from New Delhi, India. I’m currently pursuing engineering from GGS Indraprastha University, New Delhi. I’m a big supporter of open science and open source. I’m intrigued by the support and opportunities open source could provide to the scientific community and people. I have always wanted to work on projects which build tools for the scientific research community. It’s one of the driving forces to pursue this project. None the less, this project is aimed for developing country. I'm passionate about the application of ML in healthcare, drug discovery, genetic engineering etc . I wish to further pursue post grad in one of the fields like computational biology, biotechnology, AI+health(not sure, still exploring) but somewhere along the lines. This project gives me an opportunity to work closely with the ML papers in drug discovery. I'm fluent in python and very well familiar with implementing ML papers, ML Toolboxes. This project is apt for my skillset and interest.
Applicant: https://github.com/anamika-yadav99
Welcome to the Ersilia Open Source Initiative. This issue will serve to track all your contributions for the project “Improve the Ersilia Model Hub, a FOSS platform offering pre-trained AI/ML models for research”.
Please tick the tasks as you complete them. To make a final application it is not required to have completed all tasks. This project requires knowledge of the Python programming language. The tasks are not ordered from more to less important, they are simply related to different skills. Start where you feel most comfortable.
Initial steps
[x] Comment under this issue explaining why you are interested in this project.
Installation of the Ersilia Model Hub
ersilia
library.[x] Fetch at least 3 models from the Ersilia Model Hub. You can find these models with the
ersilia catalog
command. Add a screenshot of the local catalog (ersilia catalog –local
)CLI
[x] Suggest at least one missing feature in the CLI (one sentence is enough, for example: “Add command to estimate memory usage of a particular model”).
Python library
ersilia
as a Python library (find more information here). Ideally, use a Jupyter notebook.ersilia
Python library. The app can have an input and an output box, and perhaps a few models to select. Add a screenshot of the app as seen in your browser.[x] Write a docstring for the ErsiliaModel class. Use the Google Python Style guide. Paste the docstring as a comment below (do not use a PR).
Scientific content
[x] Search the scientific literature and suggest 3 new models (comment in this issue) that would be relevant to incorporate in the Hub.
Other
If you have interest in working on related topics, or have new suggestions, please do the following
[x] Link in the comments any other PR you have contributed to.
Community
[x] If you have feedback from your peers, answer it in this issue.
Final application