Record the model_variant in t2i and clip_vision configs #5989
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.
What type of PR is this? (check all applicable)
Have you discussed this change with the InvokeAI team?
Have you updated all relevant documentation?
Description
Diffuser models downloaded from huggingface have repo variants, including the commonly-used
fp16
variant. Both T2I and clip_vision models can havefp16
variants, but at some point during the model manager refactor the base for their pydantic config models was moved fromDiffusersConfigBase
to a simpler base. Hencefp16
models would not load. This PR corrects the problem.It also adds defensive code to the diffusers loading method. If a repo variant is requested but not available, the loader will attempt to load the default version. This will have the effect of protecting against a family of potential edge cases in which the user has renamed a model, cloned a huggingface repo, overwritten a weights file, or is going back and forth between different versions of InvokeAI while using the same models directory.
Related Tickets & Documents
QA Instructions, Screenshots, Recordings
TencentARC/t2i-adapter-lineart-sdxl-1.0
models/sdxl/t2i_adapter/lineart-sdxl.0/diffusion_pytorch_model.fp16.safetensors
Merge Plan
Merge when approved.
Added/updated tests?
[optional] Are there any post deployment tasks we need to perform?