Commit Graph

88 Commits

Author SHA1 Message Date
Bryce
e67341223b feature: Stable Diffusion 2.0
working: CUDA and MacOS
working: 512p model with all samplers
working: inpainting with all samplers
working: 768p model with ddim sampler
2022-11-24 00:50:57 -08:00
Bryce
b8a88370de fix: lower memory reqs for attention on M1s 2022-11-13 13:40:37 -08:00
Bryce
7af1ab66ca fix: add workaround for bug in k_diffusion on mps
As documented here: https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/4558#issuecomment-1310387114

- make image logs more consistent
- note which step the progress images belong to in the filename
2022-11-12 20:19:23 -08:00
Bryce
021a0c540d feature: inpainting model support; improved model manager 2022-10-25 20:07:35 -07:00
Bryce
4ba1965db8 feature: k-diff sampler img2img and masking 2022-10-14 03:23:16 -07:00
Bryce
e8bb3cf5fd refactor: consolidate masking logic 2022-10-13 07:04:37 -07:00
Bryce
8d4b5cb9e1 refactor: standardize samplers more 2022-10-13 07:04:37 -07:00
Bryce
b0123a8f43 refactor: remove unused parameters 2022-10-11 01:06:24 -05:00
Bryce
62e4e9cc9d refactor: delete unused code 2022-10-07 00:02:26 -05:00
Bryce
e5c5df6b3d tests: add some utils tests 2022-10-07 00:02:26 -05:00
Bryce
69af07ab67 style: fix lint issues 2022-09-24 00:31:08 -07:00
Bryce
38c7f88950 feature: boolean logic masks
Specify advanced text based masks using boolean logic and strength modifiers. Mask descriptions must be lowercase. Keywords uppercase.
Valid symbols: `AND`, `OR`, `NOT`, `()`, and mask strength modifier `{*1.5}` where `+` can be any of `+ - * /`. Single-character boolean
operators also work.  When writing strength modifies know that pixel values are between 0 and 1.

 - feature: apply mask edits to original files
 - feature: auto-rotate images if exif data specifies to do so
 - fix: accept mask images in command line
2022-09-24 00:02:31 -07:00
Bryce
a3a0de08e9 autoformat 2022-09-23 14:41:15 -07:00
Jay Drennan
df28bf8805 refactor: implements changes to comply with pylama 2022-09-22 12:52:37 -06:00
Bryce
e23e363bf5 lint 2022-09-21 09:14:39 -07:00
Bryce
ff7fc0dab7 feature: tile mode can now be specified per-prompt 2022-09-20 22:57:03 -07:00
Bryce
a46424c673 feature: img2img now supported with PLMS (instead of just DDIM)
Kinda hacky copy/pasting from ddim.  Need to cleanup
2022-09-20 08:42:00 -07:00
Bryce
4705d182d5 feature: generate captions for images
- add wip functionality for negative masks
- ci: add code linter that removes unused imports
- add instructions to install rust on osx
2022-09-19 21:19:22 -07:00
Bryce
930295d840 feature: txt2mask - automated text replacement
from https://github.com/timojl/clipseg
2022-09-18 06:07:47 -07:00
Bryce
8238e59067 tests: add more tests 2022-09-17 15:49:38 -07:00
Bryce
d7cbf6e416 refactor: cleanup ddim
- delete more unused code
- fix some lints
2022-09-17 14:02:27 -07:00
Bryce
6307a0daf5 refactor: cleanup ddim 2022-09-17 12:24:27 -07:00
Bryce
bb665b9eb6 fix: make k-diffusion samplers deterministic
- add test for hashes on mps.  images look same on CUDA but are slightly different.
2022-09-14 09:37:45 -07:00
Bryce
b4a3b8c2b3 feature: k-diffusion samplers
- improved image logging functionality. can just stick log_latent wherever you want
- improved some variable naming
- moved all the samplers together
- vendored k-diffusion library
2022-09-14 00:40:25 -07:00
Bryce
ff7455034d docs and lint 2022-09-13 00:46:37 -07:00
Bryce
541ecb9701 feature: face enhancement and upscaling!! 2022-09-13 00:27:53 -07:00
Bryce
14a06e160d build: vendor clip
it's not on pypi
https://github.com/openai/CLIP/issues/141
2022-09-11 22:22:43 -07:00
Bryce
6ac3d40009 docs: update readme. add docs to package
Clean up logging some more
2022-09-11 21:36:14 -07:00
Bryce
292d1bcab5 perf: get "half" mode working when running on cuda 2022-09-11 21:32:11 -07:00
Bryce
84a73cb5a2 feature: (wip) better image to image
I tried it with the DDIM sampler and it didn't work.

Probably need to use the k-diffusion sampler with it
from a846393251/find_noise.py

needs https://github.com/crowsonkb/k-diffusion
2022-09-11 18:00:40 -07:00
Bryce
438c2868ad refactor: run import sorter 2022-09-11 13:58:14 -07:00
Bryce
0bb5b6b345 perf: performance optimizations from Doggettx
https://github.com/CompVis/stable-diffusion/compare/main...Doggettx:stable-diffusion:autocast-improvements#
https://www.reddit.com/r/StableDiffusion/comments/xalaws/test_update_for_less_memory_usage_and_higher/
2022-09-11 03:08:51 -07:00
Bryce
910b7b4180 refactor: simplify structure 2022-09-11 00:59:03 -07:00
Bryce
7a33ee2480 feature: cleaned up logging
- cleans up all the logging. hide most of it
 - create better readme. show example images
 - save metadata into image
2022-09-10 23:27:22 -07:00
Bryce
66c640ce7b feature: add ImageResult. step output option
remove verbose args
2022-09-09 22:14:04 -07:00
Bryce
a26e002a86 refactor: use logging instead of prints 2022-09-08 21:51:25 -07:00
Bryce
f782fac570 feature: image prompts 2022-09-08 21:30:20 -07:00
Bryce
0835b2db16 first commit 2022-09-07 20:59:30 -07:00