1
0
Fork 0
Commit Graph

1077 Commits

Author SHA1 Message Date
Sean Sube 763b4f105a
apply lint 2023-04-28 20:38:09 -05:00
Sean Sube 6d05f40ecb
correct param names for VAE encoder wrapper 2023-04-28 20:37:59 -05:00
Sean Sube 9a2421ee47
fixes for VAE encoder wrapper 2023-04-28 16:06:39 -05:00
Sean Sube d9f7971d0a
fix(api): do not downscale source images for panorama pipeline 2023-04-28 16:02:03 -05:00
Sean Sube 980cba1d29
wrap VAE encoder 2023-04-28 15:56:30 -05:00
Sean Sube c8e1519419
fix(api): match panorama img2img parameter check to numpy code path 2023-04-28 14:22:47 -05:00
Sean Sube 1d9de2c45b
apply lint 2023-04-28 13:56:36 -05:00
Sean Sube 79115e5f23
remove conv breaking VAE wrapper 2023-04-28 13:55:02 -05:00
Sean Sube 7e5380db43
feat: add tiled VAE parameter to client 2023-04-28 13:30:54 -05:00
Sean Sube 577e2320f5
fix sample size, use first output 2023-04-28 13:30:37 -05:00
Sean Sube 878e29ad3d
remove gradients from tiled VAE tensors 2023-04-27 23:41:43 -05:00
Sean Sube dbd9a186ae
feat(api): allow converting inpaint models (#356) 2023-04-27 23:41:04 -05:00
Sean Sube fbeeae692b
remove config ref, add np/torch conversions 2023-04-27 23:03:17 -05:00
Sean Sube 64a753e064
feat(api): add tiled VAE wrapper 2023-04-27 22:50:11 -05:00
Sean Sube eef85aabb8
fix param order for numpy code path 2023-04-27 21:02:43 -05:00
Sean Sube c6fc860484
fix(api): make panorama work with prompt alternatives 2023-04-27 13:22:07 -05:00
Sean Sube b8b73d8592
fix(api): make sure UNet wrapper always has embeds defined 2023-04-27 09:05:38 -05:00
Sean Sube bc946bb085
fix(api): use correct latents for scheduler noise 2023-04-27 09:00:45 -05:00
Sean Sube bad00dc508
fix refs to latents 2023-04-27 08:58:53 -05:00
Sean Sube d2baa323ab
fix(api): match LPW parameter order 2023-04-27 08:19:18 -05:00
Sean Sube 47d80b07b3
feat(api): add img2img mode to panorama pipeline 2023-04-27 07:22:00 -05:00
Sean Sube 29c616d99e
mostly working panorama 2023-04-26 21:10:13 -05:00
Sean Sube a792bd2c5e
numpy fixes for panorama 2023-04-26 08:33:03 -05:00
Sean Sube 214af7fe6a
feat(api): add panorama pipeline for ONNX 2023-04-26 07:35:20 -05:00
Sean Sube 42a47200ef
Revert "fix(api): use padding token for prompt padding"
This reverts commit 2fe6a87818.
2023-04-24 21:50:36 -05:00
Sean Sube 3ce508d08f
apply lint 2023-04-24 21:04:35 -05:00
Sean Sube dc6bf330c1
feat(api): add optimization for max attention slicing (#355) 2023-04-24 19:13:32 -05:00
Sean Sube 95e75ffd24
fix(api): check GTK import individually 2023-04-24 18:39:25 -05:00
Sean Sube 9c337df7df
fix(api): make SD upscaling compatible with multi-prompt patch 2023-04-24 18:31:33 -05:00
Sean Sube ec7d563c58
fix(api): resolve SD upscaling model relative to models path 2023-04-24 18:23:56 -05:00
Sean Sube 2fe6a87818
fix(api): use padding token for prompt padding 2023-04-24 18:10:46 -05:00
Sean Sube 3f4dd70b53
apply lint 2023-04-24 18:10:12 -05:00
Sean Sube d0e4b8da29
feat(api): add system notifications when image jobs finish (#329) 2023-04-24 17:40:50 -05:00
Sean Sube cad87b97f4
feat(api): allow offloading individual models to CPU (#330) 2023-04-24 17:40:12 -05:00
Sean Sube 7caaa9ed40
fix(api): correct dict types for 3.8 2023-04-24 17:39:06 -05:00
Sean Sube 477fb69e03
apply lint 2023-04-23 21:16:46 -05:00
Sean Sube b1aafd24aa
handle lack of negative prompt 2023-04-23 19:47:03 -05:00
Sean Sube 9e9fe90f80
chore(api): remove SD v2.1 from base models 2023-04-23 18:23:05 -05:00
Sean Sube 0d60406eca
fix(api): make SD upscaling work with negative prompt 2023-04-23 18:22:59 -05:00
Sean Sube 8736a13277
lint(exe): move Windows bundle entry script to correct folder 2023-04-23 18:22:50 -05:00
Sean Sube 4f9d12cefa
remove LoRAs and TIs from SD upscaling 2023-04-23 18:22:44 -05:00
Sean Sube 8146ef881d
only apply prompt embeds when LPW is not selected, load upscale pipeline like others 2023-04-23 18:22:41 -05:00
Sean Sube 0eeb342576
apply alternatives to upscale stage 2023-04-23 18:22:38 -05:00
Sean Sube f1957f7378
fix prompt segment order 2023-04-23 18:22:36 -05:00
Sean Sube bd3e6100a2
collect prompt sections between alt groups 2023-04-23 18:22:29 -05:00
Sean Sube b249936963
feat(api): parse alternative groups in prompts 2023-04-23 15:03:11 -05:00
Sean Sube 4ac25f0650
fix(api): remove traces of highres from blend pipeline 2023-04-22 12:40:51 -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 6c00b2d87d
initialize dtype for SD wrappers 2023-04-22 12:00:09 -05:00
Sean Sube 0a75f961dc
fix(api): share loaded pipeline when running loopback or highres after img2img 2023-04-22 11:47:01 -05:00
Sean Sube 8068659c0f
handle image filter none better 2023-04-22 11:38:05 -05:00
Sean Sube eeaba37fa9
fix(api): correctly disable source filtering when none is selected 2023-04-22 11:34:48 -05:00
Sean Sube 348421dd6d
fix controlnet segmentation string, add some source filter logging 2023-04-22 11:26:21 -05:00
Sean Sube 106b377a57
pass strength to loopback 2023-04-22 11:01:47 -05:00
Sean Sube 954d8e9c1c
move loopback into the right code path 2023-04-22 10:54:39 -05:00
Sean Sube d21346e5da
apply lint 2023-04-22 10:42:22 -05:00
Sean Sube 00fb64ba82
feat: add img2img loopback (#331) 2023-04-22 10:39:23 -05:00
Sean Sube 7b0095a665
feat(api): add support for negative embeds (#348) 2023-04-22 10:05:58 -05:00
Sean Sube 9e9feb2ea0
lint(api): consistently use server dtype 2023-04-22 00:28:29 -05:00
Sean Sube 9bb612f54e
fix(api): handle empty prompts (#340) 2023-04-22 00:28:10 -05:00
Sean Sube 6e7f202b8d
fix(api): store both pre-parse and parsed prompts (#320) 2023-04-22 00:11:33 -05:00
Sean Sube c7aea34b28
fix(api): use correct params for default outpainting borders (#345) 2023-04-20 22:33:18 -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 30c96be24f
send token with admin requests, return worker status after restarting 2023-04-20 17:36:29 -05:00
Sean Sube df0e7dc57e
feat: add admin endpoint to restart image workers (#207) 2023-04-20 07:36:31 -05:00
Sean Sube cfdd926fff
fix(api): wait for worker to become idle before enqueueing next job (#286) 2023-04-15 20:37:53 -05:00
Sean Sube 17e7b6aff2
fix(api): keep ControlNet metadata after lookup 2023-04-15 17:31:02 -05:00
Sean Sube 8d47b71183
fix(api): match ControlNet selection against model names 2023-04-15 17:21:13 -05:00
Sean Sube 31965356d8
fix(api): handle mixed tensors for ControlNet on CPU 2023-04-15 17:03:04 -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 e0e6b74b98
fix(api): correct parameter names for BSRGAN, use RRDB from BasicSR for Real ESRGAN 2023-04-15 16:20:46 -05:00
Sean Sube dd771663ef
fix(api): add missing arguments to prompt patch (#336) 2023-04-15 15:56:02 -05:00
Sean Sube b076326ab3
fix(api): restore inpaint pipeline option 2023-04-15 15:43:31 -05:00
Sean Sube b20df68131
fix(api): switch between available pipelines 2023-04-15 15:37:45 -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 1853214409
fix(build): install CPU deps during CI 2023-04-15 13:18:24 -05:00
Sean Sube 7b4ce44f51
fix(api): print border size in expected order 2023-04-15 12:36:41 -05:00
Sean Sube 16c6bdf85a
use correct ORT session options 2023-04-15 12:31:28 -05:00
Sean Sube 30968f7c33
apply LoRAs to correct UNet 2023-04-15 12:28:55 -05:00
Sean Sube 43d545e524
apply lint 2023-04-15 12:13:25 -05:00
Sean Sube ac9b3d3b08
implement noise and blur source filters, move LPW in with other pipelines 2023-04-15 11:58:19 -05:00
Sean Sube 6854cbf23c
add attribution for ControlNet and Pix2Pix pipelines 2023-04-15 11:44:20 -05:00
Sean Sube 735f9d174f
apply lint 2023-04-15 11:20:11 -05:00
Sean Sube c91916b4ca
hide img2img from pipelines list 2023-04-15 11:11:43 -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 4fa9af7922
hide unused pipeline options 2023-04-15 09:02:17 -05:00
Sean Sube 0dd8272285
feat(api): convert CNet for existing diffusion models 2023-04-15 09:00:17 -05:00
Sean Sube 27954f3e65
feat(gui): add highres control to most tabs 2023-04-14 20:29:44 -05:00
Sean Sube ad35c41c9d
feat(api): add highres to img2img mode for all pipelines 2023-04-14 08:54:21 -05:00
Sean Sube c2f8ce5814
load UNet with ControlNet weights as needed 2023-04-13 23:05:00 -05:00
Sean Sube 06d55b0f1f
add filtered source to outputs 2023-04-13 22:51:59 -05:00
Sean Sube f986b75c85
remove redundant HF download calls 2023-04-13 21:46:46 -05:00
Sean Sube e2efa8c64e
fill in model names 2023-04-13 21:28:30 -05:00
Sean Sube 428fb06ecf
fix imports, add missing controlnet deps 2023-04-13 21:10:00 -05:00
Sean Sube 4df28a5ce7
feat: add menu for source image filters 2023-04-13 20:59:26 -05:00
Sean Sube 80d00e4477
feat(api): add source image filters for controlnet and others 2023-04-13 20:06:33 -05:00
Sean Sube bd992398ae
lint, fix numpy error in pix2pix 2023-04-13 18:41:22 -05:00
Sean Sube 52d639ffed
use keyword args for networks 2023-04-13 00:02:47 -05:00
Sean Sube 982dc10e64
fix(api): make pix2pix work with scheduler with float sigma 2023-04-12 23:44:08 -05:00
Sean Sube eb428e9541
fix strength 2023-04-12 23:33:01 -05:00
Sean Sube 8bf888959f
fix controlnet strength param 2023-04-12 23:30:59 -05:00
Sean Sube c91bdb7679
fix serialization and scheduler 2023-04-12 23:26:16 -05:00
Sean Sube 6b51041ee8
feat(api): add list pipelines endpoint 2023-04-12 23:14:45 -05:00
Sean Sube 4aabf1ee27
wire up pipeline parameter, apply lint 2023-04-12 23:11:53 -05:00
Sean Sube 2af1530a7e
feat: make pipeline type a request parameter 2023-04-12 22:58:48 -05:00
Sean Sube b2556809e9
apply lint 2023-04-12 20:06:13 -05:00
Sean Sube 555ec5a644
turn controlnet into a select list and localize its label, fix name lookup on server 2023-04-12 20:03:00 -05:00
Sean Sube 948bec6d0f
load controlnets from network models list 2023-04-12 08:51:16 -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 113f21fd34
remove safety checker 2023-04-11 19:40:08 -05:00
Sean Sube a3daaf0112
initial integration of controlnet pipeline 2023-04-11 19:29:25 -05:00
Sean Sube 00be4f4721
fix(api): run PyTorch GC on ROCm devices (#323) 2023-04-11 08:34:21 -05:00
Sean Sube de61e388a0
chore(api): remove some unused non-ONNX code paths 2023-04-11 08:26:21 -05:00
Sean Sube 1bfc7bee32
fix(api): run image workers as daemon procs 2023-04-10 23:23:08 -05:00
Sean Sube 76860f649a
feat(api): switch API server to Waitress (#159) 2023-04-10 23:21:13 -05:00
Sean Sube e3540ac435
feat(api): add linear blend stage for chain pipeline (#183) 2023-04-10 21:15:57 -05:00
Sean Sube 0a6c99d57e
lint repeated factors 2023-04-10 21:04:48 -05:00
Sean Sube 2eaf85a43e
feat(api): add chain pipeline stages to load images from S3 or URL (#184, #185) 2023-04-10 21:03:19 -05:00
Sean Sube 7f6da8eeca
feat(api): add params for SwinIR large models 2023-04-10 19:13:49 -05:00
Sean Sube 6570d19fa3
feat(api): add SwinIR real x4 to base models 2023-04-10 19:04:52 -05:00
Sean Sube 2a7621c195
feat(api): add params for more SwinIR models 2023-04-10 19:02:12 -05:00
Sean Sube e166989111
fix(api): use correct model for SwinIR 2023-04-10 17:57:42 -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 464bfd01b8
fix(api): apply FP16 patches to SD upscaling pipeline 2023-04-10 08:37:49 -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 7f504a5b5b
feat: add parameter for highres iterations (#316) 2023-04-09 19:53:00 -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 25176fea4d
fix(api): correctly blend LoRAs into UNet during conversion 2023-04-06 23:34:06 -05:00
Sean Sube 1cfc538018
fix(api): ensure spiral grid coords are always whole pixels 2023-04-06 08:52:27 -05:00
Sean Sube c8382dc689
feat(api): implement spiral tile order for non-square images 2023-04-04 20:02:13 -05:00
Sean Sube 0fdf4d3092
implement proper spiral grid coverage 2023-04-03 21:39:17 -05:00
Sean Sube 56ff9022da
fix(api): use min/max from config for more params 2023-04-01 18:14:24 -05:00
Sean Sube 85b332467e
fix(api): convert hidden states to fp32 before doing normalization on the CPU (#309) 2023-04-01 17:49:25 -05:00
Sean Sube 8e5971a293
fix lone else 2023-04-01 17:14:56 -05:00
Sean Sube bbbef8d4ba
apply lint 2023-04-01 16:38:08 -05:00
Sean Sube 56c359c265
remove undefined names 2023-04-01 15:46:52 -05:00
Sean Sube 6bad599b3c
lint(api): move some chatty logs to trace level 2023-04-01 15:39:22 -05:00
Sean Sube ed694aa64f
pass highres scale param to upscaling method 2023-04-01 15:15:56 -05:00
Sean Sube e4f55af380
fix scale in upscale copy ctor 2023-04-01 14:59:59 -05:00
Sean Sube 89c3b2a403
correctly upscale highres tiles 2023-04-01 14:41:35 -05:00
Sean Sube 6d23491529
only run correction before highres when selected in options 2023-04-01 14:39:48 -05:00
Sean Sube f451d8db74
feat: add method parameter for highres mode 2023-04-01 14:26:45 -05:00
Sean Sube 0f79f420b7
apply lint 2023-04-01 12:06:31 -05:00
Sean Sube e0e09996de
fix(api): restart workers on HIP memory errors 2023-04-01 12:06:14 -05:00
Sean Sube 6aac0fe56b
fix(api): restart workers on MIOPEN memory errors 2023-04-01 11:59:03 -05:00
Sean Sube 3c2bab3156
fix highres steps max 2023-04-01 11:50:10 -05:00
Sean Sube 4f41145792
add highres to txt2img tab and request 2023-04-01 11:39:32 -05:00
Sean Sube ba09748e94
feat(gui): add highres parameters 2023-04-01 11:26:10 -05:00
Sean Sube f462d80cc4
run correction before highres 2023-03-31 23:55:51 -05:00
Sean Sube ca80e92707
fix progress for highres, increase img2img steps 2023-03-31 23:52:33 -05:00
Sean Sube 4ab1b6cc88
resize tiles before running refinement steps 2023-03-31 23:39:25 -05:00
Sean Sube 66e938f9ab
split steps before and after highres 2023-03-31 23:32:05 -05:00
Sean Sube cdaf1b8e5d
feat(api): add support for highres images 2023-03-31 23:27:16 -05:00
Sean Sube 93fcfd1422
fix(api): update LPW pipeline (#298) 2023-03-28 17:34:23 -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 c2f8fb1d31
fix(api): combine names for ONNX fp16 optimization 2023-03-27 08:55:01 -05:00
Sean Sube 73e9cf8b66
fix(api): disable internal fp16 for VAE encoder (#290) 2023-03-27 08:10:40 -05:00
Sean Sube afa8f5e706
feat(api): add optimization for internal fp16 conversion 2023-03-26 22:41:12 -05:00
Sean Sube 0ea0442f02
apply lint 2023-03-26 18:24:22 -05:00
Sean Sube 4ddd69ba07
fix(api): watch for progress events from leaking workers 2023-03-26 18:22:16 -05:00
Sean Sube e1219cca90
fix(api): close queues after stopping workers 2023-03-26 18:21:53 -05:00
Sean Sube bb5d0635d1
sonar lint 2023-03-26 15:53:20 -05:00
Sean Sube 36bfccae09
fix(api): include worker totals in status endpoint 2023-03-26 15:49:43 -05:00
Sean Sube 2d2283e1eb
fix(api): attempt to read progress updates from recycled workers 2023-03-26 15:31:16 -05:00
Sean Sube 27500eccb5
fix(api): do not move jobs from pending to running until progress is reported 2023-03-26 14:22:59 -05:00
Sean Sube 0af406c47f
only enqueue jobs from progress worker 2023-03-26 14:02:57 -05:00
Sean Sube ccf8d51e08
feat(api): split up status endpoint by job status 2023-03-26 11:57:00 -05:00
Sean Sube ea36082e43
add job count to healthy worker logs 2023-03-26 11:53:06 -05:00
Sean Sube 8eab92a7df
define device on pending job 2023-03-26 11:49:58 -05:00
Sean Sube 83884bcafa
enqueue jobs on idle workers during progress check 2023-03-26 11:48:27 -05:00
Sean Sube 14ade83937
fix(api): enqueue next job when previous one finishes and after recycling worker 2023-03-26 11:41:45 -05:00
Sean Sube f3ab25f671
lint(api): add start method to worker pool 2023-03-26 11:30:07 -05:00