CivitAI removed enum validation from /api/v1/models?baseModels=X (now
returns 200 with empty items on unknown values), which left the
base-model filter dropdown empty. Fix in two parts.
1. Point the base_models discovery probe at /images instead of /models.
/images still returns a ZodError with the full enum list (82 names
at time of writing). The existing parser handles the shape unchanged.
2. Also fetch civitai/civitai's base-model.constants.ts from GitHub and
merge per-name metadata (group, ecosystem, engine, family, hidden)
into a new base_models_info field on the response. The live probe
remains authoritative for which names exist; GitHub provides the
metadata and doubles as a fallback name list if the probe comes back
empty.
Backward compatible: the existing base_models list keeps the same
shape. Clients that want grouped dropdowns, hidden-flag filtering, or
image/video separation can consume base_models_info instead.
The GitHub fetch has a separate 6h cache since these constants change
much less often than the probes it sits alongside.
upstream UniPCMultistepScheduler.set_timesteps unconditionally moves self.sigmas to CPU after building them. multistep_uni_p_bh_update / multistep_uni_c_bh_update then constructs a torch.ones(..., device=sample.device) tensor and calls torch.stack([..., self.sigmas[...]]) — crashing at inference step >= 2 whenever the model runs on a non-CPU device (CUDA, ROCm, MPS).
Monkey-patch set_timesteps so that, after the upstream call, self.sigmas is moved back to the requested device. Applied once at import time inside the existing sampler-load try/except block so failures are silent-logged and never break the rest of the sampler registry.
Civitai stopped validating baseModels on /api/v1/models (returns 200 with
empty items on unknown values), which left API clients without a way to
discover the values. Right now /images still does, I will get a separate
PR to put something more robust in place.
Right-clicking the "Send to Images" button now offers two entries:
one copies the prompt only, the other copies all generation parameters
except the image itself. Available in gallery, txt2img, img2img, and
extras. Keeps the results toolbar compact.
- extend ParamBinding with skip_image and only_prompt flags
- create prompt/params variants in all four output panels
- register per-tab context menu entries scoped to #{tab}_tabitem
- match menu selectors via e.target.closest for nested-icon clicks
- document the right-click surface in the "➠ Control" locale hint