unsloth/studio/frontend/src
Daniel Han 7d15f202a4 Close the load-versus-training-start race, and two picker fixes
- The image and video load guards read is_active() and only then selected an
  engine, acquired the arbiter and registered the load. A /train/diffusion/start
  reserving inside that window freed residents the load had not registered yet,
  so the trainer came up beside a brand-new pipeline. The service already had
  exactly the right pattern for this in dataset_mutation, so gpu_load_admission
  mirrors it: reserve() refuses while an admission is open, an admission refuses
  once a start is reserved, both decided under the one lock. The span is only the
  registration, since begin_load returns as soon as the load is registered and
  _free_gpu_for_diffusion_training preempts an in-flight load from that point.
  Chat is deliberately not covered: its load spans an eviction plus a multi-minute
  GGUF load, and it admits models that fit beside training by design, which is a
  different contract from the diffusion pipeline's all-or-nothing one.

- Hugging Face gives the LTX-2 family the image-to-video pipeline_tag (both
  Lightricks/LTX-2 and unsloth/LTX-2.3-GGUF report it), so a text-to-video-only
  filter dropped the flagship audio family out of Video Hub search while the rest
  of the app routed it to Video.

- Task-scoped quant fit sized picks against the LARGEST visible device while
  resolve_diffusion_device_target returns a bare "cuda" and torch places on the
  current one. On a heterogeneous host that recommended a checkpoint sized for the
  bigger card and then loaded it onto the smaller one. Fit now uses the device the
  load actually lands on; identical on a homogeneous host.
2026-07-27 05:44:41 +00:00
..
app Route a chat pick of a diffusion model to the Images or Video page 2026-07-26 04:56:16 -07:00
assets Studio: mascot images degrade gracefully instead of showing alt text (#6146) 2026-06-10 08:22:17 -07:00
components Merge origin/main into image-generation 2026-07-26 12:37:00 +00:00
config fix(studio): persist connection model selections for remote clients (#7298) 2026-07-23 19:11:50 -07:00
features Close the load-versus-training-start race, and two picker fixes 2026-07-27 05:44:41 +00:00
hooks Close the load-versus-training-start race, and two picker fixes 2026-07-27 05:44:41 +00:00
i18n Merge remote-tracking branch 'origin/main' into r6763_mainmerge 2026-07-27 02:49:24 +00:00
lib Bound the gallery blob cache, and three interlock fixes 2026-07-27 05:08:45 +00:00
shared studio/frontend: make toast and inline error text selectable and copyable (#5506) 2026-05-18 03:47:21 -07:00
stores Update license headers 2026-03-12 17:23:10 +00:00
types feat(studio): add DoRA support to studio (#7315) 2026-07-24 03:24:16 -07:00
utils Studio frontend: reduce and tighten code comments (#6099) 2026-06-08 23:10:35 -07:00
asset-queries.d.ts Studio: mascot images degrade gracefully instead of showing alt text (#6146) 2026-06-10 08:22:17 -07:00
index.css Images: flat Create and Train panes, hover-only scrollbars, tidier Train dataset step 2026-07-25 03:13:41 -07:00
main.tsx Studio: lighten chat text weight on Linux to match macOS rendering (#7308) 2026-07-22 06:14:40 -07:00
speech-recognition.d.ts studio: redesign chat composer (#5891) 2026-06-03 06:07:30 -07:00