Commit Graph

270 Commits

Author SHA1 Message Date
doctorpangloss
1f69d3ec0b Fix directory creation 2025-01-09 18:19:50 -08:00
doctorpangloss
f8a00af0d2 Fix issues with paths 2025-01-04 13:52:32 -08:00
doctorpangloss
9d5a5dd533 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-12-28 14:24:27 -08:00
doctorpangloss
7655be873c Updates to support Hunyuan Video 2024-12-25 22:39:12 -08:00
doctorpangloss
0fd407ae87 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-12-24 16:48:03 -08:00
doctorpangloss
86b15084d5 Fix issues with directories and running on macOS
- include detailed runtime instructions for Windows and macOS
 - include instructions for agreeing to use Hugging Face repositories
 - always create directories by default when run interactively
 - model downloader now supports multiple folder names for known models
 - improve logging in sd.py
2024-12-18 15:37:16 -08:00
doctorpangloss
65f3be4f8f Fix incorrect use of internal API 2024-12-10 13:32:21 -08:00
doctorpangloss
d989e65fde Update ComfyUI and fix tests 2024-12-09 19:45:17 -08:00
doctorpangloss
2d1676c717 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-12-09 15:54:37 -08:00
doctorpangloss
a52ffe2aff Fix supported model extensions being passed as a frozen set, making them impossible to mutate later 2024-12-06 11:22:39 -08:00
doctorpangloss
778541755d Fix addresses being saved with commas 2024-12-06 11:22:20 -08:00
doctorpangloss
1a2c4b4cc6 Improve response semantics 2024-12-06 11:22:09 -08:00
doctorpangloss
8c0ece1b8c Creating all known paths now correctly creates paths for custom nodes' models 2024-12-05 14:11:41 -08:00
doctorpangloss
9d20de6462 Merge branch 'improved_memory' of github.com:comfyanonymous/ComfyUI 2024-11-19 11:06:27 -08:00
doctorpangloss
fb7a3f9386 Update ComfyUI
- use their logger when running interactively
 - move the extra nodes files to where this fork expects them
 - add the mochi checkpoints to known models
 - add a mochi workflow test
2024-11-18 13:58:24 -08:00
doctorpangloss
c0f072ee0f Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-11-18 13:12:31 -08:00
doctorpangloss
44be2591df Fix broken create-directories command 2024-11-11 16:21:16 -08:00
doctorpangloss
228794d835 Fix missing folder paths, fix #26 the protobuf compatibility issue manifests in 1.28 2024-11-11 13:35:57 -08:00
doctorpangloss
772e768fe8 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-11-04 10:17:26 -08:00
doctorpangloss
021d0d4f57 Fix #25 custom nodes which have input paths set at import time will now correctly see a models directory (or similar) that respects the configuration intended by the user 2024-11-01 13:40:03 -07:00
doctorpangloss
31eacb6ac9 Improve compilation of models, adding support for triton 2024-11-01 10:40:58 -07:00
doctorpangloss
b3ceeebf94 Fix bugs in folder paths
- Adding the output paths now correctly registers a relative path,
   i.e., outputs/loras and models/lorals will now be searched on all
   your base paths
 - Adding absolute paths with models/ works better
 - All the base paths and directories are queried better
