v0.1.481-beta
shivangi-aneja/GaussianSpeechv0.1.481-betaJul 7, 2026by shimmyshimmer
AI Summary
This release introduces DeepSeek-V4 support, significantly accelerates MoE training, and enhances export capabilities with NVFP4 and GGUF formats. It also adds a smarter OpenAI-compatible API system with model swapping and improves RAG functionality.
Key Highlights
- DeepSeek-V4-Flash support with thinking toggles
- NVFP4, FP8, and imatrix GGUF exporting capabilities
- Smarter OpenAI-Compatible API with auto-model swapping
- 3-5x faster MoE training
- Improved RAG and file chat with whole-document context
New Features
- NVFP4, FP8, INT8, and GGUF/LoRA export support
- Llama-swap API system for automatic model switching
- DeepSeek-V4-Flash model support
- CPU DiffusionGemma with tool calling support
- RAG attachments with whole-document context
- Japanese and Brazilian language support
- Sequence packing by default for GRPO training
Full Release Notes
Unsloth Studio can now export to NVFP4, FP8, imatrix GGUFs after training, can act as a llama-swap API system, includes Japanese and Brazilian language support, includes MLX, safetensors tool calling + healing support and much more! Unsloth core makes GRPO 1.3x faster, have HTTP fallback for stalled downloads, better offline mode, makes MoE training 3 to 5x faster, and fixes many bugs! This release series uses `unsloth>=2026.7.2` and tag `v0.1.481-beta`
[DeepSeek-V4-Flash](https://unsloth.ai/docs/models/deepseek-v4) is now supported with Thinking toggles and with all our fixes including improved chat template!
<img width="500" height="700" alt="Deepseek-v4 in unsloth" src="https://unsloth.ai/docs/~gitbook/image?url=https%3A%2F%2F3215535692-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FxhOjnexMCB3dmuQFQ2Zq%252Fuploads%252FChQx2DGoDLyhf7mp8G2d%252Fdeepseek%2520v4%2520flashhh.png%3Falt%3Dmedia%26token%3Da84f2fbc-8ab0-44cf-a3a8-0bdaaf80a2a7&width=768&dpr=3&quality=100&sign=79c2dcbb&sv=2" />
## Update 8th July 2026 `v0.1.481-beta`
1. Fixes Qwen3.5 / Qwen3.6, Gemma-4 finetuning not working well in Studio
2. Adds CPU DiffusionGemma + tool calling support
3. Fixes DeepSeek-V4 GGUFs and other GGUFs not streaming thinking traces
## Smarter OpenAI-Compatible API Serving
Run one local API endpoint across with safer automatic model swapping and better agent-tool recovery.
* API requests can opt into model auto switching, so a request for a different downloaded local GGUF can load and serve that model automatically.
* The model swap path is safe by default: unknown model names keep using the current model and do not trigger surprise downloads.
* /v1/models now returns clean model IDs and the local GGUF catalog, so API clients do not see local .gguf file paths.
* Idle auto-unload can free VRAM after inactivity while still reloading the last model on the next API request.
* API clients can control tool-call healing per request and opt into the extra nudge retry when a model tries to call a tool but returns malformed markup.
## Export Improvements
Exports are more flexible and avoid more unnecessary downloads.
* Unsloth now lets you select multiple export formats at once.
* Unsloth now supports portable FP8/INT8 exports, GGUF LoRA, and source-matched exports.
* `save_pretrained_merged` now supports compressed FP8/FP4 exports.
* The Unsloth export UI now includes imatrix GGUF and compressed export options.
* Exporting multiple checkpoints now avoids more repeated base-model downloads.
* FP8, INT8, and GGUF-LoRA exports now respect `trust_remote_code`.
* GGUF export now handles models with missing quantization settings more reliably.
## RAG and File Chat
Chat with files should be more useful on real documents.
* RAG attachments can now use whole-document context.
* File chat now reads more PDFs and Word documents correctly, including right-to-left text, Indic text, and DOCX tables.
* Local RAG checks are less likely to fail because of proxy settings.
* The embedding model is now customizable, with Hugging Face search and a reorganized settings tab.
## Unsloth Polish and Reliability
Unsloth is smoother and more reliable during everyday use.
* Training and chat progress are less likely to freeze silently during long runs.
* Compare mode starts more reliably.
* Switching or cancelling models during loading is less likely to get stuck.
* Hub browsing now recovers better from invalid Hugging Face tokens and shows clearer local file paths.
* Hub Discover now shows all models by default, with a cleaner model picker and a fits-on-device filter.
* Project export menus are clearer, with combined project exports and individual chat exports grouped separately.
* Unsloth training runs now show project names.
* Guided tours, reasoning timers, thinking stops, settings, file dialogs, and update screens now feel cleaner and more consistent.
* Japanese and Portuguese (Brazil) are now available in the Unsloth UI.
* Installer and package checks were tightened to catch more unsafe or unexpected dependency changes.
## Installer, Hardware and Platform Fixes
Unsloth installs and runs more reliably across different machines, GPUs, and network setups.
* Installer pins were updated to `unsloth>=2026.6.9`.
* macOS installs no longer require CMake or Homebrew when a prebuilt `llama.cpp` is available.
* Apple Silicon installs now handle paths with spaces more reliably and size GGUF context for unified memory.
* macOS installs work better behind corporate TLS-inspection proxies.
* Linux and macOS path handling is more reliable when folders contain spaces.
* Windows ROCm RAG embedding avoids a `torchao` import crash.
* Windows Unsloth startup handles UTF-8 text more reliably.
* ROCm-on-WSL now supports discrete Radeon RDNA 3/4 GPUs, not just Strix Halo.
* Blackwell `sm_100` and `sm_103` data-center GPUs now use the correct `llama.cpp` prebuilt selection.
* GGUF fit checks now reserve memory for CUDA context and vision/model overhead more accurately.
* Tensor parallelism fixed for vision and `mmproj` GGUF models.
* Existing local `llama.cpp` builds can now be reused with `--with-llama-cpp-dir`.
## Training, Models and Kernels
Training and model loading are more reliable across more model types, GPUs, and fine-tuning setups.
* GRPO training now supports sequence packing by default for old/ref log-probability calculations.
* GRPO now avoids repeating the same shared prompt across grouped completions.
* GRPO logit scaling now works correctly with DDP-wrapped models.
* Full fine-tuning now uses the correct precision on V100 and other GPUs without bf16 support.
* RL trainers no longer reject valid full fine-tuning precision settings.
* Unsloth gradient checkpointing is no longer silently disabled by `TrainingArguments`.
* DDP training no longer crashes from a CPU-resident RoPE buffer.
* MoE LoRA detection now targets the correct expert MLP layers.
* Grouped MoE can now turn on automatically for loaded and PEFT models.
* FP8 quantization now handles odd tensor shapes and scale formats more reliably.
* FP8 dequant kernels now use safer offset handling.
* Llama 3 RoPE scaling is preserved with Transformers v5.
* LoRA reloads continue to work with PEFT 0.19.
* `fast_generate` now shows a clearer error when vLLM-style inputs are used without fast inference.
# Updating Unsloth
To update Unsloth or install a fresh Unsloth Unsloth, use the commands below:
**macOS, Linux, WSL:**
```
curl -fsSL https://unsloth.ai/install.sh | sh
```
**Windows:**
```
irm https://unsloth.ai/install.ps1 | iex
```
## What's Changed in Unsloth
* Bump install.sh / install.ps1 pin to unsloth>=2026.6.9 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6580
* Studio: default Hub Discover scope to all models by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6593
* Studio: model picker search placeholder, Search Hub tooltip, list polish by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6592
* Studio: refresh chat guided tour for the redesigned model picker by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6597
* CI: fix import-hoist false positive, vision-cache test cwd, and llama.cpp CLI smoke by @danielhanchen in https://github.com/unslothai/unsloth/pull/6598
* fix(studio): handle multimodal list content in inference text paths (#4383) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6480
* studio/setup.sh: guard empty CUDA arch detection in the source build (#5854) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6481
* fix: use EMPTY_LOGITS on the fused-CE not-return_dict path (#2068) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6482
* Fix GRPOTrainer evaluate() crash without prior training by @danielhanchen in https://github.com/unslothai/unsloth/pull/6523
* Fix misleading 'only for image models' error for Qwen3-VL when torchvision is missing by @danielhanchen in https://github.com/unslothai/unsloth/pull/6525
* Fix FlashAttention fp32 crash with DoRA (use_dora=True) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6526
* [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in https://github.com/unslothai/unsloth/pull/6587
* Withhold HF_TOKEN from pull_request CI runs by @danielhanchen in https://github.com/unslothai/unsloth/pull/6600
* Fix Studio export checkpoint ordering by @Lyxot in https://github.com/unslothai/unsloth/pull/6602
* Studio: treat data-center Blackwell (sm_100/sm_103) as Blackwell in llama.cpp prebuilt selection by @danielhanchen in https://github.com/unslothai/unsloth/pull/6584
* Studio: fall back to anonymous HF browsing on a malformed token by @danielhanchen in https://github.com/unslothai/unsloth/pull/6605
* Chat: match reasoning thinking icon to the composer bulb by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6607
* Hub: restore Unsloth owner avatar to HF profile picture by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6606
* Studio: scope "Remember settings next time" per GGUF quant and apply on every load path by @oobabooga in https://github.com/unslothai/unsloth/pull/6594
* Fix sentence-transformers RAG embedder on Windows ROCm (torchao import crash) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6608
* Remove git blame ignore revs by @wasimysaid in https://github.com/unslothai/unsloth/pull/6582
* Studio: allow --secure with --api-only (headless secure API server) and add --api-only to `unsloth studio run` by @danielhanchen in https://github.com/unslothai/unsloth/pull/6591
* studio: tidy Windows-ROCm torchao comments (follow-up to #6608) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6610
* Studio: correct anyio<4.14 comments to the real #6483 cause (4.14/Py3.13 streaming cancel-scope bug) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6581
* studio: report the true reasoning duration and fix Stop for thinking models by @danielhanchen in https://github.com/unslothai/unsloth/pull/6521
* Add HTTPS hint to Studio launch message by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6583
* Fix Gemma 4 GGUF OpenAI API streams by @wasimysaid in https://github.com/unslothai/unsloth/pull/6476
* Studio: lazy-import matplotlib so the server starts when the wheel is blocked by @LeoBorcherding in https://github.com/unslothai/unsloth/pull/6596
* Studio: add sidebar update button with installed-version display by @dylanschroers in https://github.com/unslothai/unsloth/pull/6545
* Thread finetune_audio_layers through get_peft_model (Gemma 4 / Gemma 3N audio LoRA) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6558
* Fix CPOTrainer crash with multimodal processors (Gemma 4) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6522
* Fix Qwen3 NaN loss: delegate pad_token repair to shared unsloth_zoo.pad_token by @danielhanchen in https://github.com/unslothai/unsloth/pull/6524
* Harden MLX self-heal install against supply-chain code execution by @danielhanchen in https://github.com/unslothai/unsloth/pull/6599
* Update safe Studio Tauri cargo dependencies by @wasimysaid in https://github.com/unslothai/unsloth/pull/6612
* Studio: remove OpenEnv and other unused packages by @oobabooga in https://github.com/unslothai/unsloth/pull/6585
* Bump vite from 8.0.10 to 8.0.16 in /studio/frontend in the npm-frontend-security group across 1 directory by @dependabot[bot] in https://github.com/unslothai/unsloth/pull/6354
* Fix SyntheticDataKit.chunk_data dropping single-chunk documents by @vineethsaivs in https://github.com/unslothai/unsloth/pull/6595
* Match IGNORED_TOKENIZER_NAMES case-insensitively by @vineethsaivs in https://github.com/unslothai/unsloth/pull/6620
* Installer: don't require cmake/Homebrew on macOS (prebuilt llama.cpp) by @oobabooga in https://github.com/unslothai/unsloth/pull/6617
* Fix construct_chat_template leaking {INPUT}/{OUTPUT} sentinel into the chat template by @vineethsaivs in https://github.com/unslothai/unsloth/pull/6531
* Studio: slim the GLM-5.2 thinking menu width by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6631
* Studio: confirm saved Hugging Face token with a tick by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6630
* Fix _SameTaskStreamingResponse disconnect test bypassing __init__ by @danielhanchen in https://github.com/unslothai/unsloth/pull/6627
* Clarify Studio --secure hint exposes a public Cloudflare tunnel by @danielhanchen in https://github.com/unslothai/unsloth/pull/6615
* Tidy verbose Studio launch messages by @danielhanchen in https://github.com/unslothai/unsloth/pull/6628
* Make _uv_safe_path space-safe on macOS/Linux (#6503) by @GodlyDonuts in https://github.com/unslothai/unsloth/pull/6534
* Clarify in README that studio --secure creates a public tunnel by @danielhanchen in https://github.com/unslothai/unsloth/pull/6632
* Studio: add Unsloth Docs to the MCP server presets by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6633
* Studio: cap GGUF context to unified memory on Apple Silicon by @oobabooga in https://github.com/unslothai/unsloth/pull/6622
* Studio: group the project export menu by Combined and Per chat by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6637
* Studio: tighten the sidebar footer spacing and update-card fade by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6641
* Studio: keep the sidebar bottom fade in sync when groups collapse by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6640
* Pin isolated Node.js installer to committed sha256 digests by @danielhanchen in https://github.com/unslothai/unsloth/pull/6625
* Studio: shareable per-checkpoint preview links by @NilayYadav in https://github.com/unslothai/unsloth/pull/6486
* Verify DiffusionGemma visual-server binary against approved checksums by @danielhanchen in https://github.com/unslothai/unsloth/pull/6635
* Studio: honor `stream=false` on the GGUF agentic tool path (#6570) by @oobabooga in https://github.com/unslothai/unsloth/pull/6618
* Fix Studio GGUF variant expansion crash by @Lyxot in https://github.com/unslothai/unsloth/pull/6636
* Installer: make UV_OVERRIDE space-safe on Apple Silicon (#6503) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6639
* Polish Studio desktop chrome by @wasimysaid in https://github.com/unslothai/unsloth/pull/6332
* Fix Linux AppImage packaging by @wasimysaid in https://github.com/unslothai/unsloth/pull/6657
* Studio: clean up empty leftover quant folders so they can be deleted by @danielhanchen in https://github.com/unslothai/unsloth/pull/6616
* Studio: fix misleading max_seq_length advice for train-on-completions row drops by @danielhanchen in https://github.com/unslothai/unsloth/pull/6664
* Studio: UNSLOTH_NPM_REGISTRY opt-in for corporate npm mirrors (#6491) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6663
* Studio: keep the live progress stream alive during pre-first-step preparation by @danielhanchen in https://github.com/unslothai/unsloth/pull/6665
* Keep pad-named pad_tokens (e.g. <|vision_pad|>); fix Qwen3-Base load crash by @danielhanchen in https://github.com/unslothai/unsloth/pull/6652
* Studio: keep the training event pump alive so progress can't silently freeze by @danielhanchen in https://github.com/unslothai/unsloth/pull/6643
* Studio: stop leaking the auth token through HTML canvas preview frames by @danielhanchen in https://github.com/unslothai/unsloth/pull/6634
* feat: add GPU-aware model filtering and For You section- Add fit filt… by @zrva in https://github.com/unslothai/unsloth/pull/6645
* Studio: prompt variables into prompt editor by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6434
* Verify linuxdeploy AppImage digest before use in desktop release by @danielhanchen in https://github.com/unslothai/unsloth/pull/6673
* Studio: require signed capability tokens for /p preview links by @danielhanchen in https://github.com/unslothai/unsloth/pull/6666
* Fix offline checkpoint load/export: "tokenizer is weirdly not loaded" by @danielhanchen in https://github.com/unslothai/unsloth/pull/6554
* Studio Colab: opt-in shareable Cloudflare tunnel link by @LeoBorcherding in https://github.com/unslothai/unsloth/pull/6684
* Studio: auto-shut-down an exposed first-run instance if the admin password is never changed by @danielhanchen in https://github.com/unslothai/unsloth/pull/6651
* Fix DDP crash from CPU-resident rotary inv_freq buffer by @Abdul-Moiz31 in https://github.com/unslothai/unsloth/pull/6662
* Patch FalconH1RMSNorm to fix float64 compilation crash on Intel Arc DG2 by @anmolxlight in https://github.com/unslothai/unsloth/pull/6691
* feat: improve Unsloth Studio chat title generation quality by @mvanhorn in https://github.com/unslothai/unsloth/pull/6697
* Studio: harden background consumer loops and streaming paths against silent UI freezes by @danielhanchen in https://github.com/unslothai/unsloth/pull/6653
* fix: wrap unprotected evaluate() calls with robust_evaluate() to handle navigation context loss by @jimdawdy-hub in https://github.com/unslothai/unsloth/pull/6677
* Add GGUF flash attention and TP CLI options by @OnePunchMonk in https://github.com/unslothai/unsloth/pull/6561
* studio: return a clean model id from the OpenAI API instead of the local .gguf path by @danielhanchen in https://github.com/unslothai/unsloth/pull/6518
* fix(install): enable UV_NATIVE_TLS on macOS for corporate TLS-inspection proxies by @Cesarsk in https://github.com/unslothai/unsloth/pull/6671
* Stop marking non-8bit Unsloth models as 8-bit by @Lyxot in https://github.com/unslothai/unsloth/pull/6708
* studio: list the full local model catalog from /v1/models by @danielhanchen in https://github.com/unslothai/unsloth/pull/6519
* Silence torchao _C*.so load-failure WARNING on torch >= 2.11 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6712
* Harden flaky Studio CI: retry VS-hide rename and tolerate same-URL nav interrupt by @danielhanchen in https://github.com/unslothai/unsloth/pull/6713
* Fix fast_inference crash on ABI-broken vLLM: probe compiled extensions, not just import vllm by @oobabooga in https://github.com/unslothai/unsloth/pull/6621
* Studio: restore tensor parallelism for vision/mmproj GGUFs by @danielhanchen in https://github.com/unslothai/unsloth/pull/6659
* Studio: stop handing CI/user secrets to downloaded llama.cpp binaries by @danielhanchen in https://github.com/unslothai/unsloth/pull/6696
* Revert "feat: add GPU-aware model filtering and For You section- Add fit filt…" by @danielhanchen in https://github.com/unslothai/unsloth/pull/6722
* Remove unused FalconH1RMSNormGated import by @danielhanchen in https://github.com/unslothai/unsloth/pull/6728
* Studio: cascade user message deletion to include assistant reply by @NilayYadav in https://github.com/unslothai/unsloth/pull/6720
* Fix custom chat templates with a {system_message} placeholder (dead code in _change_system_message) by @vineethsaivs in https://github.com/unslothai/unsloth/pull/6735
* Fix gpt-oss detection in save: config.architectures is a list, not a string by @vineethsaivs in https://github.com/unslothai/unsloth/pull/6711
* fix(studio): show local file path tooltip for Hub-tab local models by @mvanhorn in https://github.com/unslothai/unsloth/pull/6715
* Studio: fix compare adapter selection by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6411
* perf(dataprep): cache regex and field lists, fix typos by @Muhammad-Ikhwan-Fathulloh in https://github.com/unslothai/unsloth/pull/6714
* Speed up Studio desktop startup by @wasimysaid in https://github.com/unslothai/unsloth/pull/6742
* Fix on-device locations dialog layout by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6743
* Fix settings dialog overlay stacking above chat header by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6745
* (feat) Add project names to studio training runs by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6512
* Studio: name the missing extractor when a Recipes file upload fails by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6642
* fix: remove sidebar update dev override by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6746
* fix: upgrade hono to 4.12.25 (CVE-2026-54290) by @orbisai0security in https://github.com/unslothai/unsloth/pull/6736
* Fix llama.cpp CMake build detection in save.py by @ashzak in https://github.com/unslothai/unsloth/pull/5957
* CI: add PyPI extra-index to CPU torch installs (fix sympy ResolutionImpossible) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6660
* Fix full finetuning precision on V100 / no-bf16 GPUs by @danielhanchen in https://github.com/unslothai/unsloth/pull/5880
* Fix triton-xpu 3.7.1 sha256 hashes for Intel XPU install by @Oscilloscope98 in https://github.com/unslothai/unsloth/pull/6629
* Fix stale xformers and flash-attn wheel URLs by @danielhanchen in https://github.com/unslothai/unsloth/pull/4213
* Studio: keep "Fine-tuned" compare label clear of the floating top right controls by @NilayYadav in https://github.com/unslothai/unsloth/pull/6755
* Add FP8/FP4 compressed export to save_pretrained_merged by @danielhanchen in https://github.com/unslothai/unsloth/pull/6706
* Studio: imatrix GGUF option and FP8/NVFP4 compressed export in the export UI by @danielhanchen in https://github.com/unslothai/unsloth/pull/6729
* Whole-document context for RAG chat attachments by @danielhanchen in https://github.com/unslothai/unsloth/pull/6693
* Studio: quick eject from the model selector by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6654
* studio: explicit Cloudflare tunnel notice and public-exposure warning at startup by @danielhanchen in https://github.com/unslothai/unsloth/pull/6515
* fix(studio/llama_cpp): disable trust_env on the loopback health probe (#6750) by @Anai-Guo in https://github.com/unslothai/unsloth/pull/6752
* feat(i18n): add Japanese locale support for the Studio UI catalog by @DovahkiinYuzuko in https://github.com/unslothai/unsloth/pull/6705
* fix: keep LoRA reloads working with PEFT 0.19 by @rodboev in https://github.com/unslothai/unsloth/pull/6748
* studio: allow updating HF models through UI by @Anish9901 in https://github.com/unslothai/unsloth/pull/5388
* Keep the JS-bundle scan check size-agnostic so the baseline does not drift by @danielhanchen in https://github.com/unslothai/unsloth/pull/6770
* Reduce comments across recent fixes by @danielhanchen in https://github.com/unslothai/unsloth/pull/6776
* MLX CI: find llama-cli where save_pretrained_gguf actually installs it by @danielhanchen in https://github.com/unslothai/unsloth/pull/6777
* Studio RAG: disable trust_env on loopback llama-server httpx clients by @danielhanchen in https://github.com/unslothai/unsloth/pull/6775
* scan_packages: key baseline on matched-code hash so payloads in baselined files are not auto-suppressed by @danielhanchen in https://github.com/unslothai/unsloth/pull/6552
* Pin llm-compressor auto-install to a vetted version range by @danielhanchen in https://github.com/unslothai/unsloth/pull/6778
* Fix Windows Studio UTF-8 startup handling by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6614
* Studio: opt-in OpenAI /v1 model auto-switch and idle keep-warm by @danielhanchen in https://github.com/unslothai/unsloth/pull/6392
* Fix GRPO logit scaling when model is wrapped by DDP by @ftrajkov-amd in https://github.com/unslothai/unsloth/pull/5955
* Fix gpt-oss offload_embedding and generate() kwargs, and guard offload_embedding on tied/vLLM models by @danielhanchen in https://github.com/unslothai/unsloth/pull/6774
* Add a fits-on-device filter to the model selects by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6802
* Studio RAG: fix RTL/Indic PDF corruption and dropped DOCX tables by @danielhanchen in https://github.com/unslothai/unsloth/pull/6780
* Studio: customizable RAG embedding model with HF search, settings tab reorganization by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6800
* Studio: self-heal a pre-#6483-fix anyio>=4.14 stuck in existing installs by @Abdul-Moiz31 in https://github.com/unslothai/unsloth/pull/6805
* feat: Implementation of the Portuguese (Brazil) language and VRAM/RAM monitor by @Dspofu in https://github.com/unslothai/unsloth/pull/6509
* Fix: skip fp16/bf16 validation for full finetuning in RL trainers by @InfoSage05 in https://github.com/unslothai/unsloth/pull/6813
* studio/frontend: drop developer-only /grid-test route by @danielhanchen in https://github.com/unslothai/unsloth/pull/5662
* [Studio] Add --with-llama-cpp-dir installer flag to reuse a local llama.cpp by @LeoBorcherding in https://github.com/unslothai/unsloth/pull/6472
* Add MLX-aware public Unsloth trainer API by @Lyxot in https://github.com/unslothai/unsloth/pull/6462
* report a complete load once llama-server is healthy by @hakanbaysal in https://github.com/unslothai/unsloth/pull/6790
* fast_generate: clear error for vLLM-style inputs when fast_inference=False by @danielhanchen in https://github.com/unslothai/unsloth/pull/6786
* CLI: Rename unsloth connect to unsloth start by @NilayYadav in https://github.com/unslothai/unsloth/pull/6613
* Tool-call healing (default on) and opt-in nudging for the client-tool passthrough by @danielhanchen in https://github.com/unslothai/unsloth/pull/6801
* Studio: multi-select export formats, portable FP8/INT8, GGUF LoRA, and source parity by @danielhanchen in https://github.com/unslothai/unsloth/pull/6767
* Studio: flush passthrough stream headers before upstream prefill stalls by @rodboev in https://github.com/unslothai/unsloth/pull/6835
* Fix TrainingArguments silently disabling unsloth gradient checkpointing by @oobabooga in https://github.com/unslothai/unsloth/pull/6829
* Studio: reserve CUDA context and mmproj/MTP soft overhead in the GGUF fit budget by @danielhanchen in https://github.com/unslothai/unsloth/pull/6718
* Fix Studio custom folders on Linux external drives by @ramisworld in https://github.com/unslothai/unsloth/pull/6799
* Guard Windows ROCm torchao override skip by @InfoSage05 in https://github.com/unslothai/unsloth/pull/6837
* Fix export-time trust_remote_code bypass in FP8/INT8/GGUF-LoRA export by @danielhanchen in https://github.com/unslothai/unsloth/pull/6869
* Harden Windows Pester install against missing PSGallery by @danielhanchen in https://github.com/unslothai/unsloth/pull/6892
* Auto Xet to HTTP download fallback in from_pretrained; share Studio's fallback via unsloth_zoo by @danielhanchen in https://github.com/unslothai/unsloth/pull/6638
* GRPO: sequence packing for the no-grad old/ref logp path (default-on) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6738
* Add PrefixGrouper for GRPO: dedup the shared prompt across a group's completions by @danielhanchen in https://github.com/unslothai/unsloth/pull/6871
* Handle odd shapes and non-float scales in FP8BlockQuantLinear by @danielhanchen in https://github.com/unslothai/unsloth/pull/6848
* Scope MoE expert LoRA detection to actual MLP projection targets by @danielhanchen in https://github.com/unslothai/unsloth/pull/6849
* Honor an explicit sdpa or flex_attention request when flash is disabled by @danielhanchen in https://github.com/unslothai/unsloth/pull/6847
* Auto-enable grouped MoE on loaded / PEFT'd models via loader hook by @danielhanchen in https://github.com/unslothai/unsloth/pull/6727
* Respect requested 4bit/8bit for local '-bf16' directories by @danielhanchen in https://github.com/unslothai/unsloth/pull/6726
* Sync FORCE_FLOAT32 fallback with unsloth-zoo (gemma4, glm4_moe, qwen3_moe) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6865
* Note bundled flash-linear-attention kernels for gated-deltanet models by @danielhanchen in https://github.com/unslothai/unsloth/pull/6850
* CI: pin lockfile-audit actions to commit SHAs by @anxkhn in https://github.com/unslothai/unsloth/pull/6902
* fix(fp8): use int64 offsets in weight_dequant_kernel by @anxkhn in https://github.com/unslothai/unsloth/pull/6884
* fix: map None quant method to q8_0 before lowercasing in GGUF export by @anxkhn in https://github.com/unslothai/unsloth/pull/6889
* fix: correct class name in SyntheticDataKit.chunk_data guard message by @anxkhn in https://github.com/unslothai/unsloth/pull/6901
* studio: label RAM and VRAM readouts as GiB not GB by @danielhanchen in https://github.com/unslothai/unsloth/pull/6895
* Fix llama3 RoPE scaling dropped on transformers v5 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6907
* Fix ruff-format spacing drift in loader.py by @danielhanchen in https://github.com/unslothai/unsloth/pull/6910
* studio: tool calling + healing parity for Llama-3, Mistral, Gemma 4 on safetensors + MLX by @danielhanchen in https://github.com/unslothai/unsloth/pull/5620
* Studio: stop chat generation on the assistant-turn-end token (fixes Qwen3.5 loop) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6804
* studio: deterministic backend tool-calling wiring test by @danielhanchen in https://github.com/unslothai/unsloth/pull/6836
* Studio: coerce tool_call arguments to dict before chat templating (fixes MLX tool follow-up error) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6807
* Studio: Gemma tool-call streaming follow-ups + nested-XML escape fix (#6476) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6611
* studio: tool calling for DeepSeek (R1/V3/V3.1), GLM 4.x, Kimi K2 on safetensors + MLX by @danielhanchen in https://github.com/unslothai/unsloth/pull/5624
* scan_packages: baseline transitive-dep drift in the supply-chain scan by @danielhanchen in https://github.com/unslothai/unsloth/pull/6917
* Studio: parse Mistral [TOOL_CALLS] and rehearsal tool-call shapes by @danielhanchen in https://github.com/unslothai/unsloth/pull/5704
* Studio: exclude mlx-lm 0.31.3 (broke gemma4/qwen3_5 QK-norm load on Apple Silicon) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6803
* Studio chat: tool-call nudging on by default (API stays opt-in) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6883
* Studio: close switch/cancel races during model load by @danielhanchen in https://github.com/unslothai/unsloth/pull/6918
* Studio: client-tool passthrough healing for safetensors and MLX by @danielhanchen in https://github.com/unslothai/unsloth/pull/6870
* Studio: keep the nudge wiring test collectable without the unsloth stack by @danielhanchen in https://github.com/unslothai/unsloth/pull/6924
* Studio: serialize the compare-mode dispatcher lifecycle to fix a start race by @danielhanchen in https://github.com/unslothai/unsloth/pull/6922
* Studio: apply presence_penalty on the safetensors and MLX inference paths by @danielhanchen in https://github.com/unslothai/unsloth/pull/6923
* Fix repeated base model downloads across checkpoint exports by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6896
* Studio: fix torch CUDA undefined-symbol errors from a conflicting LD_LIBRARY_PATH by @danielhanchen in https://github.com/unslothai/unsloth/pull/6905
* Clear stale yolo approval state on no-launch reruns by @danielhanchen in https://github.com/unslothai/unsloth/pull/6868
* ROCm-on-WSL: support discrete Radeon (RDNA 3/4) in WSL, not just Strix Halo by @LeoBorcherding in https://github.com/unslothai/unsloth/pull/6915
* Guard RoPE scaling against the transformers v5 buffer blank; honor extended RoPE factor by @danielhanchen in https://github.com/unslothai/unsloth/pull/6925
* Run the malware gate on the RAG embedding model before it loads by @danielhanchen in https://github.com/unslothai/unsloth/pull/6887
* Add RDNA 2/3/4 ROCm routing tests via a CPU-only torch spoof by @danielhanchen in https://github.com/unslothai/unsloth/pull/6935
* GRPO: default router_aux_loss_coef to 0 on TRL >= 1.7.0 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6938
* Add DeepSeek-V4-Flash-GGUF to Studio with none/high/max reasoning by @danielhanchen in https://github.com/unslothai/unsloth/pull/6908
## New Contributors
* @vineethsaivs made their first contribution in https://github.com/unslothai/unsloth/pull/6595
* @zrva made their first contribution in https://github.com/unslothai/unsloth/pull/6645
* @Abdul-Moiz31 made their first contribution in https://github.com/unslothai/unsloth/pull/6662
* @Cesarsk made their first contribution in https://github.com/unslothai/unsloth/pull/6671
* @Muhammad-Ikhwan-Fathulloh made their first contribution in https://github.com/unslothai/unsloth/pull/6714
* @Oscilloscope98 made their first contribution in https://github.com/unslothai/unsloth/pull/6629
* @DovahkiinYuzuko made their first contribution in https://github.com/unslothai/unsloth/pull/6705
* @rodboev made their first contribution in https://github.com/unslothai/unsloth/pull/6748
* @ftrajkov-amd made their first contribution in https://github.com/unslothai/unsloth/pull/5955
* @Dspofu made their first contribution in https://github.com/unslothai/unsloth/pull/6509
* @InfoSage05 made their first contribution in https://github.com/unslothai/unsloth/pull/6813
* @hakanbaysal made their first contribution in https://github.com/unslothai/unsloth/pull/6790
* @ramisworld made their first contribution in https://github.com/unslothai/unsloth/pull/6799
* @anxkhn made their first contribution in https://github.com/unslothai/unsloth/pull/6902
* @ErenAta16 made their first contribution in https://github.com/unslothai/unsloth/pull/6909
* @ThomasEricB made their first contribution in https://github.com/unslothai/unsloth/pull/6970
**Full Changelog**: https://github.com/unslothai/unsloth/compare/v0.1.471-beta...v0.1.48-beta
## What's Changed in Unsloth Zoo
* Fix Gemma3 compiled SFT crash (ArgsMismatchError on q_norm/k_norm) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/804
* training_utils: respect PEFT bias training in prepare_model_for_training (#2343) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/795
* tests: verify the MoE fused experts + attention merge (qwen3_5_moe build + model-space check, gemma4) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/792
* Fix LoRA scaling count mismatch on merge for Qwen2.5-VL exports (#2966) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/806
* Fix Llama/Mixtral MoE LoRA merge dropping unfused expert deltas (#5403) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/812
* Generalize pad_token repair into a shared module by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/816
* Fix GRPO eval crash: keep gradient checkpointing buffers out of inference mode by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/805
* peft_utils: add finetune_audio_layers for Gemma 4 / Gemma 3N audio + embedder LoRA by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/814
* Allow pad-named tokens (e.g. <|vision_pad|>) as valid pad_tokens by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/831
* Apply extra_special_tokens coercion on the MLX load path by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/835
* Add imatrix option to quantize_gguf for IQ low-bit GGUF quants by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/839
* train_on_responses_only: faster filtering, safer collator and num_proc, clearer errors by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/836
* Auto-detect instruction/response parts in train_on_responses_only by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/834
* Feat(mlx): Add NEFTune (neftune_noise_alpha) for text models to MLXTrainer by @BardiaKoopah in https://github.com/unslothai/unsloth-zoo/pull/824
* feat(mlx): runtime bnb dequant -> MLX affine 4-bit on Apple Silicon by @BardiaKoopah in https://github.com/unslothai/unsloth-zoo/pull/815
* Feat(mlx): Add early stopping + load_best_model_at_end to MLXTrainer by @BardiaKoopah in https://github.com/unslothai/unsloth-zoo/pull/822
* Feat(mlx): Wire report_to wandb/tensorboard for standalone MLXTrainer by @BardiaKoopah in https://github.com/unslothai/unsloth-zoo/pull/821
* Align MLX trainer internals for public UnslothTrainer by @Lyxot in https://github.com/unslothai/unsloth-zoo/pull/790
* GRPO: sequence packing for the gradient logp path (default-on) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/840
* Fix Gemma3 processor batched tokenization (ragged padding) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/843
* Fix MLX trainer tests stale after load_best_model_at_end + trainer internals by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/853
* Keep CUDA graphs with LoRA on vLLM >= 0.19 by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/867
* Add shared Xet to HTTP stall fallback (hf_xet_fallback, hf_cache_state) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/829
* Dequantize FP8 dense models on merged_16bit save (fixes unsloth#4919) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/803
* Support DoRA (use_dora=True) in the safetensors LoRA merge by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/828
* Make mxfp4 converter import resilient to a missing _cpu variant by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/826
* GRPO PrefixGrouper: shared-prefix grad path in grpo_accumulated_loss by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/868
* Keep DeepSeek-V4 hyper-connection mixers eager to stop backward inf by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/859
* Cap the fused cross entropy chunk target so chunking stays active on large GPUs by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/857
* Batch the fused MoE expert LoRA merge into one matmul on GPU by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/827
* Load prequantized bnb 4-bit MoE expert checkpoints under transformers v5 by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/856
* Optional recompute-in-backward for the v5 grouped MoE path by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/838
* Add a grouped bnb 4-bit training forward for gpt-oss experts by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/862
* Optional gate gradient identity for the grouped MoE combine by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/858
* Vendor flash-linear-attention gated-delta kernels (no pip install needed) by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/865
* Grouped-GEMM MoE forward for transformers<5 ModuleList experts by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/837
* Make float16 training work for gemma4, qwen3_moe and glm4_moe by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/866
* Route gemma-4 sliding-window layers through FlashAttention-2 by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/860
* Fix MLX notebook generate input/output compatibility by @Lyxot in https://github.com/unslothai/unsloth-zoo/pull/855
* Refuse DoRA on mxfp4 packed MoE before dequant; refresh bnb4bit patch-count canary by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/871
* Skip bnb4bit per-expert MoE tests against the transformers<5 core_model_loading stub by @danielhanchen in https://github.com/unslothai/unsloth-zoo/pull/876
* saving utils check both model.base_model and base_model.model by @toranb in https://github.com/unslothai/unsloth-zoo/pull/95
## 8th July 2026 `v0.1.481-beta` Update
* Bump install.sh / install.ps1 pin to unsloth>=2026.7.1 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6943
* Sort chat recents by last activity by @NilayYadav in https://github.com/unslothai/unsloth/pull/6844
* Studio: render \[ \] and \( \) LaTeX delimiters in chat by @oobabooga in https://github.com/unslothai/unsloth/pull/6914
* fix: match qwen3-thinking double-newline in train_on_responses_only response pattern by @InfoSage05 in https://github.com/unslothai/unsloth/pull/6926
* Studio: stream reasoning tokens in the tool-loop generator (fixes DeepSeek thinking not streaming with a pill on) by @oobabooga in https://github.com/unslothai/unsloth/pull/6947
* Create ossf.yml by @danielhanchen in https://github.com/unslothai/unsloth/pull/6952
* Speed up Studio startup path by @wasimysaid in https://github.com/unslothai/unsloth/pull/6899
* Polish assistant message actions menu by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6962
* Move New badge to System settings tab by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/6963
* Fix opencode Unsloth provider selection by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6906
* Fix Hermes install hint on Windows by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6903
* Studio: heal DiffusionGemma tool calls into structured tool_calls by @oobabooga in https://github.com/unslothai/unsloth/pull/6851
* Fix case-variant model matching and GGUF cache reuse in unsloth start by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6900
* Studio: show Hugging Face address on hover for Hub and online model rows (#6382) by @danielhanchen in https://github.com/unslothai/unsloth/pull/6928
* Studio: fix currency and indentation edge cases in LaTeX rendering by @danielhanchen in https://github.com/unslothai/unsloth/pull/6957
* Add MLX backend support for CLI unsloth train by @Lyxot in https://github.com/unslothai/unsloth/pull/6709
* feat(cli): support MLX distributed inference by @Lyxot in https://github.com/unslothai/unsloth/pull/6845
* Route MLX trainer callbacks through UnslothTrainer by @Lyxot in https://github.com/unslothai/unsloth/pull/6929
* (GRPO) Fix PEFT replacement for TRL >= 1.7.0, add missing compute_aux_loss for TRL >= 1.7.0 by @marcandrelarochelle in https://github.com/unslothai/unsloth/pull/6904
* version-compat CI: fake CPU training runs for SFT/GRPO/DPO by @danielhanchen in https://github.com/unslothai/unsloth/pull/6965
* Fix OpenClaw start default to local TUI by @Imagineer99 in https://github.com/unslothai/unsloth/pull/6937
* feat: detect installed coding agent CLIs in Studio settings by @ErenAta16 in https://github.com/unslothai/unsloth/pull/6909
* Studio: don't pin transformers before the training worker activates the 5.x sidecar by @danielhanchen in https://github.com/unslothai/unsloth/pull/6968
* Studio: source CPU llama.cpp prebuilts from unslothai/llama.cpp by @oobabooga in https://github.com/unslothai/unsloth/pull/6311
* fix(studio/hub): apply repo_id length limit per segment, not whole string (#6946) by @Anai-Guo in https://github.com/unslothai/unsloth/pull/6953
* MoE LoRA: auto-target per-expert Linear experts (gpt-oss 4bit) instead of leaving them frozen by @danielhanchen in https://github.com/unslothai/unsloth/pull/6936
* Studio: fix flash-attn and torchao install on Blackwell (sm_100+) GPUs (Closes #6961) by @ThomasEricB in https://github.com/unslothai/unsloth/pull/6970
* Fix Backend CI: add has_blackwell_gpu to the mlx worker test stub by @danielhanchen in https://github.com/unslothai/unsloth/pull/6980
* Studio: allow CPU-only DiffusionGemma by granting the diffusion runner the CPU device by @danielhanchen in https://github.com/unslothai/unsloth/pull/6979
**Full Changelog**: https://github.com/unslothai/unsloth/compare/v0.1.48-beta...v0.1.481-beta