Sean Sube
1fae41ddcf
feat(api): add edge options to region feathering
2023-11-11 20:17:52 -06:00
Sean Sube
5fb2de85c5
feat(api): add feature flag for single-tile panorama highres
2023-11-11 17:03:01 -06:00
Sean Sube
798fa5fc6d
fix(api): allow random seed in reseed regions
2023-11-11 14:37:23 -06:00
Sean Sube
0d1bf44d25
fix reseed size and mask dims
2023-11-10 20:00:50 -06:00
Sean Sube
8a94cdb385
feat(api): add tokens to reseed region
2023-11-10 18:37:42 -06:00
Sean Sube
3622ac4bfb
work on non-square regions
2023-11-09 22:42:45 -06:00
Sean Sube
42c526eb25
fix region pattern, make strength and feather both decimals
2023-11-09 18:06:59 -06:00
Sean Sube
2af584eabf
add missing feather var
2023-11-08 22:05:06 -06:00
Sean Sube
4a2498ad8d
apply lint
2023-11-08 22:04:15 -06:00
Sean Sube
f4f3bda6f8
fix(api): allow all supported tensors extensions for VAE files
2023-11-08 22:00:56 -06:00
Sean Sube
59515193a1
feat(api): add edge feathering to region prompts
2023-11-08 22:00:32 -06:00
Sean Sube
633e078036
unpack mask to match latents
2023-11-08 19:07:41 -06:00
Sean Sube
f564bb3f65
add regions to non-XL panorama, add feathering to SDXL regions
2023-11-08 18:51:31 -06:00
HoopyFreud
63dfec6770
Fixed inpaint issue with no tile_mask
...
Currently inpainting does not work because the tiler needs to generate a tile_mask. This solves the issue by sending any pipeline that has sources through the tiler.
2023-11-06 16:53:16 -05:00
Sean Sube
7c67d595fb
add more misc logging
2023-11-06 08:48:35 -06:00
Sean Sube
408e3d725b
use regional noise sample, avoid very errors from large multipliers
2023-11-05 22:48:07 -06:00
Sean Sube
997891b255
fix coords and threshold
2023-11-05 22:19:55 -06:00
Sean Sube
2de4eb92b2
replace previous latents when region multiplier passes threshold
2023-11-05 21:41:40 -06:00
Sean Sube
05f63a32b7
flip and fix h/v coords for regions
2023-11-05 19:25:13 -06:00
Sean Sube
911f87f7ec
fix(api): only consume one retry per error
2023-11-05 19:23:42 -06:00
Sean Sube
df8b4abc77
fix region regex
2023-11-05 17:46:28 -06:00
Sean Sube
1af6a75723
replace region mode with multiplier
2023-11-05 17:28:07 -06:00
Sean Sube
ee2173405a
parse region coordinates
2023-11-05 16:38:43 -06:00
Sean Sube
b365660adc
move more SDXL LoRA logs to trace level
2023-11-05 16:35:32 -06:00
Sean Sube
baecb38343
fix region parsing
2023-11-05 16:25:48 -06:00
Sean Sube
8498252c75
parse region groups better
2023-11-05 16:06:49 -06:00
Sean Sube
c3f4c52004
fix region prompt regex
2023-11-05 15:56:03 -06:00
Sean Sube
046803fc2b
lint(api): reduce log level during SDXL LoRA blending
2023-11-05 15:55:49 -06:00
Sean Sube
8ba9f3c0b7
basic region prompt parsing
2023-11-05 15:46:37 -06:00
Sean Sube
5cf7a39be0
feat(api): add experimental region prompts to SDXL panorama
2023-11-05 15:36:36 -06:00
Sean Sube
e8d7d9a881
feat: split up UNet and VAE tile size and overlap/stride params
2023-11-04 20:41:58 -05:00
Sean Sube
e9b1375440
fix(api): write tests for embedding/inversion blending
2023-10-06 19:04:48 -05:00
Sean Sube
ebdfa78737
fix(api): allow PTH tensor files, add helper to check extension
2023-10-06 19:03:15 -05:00
Sean Sube
1351b2f3ff
fix(api): allow SDXL VAE in any supported tensor format, ensure new SDXL models get hash file
2023-10-06 19:01:00 -05:00
Sean Sube
047e58c916
fix(api): continue adding tests, fix bugs encountered
2023-09-28 18:45:04 -05:00
Sean Sube
23aa00d696
start testing pipeline loading
2023-09-25 21:57:25 -05:00
Sean Sube
fc02fa6be1
fix(api): blend embeddings into second tokenizer/text encoder for SDXL
2023-09-25 18:24:16 -05:00
Sean Sube
e338fcd0e0
lint(api): start renaming inversions to embeddings in code
2023-09-24 18:15:58 -05:00
Sean Sube
cdb09d2b44
fix variable name
2023-09-24 18:05:48 -05:00
Sean Sube
e1c2ae5b1b
serialize models before loading
2023-09-24 18:04:23 -05:00
Sean Sube
a3a04fd1f4
clean up text encoder loading logic, deduplicate sessions
2023-09-24 18:01:56 -05:00
Sean Sube
85b4245cef
fix text encoder loading
2023-09-24 15:02:39 -05:00
Sean Sube
0ecae65f88
fix(api): set VAE attn processor during conversion
2023-09-24 15:02:21 -05:00
Sean Sube
a79d835193
fix(api): remove still-random seed from stage kwargs
2023-09-24 10:12:19 -05:00
Sean Sube
5ffe8b26fa
fix(api): increase max tile size for output and grid stages to max
2023-09-24 10:11:52 -05:00
Sean Sube
539140909b
fix XL text encoder loading
2023-09-24 10:04:44 -05:00
Sean Sube
5d3a7d77a5
fix(api): use Torch pipelines while loading models for conversion
2023-09-24 10:04:21 -05:00
Sean Sube
c99481f484
fix(api): load replacement VAE from single file for SD v1/v2
2023-09-24 09:49:50 -05:00
Sean Sube
56f19256b5
fix(api): correctly load text encoder 2 and VAE without LoRAs
2023-09-24 09:49:16 -05:00
Sean Sube
d11b37f0b2
move text encoder 2 loading
2023-09-23 22:59:41 -05:00
Sean Sube
6b6f63564e
lint(api): start breaking down model loading
2023-09-23 20:11:05 -05:00
Sean Sube
52fdf4f48a
fix(api): test LoRA blending code
2023-09-21 18:24:08 -05:00
Sean Sube
d48dbf7d6e
fix(api): enable Unet patch for SDXL
2023-09-20 19:28:34 -05:00
Sean Sube
af6cb1f295
more lint
2023-09-15 19:22:53 -05:00
Sean Sube
963794abaa
lint, tests
2023-09-15 19:16:47 -05:00
Sean Sube
a71298ff33
remove unused schema, lint
2023-09-15 08:40:56 -05:00
Sean Sube
b851c234fe
more tests
2023-09-14 19:35:48 -05:00
Sean Sube
bbff1913ef
fix(api): do not apply prompt expansion patch to SDXL
2023-09-13 22:09:41 -05:00
Sean Sube
4d0e24a47b
fix request log keys
2023-09-13 22:06:12 -05:00
Sean Sube
e034ebfc13
add a bunch of tests
2023-09-13 22:03:39 -05:00
Sean Sube
a33c88e670
fix(api): make request parsing consistent between JSON and forms
2023-09-13 17:27:44 -05:00
Sean Sube
8a5e211172
lint(api): deduplicate some imports
2023-09-13 17:27:05 -05:00
Sean Sube
e7aad281b0
fix(api): only remove one retry after each tile failure
2023-09-13 17:26:43 -05:00
Sean Sube
07bea84155
syntax fix
2023-09-13 08:44:57 -05:00
Sean Sube
505e408dd6
use pipeline output count
2023-09-13 08:43:31 -05:00
Sean Sube
0a5f725efa
apply lint
2023-09-12 19:17:03 -05:00
Sean Sube
7d8819ef87
add default parameters to chain pipeline
2023-09-12 19:06:13 -05:00
Sean Sube
f9acf9b50f
fix(api): report chain progress using a new callback if none was provided
2023-09-12 18:19:07 -05:00
Sean Sube
55ddb9fdac
feat(api): attempt to calculate total steps for chain pipelines
2023-09-12 18:16:16 -05:00
Sean Sube
4ccdedba89
set model path for VAE sessions
2023-09-12 07:32:29 -05:00
Sean Sube
d4b013068d
fix(api): ensure VAE is loaded on correct device
2023-09-12 07:21:35 -05:00
Sean Sube
fd8b9bef3b
fix type check
2023-09-11 20:47:03 -05:00
Sean Sube
cf2cf51b17
fix(api): resolve XL VAE within model folder
2023-09-11 20:21:43 -05:00
Sean Sube
6fb0366f52
feat(api): make tile retries configurable
2023-09-11 18:41:59 -05:00
Sean Sube
cd06f9291b
add custom VAE and fp16 support to SDXL conversion
2023-09-11 18:18:38 -05:00
Sean Sube
eeebdfebcb
set unlimited tile to large value, clarify variable names
2023-09-11 17:37:20 -05:00
Sean Sube
1247cb7307
super hacky multi tiling
2023-09-11 07:28:20 -05:00
Sean Sube
0047e1a12c
add size
2023-09-10 23:20:49 -05:00
Sean Sube
b0df6247b2
synthesize order
2023-09-10 23:15:01 -05:00
Sean Sube
feb9ea9e1a
fix order, parse right data, use output names
2023-09-10 23:06:00 -05:00
Sean Sube
51b10de265
pass initial device to chain
2023-09-10 22:46:06 -05:00
Sean Sube
fb7a0996a8
wire up per stage params
2023-09-10 22:21:48 -05:00
Sean Sube
dcc0063195
pass params per stage
2023-09-10 22:19:29 -05:00
Sean Sube
c6302946c0
use existing output names in output stage
2023-09-10 21:52:45 -05:00
Sean Sube
dc812a4e06
pass all output names to chain job
2023-09-10 21:44:00 -05:00
Sean Sube
52521e5694
handle boolean values better
2023-09-10 21:25:23 -05:00
Sean Sube
d0080c476d
read chain params per stage
2023-09-10 21:23:16 -05:00
Sean Sube
441a47a885
read chain params per stage
2023-09-10 21:21:57 -05:00
Sean Sube
93fe54577c
skip controlnet in chains for now, remove empty source image
2023-09-10 21:17:09 -05:00
Sean Sube
1fb965633e
read chain pipeline from JSON, remove new endpoint
2023-09-10 20:59:13 -05:00
Sean Sube
1a732d54b6
add endpoint for multiple image generation
2023-09-10 16:35:16 -05:00
Sean Sube
956a260db6
fix import
2023-09-10 12:15:39 -05:00
Sean Sube
f2d0c2f765
apply lint
2023-09-10 11:53:36 -05:00
Sean Sube
fe68670844
feat(api): add conversion for SDXL models
2023-09-10 11:52:46 -05:00
Sean Sube
78f834a678
apply lint
2023-09-10 11:26:55 -05:00
Sean Sube
0fa03e77ad
feat: add panorama pipeline for SDXL
2023-09-10 11:26:18 -05:00
BZLibby
bea5a3c935
rebase diffuser change
2023-09-05 20:56:01 -05:00
Sean Sube
761ee05134
apply lint
2023-09-05 17:36:17 -05:00
Sean Sube
edfd059b46
remove SDXL inpaint import
2023-09-05 17:05:27 -05:00
Sean Sube
540864c3a8
fix initial tile size for XL
2023-09-04 21:21:09 -05:00
Sean Sube
bb9cda58ad
apply lint
2023-09-04 21:21:06 -05:00
Sean Sube
2047f7d8cf
pass XL components as ORT sessions
2023-09-04 21:21:00 -05:00
Sean Sube
9999a1bf56
add support for XL inpainting pipeline
2023-09-04 21:20:57 -05:00
Sean Sube
1d5ac7dde5
optimize XL LoRA node matching
2023-09-04 21:20:54 -05:00
Sean Sube
5e5915c3ff
pass latents again
2023-09-04 21:20:48 -05:00
Sean Sube
8ce09d307b
feat(api): allow a different prompt for each highres stage
2023-09-04 21:20:45 -05:00
Sean Sube
6b31075616
fix(api): override pipeline models if pipeline ignored components
2023-09-04 21:20:42 -05:00
Sean Sube
ea9023c2eb
fix(api): only run SDXL LoRA node matching on XL models
2023-09-04 21:20:39 -05:00
Sean Sube
ecac0d5770
apply lint
2023-09-04 21:20:33 -05:00
Sean Sube
bbacfd1ca0
feat(api): support for SDXL LoRAs
2023-09-04 21:20:30 -05:00
Sean Sube
0ad250251e
feat(api): add an experimental multi-prompt syntax
2023-09-04 21:20:27 -05:00
Sean Sube
2c8ba67ecb
make highres work with SDXL and use a full-size txt2img stage
2023-09-04 21:20:23 -05:00
Sean Sube
ee430a962b
fixes for optimum
2023-09-04 21:20:16 -05:00
Sean Sube
404a314050
lint(api): add typed errors from cancelled job and download error
2023-09-04 21:20:04 -05:00
Sean Sube
44004730ea
skip loading component models for XL
2023-09-04 21:20:01 -05:00
Sean Sube
273ace7693
add helper method to get max size
2023-09-04 21:19:57 -05:00
Sean Sube
3b6eb6c43b
apply lint
2023-09-04 21:19:52 -05:00
Sean Sube
440e47f736
fix(api): defer txt2img tiling to panorama pipeline when selected
2023-09-04 21:19:45 -05:00
Sean Sube
d94a8d6f6e
fix(api): avoid padding latents when they are not being tiled
2023-09-04 21:19:42 -05:00
Sean Sube
944c92b824
fix(api): ensure panorama never generates a negative number of views
2023-09-04 21:19:39 -05:00
Sean Sube
8e1f188d8f
fix(api): pass replacement VAE to diffusers conversion
2023-09-04 21:19:36 -05:00
Sean Sube
f73dce507c
fix(models): update attn parameter name in CNet
2023-09-04 21:19:31 -05:00
Sean Sube
0fafc71ec8
add XL pipelines to list of valid options
2023-09-04 21:19:28 -05:00
Sean Sube
b1a554e1a7
fix import
2023-09-04 21:19:24 -05:00
Sean Sube
a201a74b40
add SDXL pipelines to list
2023-09-04 21:19:20 -05:00
Sean Sube
dc9048c76f
fix(api): use correct case for PNG metadata
2023-08-02 17:43:17 -05:00
Sean Sube
079d4aa602
feat(gui): load and parse most parameters from image, text, or json
2023-07-19 22:42:49 -05:00
Sean Sube
c506fe1e9f
make sure job is always defined, remove unused placeholders from logs
2023-07-17 22:46:02 -05:00
Sean Sube
01c7392a61
add helper to remove NaN values in UNet output
2023-07-16 12:03:14 -05:00
Sean Sube
8d6ea63330
apply lint
2023-07-16 10:55:12 -05:00
Sean Sube
cac4c138b2
remove unused param
2023-07-16 10:46:26 -05:00
Sean Sube
9f9ef8878d
apply lint
2023-07-15 19:01:06 -05:00
Sean Sube
c52ee7da4d
lint(api): replace deprecated warn method when logging
2023-07-15 19:00:52 -05:00
Sean Sube
dfe9f6ee44
fix(api): split up worker name and job name to avoid logging false failures
2023-07-15 19:00:20 -05:00
Sean Sube
7f099c02e5
reset retries with each new job
2023-07-15 18:55:38 -05:00
Sean Sube
b31f546516
lint(api): use more accurate worker name throughout
2023-07-15 18:54:54 -05:00
Sean Sube
ada482c183
add and use retry exception type
2023-07-15 17:05:27 -05:00
Sean Sube
1942c45789
apply lint
2023-07-15 16:55:52 -05:00
Sean Sube
c7e1fce557
clear model cache on stage errors
2023-07-15 12:33:07 -05:00
Sean Sube
822dfeab01
only remove retries when an error occurs
2023-07-15 12:26:37 -05:00
Sean Sube
4f0c6d292d
exit from chain pipeline when retries are exhausted
2023-07-15 12:18:25 -05:00
Sean Sube
7761aea28b
share retries throughout pipeline
2023-07-15 11:20:25 -05:00
Sean Sube
d418cb1bc2
run GC during stage retries
2023-07-15 11:00:06 -05:00
Sean Sube
caa96ed645
apply lint
2023-07-15 09:26:39 -05:00
Sean Sube
0a701c8d6c
add retry to stage loop
2023-07-15 09:12:37 -05:00
Sean Sube
eebbd8e7c7
apply lint
2023-07-13 07:35:20 -05:00
BZLibby
5ecc874c70
fix wildcard scripts to work on windows
2023-07-13 05:19:13 -07:00
Sean Sube
cf95ad2f0e
fix(api): match size of existing latent patch
2023-07-12 22:02:05 -05:00
Sean Sube
3d4c77d5d0
fix(api): generate new latents for partial tiles
2023-07-12 22:00:11 -05:00
Sean Sube
4b8358b0c9
Merge remote-tracking branch 'hoopyfreud/main'
2023-07-12 21:59:39 -05:00