Commit Graph

380 Commits

Author SHA1 Message Date
comfyanonymous eed3042830 Move conditioning concat node to conditioning section. 2023-07-13 21:44:56 -04:00
comfyanonymous bdba394290 Add a canny preprocessor node. 2023-07-13 13:26:48 -04:00
comfyanonymous 3bc8be33e4 Don't let custom nodes overwrite base nodes. 2023-07-13 12:56:38 -04:00
comfyanonymous f4b9390623 Add a random string to the temp prefix for PreviewImage. 2023-07-11 17:35:55 -04:00
comfyanonymous ccb1b25908 Add a conditioning concat node. 2023-07-05 17:40:22 -04:00
comfyanonymous af7a49916b Support loading unet files in diffusers format. 2023-07-05 17:38:59 -04:00
comfyanonymous 3a09fac835 ConditioningAverage now also averages the pooled output. 2023-07-03 21:44:37 -04:00
comfyanonymous d94ddd8548 Add text encode nodes to control the extra parameters in SDXL. 2023-07-03 19:11:36 -04:00
comfyanonymous 5a9ddf94eb LoraLoader node now caches the lora file between executions. 2023-06-29 23:40:51 -04:00
comfyanonymous 2d880fec3a Add a node to zero out the cond to advanced/conditioning
The stability streamlit example passes a zero cond as the negative input
so using this for the negative input makes outputs match the streamlit.
2023-06-27 23:30:52 -04:00
comfyanonymous 9b93b920be Add CheckpointSave node to save checkpoints.
The created checkpoints contain workflow metadata that can be loaded by
dragging them on top of the UI or loading them with the "Load" button.

Checkpoints will be saved in fp16 or fp32 depending on the format ComfyUI
is using for inference on your hardware. To force fp32 use: --force-fp32

Anything that patches the model weights like merging or loras will be
saved.