2024-10-29 19:22:51 -07:00
doctorpangloss
76a80a65ea Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-10-29 15:35:39 -07:00
doctorpangloss
e6bddb4a9c Fix pylint errors 2024-10-29 14:27:14 -07:00
doctorpangloss
b42e59d602 Fix tests 2024-10-29 14:27:14 -07:00
doctorpangloss
4a13766d14 --base-paths argument adds additional paths to search for models/checkpoints, models/loras, etc. directories, including directories specified in this pattern by custom nodes 2024-10-29 14:27:14 -07:00
doctorpangloss
a83b561ea7 Follow symlinks for statics so that packages can correctly serve files when installed with uv. Update version. 2024-10-15 11:01:46 -07:00
doctorpangloss
b0d606a282 Improve installation instructions with non-deprecated messaging. 0.2.3 is now directly written as the server version. 2024-10-14 15:54:21 -07:00
doctorpangloss
8512f361fe Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-10-14 15:26:27 -07:00
doctorpangloss
c0d1c9f96d Improve OpenAPI spec 2024-10-11 14:46:26 -07:00
doctorpangloss
79b465faf2 Increase server response timeouts 2024-10-11 13:52:17 -07:00
doctorpangloss
caa6a37936 Fix pylint error 2024-10-11 13:51:13 -07:00
doctorpangloss
f3da381869 Fix inference mode execution issues 2024-10-10 21:00:09 -07:00
doctorpangloss
a38968f098 Improvements to execution
- Validation errors that occur early in the lifecycle of prompt
   execution now get propagated to their callers in the
   EmbeddedComfyClient. This includes error messages about missing node
   classes.
 - The execution context now includes the node_id and the prompt_id
 - Latent previews are now sent with a node_id. This is not backwards
   compatible with old frontends.
 - Dependency execution errors are now modeled correctly.
 - Distributed progress encodes image previews with node and prompt IDs.
 - Typing for models
 - The frontend was updated to use node IDs with previews
 - Improvements to torch.compile experiments
 - Some controlnet_aux nodes were upstreamed
2024-10-10 19:30:18 -07:00
doctorpangloss
69e523b89d Experimental quantization support. Only Linux is meaningfully supported 2024-10-10 13:43:06 -07:00
comfyanonymous
9786ea4a17 Use torch.nn.functional.linear in RGB preview code.
Add an optional bias to the latent RGB preview code.
2024-10-09 09:48:17 -07:00
Benjamin Berman
0a25b67ff8 Fix pylint errors 2024-10-04 21:12:37 -07:00
doctorpangloss
6ef2d534b6 Fix polling for history too quickly. This will need an alternative approach so that readiness is immediate 2024-09-27 12:46:28 -07:00
doctorpangloss
d25394d386 API now supports fire-and-forget, checking on queue status; prefetch_count now expressly set to 1 for workers 2024-09-27 12:07:54 -07:00
doctorpangloss
8f58242c91 Fix frozenset v set issue in folder_paths 2024-09-24 20:36:50 -07:00
doctorpangloss
fa3176f96f Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-09-23 12:50:31 -07:00
doctorpangloss
83b2f0174c Fix tests, improve distributed worker health check, add torch compile options 2024-09-13 18:10:11 -07:00
doctorpangloss
ffb4ed9cf2 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-09-13 12:45:23 -07:00
doctorpangloss
0ba08f273a Move comfy_extras nodes, fix pylint errors 2024-09-05 09:29:26 -07:00
doctorpangloss
db423f8013 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-09-05 09:23:00 -07:00
doctorpangloss
ed33ab1e7d Support ProcessPoolExecutor to improve memory management 2024-09-04 17:03:22 -07:00
doctorpangloss
38bcd9fcbd Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-09-03 15:28:52 -07:00
doctorpangloss
1bc96a7a1b Fix #20 base path can now be set before folder paths are initialized, although all of this really has to be reworked 2024-08-29 18:02:36 -07:00
doctorpangloss
fd503d8a96 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-08-29 16:37:30 -07:00
doctorpangloss
ccdbd957ef Fix pylint issues 2024-08-28 15:48:47 -07:00
doctorpangloss
9e8bb0b297 Add image tracing to SVG support using vtrace, python skia. The Skia library can be used for additional drawing tasks 2024-08-28 14:49:19 -07:00
doctorpangloss
c4fe16252b Fix imports 2024-08-25 18:56:47 -07:00
doctorpangloss
5155a3e248 Merge WIP 2024-08-25 18:52:29 -07:00
doctorpangloss
870297a2ed Fix StringEnumRequestParameter 2024-08-16 15:55:06 -07:00
doctorpangloss
f1a096b3e1 Merges new frontend
- fixes bfloat16 on cpu to numpy issues
 - extensions should go into comfy/web/extensions/javascript
