unsloth/studio/backend
LeoBorcherding a1c1aa7fed Vulkan GPU picks: off-loop probe, XPU-order, and reliable active/status kind
Four Codex follow-ups on the Vulkan GPU-selection path:

- /load + /validate: run validate_vulkan_gpu_ids off the event loop
  (asyncio.to_thread). It can spawn a blocking Vulkan probe subprocess, which
  would otherwise freeze status/progress/unload for up to the probe timeout.

- /api/system, /load, /validate: check the Vulkan build BEFORE the XPU ban. A
  Vulkan pick uses ggml ordinals (--device Vulkan<i>), not torch-xpu ordinals,
  so an Intel/XPU host on a Vulkan build must still get the picker and accept
  gpu_ids instead of being rejected.

- Active/status GPU-kind stamp: an active GGUF hydrated from /status before the
  GPU cache warms had no index-space stamp, so a later Reload/Remember treated
  its live Vulkan pick as a legacy physical one and reconciled it away. Carry
  selectedGpuIdsKind through useActiveModelConfig (via the reactive
  useCurrentGpuIndexKind) and fall back to the current kind in
  currentRuntimePerModelConfig when the store stamp is missing -- an active pick
  is by definition in the current backend's space.
2026-07-23 23:33:50 -05:00
..
assets Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00
auth Studio: reject whitespace-only passwords (#7341) 2026-07-23 00:44:37 -07:00
core Vulkan GPU picker: allow uncached Hub GGUFs, backstop diffusion at spawn 2026-07-23 18:34:24 -05:00
hub Studio: add local speech-to-text dictation engine (#7095) 2026-07-23 01:39:03 -07:00
loggers Studio: quiet noisy logs, log real progress, and speed up Windows/macOS dataset prep (#7087) 2026-07-15 06:49:52 -07:00
models Studio: add local speech-to-text dictation engine (#7095) 2026-07-23 01:39:03 -07:00
picker Studio: add configurable model download location (#7274) 2026-07-23 01:34:38 -07:00
plugins Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00
requirements unsloth start/run: tool-call flags, positional model, and grouped help (#7328) 2026-07-23 01:44:57 -07:00
routes Vulkan GPU picks: off-loop probe, XPU-order, and reliable active/status kind 2026-07-23 23:33:50 -05:00
state Studio: shareable per-checkpoint preview links (#6486) 2026-06-24 06:31:53 -07:00
storage Fix resume training crash recovery and MLX checkpoints (#6796) 2026-07-21 02:34:58 -07:00
tests Vulkan GPU picker: allow uncached Hub GGUFs, backstop diffusion at spawn 2026-07-23 18:34:24 -05:00
utils Studio: add local speech-to-text dictation engine (#7095) 2026-07-23 01:39:03 -07:00
__init__.py Final cleanup 2026-03-12 18:28:04 +00:00
_platform_compat.py Reduce and tighten code comments and docstrings repo-wide (#6095) 2026-06-08 23:09:51 -07:00
cloudflare_tunnel.py Studio: fix stuck composer prompt on first send and unreachable --secure Cloudflare links (#7340) 2026-07-23 00:39:14 -07:00
colab.py Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00
main.py Vulkan GPU picks: off-loop probe, XPU-order, and reliable active/status kind 2026-07-23 23:33:50 -05:00
mcp_server.py Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00
run.py Studio: reject whitespace-only passwords (#7341) 2026-07-23 00:44:37 -07:00
startup_banner.py Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00