Embedding blacklist, allow embeddings subfolder, settings accordion #4286
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Embeddings selected in the embedding blacklist will not be loaded (the embedding dict will be reloaded upon saving settings).
Image embeddings are loaded using the same name as they were trained. Some embeddings might be trained using the same name, and those names used as keys may collide.
Gradio doesn't have multiselect dropdown, so I used CheckboxGroup. But it can get get very long with the number of embeddings exist. So here it is as an accordion settings section.
Also added --force-accordion-settings cmd opt to force all setting section to use accordion (by default only the embedding setting use accordion), because there are a real lot of options in settings tab. To make a setting section become accordion, just add a True to the section tuple in shared.py.
Also added support for embedding subfolder. Calling of non-image embeddings will require the subfolder too. Just check the list of loaded embeddings in console/output. For example, here I put some kanata embeddings in kanata folder (redacted some so it's not too long).
Related feature request: #3443 (although this isn't even close to what's requested)