psychedelicious
bd222454cd
feat(mm): draft revised config
2024-02-28 21:48:46 +11:00
psychedelicious
5b675d8481
feat(mm): make ModelHash instantiatable, taking an algorithm as arg
2024-02-28 18:08:35 +11:00
psychedelicious
3493ae7cdb
feat(mm): modularize ModelHash to facilitate testing
2024-02-28 18:08:34 +11:00
psychedelicious
4ee52ed689
feat(mm): add hashing algos to ModelHash
...
- Some algos are slow, so it is now just called ModelHash
- Added all hashlib algos, plus BLAKE3 and the fast (but incorrect) SHA1 algo
2024-02-28 18:08:34 +11:00
psychedelicious
9b4f1126c0
feat(mm): make hash.py a script for testing
2024-02-28 18:08:34 +11:00
psychedelicious
7b2f81babb
feat(mm): use blake3 for hashing
2024-02-28 18:08:34 +11:00
Lincoln Stein
2b1cb569eb
make model key assignment deterministic
...
- When installing, model keys are now calculated from the model contents.
- .safetensors, .ckpt and other single file models are hashed with sha1
- The contents of diffusers directories are hashed using imohash (faster)
fixup yaml->sql db migration script to assign deterministic key
- this commit also detects and assigns the correct image encoder for
ip adapter models.
2024-02-28 18:08:34 +11:00
Lincoln Stein
98a13aa7dc
handle change to Civitai metadata schema for commercial usage
2024-02-28 16:15:29 +11:00
Jennifer Player
110b0bc8fe
updated to use new import model mutation
2024-02-27 09:48:41 -05:00
chainchompa
175cfe41a4
Merge branch 'next' into chainchompa/add-all-scan
2024-02-27 09:44:35 -05:00
Jennifer Player
a12d54afb9
added add all button to scan models
2024-02-27 09:43:02 -05:00
psychedelicious
18af5348a2
fix(ui): merge conflict
2024-02-27 08:38:37 -05:00
psychedelicious
b18c8e1c96
chore(ui): bump deps
...
The only major version is `query-string`. The breaking change for it is dropping support for old versions of node. Not a problem for us.
2024-02-27 08:38:37 -05:00
psychedelicious
af059f2cff
feat(ui): move from madge to dpdm for circular dependencies
2024-02-27 08:38:37 -05:00
psychedelicious
d8e21091e7
tidy(ui): fix circular dependencies in listeners
2024-02-27 08:38:37 -05:00
psychedelicious
344041fd3a
tidy: remove some traces of ONNX
2024-02-27 08:38:37 -05:00
psychedelicious
588a220dd4
chore(ui): typegen, update knip config
...
Knip should never touch the autogenerated types
2024-02-27 08:38:37 -05:00
psychedelicious
770d4092b9
chore(ui): update pnpm-lock.yaml
...
Forgot to run `pnpm i` earlier after removing packages.
2024-02-27 08:38:37 -05:00
psychedelicious
8a353bc1e3
feat(ui): configure knip
2024-02-27 08:38:37 -05:00
psychedelicious
240f4801db
tidy(ui): clean up unused code 6
...
unused files
2024-02-27 08:38:37 -05:00
psychedelicious
da50507b2d
tidy(ui): clean up unused code 5
...
variables, types and schemas
2024-02-27 08:38:37 -05:00
psychedelicious
67d150ab66
tidy(ui): clean up unused code 4
...
variables, types and schemas
2024-02-27 08:38:37 -05:00
psychedelicious
40d70add76
tidy(ui): clean up unused code 3
...
variables, types and schemas
2024-02-27 08:38:37 -05:00
psychedelicious
7bd9bf3ba5
tidy(ui): clean up unused code 2
...
types and schemas
2024-02-27 08:38:37 -05:00
psychedelicious
c94d607089
feat(mm): add log stmt for download complete event
2024-02-27 08:38:37 -05:00
psychedelicious
ad801e54d4
fix(ui): model install progress sets total bytes correctly
2024-02-27 08:38:37 -05:00
psychedelicious
fb4db83911
chore(ui): lint
2024-02-27 08:38:37 -05:00
psychedelicious
cc229c3ea0
fix(ui): fix remaining TS issues
2024-02-27 08:38:37 -05:00
psychedelicious
ca00fabd79
fix(ui): fix up MM queries & types (wip)
2024-02-27 08:38:37 -05:00
psychedelicious
b361fabf81
tidy(api): remove non-heuristic install route
2024-02-27 08:38:37 -05:00
psychedelicious
00669200c7
tidy(mm): remove ONNX from AnyModelConfig
2024-02-27 08:38:37 -05:00
psychedelicious
fa07e82d2a
tidy(ui): clean up unused code 1
...
- Only export when necessary
- Remove totally usused functions, variables, state, etc
- Remove unused packages
2024-02-27 08:38:37 -05:00
psychedelicious
3632c5cd57
feat(ui): add knip + minimal config
...
https://knip.dev/
Replaces `unimported`
2024-02-27 08:38:37 -05:00
psychedelicious
daef68d3c1
fix(ui): fix missing component import
2024-02-27 08:38:37 -05:00
blessedcoolant
ba29376fba
ui: split the canvas mask blur and edge size setting
2024-02-27 07:32:13 -05:00
psychedelicious
3efd9465eb
feat(ui): create metadata types for control adapters
...
These are the same as the existing control adapter types, but the model field is non-nullable, simplifying handling of these objects.
2024-02-26 14:49:38 -05:00
psychedelicious
a3b11c04cb
fix(ui): model metadata handlers use model identifiers, not configs
...
Model metadata includes the main model, VAE and refiner model.
These used full model configs, as returned by the server, as their metadata type.
LoRA and control adapter metadata only use the metadata identifier.
This created a difference in handling. After parsing a model/vae/refiner, we have its name and can display it. But for LoRAs and control adapters, we only have the model key and must query for the full model config to get the name.
This change makes main model/vae/refiner metadata only have the model key, like LoRAs and control adapters.
The render function is now async so fetching can occur within it. All metadata fields with models now only contain the identifier, and fetch the model name to render their values.
2024-02-26 14:49:38 -05:00
psychedelicious
8f9e3ac795
fix(ui): CanvasPasteBack types
2024-02-26 14:49:38 -05:00
psychedelicious
2367f53367
tidy(ui): remove unused metadata schemas
2024-02-26 14:49:38 -05:00
psychedelicious
8b9f0a9551
feat(nodes): update LoRAMetadataItem model
...
LoRA model now at under `model` not `lora.
2024-02-26 14:49:38 -05:00
psychedelicious
ab57976e42
tidy(ui): tidy model identifier logic
...
- Move some files around
- Use util to extract key and base from model config
2024-02-26 14:49:38 -05:00
psychedelicious
3c103c89f3
feat(ui): optimize model query caching
...
When we retrieve a list of models, upsert that data into the `getModelConfig` and `getModelConfigByAttrs` query caches.
With this change, calls to those two queries are almost always going to be free, because their caches will already have all models in them. The exception is queries for models that no longer exist.
2024-02-26 14:49:38 -05:00
psychedelicious
0f19176944
fix(ui): fix lora metadata item type
2024-02-26 14:49:38 -05:00
psychedelicious
fc09a954b5
fix(ui): fix node type
2024-02-26 14:49:38 -05:00
psychedelicious
e7eee29825
feat(ui): add transformation to width/height parameter schemas to round to multiple of 8
...
This allows image dimensions that are not multiples of 8 to still be recalled with best effort.
2024-02-26 14:49:38 -05:00
psychedelicious
2c1ba23f61
fix(ui): fix lora metadata rendering
2024-02-26 14:49:38 -05:00
psychedelicious
58ef6dc6ce
fix(ui): fix type issues related to change in LoRA type
2024-02-26 14:49:38 -05:00
psychedelicious
8faefa89fe
feat(ui): migrate all metadata recall logic to new system
2024-02-26 14:49:38 -05:00
psychedelicious
02f59a3831
fix(ui): use id for component key in control adapter components
2024-02-26 14:49:38 -05:00
psychedelicious
2555be3058
feat(ui): no JSX in metadata handlers
2024-02-26 14:49:38 -05:00