2022-09-02 10:28:36 +02:00
<!DOCTYPE html>
< html >
2022-09-23 16:18:48 +02:00
< head >
2022-12-24 19:53:51 +01:00
< title > Easy Diffusion< / title >
2022-09-02 10:28:36 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
2022-11-27 21:49:23 +01:00
< meta name = "theme-color" content = "#673AB6" >
2022-10-18 16:48:56 +02:00
< link rel = "icon" type = "image/png" href = "/media/images/favicon-16x16.png" sizes = "16x16" >
< link rel = "icon" type = "image/png" href = "/media/images/favicon-32x32.png" sizes = "32x32" >
2023-02-06 11:02:54 +01:00
< link rel = "stylesheet" href = "/media/css/jquery-confirm.min.css" >
2022-11-18 13:01:20 +01:00
< link rel = "stylesheet" href = "/media/css/fonts.css" >
< link rel = "stylesheet" href = "/media/css/themes.css" >
< link rel = "stylesheet" href = "/media/css/main.css" >
< link rel = "stylesheet" href = "/media/css/auto-save.css" >
< link rel = "stylesheet" href = "/media/css/modifier-thumbnails.css" >
< link rel = "stylesheet" href = "/media/css/fontawesome-all.min.css" >
2022-12-01 11:31:09 +01:00
< link rel = "stylesheet" href = "/media/css/image-editor.css" >
2023-02-12 10:18:09 +01:00
< link rel = "stylesheet" href = "/media/css/searchable-models.css" >
2023-03-15 02:43:49 +01:00
< link rel = "stylesheet" href = "/media/css/image-modal.css" >
2023-05-25 09:31:17 +02:00
< link rel = "stylesheet" href = "/media/css/plugins.css" >
2023-07-28 19:18:41 +02:00
< link rel = "stylesheet" href = "/media/css/animations.css" >
2023-08-17 08:03:05 +02:00
< link rel = "stylesheet" href = "/media/css/croppr.css" rel = "stylesheet" / >
2022-11-26 21:50:27 +01:00
< link rel = "manifest" href = "/media/manifest.webmanifest" >
2022-10-18 16:48:56 +02:00
< script src = "/media/js/jquery-3.6.1.min.js" > < / script >
2022-11-22 21:27:36 +01:00
< script src = "/media/js/jquery-confirm.min.js" > < / script >
2023-03-14 06:10:24 +01:00
< script src = "/media/js/jszip.min.js" > < / script >
< script src = "/media/js/FileSaver.min.js" > < / script >
2022-11-16 12:24:28 +01:00
< script src = "/media/js/marked.min.js" > < / script >
2023-08-17 08:03:05 +02:00
< script src = "/media/js/croppr.js" > < / script >
2023-08-21 09:58:26 +02:00
< script src = "/media/js/exif-reader.js" > < / script >
2022-09-23 16:18:48 +02:00
< / head >
2022-09-02 10:28:36 +02:00
< body >
< div id = "container" >
2022-09-23 13:37:54 +02:00
< div id = "top-nav" >
< div id = "logo" >
2022-11-22 06:37:50 +01:00
< h1 >
2023-03-11 04:57:04 +01:00
< img id = "logo_img" src = "/media/images/icon-512x512.png" >
2022-12-24 17:06:47 +01:00
Easy Diffusion
2024-05-27 11:48:14 +02:00
< small > < span id = "version" > v3.0.8< / span > < span id = "updateBranchLabel" > < / span > < / small >
2022-11-22 06:37:50 +01:00
< / h1 >
2022-09-23 13:37:54 +02:00
< / div >
2022-11-02 07:03:05 +01:00
< div id = "server-status" >
< div id = "server-status-color" > ●< / div >
< span id = "server-status-msg" > Stable Diffusion is starting..< / span >
< / div >
2023-02-06 14:39:39 +01:00
< div id = "tab-container" class = "tab-container" >
2022-11-09 04:54:41 +01:00
< span id = "tab-main" class = "tab active" >
2022-11-02 07:03:05 +01:00
< span > < i class = "fa fa-image icon" > < / i > Generate< / span >
< / span >
2022-11-09 04:54:41 +01:00
< span id = "tab-settings" class = "tab" >
2022-09-23 13:37:54 +02:00
< span > < i class = "fa fa-gear icon" > < / i > Settings< / span >
2022-11-02 07:03:05 +01:00
< / span >
2022-11-09 04:54:41 +01:00
< span id = "tab-about" class = "tab" >
2022-11-09 05:19:31 +01:00
< span > < i class = "fa fa-comments icon" > < / i > Help & Community< / span >
2022-11-02 07:03:05 +01:00
< / span >
< / div >
2022-09-23 13:37:54 +02:00
< / div >
2022-11-09 04:54:41 +01:00
< div id = "tab-content-wrapper" >
< div id = "tab-content-main" class = "tab-content active flex-container" >
2022-12-12 14:33:16 +01:00
< div id = "editor" >
2022-09-02 10:28:36 +02:00
< div id = "editor-inputs" >
< div id = "editor-inputs-prompt" class = "row" >
2023-07-16 11:00:45 +02:00
< div id = "prompt-toolbar" class = "split-toolbar" >
< div id = "prompt-toolbar-left" class = "toolbar-left" >
2023-08-21 09:58:26 +02:00
< label for = "prompt" > < b > Enter Prompt< / b >
< i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip right" >
You can type your prompts in the below textbox or load them from a file. You can also
reload tasks from metadata embedded in PNG, WEBP and JPEG images (enable embedding from the Settings).
< / span > < / i >
< / label >
< small > or< / small >
< button id = "promptsFromFileBtn" class = "tertiaryButton smallButton" > Load from a file< / button >
2023-07-16 11:00:45 +02:00
< / div >
< div id = "prompt-toolbar-right" class = "toolbar-right" >
< button id = "image-modifier-dropdown" class = "tertiaryButton smallButton" > + Image Modifiers< / button >
< button id = "embeddings-button" class = "tertiaryButton smallButton displayNone" > + Embedding< / button >
< / div >
< / div >
2022-09-02 10:28:36 +02:00
< textarea id = "prompt" class = "col-free" > a photograph of an astronaut riding a horse< / textarea >
2022-10-07 20:16:56 +02:00
< input id = "prompt_from_file" name = "prompt_from_file" type = "file" / > <!-- hidden -->
2022-11-08 12:49:20 +01:00
< label for = "negative_prompt" class = "collapsible" id = "negative_prompt_handle" >
Negative Prompt
2023-06-14 11:57:06 +02:00
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/Writing-prompts#negative-prompts" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top" > Click to learn more about Negative Prompts< / span > < / i > < / a >
2022-11-08 12:49:20 +01:00
< small > (optional)< / small >
< / label >
2023-08-17 09:02:50 +02:00
< button id = "negative-embeddings-button" class = "tertiaryButton smallButton displayNone" > + Negative Embedding< / button >
2022-10-17 10:15:08 +02:00
< div class = "collapsible-content" >
2022-11-16 23:35:27 +01:00
< textarea id = "negative_prompt" name = "negative_prompt" placeholder = "list the things to remove from the image (e.g. fog, green)" > < / textarea >
2022-10-17 10:15:08 +02:00
< / div >
< / div >
2022-10-14 19:31:23 +02:00
2022-09-02 10:28:36 +02:00
< div id = "editor-inputs-init-image" class = "row" >
2022-12-01 11:31:09 +01:00
< label for = "init_image" > Initial Image (img2img) < small > (optional)< / small > < / label >
2023-08-21 09:58:26 +02:00
< i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top" >
Add img2img source image using the Browse button, via drag & drop from external file or browser image (incl.
rendered image) or by pasting an image from the clipboard using Ctrl+V.< br / > < br / >
You may also reload the metadata embedded in a PNG, WEBP or JPEG image (enable embedding from the Settings).
< / span > < / i >
2022-09-15 19:59:55 +02:00
2022-09-02 10:28:36 +02:00
< div id = "init_image_preview_container" class = "image_preview_container" >
2023-08-01 12:09:15 +02:00
< div id = "init_image_wrapper" class = "preview_image_wrapper" >
< img id = "init_image_preview" class = "image_preview" src = "" crossorigin = "anonymous" / >
2023-03-01 10:47:27 +01:00
< span id = "init_image_size_box" class = "img_bottom_label" > < / span >
2022-11-30 16:44:18 +01:00
< button class = "init_image_clear image_clear_btn" > < i class = "fa-solid fa-xmark" > < / i > < / button >
2022-10-17 08:10:01 +02:00
< / div >
2022-12-06 09:26:51 +01:00
< div id = "init_image_buttons" >
< div class = "button" >
< i class = "fa-regular fa-folder-open" > < / i >
Browse
< input id = "init_image" name = "init_image" type = "file" / >
< / div >
< div id = "init_image_button_draw" class = "button" >
< i class = "fa-solid fa-pencil" > < / i >
Draw
< / div >
< div id = "inpaint_button_container" >
< div id = "init_image_button_inpaint" class = "button" >
< i class = "fa-solid fa-paintbrush" > < / i >
Inpaint
< / div >
< input id = "enable_mask" name = "enable_mask" type = "checkbox" >
< / div >
2022-12-01 11:31:09 +01:00
< / div >
2022-09-02 10:28:36 +02:00
< / div >
2022-12-01 11:31:09 +01:00
2022-12-24 19:53:51 +01:00
< div id = "apply_color_correction_setting" class = "pl-5" > < input id = "apply_color_correction" name = "apply_color_correction" type = "checkbox" > < label for = "apply_color_correction" > Preserve color profile < small > (helps during inpainting)< / small > < / label > < / div >
2023-07-30 10:21:19 +02:00
< div id = "strict_mask_border_setting" class = "pl-5" > < input id = "strict_mask_border" name = "strict_mask_border" type = "checkbox" > < label for = "strict_mask_border" > Strict Mask Border < small > (won't modify outside the mask, but the mask border might be visible)< / small > < / label > < / div >
2022-12-24 19:53:51 +01:00
2022-09-02 10:28:36 +02:00
< / div >
< div id = "editor-inputs-tags-container" class = "row" >
2023-06-19 16:24:31 +02:00
< label > Image Modifiers < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip right" > Click an Image Modifier to remove it, right-click to temporarily disable it, use Ctrl+Mouse Wheel to adjust its weight< / span > < / i > < / label >
2022-09-22 17:01:30 +02:00
< div id = "editor-inputs-tags-list" > < / div >
2022-09-02 10:28:36 +02:00
< / div >
2022-11-18 12:44:58 +01:00
< button id = "makeImage" class = "primaryButton" > Make Image< / button >
2022-12-11 14:57:01 +01:00
< div id = "render-buttons" >
< button id = "stopImage" class = "secondaryButton" > Stop All< / button >
< button id = "pause" > < i class = "fa-solid fa-pause" > < / i > Pause All< / button >
< button id = "resume" > < i class = "fa-solid fa-play" > < / i > Resume< / button >
< / div >
2022-09-02 10:28:36 +02:00
< / div >
2022-11-02 07:03:05 +01:00
< span class = "line-separator" > < / span >
2022-09-02 10:28:36 +02:00
2022-11-09 09:13:43 +01:00
< div id = "editor-settings" class = "settings-box panel-box" >
2022-10-22 02:44:04 +02:00
< h4 class = "collapsible" >
Image Settings
2022-11-02 07:03:05 +01:00
< i id = "reset-image-settings" class = "fa-solid fa-arrow-rotate-left section-button" >
2022-12-11 08:29:23 +01:00
< span class = "simple-tooltip top-left" >
2022-10-22 02:44:04 +02:00
Reset Image Settings
< / span >
< / i >
< / h4 >
2022-11-02 07:03:05 +01:00
< div id = "editor-settings-entries" class = "collapsible-content" >
< div > < table >
2022-10-17 08:10:01 +02:00
< tr > < b class = "settings-subheader" > Image Settings< / b > < / tr >
2023-08-29 10:02:06 +02:00
< tr class = "pl-5" > < td > < label for = "seed" > Seed:< / label > < / td > < td > < input id = "seed" name = "seed" size = "10" value = "0" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" > < input id = "random_seed" name = "random_seed" type = "checkbox" checked > < label for = "random_seed" > Random< / label > < / td > < / tr >
2023-08-19 06:21:34 +02:00
< tr class = "pl-5" > < td > < label for = "num_outputs_total" > Number of Images:< / label > < / td >
2023-08-29 10:02:06 +02:00
< td > < input id = "num_outputs_total" name = "num_outputs_total" value = "1" type = "number" value = "1" min = "1" step = "1" onkeypres " = " preventNonNumericalInput ( event ) " inputmode = "numeric" >
2023-08-19 06:21:34 +02:00
< label > < small > (total)< / small > < / label >
2023-08-29 10:02:06 +02:00
< input id = "num_outputs_parallel" name = "num_outputs_parallel" value = "1" type = "number" value = "1" min = "1" step = "1" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" >
2023-08-19 06:21:34 +02:00
< label id = "num_outputs_parallel_label" for = "num_outputs_parallel" > < small > (in parallel)< / small > < / label > < / td >
< / tr >
2023-02-12 10:18:09 +01:00
< tr class = "pl-5" > < td > < label for = "stable_diffusion_model" > Model:< / label > < / td > < td class = "model-input" >
2023-02-13 07:31:40 +01:00
< input id = "stable_diffusion_model" type = "text" spellcheck = "false" autocomplete = "off" class = "model-filter" data-path = "" / >
2023-02-12 10:18:09 +01:00
< button id = "reload-models" class = "secondaryButton reloadModels" > < i class = 'fa-solid fa-rotate' > < / i > < / button >
2023-06-14 11:57:06 +02:00
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/Custom-Models" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about custom models< / span > < / i > < / a >
2022-10-17 08:10:01 +02:00
< / td > < / tr >
2023-07-29 17:39:27 +02:00
< tr class = "pl-5 displayNone" id = "enable_trt_config" >
2023-08-01 08:19:30 +02:00
< td > < label for = "convert_to_tensorrt" > Enable TensorRT:< / label > < / td >
2023-07-29 17:39:27 +02:00
< td class = "diffusers-restart-needed" >
< input id = "convert_to_tensorrt" name = "convert_to_tensorrt" type = "checkbox" >
2023-08-01 14:09:04 +02:00
<!-- <label><small>Takes upto 20 mins the first time</small></label> -->
2023-07-29 17:39:27 +02:00
< / td >
< / tr >
2023-05-18 13:55:45 +02:00
< tr class = "pl-5 displayNone" id = "clip_skip_config" >
< td > < label for = "clip_skip" > Clip Skip:< / label > < / td >
2023-07-09 22:54:25 +02:00
< td class = "diffusers-restart-needed" >
2023-05-18 13:55:45 +02:00
< input id = "clip_skip" name = "clip_skip" type = "checkbox" >
2023-06-14 11:57:06 +02:00
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/Clip-Skip" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about Clip Skip< / span > < / i > < / a >
2023-05-18 13:55:45 +02:00
< / td >
< / tr >
2023-08-03 13:38:21 +02:00
< tr id = "controlnet_model_container" class = "pl-5" >
< td > < label for = "controlnet_model" > ControlNet Image:< / label > < / td >
< td class = "diffusers-restart-needed" >
< div id = "control_image_wrapper" class = "preview_image_wrapper" >
< img id = "control_image_preview" class = "image_preview" src = "" crossorigin = "anonymous" / >
< span id = "control_image_size_box" class = "img_bottom_label" > < / span >
< button class = "control_image_clear image_clear_btn" > < i class = "fa-solid fa-xmark" > < / i > < / button >
< / div >
< input id = "control_image" name = "control_image" type = "file" / >
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/ControlNet" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about ControlNets< / span > < / i > < / a >
< div id = "controlnet_config" class = "displayNone" >
< label > < small > Filter to apply:< / small > < / label >
< select id = "control_image_filter" >
< option value = "" > None< / option >
< optgroup label = "Pose" >
< option value = "openpose" > OpenPose (*)< / option >
< option value = "openpose_face" > OpenPose face< / option >
< option value = "openpose_faceonly" > OpenPose face-only< / option >
< option value = "openpose_hand" > OpenPose hand< / option >
< option value = "openpose_full" > OpenPose full< / option >
< / optgroup >
< optgroup label = "Outline" >
< option value = "canny" > Canny (*)< / option >
< option value = "mlsd" > Straight lines< / option >
< option value = "scribble_hed" > Scribble hed (*)< / option >
< option value = "scribble_hedsafe" > Scribble hedsafe< / option >
< option value = "scribble_pidinet" > Scribble pidinet< / option >
< option value = "scribble_pidsafe" > Scribble pidsafe< / option >
< option value = "softedge_hed" > Softedge hed< / option >
< option value = "softedge_hedsafe" > Softedge hedsafe< / option >
< option value = "softedge_pidinet" > Softedge pidinet< / option >
< option value = "softedge_pidsafe" > Softedge pidsafe< / option >
< / optgroup >
< optgroup label = "Depth" >
< option value = "normal_bae" > Normal bae (*)< / option >
< option value = "depth_midas" > Depth midas< / option >
< option value = "depth_zoe" > Depth zoe< / option >
< option value = "depth_leres" > Depth leres< / option >
< option value = "depth_leres++" > Depth leres++< / option >
< / optgroup >
< optgroup label = "Line art" >
< option value = "lineart_coarse" > Lineart coarse< / option >
< option value = "lineart_realistic" > Lineart realistic< / option >
< option value = "lineart_anime" > Lineart anime< / option >
< / optgroup >
< optgroup label = "Misc" >
< option value = "shuffle" > Shuffle< / option >
< option value = "segment" > Segment< / option >
< / optgroup >
< / select >
< br / >
< label for = "controlnet_model" > < small > Model:< / small > < / label > < input id = "controlnet_model" type = "text" spellcheck = "false" autocomplete = "off" class = "model-filter" data-path = "" / >
< br / >
< label > < small > Will download the necessary models, the first time.< / small > < / label >
< / div >
< / td >
< / tr >
2023-04-28 14:25:03 +02:00
< tr class = "pl-5" > < td > < label for = "vae_model" > Custom VAE:< / label > < / td > < td >
2023-02-13 07:31:40 +01:00
< input id = "vae_model" type = "text" spellcheck = "false" autocomplete = "off" class = "model-filter" data-path = "" / >
2023-06-14 11:57:06 +02:00
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/VAE-Variational-Auto-Encoder" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about VAEs< / span > < / i > < / a >
2022-11-08 12:24:15 +01:00
< / td > < / tr >
2022-12-12 10:51:02 +01:00
< tr id = "samplerSelection" class = "pl-5" > < td > < label for = "sampler_name" > Sampler:< / label > < / td > < td >
< select id = "sampler_name" name = "sampler_name" >
2022-12-17 12:15:43 +01:00
< option value = "plms" > PLMS< / option >
< option value = "ddim" > DDIM< / option >
< option value = "heun" > Heun< / option >
< option value = "euler" > Euler< / option >
< option value = "euler_a" selected > Euler Ancestral< / option >
< option value = "dpm2" > DPM2< / option >
< option value = "dpm2_a" > DPM2 Ancestral< / option >
< option value = "lms" > LMS< / option >
< option value = "dpm_solver_stability" > DPM Solver (Stability AI)< / option >
2023-07-13 18:25:59 +02:00
< option value = "dpmpp_2s_a" > DPM++ 2s Ancestral (Karras)< / option >
2023-03-20 14:52:45 +01:00
< option value = "dpmpp_2m" > DPM++ 2m (Karras)< / option >
2023-07-10 22:51:46 +02:00
< option value = "dpmpp_2m_sde" class = "diffusers-only" > DPM++ 2m SDE (Karras)< / option >
< option value = "dpmpp_sde" > DPM++ SDE (Karras)< / option >
2023-05-18 03:13:06 +02:00
< option value = "dpm_adaptive" class = "k_diffusion-only" > DPM Adaptive (Karras)< / option >
< option value = "ddpm" class = "diffusers-only" > DDPM< / option >
< option value = "deis" class = "diffusers-only" > DEIS< / option >
< option value = "unipc_snr" class = "k_diffusion-only" > UniPC SNR< / option >
2023-02-17 05:54:59 +01:00
< option value = "unipc_tu" > UniPC TU< / option >
2023-05-18 03:13:06 +02:00
< option value = "unipc_snr_2" class = "k_diffusion-only" > UniPC SNR 2< / option >
2023-05-26 16:17:00 +02:00
< option value = "unipc_tu_2" class = "k_diffusion-only" > UniPC TU 2< / option >
2023-05-18 03:13:06 +02:00
< option value = "unipc_tq" class = "k_diffusion-only" > UniPC TQ< / option >
2022-10-15 01:36:29 +02:00
< / select >
2023-06-14 11:57:06 +02:00
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/How-to-Use#samplers" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about samplers< / span > < / i > < / a >
2022-10-17 08:10:01 +02:00
< / td > < / tr >
2023-07-29 18:12:48 +02:00
< tr class = "pl-5" > < td > < label > Image Size: < / label > < / td > < td id = "image-size-options" >
2023-07-30 06:46:04 +02:00
< select id = "width" name = "width" value = "512" >
< option value = "128" > 128< / option >
< option value = "192" > 192< / option >
< option value = "256" > 256< / option >
< option value = "320" > 320< / option >
< option value = "384" > 384< / option >
< option value = "448" > 448< / option >
< option value = "512" selected = "" > 512 (*)< / option >
< option value = "576" > 576< / option >
< option value = "640" > 640< / option >
< option value = "704" > 704< / option >
< option value = "768" > 768 (*)< / option >
< option value = "832" > 832< / option >
< option value = "896" > 896< / option >
< option value = "960" > 960< / option >
< option value = "1024" > 1024 (*)< / option >
< option value = "1280" > 1280< / option >
< option value = "1536" > 1536< / option >
< option value = "1792" > 1792< / option >
< option value = "2048" > 2048< / option >
< / select >
2023-08-23 08:41:06 +02:00
< label id = "widthLabel" for = "width" > < small > < span > (width)< / span > < / small > < / label >
2023-09-24 22:06:30 +02:00
< div class = "tooltip-container" >
< span id = "swap-width-height" class = "clickable smallButton" style = "margin-left: 2px; margin-right:2px;" > < i class = "fa-solid fa-right-left" > < span class = "simple-tooltip top-left" > Swap width and height < / span > < / i > < / span >
< / div >
2023-07-30 06:46:04 +02:00
< select id = "height" name = "height" value = "512" >
< option value = "128" > 128< / option >
< option value = "192" > 192< / option >
< option value = "256" > 256< / option >
< option value = "320" > 320< / option >
< option value = "384" > 384< / option >
< option value = "448" > 448< / option >
< option value = "512" selected = "" > 512 (*)< / option >
< option value = "576" > 576< / option >
< option value = "640" > 640< / option >
< option value = "704" > 704< / option >
< option value = "768" > 768 (*)< / option >
< option value = "832" > 832< / option >
< option value = "896" > 896< / option >
< option value = "960" > 960< / option >
< option value = "1024" > 1024 (*)< / option >
< option value = "1280" > 1280< / option >
< option value = "1536" > 1536< / option >
< option value = "1792" > 1792< / option >
< option value = "2048" > 2048< / option >
< / select >
2023-08-23 08:41:06 +02:00
< label id = "heightLabel" for = "height" > < small > < span > (height)< / span > < / small > < / label >
2023-07-29 18:12:48 +02:00
< div id = "recent-resolutions-container" >
2023-08-01 12:09:15 +02:00
< span id = "recent-resolutions-button" class = "clickable" > < i class = "fa-solid fa-sliders" > < span class = "simple-tooltip top-left" > Advanced sizes < / span > < / i > < / span >
2023-07-29 18:12:48 +02:00
< div id = "recent-resolutions-popup" class = "displayNone" >
2023-07-30 06:46:04 +02:00
< small > Custom size:< / small > < br >
2023-08-29 10:02:06 +02:00
< input id = "custom-width" name = "custom-width" type = "number" min = "128" value = "512" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" >
2023-07-30 06:46:04 +02:00
×
2023-08-29 10:02:06 +02:00
< input id = "custom-height" name = "custom-height" type = "number" min = "128" value = "512" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" > < br >
2023-08-14 14:56:33 +02:00
< small > Resize:< / small > < br >
< input id = "resize-slider" name = "resize-slider" class = "editor-slider" value = "1" type = "range" min = "0.4" max = "2" step = "0.005" style = "width:100%;" > < br >
< div id = "enlarge-buttons" > < button data-factor = "0.5" class = "tertiaryButton smallButton" > × 0.5< / button > < button data-factor = "1.2" class = "tertiaryButton smallButton" > × 1.2< / button > < button data-factor = "1.5" class = "tertiaryButton smallButton" > × 1.5< / button > < button data-factor = "2" class = "tertiaryButton smallButton" > × 2< / button > < button data-factor = "3" class = "tertiaryButton smallButton" > × 3< / button > < / div >
2023-07-30 06:46:04 +02:00
2023-08-14 14:56:33 +02:00
< div class = "two-column" >
< div class = "left-column" >
< small > Recently used:< / small > < br >
< div id = "recent-resolution-list" >
< / div >
< / div >
< div class = "right-column" >
< small > Common sizes:< / small > < br >
< div id = "common-resolution-list" >
< / div >
< / div >
2023-07-30 06:46:04 +02:00
2023-07-29 18:12:48 +02:00
< / div >
< / div >
< / div >
2023-03-12 20:43:54 +01:00
< div id = "small_image_warning" class = "displayNone" > Small image sizes can cause bad image quality< / div >
2022-10-17 08:10:01 +02:00
< / td > < / tr >
2023-08-29 10:02:06 +02:00
< tr class = "pl-5" > < td > < label for = "num_inference_steps" > Inference Steps:< / label > < / td > < td > < input id = "num_inference_steps" name = "num_inference_steps" type = "number" min = "1" step = "1" style = "width: 42pt" value = "25" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" > < / td > < / tr >
< tr class = "pl-5" > < td > < label for = "guidance_scale_slider" > Guidance Scale:< / label > < / td > < td > < input id = "guidance_scale_slider" name = "guidance_scale_slider" class = "editor-slider" value = "75" type = "range" min = "11" max = "500" > < input id = "guidance_scale" name = "guidance_scale" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "decimal" > < / td > < / tr >
< tr id = "prompt_strength_container" class = "pl-5" > < td > < label for = "prompt_strength_slider" > Prompt Strength:< / label > < / td > < td > < input id = "prompt_strength_slider" name = "prompt_strength_slider" class = "editor-slider" value = "80" type = "range" min = "0" max = "99" > < input id = "prompt_strength" name = "prompt_strength" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "decimal" > < br / > < / td > < / tr >
2023-07-15 16:03:49 +02:00
< tr id = "lora_model_container" class = "pl-5" >
2023-06-05 13:23:18 +02:00
< td >
2023-07-15 16:03:49 +02:00
< label for = "lora_model" > LoRA:< / label >
2023-06-05 13:23:18 +02:00
< / td >
2023-07-15 23:17:57 +02:00
< td class = "diffusers-restart-needed" >
2023-08-18 09:48:06 +02:00
< div id = "lora_model" data-path = "" > < / div >
2023-07-15 22:42:42 +02:00
< / td >
2023-03-21 13:29:20 +01:00
< / tr >
2023-08-03 14:13:49 +02:00
< tr id = "hypernetwork_model_container" class = "pl-5" > < td > < label for = "hypernetwork_model" > Hypernetwork:< / label > < / td > < td >
2023-02-13 07:31:40 +01:00
< input id = "hypernetwork_model" type = "text" spellcheck = "false" autocomplete = "off" class = "model-filter" data-path = "" / >
2022-12-12 14:32:34 +01:00
< / td > < / tr >
< tr id = "hypernetwork_strength_container" class = "pl-5" >
< td > < label for = "hypernetwork_strength_slider" > Hypernetwork Strength:< / label > < / td >
2023-08-29 10:02:06 +02:00
< td > < input id = "hypernetwork_strength_slider" name = "hypernetwork_strength_slider" class = "editor-slider" value = "100" type = "range" min = "0" max = "100" > < input id = "hypernetwork_strength" name = "hypernetwork_strength" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "decimal" > < br / > < / td >
2022-12-12 14:32:34 +01:00
< / tr >
2023-07-09 22:54:25 +02:00
< tr id = "tiling_container" class = "pl-5" >
< td > < label for = "tiling" > Seamless Tiling:< / label > < / td >
< td class = "diffusers-restart-needed" >
< select id = "tiling" name = "tiling" >
< option value = "none" selected > None< / option >
< option value = "x" > Horizontal< / option >
< option value = "y" > Vertical< / option >
< option value = "xy" > Both< / option >
< / select >
< a href = "https://github.com/easydiffusion/easydiffusion/wiki/Seamless-Tiling" target = "_blank" > < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > Click to learn more about Seamless Tiling< / span > < / i > < / a >
< / td >
< / tr >
2022-10-17 08:10:01 +02:00
< tr class = "pl-5" > < td > < label for = "output_format" > Output Format:< / label > < / td > < td >
2022-10-15 01:36:29 +02:00
< select id = "output_format" name = "output_format" >
< option value = "jpeg" selected > jpeg< / option >
< option value = "png" > png< / option >
2023-02-19 04:37:34 +01:00
< option value = "webp" > webp< / option >
2022-10-15 01:36:29 +02:00
< / select >
2023-03-29 00:46:13 +02:00
< span id = "output_lossless_container" class = "displayNone" >
2023-04-28 14:37:43 +02:00
< input id = "output_lossless" name = "output_lossless" type = "checkbox" > < label for = "output_lossless" > Lossless< / label >
2023-03-25 03:46:03 +01:00
< / span >
2022-10-17 08:10:01 +02:00
< / td > < / tr >
2023-02-19 04:37:34 +01:00
< tr class = "pl-5" id = "output_quality_row" > < td > < label for = "output_quality" > Image Quality:< / label > < / td > < td >
2023-08-29 10:02:06 +02:00
< input id = "output_quality_slider" name = "output_quality" class = "editor-slider" value = "75" type = "range" min = "10" max = "95" > < input id = "output_quality" name = "output_quality" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" >
2022-12-12 14:32:34 +01:00
< / td > < / tr >
2023-12-11 17:58:19 +01:00
< tr class = "pl-5" >
< td > < label for = "tiling" > Enable VAE Tiling:< / label > < / td >
< td class = "diffusers-restart-needed" >
< input id = "enable_vae_tiling" name = "enable_vae_tiling" type = "checkbox" checked >
< label > < small > Optimizes memory for larger images< / small > < / label >
< / td >
< / tr >
2022-11-02 07:03:05 +01:00
< / table > < / div >
2022-09-23 13:37:54 +02:00
2022-11-02 07:03:05 +01:00
< div > < ul >
2022-09-23 13:37:54 +02:00
< li > < b class = "settings-subheader" > Render Settings< / b > < / li >
2022-12-06 11:09:27 +01:00
< li class = "pl-5" > < input id = "stream_image_progress" name = "stream_image_progress" type = "checkbox" > < label for = "stream_image_progress" > Show a live preview < small > (uses more VRAM, slower images)< / small > < / label > < / li >
2023-06-06 12:46:21 +02:00
< li class = "pl-5" id = "use_face_correction_container" >
2023-06-01 13:20:01 +02:00
< input id = "use_face_correction" name = "use_face_correction" type = "checkbox" > < label for = "use_face_correction" > Fix incorrect faces and eyes< / label > < div style = "display:inline-block;" > < input id = "gfpgan_model" type = "text" spellcheck = "false" autocomplete = "off" class = "model-filter" data-path = "" / > < / div >
2023-06-06 12:46:21 +02:00
< table id = "codeformer_settings" class = "displayNone sub-settings" >
2023-08-29 10:02:06 +02:00
< tr class = "pl-5" > < td > < label for = "codeformer_fidelity_slider" > Strength:< / label > < / td > < td > < input id = "codeformer_fidelity_slider" name = "codeformer_fidelity_slider" class = "editor-slider" value = "5" type = "range" min = "0" max = "10" > < input id = "codeformer_fidelity" name = "codeformer_fidelity" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "decimal" > < / td > < / tr >
2023-06-06 12:46:21 +02:00
< tr class = "pl-5" > < td > < label for = "codeformer_upscale_faces" > Upscale Faces:< / label > < / td > < td > < input id = "codeformer_upscale_faces" name = "codeformer_upscale_faces" type = "checkbox" checked > < label > < small > (improves the resolution of faces)< / small > < / label > < / td > < / tr >
< / table >
2023-06-01 13:20:01 +02:00
< / li >
2022-09-23 13:37:54 +02:00
< li class = "pl-5" >
2022-12-27 11:50:16 +01:00
< input id = "use_upscale" name = "use_upscale" type = "checkbox" > < label for = "use_upscale" > Scale up by< / label >
< select id = "upscale_amount" name = "upscale_amount" >
2023-05-23 13:23:53 +02:00
< option id = "upscale_amount_2x" value = "2" > 2x< / option >
< option id = "upscale_amount_4x" value = "4" selected > 4x< / option >
2022-12-27 11:50:16 +01:00
< / select >
with
2022-09-23 13:37:54 +02:00
< select id = "upscale_model" name = "upscale_model" >
< option value = "RealESRGAN_x4plus" selected > RealESRGAN_x4plus< / option >
< option value = "RealESRGAN_x4plus_anime_6B" > RealESRGAN_x4plus_anime_6B< / option >
2023-05-23 13:23:53 +02:00
< option value = "latent_upscaler" > Latent Upscaler 2x< / option >
2022-09-23 13:37:54 +02:00
< / select >
2023-06-06 12:46:21 +02:00
< table id = "latent_upscaler_settings" class = "displayNone sub-settings" >
2023-08-29 10:02:06 +02:00
< tr class = "pl-5" > < td > < label for = "latent_upscaler_steps_slider" > Upscaling Steps:< / label > < / td > < td > < input id = "latent_upscaler_steps_slider" name = "latent_upscaler_steps_slider" class = "editor-slider" value = "10" type = "range" min = "1" max = "50" > < input id = "latent_upscaler_steps" name = "latent_upscaler_steps" size = "4" pattern = "^[0-9\.]+$" onkeypress = "preventNonNumericalInput(event)" inputmode = "numeric" > < / td > < / tr >
2023-06-06 12:46:21 +02:00
< / table >
2022-09-03 17:52:56 +02:00
< / li >
2022-09-23 13:37:54 +02:00
< li class = "pl-5" > < input id = "show_only_filtered_image" name = "show_only_filtered_image" type = "checkbox" checked > < label for = "show_only_filtered_image" > Show only the corrected/upscaled image< / label > < / li >
2022-11-02 07:03:05 +01:00
< / ul > < / div >
< / div >
2022-09-02 10:28:36 +02:00
< / div >
2023-06-26 16:53:27 +02:00
2023-08-23 09:59:36 +02:00
< label > < small > < b > Note:< / b > The Image Modifiers section has moved to the < code > + Image Modifiers< / code > button at the top, just above the Prompt textbox.< / small > < / label >
2022-09-02 10:28:36 +02:00
< / div >
2022-09-23 13:37:54 +02:00
< div id = "preview" class = "col-free" >
2023-02-14 15:03:25 +01:00
2023-04-06 12:12:48 +02:00
< div id = "initial-text" >
Type a prompt and press the "Make Image" button.< br / > < br / > You can set an "Initial Image" if you want to guide the AI.< br / > < br / >
You can also add modifiers like "Realistic", "Pencil Sketch", "ArtStation" etc by browsing through the "Image Modifiers" section
and selecting the desired modifiers.< br / > < br / >
Click "Image Settings" for additional settings like seed, image size, number of images to generate etc.< br / > < br / > Enjoy! :)
< / div >
2023-01-16 08:34:56 +01:00
< div id = "preview-content" >
2023-03-20 22:53:13 +01:00
< div id = "preview-tools" class = "displayNone" >
2023-02-24 17:20:21 +01:00
< button id = "clear-all-previews" class = "secondaryButton" > < i class = "fa-solid fa-trash-can icon" > < / i > Clear All< / button >
2023-08-23 08:45:35 +02:00
< button class = "tertiaryButton" id = "show-download-popup" > < i class = "fa-solid fa-download" > < / i > < span > Download images< / span > < / button >
2023-03-01 13:57:48 +01:00
< div class = "display-settings" >
2023-03-28 13:43:37 +02:00
< button id = "undo" class = "displayNone primaryButton" >
2023-03-20 22:53:13 +01:00
Undo < i class = "fa-solid fa-rotate-left icon" > < / i >
< span class = "simple-tooltip left" > Undo last remove< / span >
< / button >
2023-03-02 09:25:53 +01:00
< span class = "auto-scroll" > < / span > <!-- hack for Rabbit Hole update -->
2023-03-01 13:57:48 +01:00
< button id = "auto_scroll_btn" class = "tertiaryButton" >
< i class = "fa-solid fa-arrows-up-to-line icon" > < / i >
< input id = "auto_scroll" name = "auto_scroll" type = "checkbox" style = "display: none" >
< span class = "simple-tooltip left" >
Scroll to generated image (< span class = "state" > OFF< / span > )
< / span >
< / button >
< button class = "dropdown tertiaryButton" >
< i class = "fa-solid fa-magnifying-glass-plus icon dropbtn" > < / i >
< span class = "simple-tooltip left" >
2023-03-01 14:05:41 +01:00
Image Size
2023-03-01 13:57:48 +01:00
< / span >
2023-02-22 15:38:17 +01:00
< / button >
2023-02-22 15:02:00 +01:00
< div class = "dropdown-content" >
< div class = "dropdown-item" >
< input id = "thumbnail_size" name = "thumbnail_size" class = "editor-slider" type = "range" value = "70" min = "5" max = "200" oninput = "sliderUpdate(event)" >
2023-08-29 10:02:06 +02:00
< input id = "thumbnail_size-input" name = "thumbnail_size-input" size = "3" value = "70" pattern = "^[0-9.]+$" onkeypress = "preventNonNumericalInput(event)" oninput = "sliderUpdate(event)" inputmode = "numeric" > %
2023-02-22 15:02:00 +01:00
< / div >
< / div >
< / div >
2023-02-23 04:11:18 +01:00
< div class = "clearfix" style = "clear: both;" > < / div >
2023-01-16 08:34:56 +01:00
< / div >
2023-10-12 06:28:29 +02:00
< div id = "supportBanner" class = "displayNone" >
2023-10-12 06:35:43 +02:00
If you found this project useful and want to help keep it alive, please consider < a href = "https://ko-fi.com/easydiffusion" target = "_blank" > buying me a coffee< / a > to help cover the cost of development and maintenance! Thanks for your support!
2023-10-12 06:28:29 +02:00
< / div >
2022-09-02 10:28:36 +02:00
< / div >
< / div >
2022-11-09 04:54:41 +01:00
< / div >
< div id = "tab-content-settings" class = "tab-content" >
< div id = "system-settings" class = "tab-content-inner" >
< h1 > System Settings< / h1 >
2023-05-28 00:50:23 +02:00
< div class = "parameters-table" id = "system-settings-table" > < / div >
2022-11-14 16:51:48 +01:00
< br / >
2022-11-15 07:52:55 +01:00
< button id = "save-system-settings-btn" class = "primaryButton" > Save< / button >
2023-07-29 08:11:44 +02:00
< div id = "install-extras-container" class = "displayNone" >
< br / >
< div id = "install-extras" >
2023-07-29 17:39:27 +02:00
< h3 > < i class = "fa fa-cubes-stacked" > < / i > Optional Packages< / h3 >
2023-07-29 08:11:44 +02:00
< div class = "parameters-table" id = "system-settings-install-extras-table" > < / div >
< / div >
< / div >
2022-11-15 07:52:55 +01:00
< br / > < br / >
2023-05-28 00:50:23 +02:00
< div id = "share-easy-diffusion" >
< h3 > < i class = "fa fa-user-group" > < / i > Share Easy Diffusion< / h3 >
< div class = "parameters-table" id = "system-settings-network-table" >
< / div >
< / div >
< br / > < br / >
2022-11-14 16:51:48 +01:00
< div >
< h3 > < i class = "fa fa-microchip icon" > < / i > System Info< / h3 >
2022-11-30 10:04:24 +01:00
< div id = "system-info" >
< table >
< tr > < td > < label > Processor:< / label > < / td > < td id = "system-info-cpu" class = "value" > < / td > < / tr >
< tr > < td > < label > Compatible Graphics Cards (all):< / label > < / td > < td id = "system-info-gpus-all" class = "value" > < / td > < / tr >
< tr > < td > < / td > < td > < / td > < / tr >
< tr > < td > < label > Used for rendering 🔥:< / label > < / td > < td id = "system-info-rendering-devices" class = "value" > < / td > < / tr >
2022-12-11 08:29:23 +01:00
< tr > < td > < label > Server Addresses < i class = "fa-solid fa-circle-question help-btn" > < span class = "simple-tooltip top-left" > You can access Stable Diffusion UI from other devices using these addresses< / span > < / i > :< / label > < / td > < td id = "system-info-server-hosts" class = "value" > < / td > < / tr >
2022-11-30 10:04:24 +01:00
< / table >
< / div >
2022-11-14 16:51:48 +01:00
< / div >
2022-11-23 11:25:36 +01:00
2022-11-09 04:54:41 +01:00
< / div >
< / div >
< div id = "tab-content-about" class = "tab-content" >
< div class = "tab-content-inner" >
2022-11-09 23:42:56 +01:00
< div class = "float-container" >
< div class = "float-child" >
2022-11-14 06:53:22 +01:00
< h1 > Help< / h1 >
2023-08-31 17:55:29 +02:00
< div id = "help-links" >
< h4 > < span class = "help-section" > < b > Basics< / b > < / span > < / h4 >
2022-11-09 23:42:56 +01:00
< ul >
2023-08-31 17:55:29 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/How-To-Use" target = "_blank" > How to use< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Writing-Prompts" target = "_blank" > Writing prompts< / a > < / li >
2023-09-18 17:55:08 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Image-Modifiers" target = "_blank" > Image Modifiers< / a > < / li >
2023-08-31 17:55:29 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Inpainting" target = "_blank" > Inpainting< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Samplers" target = "_blank" > Samplers< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/UI-Overview" target = "_blank" > Summary of every UI option< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Troubleshooting" target = "_blank" > Common error messages (and solutions)< / a > < / li >
2022-11-09 23:42:56 +01:00
< / ul >
2023-08-31 17:55:29 +02:00
< h4 > < span class = "help-section" > < b > Intermediate< / b > < / span > < / h4 >
2022-11-09 23:42:56 +01:00
< ul >
2023-08-31 17:55:29 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Custom-Models" target = "_blank" > Custom Models< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Prompt-Syntax" target = "_blank" > Prompt Syntax (weights, emphasis etc)< / a > < / li >
2023-09-01 07:38:11 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/UI-Plugins" target = "_blank" > UI Plugins< / a > < / li >
2023-08-31 17:55:29 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Embeddings" target = "_blank" > Embeddings< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/LoRA" target = "_blank" > LoRA< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/SDXL" target = "_blank" > SDXL< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/ControlNet" target = "_blank" > ControlNet< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Seamless-Tiling" target = "_blank" > Seamless Tiling< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/xFormers" target = "_blank" > xFormers< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/The-beta-channel" target = "_blank" > The beta channel< / a > < / li >
2022-11-09 23:42:56 +01:00
< / ul >
2023-08-31 17:55:29 +02:00
< h4 > < span class = "help-section" > < b > Advanced topics< / b > < / span > < / h4 >
2022-11-09 23:42:56 +01:00
< ul >
2023-08-31 17:55:29 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Run-on-Multiple-GPUs" target = "_blank" > Run on Multiple GPUs< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Model-Merging" target = "_blank" > Model Merging< / a > < / li >
< li > < a href = "https://github.com/easydiffusion/easydiffusion/wiki/Custom-Modifiers" target = "_blank" > Custom Modifiers< / a > < / li >
2022-11-09 23:42:56 +01:00
< / ul >
2023-08-31 17:55:29 +02:00
< h4 > < span class = "help-section" > < b > Misc< / b > < / span > < / h4 >
< ul >
< li > < a href = "https://theally.notion.site/The-Definitive-Stable-Diffusion-Glossary-1d1e6d15059c41e6a6b4306b4ecd9df9" target = "_blank" > Glossary of Stable Diffusion related terms< / a > < / li >
< / ul >
< / div >
2022-11-09 23:42:56 +01:00
< / div >
< div class = "float-child" >
2022-11-14 06:53:22 +01:00
< h1 > Community< / h1 >
2022-11-09 23:42:56 +01:00
< ul id = "community-links" >
< li > < a href = "https://discord.com/invite/u9yhsFmEkB" target = "_blank" > < i class = "fa-brands fa-discord fa-fw" > < / i > Discord user community< / a > < / li >
< li > < a href = "https://www.reddit.com/r/StableDiffusionUI/" target = "_blank" > < i class = "fa-brands fa-reddit fa-fw" > < / i > Reddit community< / a > < / li >
2023-06-14 11:57:06 +02:00
< li > < a href = "https://github.com/easydiffusion/easydiffusion" target = "_blank" > < i class = "fa-brands fa-github fa-fw" > < / i > Source code on GitHub< / a > < / li >
2022-11-09 23:42:56 +01:00
< / ul >
< / div >
< / div >
2022-11-09 04:54:41 +01:00
< / div >
2022-10-29 03:25:54 +02:00
< / div >
< / div >
2022-11-09 04:54:41 +01:00
2023-04-22 11:42:22 +02:00
< div class = "popup" id = "splash-screen" data-version = "1" >
< div >
< i class = "close-button fa-solid fa-xmark" > < / i >
< img class = "splash-img" src = "/media/images/icon-512x512.png" width = "128" height = "128" >
< h1 > Diffusers Tech Preview< / h1 >
< p > The Diffusers Tech Preview allows early access to the new features based on < a href = "https://huggingface.co/docs/diffusers/index" target = "_blank" > Diffusers< / a > .< / p >
2023-06-26 12:41:10 +02:00
< p > This is under active development, and is missing a few features. It is experimental! Please report any bugs to the #beta channel in our < a href = "https://discord.gg/QUcNZufQNZ" target = "_blank" > Discord< / a > server!< / p >
2023-05-21 21:30:29 +02:00
< h2 > New upcoming features in our new engine< / h2 >
2023-04-22 11:42:22 +02:00
< ul >
< li > < a href = "https://huggingface.co/blog/lora" target = "_blank" > LORA< / a > support - Place LORA files in the < tt > models/lora< / tt > folder.< / li >
< li > < a href = "https://github.com/damian0815/compel/blob/main/Reference.md" target = "_blank" > Compel Prompt Parser< / a > - New, more powerful parser. In short:
< ul >
< li > no limit to the length of prompts (i.e. long prompts are supported)< / li >
< li > Use < tt > +< / tt > and < tt > -< / tt > to increase/decrease the weight. E.g. < tt > apple< / tt > , < tt > apple+< / tt > , < tt > apple++< / tt > , < tt > apple+++< / tt > ,
or < tt > apple-< / tt > , < tt > apple--< / tt > for different weights.< / li >
< li > Use exact weights - 0.0 to 1.0 reduces the weight, 1.0 to 2.0 increases the weight.
Think of it like a multiplier, like 1.5x or 0.5x: E.g. < tt > (apple)0.8 falling from a tree< / tt > ,
< tt > (apple)1.5 falling from a tree< / tt > , < tt > (apple falling)1.4 from a tree< / tt > < / li >
< li > You can group tokens together using parentheses/round-brackets. E.g. < tt > (apple falling)++
from a tree< / tt > . Nested parentheses are supported.< / li >
< / ul >
This clarifies a few things:
< ul >
< li > colon (< tt > :< / tt > ) is NOT used for blending. Neither is it used for weights. It has no impact and
will be considered a part of the prompt.< / li >
< li > < tt > (())< / tt > and < tt > []< / tt > do not affect the prompt's weights.< / li >
< / ul >
< / li >
< li > More choices for img2img samplers< / li >
2023-06-26 12:34:18 +02:00
< li > Support for official inpainting models< / li >
< li > Generate images that tile seamlessly< / li >
2023-05-21 21:30:29 +02:00
< li > < a href = "https://github.com/cmdr2/stable-diffusion-ui/wiki/Clip-Skip" target = "_blank" > Clip Skip< / a > support allows to skip the last CLIP layer (recommended by some LORA models)< / li >
< li > New samplers: DDPM and DEIS< / li >
< li > Memory optimizations that allow the use of 2GB GPUs< / li >
2023-04-22 11:42:22 +02:00
< / ul >
< h2 > Known issues< / h2 >
< ul >
< li > Some LoRA consistently fail to load in EasyDiffusion< / li >
< li > Some LoRA are far more sensitive to alpha (compared to a11)< / li >
2023-05-21 21:30:29 +02:00
< li > Hangs sometimes on "compel is ready", while making the token.< / li >
2023-04-22 11:42:22 +02:00
< li > Some custom inpainting models don't work< / li >
2023-05-21 21:30:29 +02:00
< li > These samplers don't work yet: Unipc SNR, Unipc TQ, Unipc SNR2, DPM++ 2s Ancestral, DPM++ SDE, DPM Fast, DPM Adaptive, DPM2< / li >
< li > Hypernetwork doesn't work< / li >
< li > The time remaining in browser differs from the one in the console< / li >
2023-04-22 11:42:22 +02:00
< / ul >
< / div >
< / div >
2022-09-02 10:28:36 +02:00
2023-06-28 19:11:37 +02:00
< dialog id = "download-images-dialog" >
< div class = "dialog-header" >
< div class = "dialog-header-left" >
< h4 > Download all images< / h4 >
< span > < / span >
2023-03-14 06:10:24 +01:00
< / div >
2023-06-28 19:11:37 +02:00
< div >
< i id = "download-images-close-button" class = "fa-solid fa-xmark fa-lg" > < / i >
< / div >
< / div >
< div class = "parameters-table" >
< div >
< div > < i class = "fa fa-file-zipper" > < / i > < / div >
< div > < label for = "theme" > Download as a ZIP file< / label > < small > Instead of downloading individual files, generate one zip file with all images< / small > < / div >
< div > < div class = "input-toggle" > < input id = "zip_toggle" name = "zip_toggle" checked = "" type = "checkbox" > < label for = "zip_toggle" > < / label > < / div > < / div >
< / div >
< div id = "download-add-folders" >
< div > < i class = "fa fa-folder-tree" > < / i > < / div >
< div > < label for = "theme" > Add per-job folders< / label > < small > Place images into job folders< / small > < / div >
< div > < div class = "input-toggle" > < input id = "tree_toggle" name = "tree_toggle" checked = "" type = "checkbox" > < label for = "tree_toggle" > < / label > < / div > < / div >
< / div >
< div >
< div > < i class = "fa fa-sliders" > < / i > < / div >
< div > < label for = "theme" > Add metadata files< / label > < small > For each image, also download a JSON file with all the settings used to generate the image< / small > < / div >
< div > < div class = "input-toggle" > < input id = "json_toggle" name = "json_toggle" checked = "" type = "checkbox" > < label for = "json_toggle" > < / label > < / div > < / div >
< / div >
< / div >
< div class = "center" >
2023-03-14 06:10:24 +01:00
< button id = "save-all-images" class = "primaryButton" > < i class = "fa-solid fa-images" > < / i > Start download< / button >
< / div >
2023-06-28 19:11:37 +02:00
< / dialog >
2022-10-29 01:48:32 +02:00
< div id = "save-settings-config" class = "popup" >
2022-10-17 09:14:05 +02:00
< div >
2022-10-29 01:48:32 +02:00
< i class = "close-button fa-solid fa-xmark" > < / i >
2022-10-17 09:14:05 +02:00
< h1 > Save Settings Configuration< / h1 >
2022-10-20 06:12:01 +02:00
< p > Select which settings should be remembered when restarting the browser< / p >
2022-10-29 03:25:54 +02:00
< table id = "save-settings-config-table" class = "form-table" >
2022-10-17 09:14:05 +02:00
< / table >
< / div >
< / div >
2023-06-27 13:36:49 +02:00
< div id = "editor-modifiers" >
< div id = "editor-modifiers-header" class = "dialog-header" >
< div id = "modifiers-header-left" class = "dialog-header-left" >
< h4 > Image Modifiers< / h4 >
< span > (drawing style, camera, etc.)< / span >
< / div >
< div id = "modifiers-header-right" >
< i id = "modifier-settings-btn" class = "fa-solid fa-gear section-button" >
< span class = "simple-tooltip left" >
Add Custom Modifiers
< / span >
< / i >
< i id = "modifiers-container-size-btn" class = "fa-solid fa-expand" > < / i >
< i id = "modifiers-close-button" class = "fa-solid fa-xmark fa-lg" > < / i >
< / div >
< / div >
< div id = "editor-modifiers-subheader" >
< div id = "modifiers-action-collapsibles-btn" >
< i class = "modifiers-action-icon fa-solid fa-square-plus" > < / i >
< span class = "modifiers-action-text" >
Expand Categories
< / span >
< / div >
2023-06-27 14:20:41 +02:00
< div >
< label for = "preview-image" > Image Style:< / label >
< select id = "preview-image" name = "preview-image" value = "portrait" >
< option value = "portrait" selected = "" > Face< / option >
< option value = "landscape" > Landscape< / option >
< / select >
< / div >
< div >
< label for = "modifier-card-size-slider" > Thumbnail Size:< / label >
< input id = "modifier-card-size-slider" name = "modifier-card-size-slider" value = "0" type = "range" min = "-2" max = "3" >
< / div >
2023-06-27 13:36:49 +02:00
< / div >
< div id = "editor-modifiers-entries" class = "collapsible-content" > < / div >
< / div >
2023-06-27 00:00:27 +02:00
< dialog id = "modifier-settings-config" >
< div id = "modifier-settings-header" class = "dialog-header" >
< div id = "modifier-settings-header-left" class = "dialog-header-left" >
2023-06-27 14:20:41 +02:00
< h4 > Custom Modifiers< / h4 >
2023-06-27 00:00:27 +02:00
< span > Set your custom modifiers (one per line)< / span >
< / div >
< div id = "modifier-settings-header-right" >
< i id = "modifier-settings-close-button" class = "fa-solid fa-xmark fa-lg" > < / i >
2023-06-19 16:24:31 +02:00
< / div >
2022-10-21 10:38:16 +02:00
< / div >
2023-06-27 00:00:27 +02:00
< textarea id = "custom-modifiers-input" placeholder = "Enter your custom modifiers, one-per-line" spellcheck = "false" > < / textarea >
< div >
< small >
< b > Tip:< / b > You can include special characters like {} () [] and |. You can also put multiple comma-separated
phrases in a single line, to make a single modifier that combines all of those.
< / small >
< / div >
< / dialog >
2022-10-21 10:38:16 +02:00
2023-06-30 08:41:15 +02:00
< dialog id = "embeddings-dialog" >
< div id = "embeddings-dialog-header" class = "dialog-header" >
< div id = "embeddings-dialog-header-left" class = "dialog-header-left" >
< h4 > Embeddings< / h4 >
2023-07-16 11:00:45 +02:00
< span >
< span class = "displayNone" id = "positive-embedding-text" > Add embeddings to the prompt (click) or negative prompt (shift-click)< / span >
< span class = "displayNone" id = "negative-embedding-text" > Add embeddings to the negative prompt< / span >
< span >
2023-06-30 08:41:15 +02:00
< / div >
< div id = "embeddings-dialog-header-right" >
2023-08-19 06:20:40 +02:00
< button id = "add-embeddings-thumb" class = "tertiaryButton smallButton" style = "background-color: var(--background-color4);" > < i class = "fa-solid fa-folder-plus" > < / i > Add thumbnail< / button >
< input id = "add-embeddings-thumb-input" name = "add-embeddings-thumb-input" type = "file" class = "displayNone" >
2023-06-30 08:41:15 +02:00
< i id = "embeddings-dialog-close-button" class = "fa-solid fa-xmark fa-lg" > < / i >
< / div >
< / div >
< div >
2023-07-18 00:08:38 +02:00
< button id = "embeddings-action-collapsibles-btn" class = "tertiaryButton smallButton" >
< i class = "embeddings-action-icon fa-solid fa-square-plus" > < / i >
< span class = "embeddings-action-text" > Expand Categories< / span >
< / button >
2023-06-30 08:41:15 +02:00
< i class = "fa-solid fa-magnifying-glass" > < / i >
2023-08-29 10:02:06 +02:00
< input id = "embeddings-search-box" type = "text" spellcheck = "false" autocomplete = "off" placeholder = "Search..." inputmode = "search" >
2023-08-17 08:03:05 +02:00
< label for = "embedding-card-size-selector" > < small > Thumbnail Size:< / small > < / label >
< select id = "embedding-card-size-selector" name = "embedding-card-size-selector" >
< option value = "-2" > 0< / option >
2023-08-17 08:56:23 +02:00
< option value = "-1" selected > 1< / option >
2023-08-17 08:03:05 +02:00
< option value = "0" > 2< / option >
2023-08-17 08:56:23 +02:00
< option value = "1" > 3< / option >
2023-08-17 08:03:05 +02:00
< option value = "2" > 4< / option >
< option value = "3" > 5< / option >
< / select >
2023-06-30 08:41:15 +02:00
< span style = "float:right;" > < label > Mode:< / label > < select id = "embeddings-mode" > < option value = "insert" > Insert at cursor position< / option > < option value = "append" > Append at the end< / option > < / select >
< / div >
< div id = "embeddings-list" >
< / div >
< / div >
< / dialog >
2023-08-17 08:03:05 +02:00
< dialog id = "use-as-thumb-dialog" >
< div id = "use-as-thumb-dialog-header" class = "dialog-header" >
< div id = "use-as-thumb-dialog-header-left" class = "dialog-header-left" >
< h4 > Use as thumbnail< / h4 >
< span > Use a pictures as thumbnail for embeddings, LORAs, etc.< / span >
< / div >
< div id = "use-as-thumb-dialog-header-right" >
< i id = "use-as-thumb-dialog-close-button" class = "fa-solid fa-xmark fa-lg" > < / i >
< / div >
< / div >
< div >
< div class = "use-as-thumb-grid" >
< div class = "use-as-thumb-preview" >
< div id = "use-as-thumb-img-container" > < img id = "use-as-thumb-image" src = "/media/images/noimg.png" width = "512" height = "512" > < / div >
< / div >
< div class = "use-as-thumb-select" >
< label for = "use-as-thumb-select" > Use the thumbnail for:< / label > < br >
< select id = "use-as-thumb-select" size = "16" multiple >
< / select >
< / div >
< div class = "use-as-thumb-buttons" >
< button class = "tertiaryButton" id = "use-as-thumb-save" > Save thumbnail< / button >
< button class = "tertiaryButton" id = "use-as-thumb-cancel" > Cancel< / button >
< / div >
< / div >
< / div >
< / dialog >
2022-12-01 11:31:09 +01:00
< div id = "image-editor" class = "popup image-editor-popup" >
< div >
< i class = "close-button fa-solid fa-xmark" > < / i >
< h1 > Image Editor< / h1 >
< div class = "flex-container" >
< div class = "editor-controls-left" > < / div >
< div class = "editor-controls-center" >
< div > < / div >
< / div >
< div class = "editor-controls-right" >
< div > < / div >
< / div >
< / div >
< / div >
< / div >
< div id = "image-inpainter" class = "popup image-editor-popup" >
< div >
< i class = "close-button fa-solid fa-xmark" > < / i >
< h1 > Inpainter< / h1 >
< div class = "flex-container" >
< div class = "editor-controls-left" > < / div >
< div class = "editor-controls-center" >
< div > < / div >
< / div >
< div class = "editor-controls-right" >
< div > < / div >
< / div >
< / div >
< / div >
< / div >
2022-11-09 05:19:31 +01:00
< div id = "footer-spacer" > < / div >
2022-11-02 07:03:05 +01:00
< div id = "footer" >
2022-11-09 05:19:31 +01:00
< div class = "line-separator" > < / div >
2023-06-14 11:57:06 +02:00
< p > Please feel free to join the < a href = "https://discord.com/invite/u9yhsFmEkB" target = "_blank" > discord community< / a > or < a href = "https://github.com/easydiffusion/easydiffusion/issues" target = "_blank" > file an issue< / a > if you have any problems or suggestions in using this interface.< / p >
2022-09-02 10:28:36 +02:00
< div id = "footer-legal" >
< p > < b > Disclaimer:< / b > The authors of this project are not responsible for any content generated using this interface.< / p >
2023-06-14 11:57:06 +02:00
< p > This license of this software forbids you from sharing any content that violates any laws, produce any harm to a person, disseminate any personal information that would be meant for harm, < br / > spread misinformation and target vulnerable groups. For the full list of restrictions please read < a href = "https://github.com/easydiffusion/easydiffusion/blob/main/LICENSE" target = "_blank" > the license< / a > .< / p >
2022-09-02 10:28:36 +02:00
< p > By using this software, you consent to the terms and conditions of the license.< / p >
< / div >
2023-08-31 18:54:27 +02:00
< input id = "test_diffusers" type = "checkbox" style = "display: none" checked / >
2022-09-02 10:28:36 +02:00
< / div >
< / div >
< / body >
2022-11-18 13:01:20 +01:00
< script src = "media/js/utils.js" > < / script >
2022-12-06 12:34:08 +01:00
< script src = "media/js/engine.js" > < / script >
2022-11-18 13:01:20 +01:00
< script src = "media/js/parameters.js" > < / script >
2022-12-06 12:34:08 +01:00
2022-11-18 13:01:20 +01:00
< script src = "media/js/image-modifiers.js" > < / script >
< script src = "media/js/auto-save.js" > < / script >
2022-12-06 12:34:08 +01:00
2023-02-12 10:18:09 +01:00
< script src = "media/js/searchable-models.js" > < / script >
2023-08-18 09:48:06 +02:00
< script src = "media/js/multi-model-selector.js" > < / script >
2023-08-19 09:45:32 +02:00
< script src = "media/js/task-manager.js" > < / script >
2022-11-18 13:01:20 +01:00
< script src = "media/js/main.js" > < / script >
2023-05-25 09:31:17 +02:00
< script src = "media/js/plugins.js" > < / script >
2022-11-18 13:01:20 +01:00
< script src = "media/js/themes.js" > < / script >
< script src = "media/js/dnd.js" > < / script >
2022-12-01 11:31:09 +01:00
< script src = "media/js/image-editor.js" > < / script >
2023-03-15 02:43:49 +01:00
< script src = "media/js/image-modal.js" > < / script >
2022-09-02 10:28:36 +02:00
< script >
async function init() {
2022-10-20 06:12:01 +02:00
await initSettings()
2023-07-08 19:58:47 +02:00
await getModels(false)
2022-09-09 17:04:32 +02:00
await getAppConfig()
2022-10-19 18:04:40 +02:00
await loadUIPlugins()
2022-11-23 04:04:20 +01:00
await loadModifiers()
2022-11-30 10:04:24 +01:00
await getSystemInfo()
2023-06-26 13:38:46 +02:00
// await initPlugins()
2022-09-02 10:28:36 +02:00
2022-12-06 12:34:08 +01:00
SD.init({
events: {
2023-03-16 07:12:31 +01:00
statusChange: setServerStatus,
2023-05-28 00:50:23 +02:00
idle: onIdle,
2023-07-29 17:39:27 +02:00
ping: onPing
2022-12-06 12:34:08 +01:00
}
})
2023-08-01 09:13:23 +02:00
// splashScreen()
2022-09-09 17:35:24 +02:00
2023-07-08 19:58:47 +02:00
// load models again, but scan for malicious this time
await getModels(true)
2023-04-07 06:25:30 +02:00
// playSound()
2022-09-02 10:28:36 +02:00
}
init()
< / script >
< / html >