ersilia-os / ersilia

The Ersilia Model Hub, a repository of AI/ML models for infectious and neglected disease research.
https://ersilia.io
GNU General Public License v3.0
203 stars 131 forks source link

📑 Feature Request: Google Colab Guide #380

Closed GemmaTuron closed 1 year ago

GemmaTuron commented 1 year ago

Is your feature request related to a problem? Please describe.

We need to improve the documentation to use Google Colab. There are three main actions that could be done:

Describe the solution you'd like.

Some contributors to work together to improve this. I would suggest using a google docs to create the guides where participants can contribute. Each of the three tasks could have a leader that guides the development and then the others can contribute to it.

Describe alternatives you've considered

No response

Additional context.

No response

GemmaTuron commented 1 year ago

Hello,

I think this coulb be tackled by a few of the Outreachy applicants that are already advanced on the tasks: @ZakiaYahya @sayantani11 @malikbadmus @pauline-banye @Cee-tech21 ...

the fact that I am not adding your name here does not mean you can't contribute. Who wants to take the lead in these sections?

paulinebanye commented 1 year ago

Hi @GemmaTuron, I think this is a fantastic idea. I don't mind taking the lead on creating a video presentation for how to fetch models and predict models successfully on colab

paulinebanye commented 1 year ago

I think we could run through the very beginning, from the download csv to the prediction/calculation 🤔

Malikbadmus commented 1 year ago

Hello @GemmaTuron, this is a very fantastic concept, I will like to work on the comprehensive guide.

Is anyone also interested in working with me on this?

ZakiaYahya commented 1 year ago

@GemmaTuron i would love to work on comprehensive guide.

ZakiaYahya commented 1 year ago

Hello @GemmaTuron, this is a very fantastic concept, I will like to work on the comprehensive guide.

Is anyone also interested in working with me on this?

yes, i'm interested in co-lead with you @Malikbadmus :)

paulinebanye commented 1 year ago

Great @Malikbadmus @ZakiaYahya you have the comprehensive guide covered 👍!

paulinebanye commented 1 year ago

I created a doc where we can input suggested changes @ZakiaYahya @sayantani11 @Malikbadmus @Cee-tech21

Cee-tech21 commented 1 year ago

Concerning making a video, I note that I may be constrained by hardware and I also lack prior video making experience

paulinebanye commented 1 year ago

@Cee-tech21 no worries, you can assist with the notebook template. I'm working on the video.

Here's the doc with the suggested additions

Malikbadmus commented 1 year ago

@pauline-banye, thanks for creating the docs, to have a more streamlined process, because we might want to include the changes made on the template into the guide and video.

I have also included some suggestions for the notebook template.

Cee-tech21 commented 1 year ago

Just a starting idea for the notebook:

https://colab.research.google.com/drive/1rCGNGYCtqJ9OQra0KDRShvv3bV4sF5fF?usp=sharing

Malikbadmus commented 1 year ago

Fantastic @Cee-tech21, @pauline-banye, and @ZakiaYahya, can we start incorporating the suggestion on docs to this notebook?

ZakiaYahya commented 1 year ago

@Malikbadmus yes sure. Can we do all sections together?

Malikbadmus commented 1 year ago

@ZakiaYahya , I think we should, what do you think @ZakiaYahya, @Cee-tech21 . We can then include the link to the tutorial video created on the template.

Femme-js commented 1 year ago

Hi @GemmaTuron !

This is a great idea. I would love to contribute to making the template better and with easier readability.

Femme-js commented 1 year ago

@Cee-tech21 I can co-lead with you on making the template better. I have a few ideas already.

muskansawa commented 1 year ago

@GemmaTuron can we also create a thread for the improvement of ersilia cli as well, there are a lot of errors people can report while testing the models and those can be handled in a better way, so as to give a better idea of what is the actual problem. For example: If I run ersilia card eos4b8j without fetching the model first it will give an error in the command line, but if it can just let the user know that the model has not been fetched yet or has been deleted then it can be more helpful.

EstherIdabor commented 1 year ago

Hello @GemmaTuron, this is a very fantastic concept, I will like to work on the comprehensive guide.

Is anyone also interested in working with me on this?

hi @Malikbadmus I would love to offer assist

paulinebanye commented 1 year ago