2024-08-16 15:46:11 -07:00
doctorpangloss
527ddb5ac8 Move model_filemanager 2024-08-16 14:32:13 -07:00
doctorpangloss
24a9eb2600 Update with our changes 2024-08-16 14:31:26 -07:00
doctorpangloss
f04b582744 Move inverse execution stuff 2024-08-16 14:31:00 -07:00
doctorpangloss
fb1feed1a2 Move commit registration 2024-08-16 14:30:27 -07:00
doctorpangloss
8284ea2fca WIP merge 2024-08-16 14:25:06 -07:00
doctorpangloss
0549f35e85 Merge commit '39fb74c5bd13a1dccf4d7293a2f7a755d9f43cbd' of github.com:comfyanonymous/ComfyUI
- Improvements to tests
 - Fixes model management
 - Fixes issues with language nodes
2024-08-13 20:08:56 -07:00
doctorpangloss
b00964ace4 Further modifications to paths 2024-08-05 17:06:18 -07:00
doctorpangloss
39c6335331 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-08-05 16:13:20 -07:00
doctorpangloss
2bc95c1711 Test improvements and fixes
- move workflows to distinct json files
 - add the comfy-org workflows for testing
 - fix issues where workflows from windows users would not be compatible
   with backends running on linux or macos in light of separator
   differences. Because this codebase uses get_or_download wherever
   checkpoints, models, etc. are used, this is the only place where the
   comparison is gracefully handled for downloading. Validation code
   will correctly convert backslashes to forward slashes, assuming that
   100% of the places they are used and when comparing with a list, they
   are intended to be paths and not strict symbols
2024-08-05 15:55:46 -07:00
doctorpangloss
d9ba795385 Fixes for tests and completing merge
- huggingface cache is now better used on platforms that support
   symlinking and the files you are requesting already exist in the
   cache
 - absolute imports were changed to relative in the correct places
 - StringEnumRequestParameter has a special case in validation
 - fix model_management whitespace issue
 - fix comfy.ops references
2024-08-01 18:28:51 -07:00
doctorpangloss
0a1ae64b0b Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-08-01 16:19:11 -07:00
doctorpangloss
01f2ecbfb1 Improve messaging 2024-07-30 17:10:06 -07:00
doctorpangloss
4e851e2cfa Fix torch 2.4.0 fix 2024-07-30 11:17:32 -07:00
doctorpangloss
34522e0914 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-07-30 11:11:45 -07:00
doctorpangloss
87ab9d42d0 Merge branch 'execution_model_inversion' of github.com:guill/ComfyUI into pr-execution 2024-07-19 17:49:41 -07:00
doctorpangloss
499545c373 Improve requirements.txt for faster installation, improve validation error reporting 2024-07-19 09:16:18 -07:00
doctorpangloss
0c34c2b99d Fix #13 audio nodes now work and test correctly 2024-07-18 17:15:44 -07:00
doctorpangloss
cc99d89ac6 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-07-18 16:31:21 -07:00
doctorpangloss
5459cfa832 Improve model downloading, add FolderPaths object for custom nodes 2024-07-17 17:20:47 -07:00
doctorpangloss
72baecad87 Improve logging and tracing for validation errors 2024-07-16 12:26:30 -07:00
doctorpangloss
a20bf8134d Fix AuraFlow 2024-07-15 15:29:49 -07:00
doctorpangloss
3d1d833e6f Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-07-15 14:22:49 -07:00
doctorpangloss
15d21b66d7 Fix stray folder_paths file; improve node importing errors 2024-07-15 10:46:05 -07:00
doctorpangloss
3d67224937 Improve model downloading from Hugging Face Hub 2024-07-09 12:57:33 -07:00
doctorpangloss
da21da1d8c The first image in the workflow should be outputted, not the last. 2024-07-08 10:21:45 -07:00
doctorpangloss
a13088ccec Merge upstream 2024-07-04 11:58:55 -07:00
doctorpangloss
95d47276e9 Improve tests and distributed error notifications
- Tests now perform faster
 - Tests will run on supported GPU platforms
 - Configuration has known issues related to setting up a working
   directory for an embedded client
 - Introduce a Skeletonize node that solves many problems with Canny
 - Improve behavior of exception reporting
