-
-
Notifications
You must be signed in to change notification settings - Fork 147
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add progress bar when fetching a model #6
Comments
I would love to contribute to this issue. |
I would like to contribute to this issue @miquelduranfrigola |
I'm currently working on this issue @miquelduranfrigola |
Hello @KundaiChasinda, @prtk2001 Please before continuing the work in this issue, go to issue #36 as this is a required initial step to work on the project! |
Hi @prtk2001 thanks for your interest in this issue. Can you briefly explain to me your approach to the problem? I just want to make sure that your solution corresponds to what we need :) |
Hi @miquelduranfrigola my basic approach is to use tqdm. The error I'm encountering is fetching size of files which are connected through git-lfs, it is actually showing the size of pointer. I'm trying to figure out a way for that. |
Indeed. Getting size of git-lfs files is key here. Please see related issue #7 currently being tackled by @Riyabelle25 Using tqdm sounds good to me 👌 |
One possible workaround would be to calculate the size of the model and store this information as metadata in each model repository, correspondingly. For example, for model eos4e40 (https://github.com/ersilia-os/eos4e40) we could add a metadata.json file containing model size information. What are your thoughts? |
This is a unique approach, I would love to implement it |
@miquelduranfrigola your idea about calculating the size which shows how much progress is an interesting approach |
Alright, so let's take this avenue, if you both agree @prtk2001 and @Rufaida98! It will not be straightforward, though. Many things happen at "fetching" time ( I suggest the following solution:
Then, at fetching time:
So I suggest the following. @miquelduranfrigola (me) works on points 1,2,3. As soon as I am done, I will notify you. Then @prtk2001 and @Rufaida98 can suggest an approach for 4 and 5. What do you think? |
@miquelduranfrigola Amazing!. I really want to learn and happy to work with a colleague @prtk2001 :) |
@miquelduranfrigola sounds goood, I'm in! |
@miquelduranfrigola I'd love to work with/help you on pts 1,2,3. If you have an approach in mind (asides this), do share! |
Hi ! hope you are well. |
Hi @Riyabelle25 and @prtk2001 I am very delayed with this - my apologies. Please give me some time, I am aware I am the bottleneck. I hope you are still in. @Riyabelle25, my approach will be to add checkpoints in the fetching process (simple JSON files stored on disk). I have used workflow managers in the past, but in this case I want to keep it simple (Ersilia already has too many dependencies). @mahamtariq58 thanks for volunteering. I think that at this point two point we do not assistance with this. Many thanks, though! |
@miquelduranfrigola apologies for sounding noob-ish 🙈, your approach is to add pythonic checkpoints during cmd |
Aight, so this is how I'm calculating the time taken for each step (defined in `fetch.py`) and showing the same in the CLI.
Opening a PR for the same now, @miquelduranfrigola do take a look 😄 |
After @miquelduranfrigola and @Riyabelle25 suggestions for solving the Metadata.json file as I think your both approaches are amazing. So what do you think if we check the Metadata file by defining a test function to perform the encoding and output of the size by using the "assert" e.g (assert len(encode...)==f.tell |
Hi @Rufaida98 thanks for giving it some thought. Have you checked the open PR thread: #188 ? |
Hi all! As an update, @nataliyah123 is working on this issue we will keep you posted on the progress! |
Hi all, We have decided to temporarily leave this feature as is, see #528 |
Add Github action to lint when PR comment is made
Background
The
fetch
command downloads a model from a GitHub repository corresponding to the identifier of the model, for example, eos4e40. In verbose mode (ersilia -v fetch eos4e40
), the logging is displayed on the terminal. However, if verbose mode is not used, (ersilia fetch eos4e40
) the user does not have a sense of the progress in downloading and setting up the model on the local computer.Requested feature
Add a progress bar or percentage to the
fetch
command. Progress should ideally capture:The text was updated successfully, but these errors were encountered: