diff --git a/CHANGELOG.md b/CHANGELOG.md index 33bf89bae..3ded72b3b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ - **ROCm** futher work on advanced configuration and tuning, thanks @resonantsky now covers both ROCm on Windows and Linux see *main interface -> scripts -> rocm advanced config* + - **OpenVINO** update to `openvino==2026.1.0` - **SDNQ** add quant support to `nn.Embedding` type - **Features** - **nudenet** add `LlavaGuard` and `QwenGuard` as image safety evaulation models @@ -65,6 +66,7 @@ - eliminate `api` auth security bypass - multiple `schedulers` signature corrections - multiple models reverse model classification + - normalize device none error ## Update for 2026-04-01 diff --git a/TODO.md b/TODO.md index 674d1c900..62f120b3d 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,21 @@ # TODO +## Release + +- Review: feat/tag-dictionaries +- Review: er-sde-solver-scheduler +- Test: Zeta-Chroma +- Test: Anima-Preview-3 +- Test: SDXS-1B +- Test: VIBE-Image-Edit +- Test: Bria-FIBO +- Test: Lumina-DiMOO +- Test: Step1X-Edit +- Code: prompt encode for Bria-FIBO: +- Port: ERNIE-Image (merged, unpublished) +- Port: NucleusMoE-Image (merged, unpublished) +- Port: JoyAI-Image-Edit (in-progress, published) + ## Internal - Feature: implement `unload_auxiliary_models` @@ -7,6 +23,7 @@ - Feature: RIFE in processing - Feature: SeedVR2 in processing - Feature: Add video models to `Reference` +- Feature: Add to REMBG - Deploy: Lite vs Expert mode - Engine: [mmgp](https://github.com/deepbeepmeep/mmgp) - Engine: `TensorRT` acceleration @@ -52,7 +69,6 @@ TODO: Investigate which models are diffusers-compatible and prioritize! - [nVidia Cosmos-Predict-2.5](https://huggingface.co/nvidia/Cosmos-Predict2.5-2B) - [Liquid (unified multimodal generator)](https://github.com/FoundationVision/Liquid) - [Tencent HY-WU](https://huggingface.co/tencent/HY-WU) -- [JoyAI Image Edit](https://huggingface.co/jdopensource/JoyAI-Image-Edit) - [nVidia Cosmos-Transfer-2.5](https://github.com/huggingface/diffusers/pull/13066) ### Video diff --git a/modules/devices.py b/modules/devices.py index fbcf0146a..dbf20e0cc 100644 --- a/modules/devices.py +++ b/modules/devices.py @@ -673,6 +673,8 @@ def test_for_nans(x, where): def normalize_device(dev): + if dev is None: + return None if torch.device(dev).type in {"cpu", "mps", "meta"}: return torch.device(dev) if torch.device(dev).index is None: @@ -681,6 +683,8 @@ def normalize_device(dev): def same_device(d1, d2): + if d1 is None or d2 is None: + return False if torch.device(d1).type != torch.device(d2).type: return False return normalize_device(d1) == normalize_device(d2)