2024-07-04 10:16:02 -07:00
doctorpangloss
45d553e970 When using quick_test_for_ci, raise import errors 2024-06-18 19:41:22 -07:00
doctorpangloss
8cdc246450 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-06-17 16:19:48 -07:00
Max Tretikov
9ad840e614 Fix import paths in comfy.cmd.main 2024-06-14 13:20:34 -06:00
Max Tretikov
d06c38d5b4 Fix logging string formatting in main_pre.py 2024-06-14 13:19:15 -06:00
Max Tretikov
ee9daa3a5c Add NotImplementedError for LatentPreviewer.decode_latent_to_preview 2024-06-14 13:18:24 -06:00
Max Tretikov
5cd4ca9906 Fix function name dupes in comfy.cmd.server 2024-06-14 12:42:40 -06:00
doctorpangloss
8be5134f4c Fix remaining relative versus absolute namespace errors 2024-06-13 13:37:23 -07:00
doctorpangloss
d778277a68 Merge with upstream and fix tests 2024-06-10 10:01:08 -07:00
doctorpangloss
3f559135c6 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-06-03 11:42:55 -07:00
doctorpangloss
cb557c960b Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-05-31 07:42:11 -07:00
doctorpangloss
3125366eda Improve compatibility with comfyui-extra-models, improve API 2024-05-30 16:50:34 -07:00
doctorpangloss
801ef2e3f0 Fix interrupt messaging, add AMD and Intel Dockerfiles 2024-05-23 22:51:44 -07:00
doctorpangloss
f69b6225c0 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-05-20 12:06:35 -07:00
doctorpangloss
78e340e2d8 Traces now include the arguments for executing a node, wherever it makes sense to do so. 2024-05-13 15:48:16 -07:00
doctorpangloss
881258acb6 Progress bar hooks, via the server, are now set via a context. This will be used in other places too. 2024-05-09 13:24:06 -07:00
doctorpangloss
0d8924442a Improve API return values and tracing reports 2024-05-08 15:52:17 -07:00
doctorpangloss
f8fcfa6f08 Improve tracing to propagate to backend workers correctly when using the API. Fix distributed tests. 2024-05-07 13:44:34 -07:00
doctorpangloss
eb7d466b95 Fix dependency on opentelemetry instrumentor; remove websocket based API example since it isn't appropriate for this fork. 2024-05-03 16:54:33 -07:00
doctorpangloss
b94b90c1cc Improve model downloader coherence with packages like controlnext-aux 2024-04-30 14:28:44 -07:00
doctorpangloss
46a712b4d6 Fix missing extension addition from upstream 2024-04-29 13:32:46 -07:00
doctorpangloss
f965fb2bc0 Merge upstream 2024-04-24 22:41:43 -07:00
doctorpangloss
2643730acc Tracing 2024-04-17 08:20:07 -07:00
doctorpangloss
e49c662c7f Enable previews by default and over distributed channels 2024-04-09 13:15:05 -07:00
doctorpangloss
abb952ad77 Tweak headers to accept default when none are specified 2024-04-01 20:34:55 -07:00
Benjamin Berman
5208618681
Merge pull request #4 from cjonesuk/patch-1
Allow iteration over folder paths
2024-03-30 14:25:25 -07:00
doctorpangloss
8f548d4d19 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-03-29 13:36:57 -07:00
doctorpangloss
b0be335d59 Improved support for ControlNet workflows with depth
- ComfyUI can now load EXR files.
 - There are new arithmetic nodes for floats and integers.
 - EXR nodes can load depth maps and be remapped with
   ImageApplyColormap. This allows end users to use ground truth depth
   data from video game engines or 3D graphics tools and recolor it to
   the format expected by depth ControlNets: grayscale inverse depth
   maps and "inferno" colored inverse depth maps.
 - Fixed license notes.
 - Added an additional known ControlNet model.
 - Because CV2 is now used to read OpenEXR files, an environment
   variable must be set early on in the application, before CV2 is
   imported. This file, main_pre, is now imported early on in more
   places.
