Commit Graph

118 Commits

Author SHA1 Message Date
Marc-Andre Ferland
2de96d4dc9 Scan model once as start, then only if changed. 2022-11-22 20:41:08 -05:00
JeLuF
6c156380f9 Add network settings to the UI
Allow users to choose the uvicorn port
Allow users to restrict uvicorn to only listen on localhost
2022-11-19 17:10:45 +01:00
cmdr2
f7af259576 Scan only the model files (check by extension), minor refactoring of the
scanning code
2022-11-19 10:44:32 +05:30
cmdr2
b18c2aea05 Don't cache css and js files, it's really annoying after merging every PR to have to update the version number in index.html. Disabling this until we figure out a better way 2022-11-18 17:31:20 +05:30
cmdr2
921711a679 Don't crash if an invalid model file is beign scanned 2022-11-18 16:12:45 +05:30
JeLuF
3e18f2f09c Picklescan of model files
During getModel(), the server picklescans the model files for potential
malicious code in the pickled python objects. If a malicious file is
found, the web UI will show a big red error message, the makeImage
button will be disabled, and the user must remove the malicious file
and reload the UI page.
2022-11-16 22:34:02 +01:00
cmdr2
46dfa57ee0 Allow the core project to ship UI plugins 2022-11-16 13:30:40 +05:30
cmdr2
a59bac4b40 UI setting for preventing browser autostart 2022-11-16 12:43:46 +05:30
cmdr2
75724797f7 Don't show a 500 error when the config json file doesn't exist 2022-11-16 12:20:25 +05:30
cmdr2
d04aeb55ad Fix default render device 2022-11-16 12:16:46 +05:30
cmdr2
47bd6dc6b8 Fix render devices auto 2022-11-16 12:14:06 +05:30
cmdr2
1f66daf2f3 Write the config script files only if necessary 2022-11-16 11:40:51 +05:30
cmdr2
ded9cb0358 Check if config contains update_branch before trying to write it to a script file 2022-11-16 11:36:04 +05:30
cmdr2
5cf763d51f Add a 'Save' button in settings, to avoid starting/stopping threads while a user is still modifying their GPU settings 2022-11-15 12:22:55 +05:30
Marc-Andre Ferland
5237f55a71 Removed extra line, use only save_render_devices_to_config 2022-11-14 22:29:55 -05:00
Marc-Andre Ferland
ffe0eb1544 Changed update_render_threads to use SetAppConfigRequest to set which devices are active.
Keep ImageRequest.render_device for affinity only. (Send a task to an already active device.)
2022-11-14 21:54:24 -05:00
cmdr2
36846618ec Allow configuring whether the browser is opened by default 2022-11-14 20:15:54 +05:30
cmdr2
31617ae340 Show a system info tab, which shows the active GPUs 2022-11-14 19:53:40 +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
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
fa0c2f7138 Temp change to get beta working and use a single GPU until the rest of the changes come through 2022-11-11 15:09:25 +05:30
cmdr2
bd56795c62 Switch to using cuda:N instead of N (integer device ids) 2022-11-11 14:46:05 +05:30
cmdr2
2c54b7f289 Remove the WIP line for render devices 2022-11-11 14:43:14 +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
058ce6fe82 UI-side changes for selecting multiple GPUs, and keeping the Use CPU option synchronized with the backend. This change isn't ready to be shipped, it still needs python-side changes to support the req.render_device config 2022-11-09 19:17:44 +05:30
cmdr2
087c10d52d
Sort models by name 2022-11-09 17:35:55 +05:30
cmdr2
18292e447c
Make the models dir if required 2022-11-09 16:28:58 +05:30
cmdr2
f742aad810
Merge pull request #446 from JeLuF/sd-ui-bind
Protect SD_UI_BIND_PORT and SD_UI_BIND_IP in config files
2022-11-09 10:09:28 +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
abbfae2fc0 Simplify the logic used for displaying the GFPGAN warning 2022-11-07 17:55:27 +05:30
JeLuF
58b759f652 Fix tabs to spaces 2022-11-06 16:50:23 +01:00
JeLuF
74ca756a53 Protect SD_UI_BIND_PORT and SD_UI_BIND_IP in config files 2022-11-06 00:27:11 +01:00
cmdr2
976bc727dd
Merge pull request #422 from madrang/device-select
Implement complete device selection in the backend.
2022-11-02 12:05:59 +05:30
JeLuF
d2f679030b
Don't put CUDA_VISIBLE_DEVICES hints if it's already set 2022-11-01 01:16:29 +01:00
JeLuF
7f151cbeba
Copy CUDA_VISIBLE_DEVICES to config.*, it it has been set
Don't delete CUDA_VISIBLE_DEVICES settings when generating a new config file
2022-10-31 00:48:18 +01:00
Marc-Andre Ferland
2208545612 Don't display this warning if on CPU. 2022-10-30 05:39:45 -04:00
Marc-Andre Ferland
70acc8a7c0 Syntax... 2022-10-29 19:02:07 -04:00
Marc-Andre Ferland
bf97781232 Don't let users register the same device twice. 2022-10-29 18:57:31 -04:00
Marc-Andre Ferland
b7a663ed20 Implement complete device selection in the backend. 2022-10-29 17:34:53 -04:00
Marc-Andre Ferland
03757632cf Missing .lower() cause CUDA:0 to fail check where cuda:0 works. 2022-10-29 04:33:14 -04:00
Marc-Andre Ferland
9f5202fee3 Improved readability and comments. 2022-10-29 00:43:02 -04:00
Marc-Andre Ferland
902ccbd203 Don't try to start cuda:0 if auto used cpu mode. 2022-10-29 00:36:26 -04:00
Marc-Andre Ferland
4675da4d16 Display warning on start failure.
Removes spam from exception and continue starting other devices.
2022-10-28 22:53:55 -04:00
cmdr2
ef6f491d94 Write lines, please 2022-10-28 22:42:11 +05:30
cmdr2
9dcef00fbb New lines for config.sh 2022-10-28 22:35:04 +05:30
cmdr2
e781e5dd43 Need to wrap the filter() output in a list 2022-10-28 22:30:05 +05:30
cmdr2
d3e672d811 Replace os-specific newlines with writelines() 2022-10-28 22:23:52 +05:30
cmdr2
dad1554ec2 Fix a bug where config.bat would not get written properly 2022-10-28 21:07:18 +05:30