Commit Graph

2402 Commits

Author SHA1 Message Date
comfyanonymous
391c1046cf More flexibility with text encoder return values.
Text encoders can now return other values to the CONDITIONING than the cond
and pooled output.
2024-07-10 20:06:50 -04:00
comfyanonymous
e44fa5667f Support returning text encoder attention masks. 2024-07-10 19:31:22 -04:00
Chenlei Hu
90389b3b8a
Update bug issue template (#3996)
* Update issue template

* nit
2024-07-10 11:28:15 -04:00
Chenlei Hu
8d3f979b63
Check unhandled exception in test log in test action (#3987)
* Upload console logs

* Check unhandled exception
2024-07-09 17:12:57 -04:00
Chenlei Hu
83f70a88fb
Add __module__ to node info (#3936)
Use more explicit name 'python_module'

Parse abs ath

Move parse to nodes.py
2024-07-09 17:07:15 -04:00
Extraltodeus
f1a01c2c7e
Add sampler_pre_cfg_function (#3979)
* Update samplers.py

* Update model_patcher.py
2024-07-09 16:20:49 -04:00
comfyanonymous
c3db344746 Fix ConditioningZeroOut when there is no pooled output. 2024-07-09 11:52:31 -04:00
bymyself
d160073829
Fix loadGraphData call during restore (#3976) 2024-07-09 11:23:26 -04:00
comfyanonymous
ade7aa1b0c Remove useless import. 2024-07-09 11:05:05 -04:00
comfyanonymous
faa57430b0 Controlnet union model basic implementation.
This is only the model code itself, it currently defaults to an empty
embedding [0] * 6 which seems to work better than treating it like a
regular controlnet.

TODO: Add nodes to select the image type.
2024-07-08 23:49:02 -04:00
comfyanonymous
bb663bcd6c Rename clip_t5base to t5base for stable audio text encoder. 2024-07-08 08:53:55 -04:00
comfyanonymous
628f0b8ebc Move audio nodes out of _for_testing. 2024-07-07 09:22:32 -04:00
comfyanonymous
2dc84d1444 Add a way to set the timestep multiplier in the flow sampling. 2024-07-06 04:06:03 -04:00
comfyanonymous
ff63893d10 Support other types of T5 models. 2024-07-06 02:42:53 -04:00
comfyanonymous
4040491149 Better T5xxl detection. 2024-07-06 00:53:33 -04:00
comfyanonymous
b8e58a9394 Cleanup T5 code a bit. 2024-07-06 00:36:49 -04:00
comfyanonymous
80c4590998 Allow specifying the padding token for the tokenizer. 2024-07-06 00:06:49 -04:00
comfyanonymous
ce649d61c0 Allow zeroing out of embeds with unused attention mask. 2024-07-05 23:48:17 -04:00
comfyanonymous
b4c2d03d47 Remove duplicate import. 2024-07-05 12:10:22 -04:00
comfyanonymous
1dc87df4c5 Readme changes. 2024-07-04 22:03:37 -04:00
comfyanonymous
cedbc94cc0 Forgot this in last commit. 2024-07-04 21:49:50 -04:00
comfyanonymous
bd2d3e27d7 Show comfy_extras warning at the end.
Remove code.
2024-07-04 21:44:27 -04:00
comfyanonymous
720b17442d Temporary revert. 2024-07-04 21:09:58 -04:00
Chenlei Hu
0e3dfd9e34
Use relative path for custom/extra node module name (#3944)
* Fix module name for comfy extra nodes

* Use module name relative to root dir
2024-07-04 20:49:07 -04:00
comfyanonymous
739b76630e Remove useless code. 2024-07-04 15:14:13 -04:00
bymyself
24b969d3da
Skip state check hook on first load (#3915) 2024-07-03 20:30:07 -04:00
Chenlei Hu
086ac75228
3.8 Compatible type annotation (#3938) 2024-07-03 19:31:46 -04:00
comfyanonymous
d7484ef30c Support loading checkpoints with the UNETLoader node. 2024-07-03 11:34:32 -04:00
comfyanonymous
537f35c7bc Don't update dict if contiguous. 2024-07-02 20:21:51 -04:00
Alex "mcmonkey" Goodwin
3f46362d22
fix non-contiguous tensor saving (from channels-last) (#3932) 2024-07-02 20:16:33 -04:00
comfyanonymous
01991f72ce Fix SamplerEulerCFGpp node. 2024-07-02 12:21:08 -04:00
comfyanonymous
2f03201690 Remove some empty lines. 2024-07-02 01:32:23 -04:00
shawnington
52aaee251f
Fix to #3465. Prevent, resaving of duplicate images if overwrite not specified (#3472)
* Fix to #3465. Prevent the, resaving of duplicate images if overwrite not specified

This is a fix to #3465 

Adds function compare_image_hash to do a sha256 hash comparison between an uploaded image and existing images with matching file names. 

This changes the behavior so that only images having the same filename that are actually different are saved to input, existing images are instead now opened instead of resaved with increment. 

Currently, exact duplicates with the same filename are resave saved with an incremented filename in the format:

<filename> (n).ext 

with the code: 

```
while os.path.exists(filepath): 
                        filename = f"{split[0]} ({i}){split[1]}"
                        filepath = os.path.join(full_output_folder, filename)
                        i += 1
```

This commit changes this to: 

```
while os.path.exists(filepath): 
                        if compare_image_hash(filepath, image):
                            image_is_duplicate = True
                            break
                        filename = f"{split[0]} ({i}){split[1]}"
                        filepath = os.path.join(full_output_folder, filename)
                        i += 1
```

a check for if image_is_duplicate = False is done before saving the file. 

Currently, if you load the same image of a cat named cat.jpg into the LoadImage node 3 times, you will get 3 new files in your input folder with incremented file names.

With this change, you will now only have the single copy of cat.jpg, that will be re-opened instead of re-saved. 

However if you load 3 different images of cats named cat.jpg, you will get the expected behavior of having:
cat.jpg
cat (1).jpg
cat (2).jpg

This saves space and clutter. After checking my own input folder, I have 800+ images that are duplicates that were resaved with incremented file names amounting to more than 5GB of duplicated data.

* fixed typo in expression
2024-07-02 01:30:33 -04:00
Bob Du
1ef66b0955
Add example for how to add custom API routes (#3597) 2024-07-01 18:02:42 -04:00
Chenlei Hu
9dd549e253
Add --no-custom-node cmd flag (#3903)
* Add --no-custom-node cmd flag

* nit
2024-07-01 17:54:03 -04:00
Peter Crabtree
b82d67d5bf
Add SamplerEulerAncestralCFG++ custom sampler node (#3901)
(for eta and s_noise)
2024-07-01 17:42:17 -04:00
Hayden Reeve
755c48d78e
Fix several typos in example_node.py.example (#3204)
This change includes corrections for several spelling errors in the
documentation of example_node.py.example file.

These were previously raised by #3157, but they missed a few.
2024-07-01 17:21:12 -04:00
comfyanonymous
5dccfefe8d Switch nightly pytorch standalone package to lzma2. 2024-07-01 17:17:25 -04:00
YAN Wenkun
0cd4a6a5e5
Fine-tuning GitHub Actions (#3169)
* Bumping GitHub Actions versions

* Using LZMA2 for 7zip compression in Windows packaging
2024-07-01 17:15:49 -04:00
Robin Huang
601b4b63e1
Add CONTRIBUTING.md (#3910)
* Create CONTRIBUTING.md

* Add feature-request channel link.

* Remove discord links for channels.
2024-07-01 13:51:00 -04:00
ruucm
e53b1592ba
enable cmd shortcuts for mac (mute & bypass) (#3792) 2024-07-01 13:45:34 -04:00
Chenlei Hu
7c5fa7f4a2
Fix loadGraphData func call (#3918) 2024-07-01 12:10:44 -04:00
comfyanonymous
521421f53e Fix workflow not importing from flac files on some systems. 2024-06-30 15:51:54 -04:00
comfyanonymous
dbb7dd3b5e Add to readme that Stable Audio is supported. 2024-06-30 00:15:49 -04:00
comfyanonymous
05e831697a Switch to the real cfg++ method in the samplers.
The old _pp ones will be updated automatically to the regular ones with 2x
the cfg.

My fault for not checking what the "_pp" samplers actually did.
2024-06-29 11:59:48 -04:00
comfyanonymous
fbb7a1f1b6 PreviewAudio node. 2024-06-29 01:33:22 -04:00
Robin Huang
c39cf7fff0
Revert "Add integration test for Linux with Nvidia GPU. #3884 (#3895)" (#3905)
This reverts commit 449bf52923.
2024-06-28 16:09:55 -04:00
Robin Huang
02cac1d487
Revert "Add macOs integration test for default workflow. (#3898)" (#3904)
This reverts commit 97b409cd48.
2024-06-28 16:09:39 -04:00
comfyanonymous
7ecb2ec169 Audio second setting in EmptyLatentAudio. 2024-06-28 02:55:36 -04:00
pythongosssss
0d9009c96e
New menu/workflows fixes (#3900)
* Fix auto queue

* Detect added nodes via search

* Fix loading workflows

* Add button click style
2024-06-28 01:07:19 -04:00