2024-03-26 22:32:15 -07:00
doctorpangloss
d8846fcb39 Improved testing of API nodes
- dynamicPrompts now set to False by default; CLIPTextEncoder and
   related nodes now have it set to True.
 - Fixed return values of API nodes.
2024-03-22 22:04:35 -07:00
doctorpangloss
feae8c679b Add nodes to support OpenAPI and similar backend workflows 2024-03-22 14:22:50 -07:00
Christopher Jones
f8120bbd72
Allow iteration over folder paths 2024-03-22 17:01:17 +00:00
doctorpangloss
0db040cc47 Improve API support
- Removed /api/v1/images because you should use your own CDN style
   image host and /view for maximum compatibility
 - The /api/v1/prompts POST application/json response will now return
   the outputs dictionary
 - Caching has been removed
 - More tests
 - Subdirectory prefixes are now supported
 - Fixed an issue where a Linux frontend and Windows backend would have
   paths that could not interact with each other correctly
2024-03-21 16:24:22 -07:00
doctorpangloss
005e370254 Merge upstream 2024-03-21 13:15:36 -07:00
doctorpangloss
341c9f2e90 Improvements to node loading, node API, folder paths and progress
- Improve node loading order. It now occurs "as late as possible".
   Configuration should be exposed as per the README.
 - Added methods to specify custom folders and models used in examples
   more robustly for custom nodes.
 - Downloading models can now be gracefully interrupted.
 - Progress notifications are now sent over the network for distributed
   ComfyUI operations.
 - Python objects have been moved around to prevent less transitive
   package importing issues.
2024-03-13 16:14:18 -07:00
doctorpangloss
e68f8885e3 Improve model downloading 2024-03-12 15:27:08 -07:00
doctorpangloss
93cdef65a4 Merge upstream 2024-03-12 09:49:47 -07:00
doctorpangloss
00728eb20f Merge upstream 2024-03-11 09:32:57 -07:00
doctorpangloss
175a50d7ba Improve vanilla node importing 2024-03-08 16:29:48 -08:00
doctorpangloss
c0d9bc0129 Merge with upstream 2024-03-08 15:17:20 -08:00
doctorpangloss
148d57a772 Add extra_model_paths_config to the valid configuration for the comfyui-worker entry point 2024-03-01 08:14:21 -08:00
doctorpangloss
9d3eb74796 Fix importing vanilla custom nodes 2024-02-28 14:11:34 -08:00
doctorpangloss
d3c13f8172 (Fixed) Move new_updated 2024-02-27 17:01:16 -08:00
doctorpangloss
272e3ee357 (broken) Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-02-27 16:58:34 -08:00
doctorpangloss
bd5073caf2 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-02-26 08:51:07 -08:00
doctorpangloss
b95fd25380 Merge branch 'master' of github.com:comfyanonymous/ComfyUI 2024-02-22 12:06:41 -08:00
doctorpangloss
ab56eadcc8 Fix missing path arguments 2024-02-17 23:19:21 -08:00
doctorpangloss
955fcb8bb0 Fix API 2024-02-16 08:47:11 -08:00
doctorpangloss
d29028dd3e Fix distributed prompting 2024-02-16 06:17:06 -08:00
doctorpangloss
06e74226df Add external address parameter 2024-02-15 17:39:15 -08:00
doctorpangloss
f195230e2a More tweaks to cli args 2024-02-09 01:40:27 -08:00
doctorpangloss
a3f9d007d4 Fix CLI args issues 2024-02-09 01:20:57 -08:00
doctorpangloss
bdc843ced1 Tweak this message 2024-02-08 22:56:06 -08:00
doctorpangloss
b3f1ce7ef0 Update comment 2024-02-08 21:15:58 -08:00
doctorpangloss
80f8c40248 Distributed queueing with amqp-compatible servers like RabbitMQ.
- Binary previews are not yet supported
 - Use `--distributed-queue-connection-uri=amqp://guest:guest@rabbitmqserver/`
 - Roles supported: frontend, worker or both (see `--help`)
 - Run `comfy-worker` for a lightweight worker you can wrap your head
   around
 - Workers and frontends must have the same directory structure (set
   with `--cwd`) and supported nodes. Frontends must still have access
   to inputs and outputs.
 - Configuration notes:

   distributed_queue_connection_uri (Optional[str]): Servers and clients will connect to this AMQP URL to form a distributed queue and exchange prompt execution requests and progress updates.
   distributed_queue_roles (List[str]): Specifies one or more roles for the distributed queue. Acceptable values are "worker" or "frontend", or both by writing the flag twice with each role. Frontends will start the web UI and connect to the provided AMQP URL to submit prompts; workers will pull requests off the AMQP URL.
   distributed_queue_name (str): This name will be used by the frontends and workers to exchange prompt requests and replies. Progress updates will be prefixed by the queue name, followed by a '.', then the user ID.