The output directory is currently set to: output/checkpoints but that might
change in the future.
2023-06-26 12:22:27 -04:00
comfyanonymous 4eab00e14b Set the seed in the SDE samplers to make them more reproducible. 2023-06-25 03:04:57 -04:00
comfyanonymous cef6aa62b2 Add support for TAESD decoder for SDXL. 2023-06-25 02:38:14 -04:00
comfyanonymous 20f579d91d Add DualClipLoader to load clip models for SDXL.
Update LoadClip to load clip models for SDXL refiner.
2023-06-25 01:40:38 -04:00
comfyanonymous 05676942b7 Add some more transformer hooks and move tomesd to comfy_extras.
Tomesd now uses q instead of x to decide which tokens to merge because
it seems to give better results.
2023-06-24 03:30:22 -04:00
comfyanonymous 8607c2d42d Move latent scale factor from VAE to model. 2023-06-23 02:33:31 -04:00
comfyanonymous f87ec10a97 Support base SDXL and SDXL refiner models.
Large refactor of the model detection and loading code.
2023-06-22 13:03:50 -04:00
comfyanonymous bf3f271775 Add some nodes for basic model merging. 2023-06-20 19:17:03 -04:00
comfyanonymous 8c9c94b5f3 Add bicubic upscale method. 2023-06-17 01:54:33 -04:00
comfyanonymous 67833c83d8 Add ImageScaleBy node. 2023-06-12 01:14:04 -04:00
comfyanonymous c64ca8c0b2 Refactor unCLIP noise augment out of samplers.py 2023-06-11 04:01:18 -04:00
comfyanonymous a3a713b6c5 Refactor previews into one command line argument.
Clean up a few things.
2023-06-06 02:13:05 -04:00
space-nuko 8b4a6c19c2 Fix 2023-06-05 19:00:51 -05:00
space-nuko 3e17971acb preview method autodetection 2023-06-05 18:59:10 -05:00
space-nuko d5a28fadaa Add latent2rgb preview 2023-06-05 18:39:56 -05:00
space-nuko 70d72c4336 Slightly less vibrant sample 2023-06-05 15:26:56 -05:00
space-nuko 48f7ec750c Make previews into cli option 2023-06-05 13:19:02 -05:00
space-nuko f326a0a468 Make new LATENT_PREVIEWER type for declaring KSampler preview methods 2023-06-05 09:20:20 -05:00
space-nuko b4f434ee66 Preview sampled images with TAESD 2023-06-05 09:20:17 -05:00
comfyanonymous 0fc483dcfd Refactor diffusers model convert code to be able to reuse it. 2023-05-28 01:55:40 -04:00
space-nuko 4d1ed829d9 Don't load some model types if weight is zero 2023-05-26 19:33:30 -05:00
comfyanonymous c00bb1a0b7 Add a latent upscale by node. 2023-05-23 12:53:38 -04:00
comfyanonymous 34887b8885 Add experimental bislerp algorithm for latent upscaling.
It's like bilinear but with slerp.
2023-05-23 03:12:56 -04:00
comfyanonymous 6cc450579b Auto transpose images from exif data. 2023-05-22 00:22:24 -04:00
comfyanonymous 8bbd9815a9 Support loading fp16 latent files. 2023-05-19 02:15:32 -04:00
comfyanonymous 62a371e12b Load workflow from latent file. 2023-05-18 02:41:21 -04:00
comfyanonymous faf899ad5a LoadLatent and SaveLatent should behave like the LoadImage and SaveImage. 2023-05-18 00:09:12 -04:00
comfyanonymous a7375103b9 Some small changes to Load/SaveLatent. 2023-05-17 23:41:57 -04:00
Dr.Lt.Data e7f2816c6f
feat:Latent Save/Load (#662)
* wip

* latent dir

* fix

* fix

* now working

* mark todo

* remove server.py changes to separate PRt

---------

Co-authored-by: Lt.Dr.Data <lt.dr.data@gmail.com>
2023-05-17 23:40:28 -04:00
comfyanonymous 2ec6d1c6e3 Don't import custom nodes when the folder ends with .disabled 2023-05-15 03:31:03 -04:00
comfyanonymous c02a554bcf Make DiffusersLoader work with subfolders. 2023-05-15 03:25:24 -04:00
comfyanonymous acff543d66 Remove useless code. 2023-05-14 12:50:21 -04:00
comfyanonymous b0505eb7ab Return right type when none specified in upload route.
Switch time.time to time.perf_counter for custom node import times.
2023-05-13 15:31:22 -04:00
comfyanonymous db4d3a8494 Print if custom nodes imported successfully or not. 2023-05-13 13:23:42 -04:00
comfyanonymous 2ac744f662 Print all custom node import times. 2023-05-13 13:15:31 -04:00
comfyanonymous 92bf1cb61e Change message. 2023-05-13 13:05:52 -04:00
comfyanonymous cf439709b6 Load nodes in comfy_extras before custom nodes.
Change the slow import message.
2023-05-13 12:50:42 -04:00
comfyanonymous cb4b822398 Print custom nodes that take too much time to import. 2023-05-13 11:54:45 -04:00
BlenderNeko 1201d2eae5
Make nodes map over input lists (#579)
* allow nodes to map over lists

* make work with IS_CHANGED and VALIDATE_INPUTS

* give list outputs distinct socket shape

* add rebatch node

* add batch index logic

* add repeat latent batch

* deal with noise mask edge cases in latentfrombatch
2023-05-13 11:15:45 -04:00
comfyanonymous c5c0ea666f noise_mask in latent should be in a single format. 2023-05-12 20:34:48 -04:00
comfyanonymous d43e45ce62 Remove print. 2023-05-09 10:29:58 -04:00
comfyanonymous 850daf0416 Masked editor changes.
Add a way to upload to subfolders.

Clean up code.

Fix some issues.
2023-05-08 14:37:51 -04:00
Dr.Lt.Data ae08fdb999
Clipspace Menu and MaskEditor application. (#548)
* Add clipspace feature.
* feat: copy content to clipspace
* feat: paste content from clipspace

Extend validation to allow for validating annotated_path in addition to other parameters.

Add support for annotated_filepath in folder_paths function.

Generalize the '/upload/image' API to allow for uploading images to the 'input', 'temp', or 'output' directories.

* rename contentClipboard -> clipspace

* Do deep copy for imgs on copy to clipspace.

* mask painting on clipspace

* add original_imgs into clipspace
* Preserve the original image when 'imgs' are modified

* robust patch & refactoring folder_paths about annotated_filepath

* wip

* Only show the Paste menu if the ComfyApp.clipspace is not empty

* clipspace feature added
maskeditor feature added

* instant refresh on paste

force triggering 'changed' on paste action

* enhance mask painting

smooth drawing
add brush_size +/- button

* robust patch

use mouseup event

* robust patch

again...

* subfolder fix on paste logic

attach subfolder if subfolder isn't empty

* event listener patch

add ], [ key event for brush size
remove listener on close

* Fix button positioning issue related to window height.
Change brush size from button to slider.

* clean commit

* clean code

* various bug fixes

* paste action
- prevent opening upload popup
- ensure rendering after widget_value update

* view api update
- support annotated_filepath

* maskeditor layout
- prevent covering button by hidden div

* remove dbg message

* Add cursor functionality to display brush size

* refactor: Replace brush preview feature with missionfloyd implementation

* missionfloyd implementation
* hiding brush preview off the canvas
* change brush size on wheel event

* keyup -> keydown event

* Update web/extensions/core/maskeditor.js

Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>

* Add support for channel-specific image data retrieval in /view API to fix alpha mask loading issue

When loading an image with an alpha mask in JavaScript canvas, there is an issue where the alpha and RGB channels are premultiplied. To avoid reliance on JavaScript canvas, I added support for channel-specific image data retrieval in the "/view" API. This allows us to retrieve data for each channel separately and fix the alpha mask loading issue. The changes have been committed to the repository.

* Enable brush preview for key and slider events

* optimize

* preview fix

* robust patch

* fix copy (clipspace) action
imgs[0] copy -> whole imgs copy

* support batch images on clipspace, maskeditor

* copy/paste bug fixes for batch images
enhance selector preview on clipspace menu
add img_paste_mode option into clipspace menu

* crash fix

* print message if clipspace content cannot editable

* Update web/extensions/core/maskeditor.js

Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>

* make default img_paste_mode to 'selected'

refactor space -> tab

* save clipspace files to input/clipspace instead of temp

* show "clipspace/filename.png" instead of 'filename.png [clipspace]' in LoadImage/LoadImageMask

* refresh fix related to FILE_COMBO

* Update web/extensions/core/maskeditor.js

Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>

* Update web/extensions/core/maskeditor.js

Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>

* adjust margin based on missionfloyd impelements

* mouse event -> pointer event

* pen, touch, mouse drawing patched and tested

* Update web/extensions/core/maskeditor.js

Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>

* add comment about touch event.

---------

Co-authored-by: Lt.Dr.Data <lt.dr.data@gmail.com>
Co-authored-by: missionfloyd <missionfloyd@users.noreply.github.com>
2023-05-08 14:37:36 -04:00
comfyanonymous 678f933d38 maximum_batch_area for xformers.
Remove useless code.
2023-05-06 19:28:46 -04:00
comfyanonymous 908dc1d5a8 Add a total_steps value to sampler callback. 2023-05-03 12:58:10 -04:00
comfyanonymous 93c64afaa9 Use sampler callback instead of tqdm hook for progress bar. 2023-05-02 23:00:49 -04:00
comfyanonymous ba8a4c3667 Change latent resolution step to 8. 2023-05-02 14:17:51 -04:00
comfyanonymous 35f636b6c7 Expose grow_mask_by in VAEEncodeForInpaint.
The mask is dilated by grow_mask_by pixels after being applied to the pixel
space image. This helps reduce seams caused by inpainting. Higher value
means less seams.
2023-05-02 00:53:15 -04:00
comfyanonymous 0aa667ed33 Fix ConditioningAverage. 2023-04-30 17:33:43 -04:00
FizzleDorf 29c8f1a344
Conditioning Average (#495)
* first commit

* fixed a bunch of things missing in initial commit.

* parameters renamed for clarity

* renamed node, attempted update cond list

* to_strength removed, it is now normalized

* removed comments and prints. Attempted to apply to every cond in list again but no luck

* fixed repeating frames after batch using deepcopy

* Revert "fixed repeating frames after batch using deepcopy"

This reverts commit 1086d6a0e1.

* Rewrite addWeighted to use torch.mul iteratively.

---------

Co-authored-by: City <125218114+city96@users.noreply.github.com>
2023-04-30 17:33:15 -04:00
comfyanonymous c66db06763 Make ConditioningSetMask area option a bit more clear.
Make ConditioningSetArea override the set_area_to_bounds.
2023-04-29 20:25:05 -04:00
comfyanonymous 071011aebe Mask strength should be separate from area strength. 2023-04-29 20:06:53 -04:00
Jacob Segal af02393c2a Default to sampling entire image
By default, when applying a mask to a condition, the entire image will
still be used for sampling. The new "set_area_to_bounds" option on the
node will allow the user to automatically limit conditioning to the
bounds of the mask.

I've also removed the dependency on torchvision for calculating bounding
boxes. I've taken the opportunity to fix some frustrating details in the
other version:
1. An all-0 mask will no longer cause an error
2. Indices are returned as integers instead of floats so they can be
   used to index into tensors.
2023-04-29 00:16:58 -07:00
Jacob Segal e214c917ae Add Condition by Mask node
This PR adds support for a Condition by Mask node. This node allows
conditioning to be limited to a non-rectangle area.
2023-04-27 20:03:27 -07:00
comfyanonymous aa57136dae Some fixes to the batch masks PR. 2023-04-25 01:12:40 -04:00
comfyanonymous c7c1f0d074 Merge branch 'multiple_inpaint_masks' of https://github.com/guill/ComfyUI
# Conflicts:
#	nodes.py
2023-04-25 00:54:15 -04:00
comfyanonymous c50208a703 Refactor more code to sample.py 2023-04-24 23:25:51 -04:00
comfyanonymous a2236a0c2a Merge branch 'master' of https://github.com/BlenderNeko/ComfyUI 2023-04-24 17:57:27 -04:00
BlenderNeko d9b1595f85 made sample functions more explicit 2023-04-24 12:53:10 +02:00
comfyanonymous ccad603b2e Add a way for nodes to validate their own inputs. 2023-04-23 16:03:26 -04:00
ltdrdata f7a8218814
Add clipspace feature. (#541)
* Add clipspace feature.
* feat: copy content to clipspace
* feat: paste content from clipspace

Extend validation to allow for validating annotated_path in addition to other parameters.

Add support for annotated_filepath in folder_paths function.

Generalize the '/upload/image' API to allow for uploading images to the 'input', 'temp', or 'output' directories.

* rename contentClipboard -> clipspace

* Do deep copy for imgs on copy to clipspace.

* add original_imgs into clipspace
* Preserve the original image when 'imgs' are modified

* robust patch & refactoring folder_paths about annotated_filepath

* Only show the Paste menu if the ComfyApp.clipspace is not empty

* instant refresh on paste

force triggering 'changed' on paste action

* subfolder fix on paste logic

attach subfolder if subfolder isn't empty

---------

Co-authored-by: Lt.Dr.Data <lt.dr.data@gmail.com>
2023-04-23 15:58:55 -04:00
BlenderNeko 5818539743 add docstrings 2023-04-23 20:09:09 +02:00
BlenderNeko 8d2de420d3 Merge branch 'master' of https://github.com/BlenderNeko/ComfyUI 2023-04-23 20:02:18 +02:00
BlenderNeko 2a09e2aa27 refactor/split various bits of code for sampling 2023-04-23 20:02:08 +02:00
comfyanonymous 5282f56434 Implement Linear hypernetworks.
Add a HypernetworkLoader node to use hypernetworks.
2023-04-23 12:35:25 -04:00
Jacob Segal ee030d281b Add support for multiple unique inpainting masks
This enables workflows like "Inpaint at full resolution" when using
batch sizes greater than 1.
2023-04-22 16:02:26 -07:00
comfyanonymous 31e60adb28 Add GLIGEN example to README. 2023-04-20 17:30:10 -04:00
comfyanonymous 3696d1699a Add support for GLIGEN textbox model. 2023-04-19 11:06:32 -04:00
comfyanonymous f03dade5ab Fix bug. 2023-04-17 18:19:57 -04:00
comfyanonymous 6f7852bc47 Add a LatentFromBatch node to pick a single latent from a batch.
Works before and after sampling.
2023-04-17 17:28:07 -04:00
comfyanonymous 74fc7b7726 custom_nodes paths can now be set in the extra_model_paths.yaml 2023-04-16 01:46:43 -04:00
comfyanonymous 73c3e11e83 Fix model_management import so it doesn't get executed twice. 2023-04-15 19:04:33 -04:00
comfyanonymous f48f0872e2 Refactor: move nodes_mask_convertion nodes to nodes_mask. 2023-04-14 00:21:01 -04:00
comfyanonymous e1db7a2038 Merge branch 'image-to-mask' of https://github.com/missionfloyd/ComfyUI
# Conflicts:
#	nodes.py
2023-04-14 00:15:48 -04:00
comfyanonymous 1a7cda715b Revert LatentComposite. 2023-04-14 00:14:35 -04:00
comfyanonymous fed4a70b8e Merge branch 'master' of https://github.com/mligaintart/ComfyUI 2023-04-14 00:12:58 -04:00
Gavroche CryptoRUSH d2337a86fe
remove extra semi-colon 2023-04-13 16:38:02 -04:00
missionfloyd 9371924e65 Move mask conversion to separate file 2023-04-13 03:11:17 -06:00
missionfloyd 45b907fbf1
Merge branch 'comfyanonymous:master' into image-to-mask 2023-04-13 03:07:08 -06:00
comfyanonymous f15b4a7ffa Merge branch 'fix-LoadImageMask' of https://github.com/flyingshutter/ComfyUI 2023-04-12 01:24:53 -04:00
missionfloyd e1d289c1ec
use slice instead of torch.select() 2023-04-11 20:26:24 -06:00
missionfloyd e12fb88b1b Image/mask conversion nodes 2023-04-11 16:49:39 -06:00
comfyanonymous 24d53992c6 Rename. 2023-04-08 15:53:01 -04:00
comfyanonymous 60ac983238 Merge branch 'master' of https://github.com/city96/ComfyUI 2023-04-08 15:50:26 -04:00
comfyanonymous 44fea05064 Cleanup. 2023-04-07 02:31:46 -04:00
comfyanonymous 58ed0f2da4 Fix loading SD1.5 diffusers checkpoint. 2023-04-07 01:30:33 -04:00
sALTaccount 7734d65f22 fix loading alt folders 2023-04-06 22:02:26 -07:00
sALTaccount f51b7a92c7 search all diffusers paths (oops) 2023-04-06 21:48:58 -07:00
sALTaccount 72a8973bd5 allow configurable path for diffusers models 2023-04-06 21:45:08 -07:00
mligaintart 022a9f271b Adds masking to Latent Composite, and provides new masking utilities to
allow better compositing.
2023-04-06 15:18:20 -04:00
flyingshutter 9d1c610b89 make LoadImagesMask work with non RGBA images 2023-04-06 19:02:28 +02:00
sALTaccount 42fd67b5cb use precision determined by model management 2023-04-06 00:28:06 -07:00
sALTaccount 3d16077e38 empty list if diffusers directory doesn't exist 2023-04-06 00:24:52 -07:00
sALTaccount 60127a8304 diffusers loader 2023-04-05 23:57:31 -07:00
comfyanonymous f816964847 Add a way to set output directory with --output-directory 2023-04-05 14:29:30 -04:00
comfyanonymous 10ad4c1d17 Move unclip stuff out of _for_testing 2023-04-04 22:48:11 -04:00
comfyanonymous cadef9ff61 Merge branch 'nodes-post-processing' of https://github.com/EllangoK/ComfyUI 2023-04-04 13:51:26 -04:00
comfyanonymous f50b1fec69 Add noise augmentation setting to unCLIPConditioning. 2023-04-03 13:50:29 -04:00
EllangoK 4c7a9dbcb6 adds Blend, Blur, Dither, Sharpen nodes 2023-04-02 18:44:27 -04:00
comfyanonymous 6be7c64245 Merge branch 'custom_routes' of https://github.com/pythongosssss/ComfyUI 2023-04-02 01:55:05 -04:00
comfyanonymous 809bcc8ceb Add support for unCLIP SD2.x models.
See _for_testing/unclip in the UI for the new nodes.

unCLIPCheckpointLoader is used to load them.

unCLIPConditioning is used to add the image cond and takes as input a
CLIPVisionEncode output which has been moved to the conditioning section.
2023-04-01 23:19:15 -04:00
pythongosssss 38833ceb62 Merge remote-tracking branch 'origin/master' into custom_routes 2023-04-01 12:44:40 +01:00
pythongosssss 313f1f83a6 Tweak server/custom node load order
- Load custom nodes after creating server
 - Add routes after loading custom nodes
Custom nodes can now add routes via PromptServer.instance
2023-04-01 12:44:29 +01:00
comfyanonymous 18a6c1db33 Add a TomePatchModel node to the _for_testing section.
Tome increases sampling speed at the expense of quality.
2023-03-31 17:19:58 -04:00
City 9ac95e6ac7 Add human-readable name support for custom nodes 2023-03-31 07:05:17 +02:00
City 5bcbc007dd Add human-readable names for nodes 2023-03-30 23:13:58 +02:00
Silversith bb1503ed63
Bugfix/include optional node inputs (#271)
* Minor changes and extra nodes

* Added Preview Image for Nodes

* Add a delete images button on main floating menu

* Add a confirmation dialog

* Remove DeleteAll, Remove Custom KSampler, Remove Image List

* Remove Image and Custom Json Load

* Remove Custom Nodes

* remove patch.diff
2023-03-27 01:16:22 -04:00
comfyanonymous 48efadeccf Style. 2023-03-26 15:17:53 -04:00
m957ymj75urz 8a35c12e8c compute %width% and %height% in filepath when saving 2023-03-26 13:10:20 +02:00
comfyanonymous 9287770c66 Allow negative Lora strengths. 2023-03-25 21:31:39 -04:00
comfyanonymous e651be551c Merge branch 'allow-symbolic-link' of https://github.com/jn-jairo/ComfyUI 2023-03-25 17:30:22 -04:00
comfyanonymous a30526aec1 Set default value of feathering to 40. 2023-03-25 04:49:58 -04:00
Guo Y.K 3b87302958
nodes: ImagePadForOutpaint: clean imports 2023-03-25 16:32:48 +08:00
Guo Y.K 4c01386c19
nodes: ImagePadForOutpaint: fix feathering, ignore edges not expanded 2023-03-25 16:27:47 +08:00
Guo Y.K 4580f3e644
nodes: add feathering to to ImagePadForOutpaint 2023-03-24 22:39:33 +08:00
Jairo Correa 4f24e6a13b Allow output folder to be a symbolic link 2023-03-23 21:25:21 -03:00
Guo Y.K 3ebf7452c3
nodes: add ImagePadForOutpaint 2023-03-23 23:33:35 +08:00
comfyanonymous cc127eeabd Lower PNG compression for more speed.
After some quick tests compress_level=4 seems to give the best compression
performance ratio for stable diffusion images.

It's 10x faster than max compression for an image size increase of only
2.5%.
2023-03-23 00:40:48 -04:00
comfyanonymous aae9fe0cf9 Increase max res to 8192x8192 since 4096x4096 wasn't enough for some. 2023-03-22 12:22:48 -04:00
comfyanonymous aa2ddfabb9 Fix bug with CLIPLoader. 2023-03-21 03:11:18 -04:00
comfyanonymous e85fcb822b Small fix. 2023-03-20 14:55:28 -04:00
comfyanonymous 0abe001edd Merge branch 'save-images' of https://github.com/m957ymj75urz/ComfyUI 2023-03-20 14:29:45 -04:00
m957ymj75urz d1138e8ba0 rework payload from server 2023-03-19 12:54:29 +01:00
comfyanonymous 50099bcd96 Support multiple paths for embeddings. 2023-03-18 03:08:43 -04:00
comfyanonymous 2e73367f45 Merge T2IAdapterLoader and ControlNetLoader.
Workflows will be auto updated.
2023-03-17 18:17:59 -04:00
comfyanonymous e1a9e26968 Add folder_paths so models can be in multiple paths. 2023-03-17 18:01:11 -04:00
comfyanonymous bf1dc1d9bc Fix VAEEncodeForInpaint modifying source image. 2023-03-16 17:10:08 -04:00
m957ymj75urz 16001e9429 fixes for specific paths 2023-03-16 19:48:59 +01:00
comfyanonymous d834eed7d0 Fix bug when applying controlnet to negative prompt. 2023-03-15 17:58:13 -04:00
m957ymj75urz 629272c0ca resolve conflict with the new PreviewImage node 2023-03-15 12:10:45 +01:00
m957ymj75urz 3d2f60b315
Merge branch 'master' into save-images 2023-03-15 10:48:15 +00:00
comfyanonymous 6d44cf74e3 Make it more clear the recommended way to update the standalone build. 2023-03-14 19:14:18 -04:00
pythongosssss 8537ab6f45 tidy 2023-03-14 19:42:28 +00:00
pythongosssss 6a6256a75c Changed flag to new node 2023-03-14 19:28:07 +00:00
m957ymj75urz 6daf9bb22c switch to realpath to check path traversal 2023-03-14 09:27:53 +01:00
m957ymj75urz 5b425aaa40 remove subfolder widget and use filename_prefix 2023-03-14 09:08:54 +01:00
pythongosssss 6db777b348 Added ability to save images to temp dir 2023-03-13 19:34:05 +00:00
m957ymj75urz 70f9bd1408 fix makedirs on save 2023-03-12 20:23:46 +01:00
m957ymj75urz 195d7aec9f can specify a subfolder in the SaveImage node 2023-03-12 19:51:39 +01:00
comfyanonymous c8f1acc4eb Put image upscaling nodes in image/upscaling category. 2023-03-11 18:10:36 -05:00
comfyanonymous e33dc2b33b Add a VAEEncodeTiled node. 2023-03-11 15:28:15 -05:00
comfyanonymous 905857edd8 Take some code from chainner to implement ESRGAN and other upscale models. 2023-03-11 13:09:28 -05:00
comfyanonymous 8c4ccb55d1 Small refactor of custom node loading code. 2023-03-11 12:49:41 -05:00
comfyanonymous 1f717903bc Prevent potential int overflow in SaveImage 2023-03-11 12:48:28 -05:00
comfyanonymous 99eb777f5d Make the LoadImage node output the alpha as a mask. 2023-03-09 14:07:55 -05:00
pythongosssss fa07426569 Remove random spaces 2023-03-09 18:18:08 +00:00
pythongosssss 99abc0eb2e Changed to upload to input dir
Fixed jpg
Added dupe support
Changed to use existing nodes
2023-03-09 17:57:59 +00:00
pythongosssss 4a326a2548 Added UploadImage+Mask nodes 2023-03-08 22:07:44 +00:00
comfyanonymous 0a0c769d6d Try to fix import issue. 2023-03-06 14:41:42 -05:00
pythongosssss 09db31309a Merge remote-tracking branch 'origin/master' into frontendrefactor 2023-03-06 17:02:34 +00:00
comfyanonymous afff30fc0a Add --cpu to use the cpu for inference. 2023-03-06 10:50:50 -05:00
comfyanonymous 8515d96328 It's more logical for the StyleModelApply to append it directly. 2023-03-06 01:48:18 -05:00
comfyanonymous 7ec1dd25a2 A tiny bit of reorganizing. 2023-03-06 01:30:17 -05:00
comfyanonymous 47acb3d73e Implement support for t2i style model.
It needs the CLIPVision model so I added CLIPVisionLoader and CLIPVisionEncode.

Put the clip vision model in models/clip_vision
Put the t2i style model in models/style_models

StyleModelLoader to load it, StyleModelApply to apply it
ConditioningAppend to append the conditioning it outputs to a positive one.
2023-03-05 18:39:25 -05:00
pythongosssss bba14245cb Merge remote-tracking branch 'origin' into frontendrefactor 2023-03-03 19:30:24 +00:00
comfyanonymous b9e3f52240 stop_at_clip_layer can be set in CLIPSetLastLayer so it can be removed
from the CLIPLoader node.
2023-03-03 14:27:55 -05:00
pythongosssss 4ef4cf913f Adding built in extensions + example 2023-03-03 18:28:34 +00:00
comfyanonymous 8586515886 Move the CheckpointLoaderSimple to the right section. 2023-03-03 13:09:44 -05:00
comfyanonymous 4215206281 Add a node to set CLIP skip.
Use a more simple way to detect if the model is -v prediction.
2023-03-03 13:04:36 -05:00
comfyanonymous fed315a76a To be really simple CheckpointLoaderSimple should pick the right type. 2023-03-03 11:07:10 -05:00
comfyanonymous 94bb0375b0 New CheckpointLoaderSimple to load checkpoints without a config. 2023-03-03 03:37:35 -05:00
comfyanonymous c8ce599a8f Add a button to interrupt processing to the ui. 2023-03-02 15:24:51 -05:00
comfyanonymous 69cc75fbf8 Add a way to interrupt current processing in the backend. 2023-03-02 14:42:03 -05:00
comfyanonymous d826a0971c Outpainting actually works now. 2023-02-27 12:02:23 -05:00
pythongosssss a9c57849b7
Merge branch 'comfyanonymous:master' into socketrework 2023-02-25 12:00:22 +00:00
comfyanonymous 4e6b83a80a Add a T2IAdapterLoader node to load T2I-Adapter models.
They are loaded as CONTROL_NET objects because they are similar.
2023-02-25 01:24:56 -05:00
comfyanonymous 87b00b37f6 Added an experimental VAEDecodeTiled.
This decodes the image with the VAE in tiles which should be faster and
use less vram.

It's in the _for_testing section so I might change/remove it or even
add the functionality to the regular VAEDecode node depending on how
well it performs which means don't depend too much on it.
2023-02-24 02:10:10 -05:00
pythongosssss 9bd7bfa648
Added workflow history
Moved socket output updates to all node executions
Made image rendering on nodes more generic
2023-02-23 20:12:57 +00:00
pythongosssss 2816eb236d
Merge branch 'comfyanonymous:master' into socketrework 2023-02-23 20:07:30 +00:00
comfyanonymous 62df8dd62a Add a node to load diff controlnets. 2023-02-22 23:22:03 -05:00
comfyanonymous 3ae61a2bca Add a node to invert the colours of images.
Might be useful for controlnets.
2023-02-22 21:57:56 -05:00
pythongosssss a52aa9f4b5
Moved api out to server
Reworked sockets to use socketio
Added progress to nodes
Added highlight to active node
Added preview to saveimage node
2023-02-21 19:29:49 +00:00
comfyanonymous d80af7ca30 ControlNetApply now stacks.
It can be used to apply multiple control nets at the same time.
2023-02-21 01:18:53 -05:00
comfyanonymous 8683ea4248 Merge branch 'master' into m957ymj75urz-dynamic-prompting 2023-02-20 23:49:55 -05:00
comfyanonymous a3d0b56c61 Fix for relative imports in custom nodes. 2023-02-19 12:00:05 -05:00
m957ymj75urz e2e5c4c5b0 Add basic dynamic prompting with seeding on CLIPTextEncode node 2023-02-17 22:37:03 +01:00
comfyanonymous 71354c7c57 Sort images on LoadImageMask node. 2023-02-17 13:17:09 -05:00
comfyanonymous 1688f5024d Fix a few issues with the custom_nodes PR.
There only needs to be one example in the folder.
2023-02-17 11:19:49 -05:00
Fannovel16 fa66ece26b
Merge branch 'comfyanonymous:master' into master 2023-02-17 18:02:52 +07:00
Hacker 17082006 1c5fe809c2 . 2023-02-17 17:59:16 +07:00
comfyanonymous 638f924546 Sort the list of input images. 2023-02-16 21:01:46 -05:00
comfyanonymous 6135a21ee8 Add a way to control controlnet strength. 2023-02-16 18:08:01 -05:00
comfyanonymous 4efa67fa12 Add ControlNet support. 2023-02-16 10:38:08 -05:00
comfyanonymous bc69fb5245 Use inpaint models the proper way by using VAEEncodeForInpaint. 2023-02-15 20:44:51 -05:00
comfyanonymous e87a8669b6 Add a LoadImageMask node to load one colour channel in an image as a mask. 2023-02-15 17:39:42 -05:00
comfyanonymous d75003001a Add a SetLatentNoiseMask node.
LATENT is now a dict that can contain properties.
2023-02-15 16:58:55 -05:00
Hacker 17082006 e1a047971b Edit comment 2023-02-15 21:50:18 +07:00
Hacker 17082006 7da0147d8a Done custom_node import error fixing 2023-02-15 21:48:10 +07:00
Hacker 17082006 b67b6920d1 Fix bug 2023-02-15 21:15:54 +07:00
Hacker 17082006 493671574e Adding some suggests from the author 2023-02-14 22:20:30 +07:00