Skip to content
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

[enhancement]: Unified Directory Structure Tree #7759

Open
1 task done
xerohaveit opened this issue Mar 7, 2025 · 1 comment
Open
1 task done

[enhancement]: Unified Directory Structure Tree #7759

xerohaveit opened this issue Mar 7, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@xerohaveit
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

Contact Details

No response

What should this feature add?

Dealing with large files over the internet could be cumbersome, but downloading and organizing them definitely is.
Here are two common scenarios:

1- when downloading a large controlnet for example through Invoke app, internet connection might drop or a power outage might occur for god knows why, making the download fails and trying again won't resume the download, but will restart it from the beginning.

2- here comes a new issue, config files are missing, even if they are also downloaded.
from what I've seen, downloads through Invoke app will make a temporary folder to download whatever [tmpinstall_xxxxxxxx] and then move what it downloaded to the intended folder and with a proper name, but when downloading from outside the app, there's no clear way to know what the final name of that folder should be.

Alternatives

1- (downloading issues)
===> users commonly tackle this by downloading the files from outside invoke app to utilize something like common download managers or aria2 to benefit from pausing/resuming the download without having to restart it,
then using invoke app to scan a folder that contains what they downloaded, or point to the file directly.
But will face another issue of missing config files.

===> developers might utilize a cross-platform downloader like aria2 and pass the arguments needed for resuming downloads (I'm not sure if aria2's "file-preallocation" and "sequential-downloading" could help in that regard, but it's easy to figure that out)

2- (Missing configs)
===> a couple of solutions are possible:

  • add the ability to point the path of the config file manually.
  • automatically search (non-recursively) for an included config file inside the scanned directory, configs will have a fixed name "config.json" usually.
  • maybe taking advantage of invoke's excellent model-type identification when they're downloaded outside the app and instruct users where to put them and what to name them so the config file included will be instantly recognized.

====General Solution=====
the classic way utilized in many projects, especially those using gradio WebUI is point out from the beginning where to put each file, this proves to be successful but will take out the great flexibility of invoke.
but to be honest, it's not that obvious the something like Canny Hard Edge Detection for SD and SDXL should be structured like this without any prior knowledge of that structure

\models\SDXL\t2i_adapter\Hard Edge Detection (canny).0
\models\SD-1\t2i_adapter\Hard Edge Detection (canny)

Additional Content

No response

@xerohaveit xerohaveit added the enhancement New feature or request label Mar 7, 2025
@iwr-redmond
Copy link

Have you tried the Scan Models feature? This allows you to import models from a "classic" folder structure into Invoke.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants