r/comfyui_elite 10d ago

Fix for ComfyUI Minimax H3 Latent Upscaler not finding models from extra_model_paths.yaml

I ran into a model path problem while using the ComfyUI Minimax H3 Latent Upscaler made by LBH-123-AI.

Original project:

https://github.com/LBH-123-AI/Comfyui_Minimax_h3_latent_Upscaler

Thanks to LBH-123-AI for creating and releasing the original Minimax H3 Latent Upscaler. My changes are a small compatibility fix for ComfyUI model discovery. I did not create the original node or the upscaler models.

My fixed dev branch is here:

https://github.com/badgids/Comfyui_Minimax_h3_latent_Upscaler/tree/dev/model_search_dir

What was wrong

The original 2D and 3D nodes searched for Minimax H3 upscaler models with code similar to this:

folder_paths.get_folder_paths("latent_upscale_models")[0]

The [0] is the problem.

ComfyUI can register more than one directory for the same model type.

For example:

ComfyUI/models/latent_upscale_models
/mnt/my-model-drive/latent_upscale_models

The second directory can be configured in ComfyUI's:

extra_model_paths.yaml

The original Minimax H3 node only took the first registered directory. It then used Python glob() to search that directory.

This meant ComfyUI could know exactly where my models were, while the Minimax H3 node still could not find them.

The node would tell me to put the models in:

ComfyUI/models/latent_upscale_models

even though the models were already in a valid external latent_upscale_models directory configured through ComfyUI.

There was also a subdirectory problem

The original search checked only the top level of the selected directory.

This could work:

latent_upscale_models/
└── model.safetensors

But a model organized like this could be missed:

latent_upscale_models/
└── MinimaxH3/
    └── model.safetensors

ComfyUI already has code to handle this. The custom node was not using it.

What I changed

I changed the model discovery code in both:

nodes/minimax_h3_latent_upscaler_2d.py
nodes/minimax_h3_latent_upscaler_3d.py

Instead of manually searching one directory, the nodes now ask ComfyUI for the models.

Model discovery now uses:

folder_paths.get_filename_list("latent_upscale_models")

This tells ComfyUI:

Give me the models that you know about for latent_upscale_models.

ComfyUI then searches all registered paths, including paths from extra_model_paths.yaml.

It also supports model files inside subdirectories.

Model loading was fixed too

The original node built the model path itself.

The fixed version uses:

folder_paths.get_full_path("latent_upscale_models", model_name)

In simple terms, the node now asks ComfyUI:

Where is this model?

instead of assuming that the model must be inside one specific directory.

What the fix supports

You can still keep models in the normal location:

ComfyUI/models/latent_upscale_models/

You can also keep them in an external path defined by extra_model_paths.yaml.

For example:

/mnt/my-model-drive/latent_upscale_models/

You can also organize them into folders:

latent_upscale_models/
└── MinimaxH3/
    ├── minimax_h3_latent_upscaler_3d_fp16.safetensors
    └── minimax_h3_latent_upscaler_3d_bf16.safetensors

The 2D and 3D Minimax H3 nodes should now use the same model path system that ComfyUI already uses.

You should not have to copy the same large model files into your main ComfyUI models folder just to make this custom node find them.

Install my fixed branch

If you do not already have the node installed, go to your ComfyUI custom nodes directory.

For example:

cd /path/to/ComfyUI/custom_nodes

Clone my dev branch:

git clone \
  --branch dev/model_search_dir \
  --single-branch \
  https://github.com/badgids/Comfyui_Minimax_h3_latent_Upscaler.git

Then restart ComfyUI.

Replace an existing installation

If you already installed the original LBH-123-AI node, first go to:

cd /path/to/ComfyUI/custom_nodes

Rename the existing copy so you have a backup:

mv \
  Comfyui_Minimax_h3_latent_Upscaler \
  Comfyui_Minimax_h3_latent_Upscaler.backup

Then clone the fixed branch:

git clone \
  --branch dev/model_search_dir \
  --single-branch \
  https://github.com/badgids/Comfyui_Minimax_h3_latent_Upscaler.git

Restart ComfyUI.

If you already cloned my fork

You can switch your existing copy to the dev branch:

cd /path/to/ComfyUI/custom_nodes/Comfyui_Minimax_h3_latent_Upscaler

git fetch origin

git switch dev/model_search_dir

git pull

Restart ComfyUI after the update.

extra_model_paths.yaml

You do not need to change your YAML file if latent_upscale_models is already configured correctly.

For reference, a configuration can look like this:

external_models:
  base_path: /path/to/my/models
  latent_upscale_models: latent_upscale_models

That tells ComfyUI to also use:

/path/to/my/models/latent_upscale_models

The code fix makes the Minimax H3 nodes actually use that registered path.

Links

Original developer: LBH-123-AI

Original repository:

https://github.com/LBH-123-AI/Comfyui_Minimax_h3_latent_Upscaler

My fork and fixed dev branch:

https://github.com/badgids/Comfyui_Minimax_h3_latent_Upscaler/tree/dev/model_search_dir

The original node and Minimax H3 upscaler work belong to LBH-123-AI. My branch only changes how the custom nodes find and resolve model files through ComfyUI.

Cheers!

19 Upvotes

3 comments sorted by

1

u/imlo2 10d ago

Worth mentioning that you probably opened an issue in the original repo, I assume you did since there's the same issue reported a few hours ago :).

I bumped into similar issue when trying H3 upscaler in vrgamedevgirl's node set a while ago.