unsloth/studio/backend
Daniel Han b84f167d5a Add download progress bar for non-GGUF models in Chat
Previously only GGUF models showed download progress in Chat. Non-GGUF
models (safetensors, bnb quantized, etc.) showed a static message with
no progress indication. This adds progress tracking for all model types
and fixes several related issues.

Backend:
- Add /api/models/download-progress endpoint that checks the HF cache
  blobs directory for completed and .incomplete files. Uses model_info()
  (cached per repo) to determine expected total size for percentage.
- Add /api/models/cached-models endpoint that lists non-GGUF model repos
  from the HF cache via scan_cache_dir().
- Fix progress stuck at 0.99: when no .incomplete files remain, report
  1.0 immediately (blob deduplication can make byte totals mismatch).

Frontend:
- Remove the ggufVariant gate so download progress polling works for all
  non-cached models, not just GGUFs.
- Use GGUF-specific endpoint when variant + expectedBytes available,
  otherwise use the general download-progress endpoint.
- Fix toast stuck after load: check loadingModelRef.current before and
  after the async poll to prevent overwriting the success toast.
- First poll at 500ms instead of waiting for the 2s interval.
- Show downloaded non-GGUF models in the Hub model picker "Downloaded"
  section alongside GGUFs.
2026-03-16 02:46:56 -07:00
..
assets Final cleanup 2026-03-12 18:28:04 +00:00
auth fix: remove old comments (#4292) 2026-03-14 16:50:13 +04:00
core [Feature] studio: user can upload eval dataset (#4307) 2026-03-16 11:15:50 +04:00
loggers Final cleanup 2026-03-12 18:28:04 +00:00
models [Feature] studio: user can upload eval dataset (#4307) 2026-03-16 11:15:50 +04:00
plugins Final cleanup 2026-03-12 18:28:04 +00:00
requirements fix: remove old comments (#4292) 2026-03-14 16:50:13 +04:00
routes Add download progress bar for non-GGUF models in Chat 2026-03-16 02:46:56 -07:00
state Final cleanup 2026-03-12 18:28:04 +00:00
tests fix(seed): disable remote code execution in seed inspect dataset loads (#4275) 2026-03-13 19:37:43 +04:00
utils studio: sort GGUF dropdown client-side -- recommended first, OOM last, rest by size descending 2026-03-15 05:24:06 -07:00
__init__.py Final cleanup 2026-03-12 18:28:04 +00:00
colab.py Final cleanup 2026-03-12 18:28:04 +00:00
main.py Fix studio frontend build producing empty Tailwind CSS 2026-03-15 22:00:00 -07:00
run.py fix: Ctrl+C not terminating backend on Linux (#4316) 2026-03-16 11:58:09 +04:00