Update README.md

This commit is contained in:
Dariusz L
2026-08-03 04:47:07 +02:00
parent 413e7cc0ab
commit 3353423015
+30 -6
View File
@@ -5,7 +5,7 @@
<p align="center">
<a href='https://registry.comfy.org/publishers/azornes/nodes/comfyui-model-resolver'><img alt='ComfyUI' src='https://img.shields.io/badge/ComfyUI-1a1a1a?style=for-the-badge&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAASFBMVEVHcEwYLtsYLtkXLtkXLdkYLtkWLdcFIdoAD95uerfI1XLR3mq3xIP8/yj0/zvw/0FSYMP5/zKMmKQtPNOuuozj8FOhrZW7x4FMWFFbAAAABnRSTlMAUrPX87KxijklAAAA00lEQVR4AX3SBw6DMAxA0UzbrIzO+9+02GkEpoWP9hPZZs06Hw75aI3k4W/+wkQtnGZNhF1I34BzalQcxkmasY0b9raklNcvLYU1GNiiOeVWauOa/XS526gRyzpV/7HeUOG9Jp6vcsvUrCPeKg/3KBKBQhoTD1dQggPWzPVfFOIgo85/kR4y6oB/8SlIEh7wvmTuKd3wgLVW1sTfRBoR7oWVqy/U2NcrWDYMINE7NUuJuoV+2fhaWmnbjzcOWnRv7XbiLh/Y9dNUqk2y0QcNwTu7wgf+/BhsPUhf4QAAAABJRU5ErkJggg=='><img alt='Downloads' src='https://img.shields.io/badge/dynamic/json?color=%230D2A4A&label=&query=downloads&url=https://gist.githubusercontent.com/Azornes/741c965c0e0504ac65935dcc105a4ad8/raw/top_modelresolver.json&style=for-the-badge'></a>
<img alt='GitHub Clones' src='https://img.shields.io/badge/dynamic/json?color=2F80ED&label=Clone&query=count&url=https://gist.githubusercontent.com/Azornes/2730ed6bbf240f06efd0c183bddd3d6c/raw/clone.json&logo=github&style=for-the-badge&labelColor=1a1a1a'></a>
<a href="https://visitorbadge.io/status?path=https%3A%2F%2Fgithub.com%2FAzornes%2FComfyui-Resolution-Master">
<a href="https://visitorbadge.io/status?path=https%3A%2F%2Fgithub.com%2FAzornes%2FComfyui-Model-Resolver">
<img src="https://api.visitorbadge.io/api/combined?path=https%3A%2F%2Fgithub.com%2FAzornes%2FComfyui-Model-Resolver&countColor=%03ae5f&style=for-the-badge&labelStyle=none&labelColor=1a1a1a" /></a>
<img alt="Python 3.10+" src="https://img.shields.io/badge/Python-3.10+-2564ae?labelColor=1a1a1a&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMTAiIGhlaWdodD0iMTEwIiB2aWV3Qm94PSIwLjIxIC0wLjA3NyAxMTAgMTEwIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iNjMuODE1OSIgeTE9IjU2LjY4MjkiIHgyPSIxMTguNDkzNCIgeTI9IjEuODIyNSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAtMSAtNTMuMjk3NCA2Ni40MzIxKSI%2BPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjMzg3RUI4Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzY2OTk0Ii8%2BPC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iOTcuMDQ0NCIgeTE9IjIxLjYzMjEiIHgyPSIxNTUuNjY2NSIgeTI9Ii0zNC41MzA4IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIC0xIC01My4yOTc0IDY2LjQzMjEpIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNGRkUwNTIiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRkMzMzEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cGF0aCBmaWxsPSJ1cmwoI2EpIiBkPSJNNTUuMDIzLTAuMDc3Yy0yNS45NzEsMC0yNi4yNSwxMC4wODEtMjYuMjUsMTIuMTU2djEyLjU5NGgyNi43NXYzLjc4MUgxOC4xNDhjLTcuOTQ5LDAtMTcuOTM4LDQuODMzLTE3LjkzOCwyNi4yNSwwLDE5LjY3Myw3Ljc5MiwyNy4yODEsMTUuNjU2LDI3LjI4MWg5LjM0NFY2OC44NmMwLTUuNDkxLDIuNzIxLTE1LjY1NiwxNS40MDYtMTUuNjU2aDI2LjUzMWMzLjkwMiwwLDE0LjkwNi0xLjY5NiwxNC45MDYtMTQuNDA2VjE0LjU3OWMuMDAxLTMuMTUzLS41MzgtMTQuNjU2LTI3LjAzLTE0LjY1NnpNNDAuMjczLDguMzkyYzIuNjYyLDAsNC44MTMsMi4xNSw0LjgxMyw0LjgxMywwLDIuNjYxLTIuMTUxLDQuODEzLTQuODEzLDQuODEzcy00LjgxMy0yLjE1MS00LjgxMy00LjgxM2MwLTIuNjYzLDIuMTUxLTQuODEzLDQuODEzLTQuODEzeiIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik01NS4zOTcsMTA5LjkyM2MyNS45NTksMCwyNi4yODItMTAuMjcxLDI2LjI4Mi0xMi4xNTZWODUuMTczSDU0Ljg5N3YtMy43ODFoMzcuMzc1YzguMDA5LDAsMTcuOTM4LTQuOTU0LDE3LjkzOC0yNi4yNSwwLTIzLjMyMi0xMC41MzgtMjcuMjgxLTE1LjY1Ni0yNy4yODFIODUuMjF2MTMuMTI1YzAsNS40OTEtMi42MzEsMTUuNjU2LTE1LjQwNiwxNS42NTZINDMuMjcyYy0zLjg5MiwwLTE0LjkwNiwxLjg5Ni0xNC45MDYsMTQuNDA2djI0LjIxOWMwLDUuMjMsMy4xOTYsMTQuNjU2LDI3LjAzMSwxNC42NTZ6TTcwLjE0OCwxMDEuNDU0Yy0yLjY2MiwwLTQuODEzLTIuMTUxLTQuODEzLTQuODEzczIuMTUtNC44MTMsNC44MTMtNC44MTNjMi42NjEsMCw0LjgxMywyLjE1MSw0LjgxMyw0LjgxM3MtMi4xNTIsNC44MTMtNC44MTMsNC44MTN6Ii8%2BPC9zdmc%2B&style=for-the-badge">
<img alt="JavaScript" src="https://img.shields.io/badge/JavaScript-1a1a1a?style=for-the-badge&logo=javascript&logoColor=F7DF1E&labelColor=1a1a1a">
@@ -30,6 +30,7 @@ https://github.com/user-attachments/assets/f5d83ce9-3ea8-4532-9b96-4ca4cd6cfb75
- **Search supported sources.** Find files on CivitAI, Hugging Face, CivArchive, Lora Manager Archive, and the ComfyUI-Manager model database.
- **Update workflows.** Replace model names and paths in the active workflow, including nested subgraphs and loaders from rgthree's Power Lora Loader and LoraManager.
- **Manage downloads.** Send files to their model folders, track speed and progress, and cancel or pause downloads when the selected backend supports it.
- **Work in batches.** Queue exact local matches, search several missing models, download known sources together, and review active downloads or history.
- **Inspect loaded models.** Review the models used by the active workflow, their physical paths, strength values, and disk status.
- **Open model folders.** Reveal a model file in the host file manager when the platform supports that action.
- **Use custom URLs.** Download a file from any direct URL and choose its target folder and filename.
@@ -51,7 +52,9 @@ https://github.com/user-attachments/assets/f5d83ce9-3ea8-4532-9b96-4ca4cd6cfb75
5. **Download or Link**:
* Click **Download** to asynchronously download the model in the background directly into the correct category folder.
* Or select a local alternative suggested by the Fuzzy Matching algorithm.
6. **Apply**: Click **Apply** to update the ComfyUI workflow nodes with the new, correct model paths. You're ready to click *Queue Prompt*!
6. **Apply**: Click **Apply** to update the ComfyUI workflow nodes with the resolved model paths, then queue the prompt.
The dialog has **Missing Models**, **Loaded Models**, and **Options** tabs. Its queue panel keeps pending links separate from downloads, with active progress and download history.
---
@@ -71,7 +74,7 @@ Model Resolver provides two download engines in the Settings panel and an automa
| Backend / transport | How it is selected | Live progress | Cancel | Pause / resume |
| --- | --- | --- | --- | --- |
| **Python** | Selected in Settings; also used as the general fallback | Yes | Yes | No |
| **Aria2 (Recommended)** | Selected in Settings | Yes | Yes | Yes |
| **Aria2 (Optional)** | Selected in Settings | Yes | Yes | Yes |
| **Hugging Face Xet** | Activated automatically for Xet-backed Hugging Face files while the Python engine is selected | Yes, using native Xet updates | Yes | No |
### Python Engine
@@ -98,7 +101,7 @@ Model Resolver provides two download engines in the Settings panel and an automa
> Xet transfers compressed, deduplicated data. The received byte count can stay below the final model size, so a download can reach **Finalizing** before the network counter reaches the final size.
> [!TIP]
> Install and configure Aria2 from the Settings panel. ModelResolver downloads the official release for your operating system and architecture, extracts it, and manages the background daemon. The daemon starts when a download needs it and stops after it stays idle.
> Install and configure aria2 from the Settings panel when you need pause/resume or segmented transfers. Model Resolver downloads the official release for your operating system and architecture, extracts it, and manages the background daemon.
---
@@ -126,7 +129,6 @@ Use model metadata to build download paths. The **Download Path Mode** setting p
For example, a Lora can use `Loras/SDXL/style/my_lora_v1.safetensors`, while a checkpoint can use `Checkpoints/Flux/my_flux_model.safetensors`.
---
## Configuration & Settings
@@ -139,12 +141,29 @@ Open Settings to add credentials for downloads and searches:
The Settings panel includes **Check** buttons for each credential type. Use them to verify a key or token before starting a download.
You can also enable or disable search sources, choose CivitAI and Hugging Face fallback methods, set automatic base-model and subfolder suggestions, configure aria2, control workflow metadata, and export logs. The [wiki](https://github.com/Azornes/Comfyui-Model-Resolver/wiki) contains the full settings reference.
## Workflow Metadata and the Opener Node
- **Embed workflow hashes** stores SHA-256 metadata for referenced models in saved workflows and image workflow JSON. Later scans can identify a renamed file by its hash.
- **Embed opener node** adds a small **Model Resolver Opener** node to saved workflows. Its button opens the resolver, and its dependency metadata helps ComfyUI-Manager identify the extension.
- **Open when a workflow has missing models** opens the resolver after analysis finds unresolved references. This option is disabled by default.
The opener node only opens Model Resolver. It has no image, model, or prompt outputs. Add it from **Options** or the ComfyUI Command Palette.
## Local Databases and Maintenance
The **Options** tab can update the ComfyUI-Manager model database, refresh the CivitAI base-model list, and refresh the Hugging Face author index. It also includes a metadata-size audit, a local SHA-256 metadata builder, cache controls, and frontend/backend log export.
See the [wiki maintenance guide](https://github.com/Azornes/Comfyui-Model-Resolver/wiki/Options-and-Maintenance) for details.
---
## Loaded Models Inspector & Local Hashing
* **Loaded Models Tab**: Check what models are loaded in the current active python session. It lists paths, model categories, byte sizes, physical existence checks, and confidence levels.
* **Loaded Models Tab**: Check what models are loaded in the current active Python session. It lists paths, model categories, byte sizes, physical existence checks, strength values, and active/inactive state.
* **Open Containing Folder**: Select a model in the Loaded Models tab and click the folder icon to reveal it in the host system's file manager.
* **Model details**: Open source information, previews, descriptions, tags, versions, and trained words when the provider exposes them.
* **Local Hashing (`sha256`)**:
* You can calculate the exact `sha256` hash of any local model file in the background.
* Hashing status is updated in real-time, allowing you to use exact hash queries on CivitAI/CivArchive to retrieve model metadata and link files.
@@ -186,16 +205,21 @@ The Settings panel includes **Check** buttons for each credential type. Use them
## Requirements
* ComfyUI 0.26.0 or newer
* Python 3.10 or newer
* Libraries: `requests`, `aiohttp`, `rapidfuzz`, `huggingface-hub`
* Modern web browser with JS support (Chrome, Edge, Firefox, Brave)
Hugging Face Xet support is optional. When the Xet transport is unavailable, Model Resolver uses the regular Python downloader.
## Backend Architecture
The ComfyUI entry point stays small. Runtime state lives in `core/extension.py`, route registration lives in `core/routes/registry.py`, HTTP adapters live in `core/routes/`, and shared feature logic lives in `core/services/`.
See [`docs/architecture.md`](docs/architecture.md) for the dependency flow and local verification commands.
For user workflows, provider settings, download paths, metadata, and troubleshooting, see the [Model Resolver wiki](https://github.com/Azornes/Comfyui-Model-Resolver/wiki).
---
## License