2024-02-08 20:24:27 -08:00
doctorpangloss
0673262940 Fix entrypoints, add comfyui-worker entrypoint 2024-02-08 19:08:42 -08:00
doctorpangloss
72e92514a4 Better compatibility with pre-existing prompt_worker method 2024-02-08 18:07:37 -08:00
doctorpangloss
92898b8c9d Improved support for distributed queues 2024-02-08 14:55:07 -08:00
doctorpangloss
04ce040d28 Fix commonpath / using arg.cwd on Windows 2024-02-08 09:30:16 -08:00
doctorpangloss
123c512a84 Fix compatibility with Python 3.9, 3.10, fix Configuration class declaration issue 2024-02-07 21:52:20 -08:00
doctorpangloss
25c28867d2 Update script examples 2024-02-07 15:52:26 -08:00
doctorpangloss
1b2ea61345 Improved API support
- Run comfyui workflows directly inside other python applications using
   EmbeddedComfyClient.
 - Optional telemetry in prompts and models using anonymity preserving
   Plausible self-hosted or hosted.
 - Better OpenAPI schema
 - Basic support for distributed ComfyUI backends. Limitations: no
   progress reporting, no easy way to start your own distributed
   backend, requires RabbitMQ as a message broker.
2024-02-07 14:20:21 -08:00
doctorpangloss
32d83e52ff Fix CheckpointLoader even though it is deprecated 2024-01-29 17:20:10 -08:00
doctorpangloss
0d2cc553bc Revert "Remove unused configs contents"
This reverts commit 65549c39f1.
2024-01-29 17:03:27 -08:00
doctorpangloss
2400da51e5 PyInstaller 2024-01-29 17:02:45 -08:00
doctorpangloss
82edb2ff0e Merge with latest upstream. 2024-01-29 15:06:31 -08:00
doctorpangloss
65549c39f1 Remove unused configs contents 2024-01-29 14:14:46 -08:00
doctorpangloss
345825dfb5 Fix issues with missing __init__ in upscaler, move web/ directory to comfy/web so that the need for symbolic link support on windows is eliminated 2024-01-03 16:35:00 -08:00
doctorpangloss
369aeb598f Merge upstream, fix 3.12 compatibility, fix nightlies issue, fix broken node 2024-01-03 16:00:36 -08:00
doctorpangloss
3fd5de9784 fix nodes 2023-12-06 17:30:33 -08:00