1
0
Fork 0
Commit Graph

225 Commits

Author SHA1 Message Date
Sean Sube 62abc76f3f
convert checkpoint dtype after loading 2023-04-29 23:08:48 -05:00
Sean Sube e28bbe2c18
set safetensor and dtype when loading 2023-04-29 23:05:51 -05:00
Sean Sube bc71583393
fix(api): add model image size and version hint to extras file 2023-04-29 22:56:52 -05:00
Sean Sube 2690eafe09
fix(api): pass correct text model type when converting v2 checkpoints (#360) 2023-04-29 22:45:48 -05:00
Sean Sube 4eba9a6400
avoid joining none path 2023-04-29 21:16:23 -05:00
Sean Sube 5760be710a
fix(api): restore use of config key when converting from checkpoints 2023-04-29 20:26:01 -05:00
Sean Sube f782f39cce
fix(api): remove size limit on inpainting stage 2023-04-29 14:23:00 -05:00
Sean Sube acde899559
reuse config from loaded UNet 2023-04-29 13:27:39 -05:00
Sean Sube 0175d7edcf
fix(api): specify input channels when converting inpainting models (#356) 2023-04-29 12:18:15 -05:00
Sean Sube 4c126153f5
fix(api): switch to diffusers ckpt loading, add more pipelines to conversion (#337, #356) 2023-04-29 12:00:43 -05:00
Sean Sube dbd9a186ae
feat(api): allow converting inpaint models (#356) 2023-04-27 23:41:04 -05:00
Sean Sube dc6bf330c1
feat(api): add optimization for max attention slicing (#355) 2023-04-24 19:13:32 -05:00
Sean Sube 5f5b01fed0
apply lint 2023-04-22 12:28:46 -05:00
Sean Sube 5f5418132b
fix(api): build sum tokens for TIs using emb_params key 2023-04-22 12:07:52 -05:00
Sean Sube a46f00aeb4
fix(api): use slice multiplication for 3x3 kernels without CP decomp 2023-04-20 22:10:49 -05:00
Sean Sube 49781df2fd
apply lint 2023-04-20 21:26:16 -05:00
Sean Sube ff4c8a9404
handle tensors of the same rank 2023-04-20 20:24:37 -05:00
Sean Sube 3e8f4b3edf
fix(api): improve summing of mismatched weights 2023-04-20 20:06:43 -05:00
Sean Sube f0109d3406
fix(api): blend LoHA and LoRA weights for 1x1 kernels 2023-04-20 19:31:40 -05:00
Sean Sube e9e9d75f9d
fix(api): correct return value after fully converting checkpoints 2023-04-20 18:00:35 -05:00
Sean Sube 161913bb7e
fix(api): add pre-converted ControlNets to base sources, add missing ControlNet strings 2023-04-15 16:55:53 -05:00
Sean Sube 317029356e
apply lint 2023-04-15 14:42:14 -05:00
Sean Sube 95841ffe2b
fix(api): check diffusers version before imports (#336) 2023-04-15 14:32:22 -05:00
Sean Sube 6effbea1eb
fix missing import 2023-04-15 10:57:37 -05:00
Sean Sube 7545d7c73d
add ControlNet UNet to existing checkpoints 2023-04-15 10:54:52 -05:00
Sean Sube 7f16b2f0ae
clean up CNet-only conversion code 2023-04-15 09:08:14 -05:00
Sean Sube 0dd8272285
feat(api): convert CNet for existing diffusion models 2023-04-15 09:00:17 -05:00
Sean Sube 9e017ee35d
feat: add parameter for ControlNet selection 2023-04-12 08:43:15 -05:00
Sean Sube fbf576746c
attention fix for cnet export 2023-04-11 23:11:08 -05:00
Sean Sube f49a4ddfdf
test controlnet pipe 2023-04-11 23:06:32 -05:00
Sean Sube a3daaf0112
initial integration of controlnet pipeline 2023-04-11 19:29:25 -05:00
Sean Sube 62aa7e8473
feat(api): add initial support for BSRGAN and SwinIR upscaling (#153, #154) 2023-04-10 17:49:56 -05:00
Sean Sube 512f41135d
add logging when conv shapes do not match 2023-04-10 08:14:47 -05:00
Sean Sube 4db1737f98
apply lint 2023-04-10 08:09:29 -05:00
Sean Sube 7d2d865c19
convert LoHA T weights to same dtype, log shapes rather than data 2023-04-10 08:06:28 -05:00
Sean Sube 1ed51352c4
handle LoHA nodes with CP decomp 2023-04-10 08:06:22 -05:00
Sean Sube 88c7fd9f60
start handling Gemm nodes 2023-04-10 07:58:21 -05:00
Sean Sube df02e20b34
only use mids once 2023-04-10 07:58:18 -05:00
Sean Sube 4947734add
flip axis 2023-04-10 07:58:15 -05:00
Sean Sube 87bba0e169
reverse factors 2023-04-10 07:58:12 -05:00
Sean Sube d671cb8113
attempt layer by layer recomp 2023-04-10 07:58:08 -05:00
ForserX 7c4e729f85
Fix for LoHA weight and LoRA alpha read 2023-04-10 10:58:47 +03:00
Sean Sube b6bb246032
apply lint 2023-04-09 20:34:10 -05:00
Sean Sube 9698e29268
lint(api): name context params consistently (#278) 2023-04-09 20:33:03 -05:00
Sean Sube ff9ce03af5
fix(api): better handling for errors while converting checkpoint to torch (#165) 2023-04-09 18:05:44 -05:00
Sean Sube 34f1973707
feat(api): add support for PyTorch 2.0 (#292) 2023-04-09 16:07:40 -05:00
ForserX d244ca9a9c
LoHA: Fixed blending error 2023-04-08 13:46:05 +03:00
Sean Sube bd03edc2ad
fix(api): handle 3x3 kernels in LoHA networks 2023-04-07 20:54:42 -05:00
Sean Sube 7f7476bcbb
fix(api): use correct weight pairs in LoHA 2023-04-07 19:51:30 -05:00
Sean Sube 35432f1ab2
feat(api): experimental support for LoHA networks 2023-04-07 18:50:12 -05:00
Sean Sube 7e3ca8ab01
feat(api): support 3x3 kernels in LoRA and LoCONs 2023-04-06 23:34:55 -05:00
Sean Sube 6bad599b3c
lint(api): move some chatty logs to trace level 2023-04-01 15:39:22 -05:00
Sean Sube 2bbc5d877f
lint(api): explicitly bind the device pool to shutdown callback 2023-03-27 17:13:45 -05:00
Sean Sube 73e9cf8b66
fix(api): disable internal fp16 for VAE encoder (#290) 2023-03-27 08:10:40 -05:00
Sean Sube e552a5560f
feat(api): check device worker pool and recycle on a regular interval (#284) 2023-03-26 11:09:22 -05:00
Sean Sube 2c47904057
lint(api): use constant for model filename 2023-03-24 08:14:19 -05:00
Sean Sube fa71d87e2c
apply lint 2023-03-21 22:19:50 -05:00
Sean Sube c8aad8554e
fix(api): convert back to model format after blending, convert samples as needed (#274) 2023-03-21 22:05:14 -05:00
Sean Sube 0315a8cbc6
fix(api): apply fp16 optimizations to LoRA and Textual Inversion blending 2023-03-21 21:45:27 -05:00
Sean Sube 0732058aa8
feat(api): detect Textual Inversion type from keys (#262) 2023-03-19 20:16:52 -05:00
Sean Sube fe498b16f0
fix(api): embed Inversion concepts using their name 2023-03-19 19:01:22 -05:00
Sean Sube 19d4d554c3
fix(api): add base token for Textual Inversion as sum layer 2023-03-19 18:04:21 -05:00
Sean Sube 8acc15f52e
fix(api): better error handling around tensor loading 2023-03-19 15:38:43 -05:00
Sean Sube 33008531e9
fix(api): load blending tensors onto CPU 2023-03-19 15:13:54 -05:00
Sean Sube 98e488319c
use fp16 optimization flag during conversion, add to admin docs 2023-03-19 10:33:46 -05:00
Sean Sube 243a2d9df6
apply lint 2023-03-19 09:29:06 -05:00
Sean Sube 2ef00599b6
experimental CLIP skip 2023-03-19 08:17:40 -05:00
Sean Sube 84718e5928
feat(scripts): add env debug script (#191) 2023-03-18 13:16:59 -05:00
Sean Sube 5b308d5fc1
lint(api): improve logging for inversion tokens 2023-03-18 12:04:39 -05:00
Sean Sube 2cb0a6be3c
more lint 2023-03-18 11:55:06 -05:00
Sean Sube e104c81e19
apply lint 2023-03-18 11:50:09 -05:00
Sean Sube f465120cad
use conversion dest path when applying additional nets 2023-03-18 11:34:05 -05:00
Sean Sube 1f6105a8fe
make blend functions take tuples rather than split lists 2023-03-18 10:50:48 -05:00
Sean Sube 5dd14c19ce
feat(api): build a single token for multi-layer Textual Inversions (#212) 2023-03-18 07:47:36 -05:00
Sean Sube af62c1c3b6
apply lint 2023-03-18 07:41:29 -05:00
Sean Sube e3bf04ab8f
feat(api): add section to extras file for additional networks 2023-03-18 07:40:57 -05:00
Sean Sube c3979246df
make blending happen once after conversion 2023-03-18 07:14:22 -05:00
Sean Sube 84bd852837
feat(api): blend LoRAs and Textual Inversions from extras file 2023-03-18 07:01:24 -05:00
Sean Sube 226710a015
fix(api): use exception level logs 2023-03-16 22:29:07 -05:00
Sean Sube 9f0a6f134e
fix(api): move model conversion messages to trace level 2023-03-16 19:37:25 -05:00
Sean Sube f4c0c52029
apply lint 2023-03-16 18:35:30 -05:00
Sean Sube 315e5a3837
fix(api): add theoretical support for 3x3 conv in LoRA 2023-03-15 19:37:17 -05:00
Sean Sube 8e8e230ffd
apply lint 2023-03-15 19:27:29 -05:00
Sean Sube 506cf9f65f
feat(api): blend Textual Inversions from prompt 2023-03-15 17:14:52 -05:00
Sean Sube a7f77a033d
feat(api): parse LoRA weights from prompt 2023-03-15 08:30:31 -05:00
Sean Sube 45166f281e
apply lint 2023-03-14 23:32:47 -05:00
Sean Sube 91210ee236
remove extra param, correct output path 2023-03-14 23:32:18 -05:00
Sean Sube 03f4e1b922
start wiring LoRAs into prompt 2023-03-14 22:10:33 -05:00
Sean Sube 56a4519818
test loading UNet and encoder with LoRAs 2023-03-14 21:27:23 -05:00
Sean Sube 2a8c85cb3e
feat(api): blend ONNX models in memory 2023-03-14 19:38:27 -05:00
Sean Sube 4c17edb267
feat(api): add conversion script for LoRAs from sd-scripts (#213) 2023-03-14 18:17:00 -05:00
Sean Sube 0b1aa26be5
blend LoRAs into a valid ONNX UNet (#213) 2023-03-12 13:38:51 -05:00
Sean Sube 25c41c8d66
feat(api): add an option to remove temporary Torch files after converting to ONNX (#122) 2023-03-08 21:38:17 -06:00
Sean Sube 7bd98d4a46
apply lint 2023-03-07 23:57:39 -06:00
Sean Sube 843e2f1ff3
feat(api): look for an index file when checking for converted models (#222) 2023-03-07 23:40:04 -06:00
Sean Sube 30b08c6d6d
fix(api): log correct token when converting Textual Inversions 2023-03-07 23:05:53 -06:00
Sean Sube 6542646005
fix(api): match format in schema for sd-concepts 2023-03-07 22:53:05 -06:00
Sean Sube c45915e558
fix(api): use server model path while converting SD checkpoints (#221) 2023-03-07 18:55:14 -06:00
Sean Sube 6d2dd0a043
apply lint 2023-03-05 07:20:43 -06:00
Sean Sube 10fbafaff0
fix(api): correct imports 2023-03-04 22:25:49 -06:00
Sean Sube 39d36618e6
feat(api): add support for custom tokens for textual inversions (#179) 2023-03-02 23:32:20 -06:00
Sean Sube 22e9d54408
apply lint 2023-03-02 22:32:37 -06:00
Sean Sube be1c8cd79f
feat(api): support ckpt inversions by splitting multivector embeddings into multiple tokens 2023-03-02 22:11:27 -06:00
Sean Sube 9a0d2051fb
fix(api): better logging when converting textual inversions 2023-03-02 07:57:59 -06:00
Sean Sube 46aac263d5
feat(api): initial support for textual inversion embeddings from civitai and others (#179) 2023-03-01 19:09:51 -06:00
Sean Sube 4b77a00ca7
fix(api): load tokenizer with textual inversions 2023-03-01 19:08:31 -06:00
Sean Sube 21fc7c5968
fix(api): mark all convert methods as no_grad 2023-03-01 08:26:40 -06:00
Sean Sube 3f9f94fcb5
apply lint, remove unused 2023-02-28 23:05:17 -06:00
Sean Sube 2f4ab20f61
use filename for tensors 2023-02-28 22:49:53 -06:00
Sean Sube 74aae1b027
fix(api): write external weights into same directory as optimized model 2023-02-28 22:47:02 -06:00
Sean Sube dbf9eaf1a4
fix(api): run shape inference before converting models to fp16
per discussion in https://github.com/microsoft/onnxruntime/issues/14827
2023-02-28 22:36:45 -06:00
Sean Sube 9ef89db8b0
extract tensors after conversion 2023-02-28 22:36:33 -06:00
Sean Sube 7e65e21410
reload model from proto file before converting 2023-02-28 22:36:26 -06:00
Sean Sube 2210ee849b
only convert inner nodes with ORT conversion helpers 2023-02-28 22:26:04 -06:00
Sean Sube 12fb7f52bb
fix(api): sanitize filenames in user input 2023-02-28 21:56:12 -06:00
Sean Sube 973b0a9352
add context arg 2023-02-25 12:13:22 -06:00
Sean Sube d88f13cbd7
lint LoRA code and extras, replace public paths with context ones 2023-02-25 12:12:10 -06:00
Sean Sube ce74183e97
blend LoRAs into existing model 2023-02-25 11:53:43 -06:00
Sean Sube e8b5ff250d
add none option to inversion menu 2023-02-25 11:53:37 -06:00
Sean Sube 45f5fca383
use correct fn to make dirs 2023-02-25 11:53:29 -06:00
Sean Sube 3dfaef041e
fix devices, make subdir 2023-02-25 11:53:26 -06:00
Sean Sube 3f4b3fa322
load CLIP on training device 2023-02-25 11:53:23 -06:00
Sean Sube 6b4ced2608
load inversions from extras file 2023-02-25 11:53:20 -06:00
Sean Sube 9dedfc7b28
add experimental LoRA blender 2023-02-25 11:53:17 -06:00
Sean Sube a31f7b9e1f
feat(api): convert Textual Inversion weights 2023-02-25 11:53:13 -06:00