Commit Graph

133 Commits

Author SHA1 Message Date
Marc-Andre Ferland
ba2c966329
First draft of multi-task in a single session. (#622) 2022-12-08 11:12:46 +05:30
cmdr2
bfdf487d52 SD2 models no longer need to be prefixed with 'sd2_' . The model loader now checks for a key that only SD2 models seem to have, to deduce which config file to use 2022-12-07 16:19:46 +05:30
Marc-Andre Ferland
182236e742
Hypernets mergefixes (#625)
* Add hypernetwork args definition in the engine.

* Add the values to reqBody

* Don't load hypernetwork.py with SD2 until it's compatible.
2022-12-07 12:35:36 +05:30
Guillaume Mercier
cbe91251ac
Hypernetwork support (#619)
* Update README.md

* Update README.md

* Make on_sd_start.sh executable

* Merge pull request #542 from patriceac/patch-1

Fix restoration of model and VAE

* Merge pull request #541 from patriceac/patch-2

Fix restoration of parallel output setting

* Hypernetwork support

Adds support for hypernetworks. Hypernetworks are stored in /models/hypernetworks

* forgot to remove unused code

Co-authored-by: cmdr2 <secondary.cmdr2@gmail.com>
2022-12-07 11:24:16 +05:30
JeLuF
e7ca8090fd
Make JPEG Output quality user controllable (#607)
Add a slider to the image options for the JPEG quality
For PNG images, the slider is hidden.
2022-12-05 11:02:33 +05:30
JeLuF
7861c57317
Safetensor support (Fixes #599) (#608)
* safetensors support
Add support for checkpoints in safetensors format: https://github.com/huggingface/safetensors

This format shall be safer than pickle files

* pip install safetensors
2022-12-05 10:59:48 +05:30
Marc-Andre Ferland
367e7f7065
Add dpm2 (#592)
* Move cond_stage_model to the right device

* Removed unused vars.

* Added 'dpm2'
2022-12-02 12:58:00 +05:30
Marc-Andre Ferland
ee19eaae62
Fix for RuntimeError, missing lines. (#591)
* Move cond_stage_model to the right device

* Removed unused vars.
2022-12-02 12:57:26 +05:30
cmdr2
426f92595e
Merge pull request #520 from madrang/fix-gfpgan
Fix the gfpgan fix for multi-gpu
2022-11-30 13:08:10 +05:30
cmdr2
ac605e9352 Typos and minor fixes for sd 2 2022-11-29 13:30:08 +05:30
cmdr2
e37be0f954 Remove the need to use yield in the core loop for streaming results. This removes the need to patch the Stable Diffusion code, which can be fragile 2022-11-29 13:03:57 +05:30
cmdr2
e503c6092e
Ddim decode for img2img 2022-11-26 00:55:39 +05:30
cmdr2
bee67fd883
Shape 2022-11-25 23:54:08 +05:30
cmdr2
a1d75d40aa
Update runtime.py 2022-11-25 23:36:43 +05:30
cmdr2
29484867ca
Typo 2022-11-25 23:32:56 +05:30
cmdr2
7fa983b971
Img2img sd2 attempt 2 2022-11-25 23:28:31 +05:30
cmdr2
617a8b2814
Fix for make_schedule error in sd2 2022-11-25 23:15:22 +05:30
cmdr2
b924d323d4
img2img attempt for sd2 2022-11-25 22:36:02 +05:30
cmdr2
642c114501 Working txt2img 2022-11-25 14:29:24 +05:30
cmdr2
02dd3e457d Tweaks to load sd1 models in sd2 code, typos 2022-11-25 13:57:15 +05:30
cmdr2
ea7b28c9d5 Placeholder changes for SD 2.0 support, haven't tested yet 2022-11-25 12:17:44 +05:30
Marc-Andre Ferland
0a21a69a9f Updated facexlib fix for usage on multi-gpu. 2022-11-20 13:04:22 -05:00
cmdr2
2cf8b2a453
Use the correct device name when moving the model to cpu 2022-11-20 00:43:38 +05:30
cmdr2
c10e773401 Speed up the model move, by using the earlier function to move modelCS and modelFS to the cpu 2022-11-19 11:53:33 +05:30
cmdr2
025d4df774 Don't crash if a VAE file fails to load 2022-11-18 13:11:48 +05:30
cmdr2
97ee085f30 Fix a bug where Face Correction (GFPGAN) would fail on cuda:N (i.e. GPUs other than cuda:0), as well as fail on CPU if the system had an incompatible GPU. 2022-11-17 12:27:06 +05:30
cmdr2
06b41aee58 Fix - reduce the amount of VRAM occupied when the program starts up, this caused a regression and failures on GPUs with 4 gb or less of VRAM 2022-11-16 19:29:04 +05:30
cmdr2
e99d54d1f6 Merge main 2022-11-16 11:19:10 +05:30
cmdr2
f6651b03b5 Workaround to run gfpgan on cuda:0 even if it's not enabled in the multi-gpu setup 2022-11-14 11:51:18 +05:30
cmdr2
ea03fd22db Start on multiple GPUs by default (top 75 percentile by free_mem); UI selection for 'cpu' or 'auto' or a list of specific GPUs, which is now linked to the backend; Dynamically start/stop render threads for the devices, without requiring a full program restart 2022-11-14 11:23:22 +05:30
cmdr2
a19ba40672
Typo 2022-11-12 13:31:59 +05:30
cmdr2
3983cb001f
Save the VAE model to the metadata text file 2022-11-12 13:29:24 +05:30
Marc-Andre Ferland
aa21115e26 Always return a byte buffer. Sending the picture as URL text fails in some browsers. 2022-11-11 20:44:39 -05:00
cmdr2
3fdd8d91e2 Handle device init failures and record that as an error, if the GPU has less than 3 gb of VRAM 2022-11-11 16:13:27 +05:30
cmdr2
c13bccc7ae Fix the error where a device named 'None' would get assigned for incompatible GPUs 2022-11-11 15:43:20 +05:30
cmdr2
bd56795c62 Switch to using cuda:N instead of N (integer device ids) 2022-11-11 14:46:05 +05:30
cmdr2
b9a12d1562 Restrict device selection id to 'cpu' or integers (and 'auto' in the initial device selection functions) 2022-11-10 20:03:11 +05:30
cmdr2
9bc7521de0 Make custom VAE an Image Setting, rather than a System Setting; Don't load a VAE into memory by default 2022-11-08 16:54:15 +05:30
cmdr2
67cca3bc00 Print the devices for which rendering threads have started; Prettier print of the model data 2022-11-07 18:26:10 +05:30
cmdr2
90b1609d4e device_selection is already a string, since we've used string functions before this line 2022-11-07 18:08:43 +05:30
cmdr2
abbfae2fc0 Simplify the logic used for displaying the GFPGAN warning 2022-11-07 17:55:27 +05:30
JeLuF
59e4c1cf79 Sanitize session id's before using them as path components 2022-11-03 00:43:44 +01:00
cmdr2
053bce7a8e
Set the correct mimetype in the base64 image 2022-10-31 19:05:57 +05:30
Marc-Andre Ferland
6229cdb1ba Added a missing device_name 2022-10-29 17:47:45 -04:00
Marc-Andre Ferland
b7a663ed20 Implement complete device selection in the backend. 2022-10-29 17:34:53 -04:00
cmdr2
a8c16e39b8 Support custom VAE files; Use vae-ft-mse-840000-ema-pruned as the default VAE, which can be overridden by putting a .vae.pt file inside models/stable-diffusion with the same name as the ckpt model file. The UI / System Settings allows setting the default VAE model to use 2022-10-28 20:06:44 +05:30
Marc-Andre Ferland
c52fc843f6 Comment... 2022-10-28 02:09:11 -04:00
Marc-Andre Ferland
02240bda25 Moved up to not duplicate if statement. 2022-10-28 02:05:48 -04:00
Marc-Andre Ferland
0185ef7c83 Apply force_full_precision if was set on device_select. 2022-10-28 02:02:09 -04:00
Marc-Andre Ferland
71c6beadb4 Only default to cpu on auto or current.
Not when a specific device was requested.
2022-10-28 01:09:38 -04:00