-
Notifications
You must be signed in to change notification settings - Fork 2.7k
show data type of tensor files #4068
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
Conversation
|
Some questions too about the UI & API for this. Like what do we do about submodels? Is there ever a time when, say, a text encoder is at float32 while the unet is float16? If so, how should the supermodel represent its type? |
I haven't seen mixed-precision models, but in theory there's no reason why they couldn't exist. I've created them by accident and they were fully functional. I guess if you had to, you'd create a type called "mixed" for the supermodel. |
|
updated to support pickles and single-file models |
…l_precision # Conflicts: # invokeai/backend/model_management/models/base.py
…sion # Conflicts: # invokeai/backend/model_management/models/base.py
…feat/show_model_precision
API Questions
|
|
i can state with certainty i've never bothered to label fp16 versions of the model, and only ever created wide versions as they're intended to continue fine-tuning from. |
|
@keturn this would be reliant on the MM refactor right? Have concerns about slowdown, but if it's only slow during model download, that wouldn't be an issue |
InvokeAI 3.0.1 tends to download full-width tensor files even when it's configured to run them in float16: #4127
One step toward diagnosing and correcting this is to make it more visible what the types of tensor files are. The presence of
.fp16in the file name is a good hint, but I think we should verify.Ultimately, there should be UI for this in the web interface. For now I've hacked it in to
invokeai-model-install --list-models.[code example]
If you want to, you can see a per-file breakdown (for submodels) instead of a single item for the whole diffusers multimodel.
Output:
This PR is a proof of concept, and based on #4059. I expect that will have to change around somewhat after the other model manager fixes for 3.0.1 land.
TODO
What type of PR is this? (check all applicable)
Have you discussed this change with the InvokeAI team?
Have you updated all relevant documentation?
Related Tickets & Documents
QA Instructions, Screenshots, Recordings
Added/updated tests?