diff --git a/CHANGELOG.md b/CHANGELOG.md index b3d72ea5f..70b7c98b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,9 @@ *note*: SAM3 is a [gated model](https://vladmandic.github.io/sdnext-docs/Gated/) - **Server** - update handlers for all authenticated workflows + - nunchaku-lite support for `torch==2.13` +- **Fixes** + - init hf env variables before gradio load ## Update for 2026-08-07 diff --git a/installer.py b/installer.py index f90945bcd..595510e2b 100644 --- a/installer.py +++ b/installer.py @@ -1416,6 +1416,14 @@ def set_environment(): os.environ.setdefault('UV_INDEX_STRATEGY', 'unsafe-any-match') os.environ.setdefault('UV_NO_BUILD_ISOLATION', '1') os.environ.setdefault('UVICORN_TIMEOUT_KEEP_ALIVE', '60') + # duplicate here since hf_init cannot be called before loader + os.environ.setdefault('HF_HUB_DISABLE_EXPERIMENTAL_WARNING', '1') + os.environ.setdefault('HF_HUB_DISABLE_IMPLICIT_TOKEN', '1') + os.environ.setdefault('HF_HUB_DISABLE_SYMLINKS_WARNING', '1') + os.environ.setdefault('HF_HUB_DISABLE_TELEMETRY', '1') + os.environ.setdefault('HF_HUB_VERBOSITY', 'warning') + os.environ.setdefault('HF_HUB_DOWNLOAD_TIMEOUT', '60') + os.environ.setdefault('HF_HUB_ETAG_TIMEOUT', '10') allocator = f'garbage_collection_threshold:{opts.get("torch_gc_threshold", 80)/100:0.2f},max_split_size_mb:512' if opts.get("torch_malloc", "native") == 'cudaMallocAsync': allocator += ',backend:cudaMallocAsync' diff --git a/modules/models_hf.py b/modules/models_hf.py index 2fc084829..f6d311b8c 100644 --- a/modules/models_hf.py +++ b/modules/models_hf.py @@ -7,7 +7,6 @@ from modules.shared import opts # initialize huggingface environment def hf_init(): - os.environ.setdefault('HF_HUB_DISABLE_EXPERIMENTAL_WARNING', '1') os.environ.setdefault('HF_HUB_DISABLE_EXPERIMENTAL_WARNING', '1') os.environ.setdefault('HF_HUB_DISABLE_IMPLICIT_TOKEN', '1') os.environ.setdefault('HF_HUB_DISABLE_SYMLINKS_WARNING', '1') diff --git a/webui.py b/webui.py index 2b39c7720..df48a9d52 100644 --- a/webui.py +++ b/webui.py @@ -77,6 +77,9 @@ def initialize(): log.debug('Initializing: modules') from concurrent.futures import ThreadPoolExecutor, as_completed + from modules.models_hf import hf_init + hf_init() + modules.sd_checkpoint.init_metadata() modules.hashes.load_cache() @@ -135,8 +138,6 @@ def initialize(): modules.extra_networks.register_default_extra_networks() timer.startup.record("networks") - from modules.models_hf import hf_init - hf_init() if shared.cmd_opts.test: from modules.models_hf import hf_check_cache hf_check_cache()