DeepForest
DeepForest copied to clipboard
Ask user if they want to download the latest model.
We have not specifically gotten into this problem yet, but there should be a mechanism to ask user if they want to download a new model, instead of forcing it here.
https://github.com/weecology/DeepForest/blob/e31ecabf07b1b7d2444ba2c1d1298df79a416c27/deepforest/utilities.py#L82
Just a note on implementation - I think this should be an optional argument like update = True
, not an interactive query. I think we also want a related optional argument that lets you pin to a specific release.
Hello @ethanwhite, I want to work on this issue but I am new to this repo and I need help. Please assign me this.
Hi @ayeankit - @henrykironde is working on getting some beginner developer docs up this week that will help you get started on things.
Having glanced at the code related to this issue I think this one is actually something to check in with @bw4sz about. The function already has a check_release
optional argument which could be set to False
to avoid updating. I guess @bw4sz is interested in being able to check separately from updating, in which case we may just want to split out the on lines 64-79 into it's own function, but I'd like to hear from @bw4sz as to what he's viewing the use case as before anyone implements anything.
Given that we don't have a use case yet, its difficult to know what the pros and cons are here. I think the simplest thing is here: https://github.com/weecology/DeepForest/blob/906730656579ed215d69d10e0757cf5dcceeb759/deepforest/utilities.py#L143, we need to ask the user if we want to update. So we need an update=True flag and then the user needs to be alerted that a new model will be downloaded.
@bw4sz - a couple of follow up questions:
- That code only gets hit if
check_release==True
, so it feels like we basically have this kind of a flag implemented. Are you envisioning separating the check to see if there is a new release available and the installing of the new release if it exists? - When you say "the user needs to be alerted that a new model will be downloaded" do you just meaning displaying some output or were you envisioning an interactive prompt?
Yes, these are different. check_release relates to our underlying (poor) choice of how to store the model. https://github.com/weecology/DeepForest/issues/380
Especially during unit tests, we often hit github API query limits. update=True would relate to download a new model if it exists.
On Tue, Feb 14, 2023 at 9:31 AM ethanwhite @.***> wrote:
@bw4sz https://github.com/bw4sz - a couple of follow up questions:
- That code only gets hit if check_release==True, so it feels like we basically have this kind of a flag implemented. Are you envisioning separating the check to see if there is a new release available and the installing of the new release if it exists?
- When you say "the user needs to be alerted that a new model will be downloaded" do you just meaning displaying some output or were you envisioning an interactive prompt?
— Reply to this email directly, view it on GitHub https://github.com/weecology/DeepForest/issues/321#issuecomment-1430119924, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJHBLBKDXJAPVNIGQADPNDWXO6N5ANCNFSM5R7CDJOA . You are receiving this because you were mentioned.Message ID: @.***>
-- Ben Weinstein, Ph.D. Research Scientist University of Florida http://benweinstein.weebly.com/
OK, in that case @ayeankit I think my original suggestion to split out the code on lines 64-79 into it's own function, which is then used use_bird_release()
is a reasonable way to go. You would add an update=True
argument to use_bird_release()
and then if check_release==True
check the release using the new function and if there is a new release an update==True
download it using the code currently on lines 82-97.
hey @ethanwhite and @henrykironde , i have successfully passed the test cases locally but on raising the PR, I am getting the error. ( #400 ). Can you suggest any solution for passing that here? Please review it.