Stability-AI / StableSwarmUI

StableSwarmUI, A Modular Stable Diffusion Web-User-Interface, with an emphasis on making powertools easily accessible, high performance, and extensibility.
MIT License
4.48k stars 352 forks source link

Make model downloader available after initial setup #237

Open bestlinuxgamers opened 6 months ago

bestlinuxgamers commented 6 months ago

As far as I know, the automatic downloader for models is only available when the UI is started for the first time. It would be helpful to be able to use this later as well.

mcmonkey4eva commented 6 months ago

My plan for this is to eventually have "Ghost models" visible in the model listing showing various recommended core models (with of course the ability to remove it if you don't want it), that would enable having eg controlnets and etc listed and ready to use.

Maybe also an interface wherein you can simply paste a huggingface/civitai/whatever link and have it automatically download it to the right folder & ensure metadata/thumbnails/etc are set and all for convenience

bestlinuxgamers commented 6 months ago

These ideas sound really great. It would also be important for the ghost models to be easily visually distinguishable from already installed models and preferably separated by a gap.

I thought that a public repository, where the latest models and the corresponding download links are provided, could also be implemented. Theoretically, this could simply be done using a git repository with a json file. This would also allow developers of other custom checkpoints to bring their checkpoints directly into the UI (through a PR in this repo). If it were then possible to add custom repository URLs, third party developers could also offer experimental snapshots, for example.

Mushy-Snugglebites-badonkadonk commented 3 months ago

Not to rain on anyone's parade, but would users have to be mindful of malware with these methods?

mcmonkey4eva commented 3 months ago

Automatic model downloader would definitely be .safetensors files only - ie the model files cannot contain malware (unlike pickle files - ckpt/bin/pt/etc) which can execute.

If you're worried about potential malware risks in the area, my biggest concern personally is the custom node packs (ie piles of python code) and especially those that rely on pickle files (controlnet preprocessors, ipadapter, etc. require remote pickle files to function). Those are though at least from named individual developer contributors from a single central source, so it'd be hard for them to get away with much without getting caught & punished.

Using the docker launch script helps to mitigate risk, as docker containers - er, contain the reach of code running inside them.

mcmonkey4eva commented 3 months ago

There's now a Utility tab to download models by URL, as noted above it's .safetensors only