@ZakiaYahya , I think we should, what do you think @ZakiaYahya, @Cee-tech21 . We can then include the link to the tutorial video created on the template.

I just had a thought, should we push the video creation till when the template is updated? It might be confusing for people to see some features on the template that aren't present in the video @ZakiaYahya @Malikbadmus @Cee-tech21 @sayantani11

Cee-tech21 commented 1 year ago

Well observed @pauline-banye I agree with you about making the video and the template concur!!! I am through with the draft template now. You can copy the template to your drive and add some modifications to make the template agree with the video

paulinebanye commented 1 year ago

Yes please!!

Cee-tech21 commented 1 year ago

I propose that anyone who wants to should copy the draft template and also make suggestions in a copy of the template! then @pauline-banye willl integrate all suggestions into the template/video. See link below:

https://colab.research.google.com/drive/1rCGNGYCtqJ9OQra0KDRShvv3bV4sF5fF?usp=sharing#scrollTo=-Rh3-Vt9Nev9

ZakiaYahya commented 1 year ago

@ZakiaYahya , I think we should, what do you think @ZakiaYahya, @Cee-tech21 . We can then include the link to the tutorial video created on the template.

I just had a thought, should we push the video creation till when the template is updated? It might be confusing for people to see some features on the template that aren't present in the video @ZakiaYahya @Malikbadmus @Cee-tech21 @sayantani11

@pauline-banye Yes that's right.

paulinebanye commented 1 year ago

Hi @Cee-tech21 I'm impressed at how quickly you came up with this draft. Good job!

I was running through the commands on the draft template and I came across some errors.

paulinebanye commented 1 year ago

Update:

I imported the module h5py and It resolved the error. fix

I also added suggestions and made some changes to the draft template

@Cee-tech21 @Malikbadmus @ZakiaYahya @sayantani11 @GemmaTuron

Malikbadmus commented 1 year ago

@pauline-banye , you did not grant us access to the notebook you shared.

paulinebanye commented 1 year ago

@pauline-banye , you did not grant us access to the notebook you shared.

Oh, I forgot about that. Granted @Malikbadmus

Zainab-ik commented 1 year ago

@GemmaTuron I would love to work on a comprehensive guide.

@Malikbadmus @ZakiaYahya I'd like to join in on the comprehensive guide. Thanks

Malikbadmus commented 1 year ago

Thank you @pauline-banye .

I feel implementing the guide into the notebook will be messy, Lets create different documentation for that.

I've made some changes to the template here

@Femme-js has some suggestions on incorporating time messages during predictions.

@ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it.

https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit?usp=sharing

Zainab-ik commented 1 year ago

Thank you @pauline-banye .

I feel implementing the guide into the notebook will be messy, Lets create different documentation for that.

I've made some changes to the template here

@Femme-js has some suggestions on incorporating time messages during predictions.

@ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it.

https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

Malikbadmus commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

Zainab-ik commented 1 year ago

Thank you @pauline-banye .

I feel implementing the guide into the notebook will be messy, Lets create different documentation for that.

I've made some changes to the template here

@Femme-js has some suggestions on incorporating time messages during predictions.

@ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it.

https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit?usp=sharing

@Malikbadmus kindly grant access

Malikbadmus commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit?usp=sharing

@Malikbadmus kindly grant access

Done

Zainab-ik commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

I think it should be the other way around. the notebook in the guide. Just like Ersilia gitbook, contains the colab template

Malikbadmus commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

I think it should be the other way around. the notebook in the guide. Just like Ersilia gitbook, contains the colab template

Yes, @Zainab-ik, that's exactly what I'm talking about, so we can keep the notebook simple without too much explanation on it.

Zainab-ik commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

I think it should be the other way around. the notebook in the guide. Just like Ersilia gitbook, contains the colab template

Yes, @Zainab-ik, that's exactly what I'm talking about, so we can keep the notebook simple without too much explanation on it.

Exactly

paulinebanye commented 1 year ago

@Malikbadmus Did you say you made changes to the template I worked on or the original template? Could you review the template I edited.

Zainab-ik commented 1 year ago

Update:

I imported the module h5py and It resolved the error. fix

I also added suggestions and made some changes to the draft template

@Cee-tech21 @Malikbadmus @ZakiaYahya @sayantani11 @GemmaTuron

@pauline-banye Can we discuss about this, this style doesn't seem to solve my error module. Thanks

paulinebanye commented 1 year ago

@

Update: I imported the module h5py and It resolved the error. fix I also added suggestions and made some changes to the draft template @Cee-tech21 @Malikbadmus @ZakiaYahya @sayantani11 @GemmaTuron

@pauline-banye Can we discuss about this, this style doesn't seem to solve my error module. Thanks

Hi @Zainab-ik sure we can. Can I try the model myself as well? Did you try it out with the template I shared?

Malikbadmus commented 1 year ago

@Malikbadmus Did you say you made changes to the template I worked on or the original template? Could you review the template I edited.

No changes were made to your template, I reviewed it. That's why I was thinking more of having less explanation on the colab notebook, things like what is colab would be better suited to the guide.

Cee-tech21 commented 1 year ago

what_is_colab

The section about "what is colab" as it is in the draft ersilia template/notebook isn't a comprehensive guide to colab at all. In fact when a comprehensive guide to colab is ready it can be linked to in the "what is colab section".

For now we only have one sentence saying what colab is which can be expanded upon in the comprehensive guide -- the comprehensive guide will be linked to in the ersilia template.

Malikbadmus commented 1 year ago

@Cee-tech21, Alright, let's work with that.

Zainab-ik commented 1 year ago

@

Update: I imported the module h5py and It resolved the error. fix I also added suggestions and made some changes to the draft template @Cee-tech21 @Malikbadmus @ZakiaYahya @sayantani11 @GemmaTuron

@pauline-banye Can we discuss about this, this style doesn't seem to solve my error module. Thanks

Hi @Zainab-ik sure we can. Can I try the model myself as well? Did you try it out with the template I shared?

Sure, let me tag you under the issue so this place doesn't get messy. Thanks

ZakiaYahya commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

I think it should be the other way around. the notebook in the guide. Just like Ersilia gitbook, contains the colab template

Yes that's sound more convenient @Zainab-ik

ZakiaYahya commented 1 year ago

Thank you @pauline-banye . I feel implementing the guide into the notebook will be messy, Lets create different documentation for that. I've made some changes to the template here @Femme-js has some suggestions on incorporating time messages during predictions. @ZakiaYahya, @Zainab-ik, I have started working on the Comprehensive guide, you can find the link below and edit your suggestions into it. https://docs.google.com/document/d/1JlIVmLGa1cL_Qk3q1yS0hVfnDJlHupe4Zg5L8TBYG2I/edit#

I think the comprehensive guide can include an explanation of what is in the notebook, so it wouldn't be messy.

No, I'm speaking of having the guide inside the notebook.

I think it should be the other way around. the notebook in the guide. Just like Ersilia gitbook, contains the colab template

Yes, @Zainab-ik, that's exactly what I'm talking about, so we can keep the notebook simple without too much explanation on it.

Exactly

Femme-js commented 1 year ago

HI @Malikbadmus @pauline-banye @Cee-tech21 !

Do we have a common notebook for the template, where we are incorporating all the changes? If not, I can make one.

Cee-tech21 commented 1 year ago

@Femme-js please copy this draft to your drive:

https://colab.research.google.com/drive/1rCGNGYCtqJ9OQra0KDRShvv3bV4sF5fF?usp=sharing#scrollTo=-Rh3-Vt9Nev9

edit the copy you have with ideas and share with your edit

sayantani11 commented 1 year ago

@pauline-banye Sorry was unavailable yesterday but great to see that the colab feature request is set up. The thing I was finding the problem was downloading the csv file. Apart from the suggested mentions by @GemmaTuron I feel we can also introduce a prerequisite as a lot of people might be new to the colab altogether. @Zainab-ik @Malikbadmus @Cee-tech21 What say?

ZakiaYahya commented 1 year ago

@pauline-banye Sorry was unavailable yesterday but great to see that the colab feature request is set up. The thing I was finding the problem was downloading the csv file. Apart from the suggested mentions by @GemmaTuron I feel we can also introduce a prerequisite as a lot of people might be new to the colab altogether. @Zainab-ik @Malikbadmus @Cee-tech21 What say?

Yes @sayantani11, we have decided to put a section on this in a comprehensive guide.