v0.1.808-beta
unslothai/unslothv0.1.808-betaSep 9, 2026by danielhanchen
AI Summary
This is a large performance and reliability release featuring significant speed improvements for diffusion and inference, especially on AMD and Apple Silicon, alongside over 250 bug fixes and a 60% reduction in binary size.
Key Highlights
- 1.2-1.7x faster diffusion and 20% AMD performance boost via Vulkan
- 2x faster updating with fixes for Windows Smart App Control and AV false positives
- Over 250 bug fixes and 60% smaller binaries
- PyTorch updated to 2.11 default across supported installers
- New Docker images for Studio and notebooks published to Docker Hub
New Features
- New Docker image published to Docker Hub for Studio and notebooks
- DeepSeek Harness added to unsloth start
- Studio now accepts subtitle, caption, and common attachment formats
- Audio models can now load into CPU RAM instead of GPU
- Improved OpenAI-compatible API streaming and audio input
Full Release Notes
This is a large performance and reliability + bug fix release for Unsloth ## Highlights * 1.2-1.7x faster diffusion. AMD 20% perf boost vs ROCM via Vulkan * 2x faster updating, remove SAC + AV false positives for Windows * Blender MCP, detect Hermes, AMD gibberish fixed (reported to AMD) * Over 250+ bug fixes, 60% smaller binaries and performance improvements * Strix iGPU BIOS popup - 3x faster inference if more VRAM for iGPU * Updated PyTorch to 2.11 from 2.10 - 2.14 will be soon. MLX improvements * Default to gpt-6-astra for Codex logins and improve OpenAI API processing * MLX fixed when self healing / updating, causing slowdowns for inf + training * Fix AppImage being very laggy. Fixed RAG upload issues stuck at 28% and API issues * New Docker image published at https://hub.docker.com/r/unsloth/unsloth for Studio and notebooks ## Performance Boosts - Diffusion is 1.2x to 1.7x faster for INT8 / FP8 pathways - all models accelerated. - 23% faster prompt processing and 8% faster generation on Strix Halo. - Gated-delta models now train up to 25% faster on Apple Silicon. - Quantized MLX KV caches use up to 74% less prompt memory than before. ## AMD + Windows - Strix Halo and Strix Point now default to Vulkan for faster inference. - AMD iGPUs without ROCm now use Vulkan instead of CPU on Linux. - Windows llama.cpp binaries are now signed to reduce Smart App Control blocks. - Windows now clearly explains when code integrity blocks model loading. - Reinstalling Unsloth on Windows keeps your supported PyTorch version. ## MLX + Apple Silicon - Fresh Mac installs keep MLX training and exports working. - Fine-tune with DoRA and more DPO loss types on Apple Silicon. - Batched MLX generation now streams and samples each chat independently. - More multimodal models can be fine-tuned using text-only datasets. ## Studio + API - RAG and document uploads are faster, show clearer progress and no longer appear stuck. - Studio menus, Find and Settings now open more smoothly. - GPT-6 Astra is available for Codex logins with Low through Max reasoning controls. - Improved OpenAI-compatible API streaming, audio input and model loading. - AppImage builds are more reliable with a pinned release toolchain. ## Installs + Docker - PyTorch 2.11 is now the default across supported installers. - New NVIDIA Docker images for training and Studio, from Turing to Blackwell. - Native AMD64 and ARM64 images are available from Docker Hub. - The Unsloth Python package is now >60% smaller. Docker: https://hub.docker.com/r/unsloth/unsloth ## Download Unsloth Desktop Unsloth Desktop is **free and open source**. Download it for: - **Windows** - **macOS** - **Linux** **[🦥 Download Unsloth Desktop](https://unsloth.ai/download)** ## What's Changed * Publish only the wheel to PyPI, not the sdist by @danielhanchen in https://github.com/unslothai/unsloth/pull/10202 * Bump install.sh / install.ps1 pin to unsloth>=2026.9.2 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10203 * Add DeepSeek Harness to unsloth start by @NilayYadav in https://github.com/unslothai/unsloth/pull/10097 * Studio: stop generating when the client goes away by @NilayYadav in https://github.com/unslothai/unsloth/pull/10096 * Studio: keep what you typed with an image when a chat is shortened by @NilayYadav in https://github.com/unslothai/unsloth/pull/10165 * Order the Ollama stop-token scan instead of leaving it to a set by @vineethsaivs in https://github.com/unslothai/unsloth/pull/10101 * Studio: replay a web_search result the way the client sent it by @Lyxot in https://github.com/unslothai/unsloth/pull/10131 * Studio: say when a chat is too long instead of showing a raw error by @NilayYadav in https://github.com/unslothai/unsloth/pull/10090 * Restore the comment tails the trim cut off by @danielhanchen in https://github.com/unslothai/unsloth/pull/10205 * Studio: accept subtitle, caption and the rest of the common attachment formats by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/9738 * Studio: count only this adapter's engines in the Windows AMD GPU utilization by @LeoBorcherding in https://github.com/unslothai/unsloth/pull/9317 * Fix diffusion offload host RAM retention by @wasimysaid in https://github.com/unslothai/unsloth/pull/10184 * Let audio models load into CPU RAM instead of the GPU by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10054 * Stop the zoo digest pin living in two places by @danielhanchen in https://github.com/unslothai/unsloth/pull/10206 * Format test_video_backend.py the way the pinned ruff wants by @danielhanchen in https://github.com/unslothai/unsloth/pull/10235 * Security audit: re-approve the four torch findings that 2.14.0 opened by @danielhanchen in https://github.com/unslothai/unsloth/pull/10233 * unsloth_cli tests: stop the mklink kwargs assertion breaking on an unrelated keyword by @danielhanchen in https://github.com/unslothai/unsloth/pull/10231 * Pin the multi-turn determinism probe to a backend that can be deterministic by @danielhanchen in https://github.com/unslothai/unsloth/pull/10234 * CI: stop grep -c || echo 0 producing a two-line count by @danielhanchen in https://github.com/unslothai/unsloth/pull/10232 * Security audit: re-approve the huggingface-hub backoff loop for 1.30.0 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10244 * Stop the stall-window comparison being decided by one noisy sample by @danielhanchen in https://github.com/unslothai/unsloth/pull/10246 * Studio: report a cut off /v1/responses turn as incomplete by @NilayYadav in https://github.com/unslothai/unsloth/pull/10225 * Studio: keep a still-advancing llama.cpp prefill from timing out by @oobabooga in https://github.com/unslothai/unsloth/pull/10172 * Studio: bring the Llasa top_p default inside the range the API accepts by @danielhanchen in https://github.com/unslothai/unsloth/pull/9194 * CLI: pass --hf-token to the export checkpoint load by @NilayYadav in https://github.com/unslothai/unsloth/pull/10218 * Pin AppImage plugin to a versioned release by @wasimysaid in https://github.com/unslothai/unsloth/pull/10201 * Studio: thread hf_token through load_and_format_dataset by @KrishPatel1905 in https://github.com/unslothai/unsloth/pull/8924 * Studio: stop the update banners floating off the corner by @oobabooga in https://github.com/unslothai/unsloth/pull/10229 * fix(studio): stop handing a wildcard bind's public IP to LAN peers by @amanyagami in https://github.com/unslothai/unsloth/pull/9912 * Studio: report free memory on Mac as what is actually free by @NilayYadav in https://github.com/unslothai/unsloth/pull/10224 * Studio: match the update banner tests on classes, not on file substrings by @danielhanchen in https://github.com/unslothai/unsloth/pull/10267 * Studio: size a Deep Research run to the model it actually runs on by @NilayYadav in https://github.com/unslothai/unsloth/pull/10220 * Studio: fall back when a page declares a charset we do not know by @NilayYadav in https://github.com/unslothai/unsloth/pull/10221 * Studio: pin which rejection site the confirm-stream tests assert by @danielhanchen in https://github.com/unslothai/unsloth/pull/10284 * Studio: turn the generation prompt off on the final answer continuation by @NilayYadav in https://github.com/unslothai/unsloth/pull/10219 * Studio: let the API load settings panel forget an entry by @NilayYadav in https://github.com/unslothai/unsloth/pull/10160 * Windows torch release preservation and a torch 2.11 default across installers by @danielhanchen in https://github.com/unslothai/unsloth/pull/7256 * Add cu128/cu126/cu130 torch 2.11.0 extras (torch2110) with xformers 0.0.35 by @danielhanchen in https://github.com/unslothai/unsloth/pull/6955 * Studio: assert the write ordering, not what the write resolves to by @danielhanchen in https://github.com/unslothai/unsloth/pull/10289 * Kaggle: fix the nightly, which has never once got as far as Kaggle by @danielhanchen in https://github.com/unslothai/unsloth/pull/10270 * Keep probing for a usable nvidia-smi before falling back to ROCm on Windows by @danielhanchen in https://github.com/unslothai/unsloth/pull/4958 * Trim comments in studio/frontend chat, model picker and media features by @danielhanchen in https://github.com/unslothai/unsloth/pull/10114 * Add a dispatch-only Docker Hub credential probe by @danielhanchen in https://github.com/unslothai/unsloth/pull/10291 * Fix Studio find-in-page correctness and typing by @wasimysaid in https://github.com/unslothai/unsloth/pull/10209 * Studio: stop exports timing out while they are still working by @NilayYadav in https://github.com/unslothai/unsloth/pull/10258 * Stop unsloth chat from reloading a model the server already has by @NilayYadav in https://github.com/unslothai/unsloth/pull/10257 * Studio: stop hiding every model pulled with ollama pull by @NilayYadav in https://github.com/unslothai/unsloth/pull/10222 * Anchor studio source slices on declarations, not on comment text by @danielhanchen in https://github.com/unslothai/unsloth/pull/10297 * Studio: fix Restore settings breaking preset saving by @NilayYadav in https://github.com/unslothai/unsloth/pull/10256 * Lazy-load Studio entry surfaces by @wasimysaid in https://github.com/unslothai/unsloth/pull/10236 * Restore persisted Studio resource monitor by @wasimysaid in https://github.com/unslothai/unsloth/pull/10237 * fix(frontend): render data-URI images in chat markdown by @CelesteHeartsong in https://github.com/unslothai/unsloth/pull/10269 * Fix Hub GGUF fit estimates for companion files by @Imagineer99 in https://github.com/unslothai/unsloth/pull/10249 * Pin the auth mount gate to its behaviour, not one spelling of the guard by @danielhanchen in https://github.com/unslothai/unsloth/pull/10307 * Trim comments in tests, scripts, CI helpers and unsloth_cli by @danielhanchen in https://github.com/unslothai/unsloth/pull/10113 * Add Unsloth Docker images (base + Studio) for any NVIDIA GPU host, Ampere through Blackwell by @danielhanchen in https://github.com/unslothai/unsloth/pull/5748 * Restore the facts the frontend comment trim reworded away by @danielhanchen in https://github.com/unslothai/unsloth/pull/10292 * Install the cublas wheel NVIDIA actually publishes for the bundle's CUDA major by @danielhanchen in https://github.com/unslothai/unsloth/pull/10324 * Studio: fix whisper prebuilt pairing on linux-arm64 with a GPU llama runtime by @danielhanchen in https://github.com/unslothai/unsloth/pull/10278 * Docker publish: verify the merged manifest against the arches' children by @danielhanchen in https://github.com/unslothai/unsloth/pull/10333 * Docker: describe the shipped images on Docker Hub and in the README by @danielhanchen in https://github.com/unslothai/unsloth/pull/10334 * Stop asserting the titlebar navigation padding from source by @danielhanchen in https://github.com/unslothai/unsloth/pull/10326 * Restore facts the comment trim cut from the unsloth package by @danielhanchen in https://github.com/unslothai/unsloth/pull/10328 * Restore facts the comment trim cut from the Studio backend by @danielhanchen in https://github.com/unslothai/unsloth/pull/10329 * Restore facts the comment trim cut from the studiobench harness by @danielhanchen in https://github.com/unslothai/unsloth/pull/10331 * fix(studio): align desktop titlebar buttons by @mahiatlinux in https://github.com/unslothai/unsloth/pull/10321 * Docker publish: sync the Hub page with DOCKER_API_KEY on the namespace route by @danielhanchen in https://github.com/unslothai/unsloth/pull/10343 * Revert "Studio: keep a Downloads entry when the list is empty" by @Etherll in https://github.com/unslothai/unsloth/pull/10298 * Make the credential probe actually delete its throwaway tag by @danielhanchen in https://github.com/unslothai/unsloth/pull/10294 * Docker: print the Studio admin password in docker logs, add UNSLOTH_STUDIO_PASSWORD by @danielhanchen in https://github.com/unslothai/unsloth/pull/10344 * Docker: retry the deadsnakes PPA add so a Launchpad 504 does not fail the build by @danielhanchen in https://github.com/unslothai/unsloth/pull/10363 * Docker publish: keep the tag list to core, latest, studio, releases and dated nightly pins by @danielhanchen in https://github.com/unslothai/unsloth/pull/10364 * Studio: take GGML_CUDA_ENABLE_UNIFIED_MEMORY only when the weights outgrow the APU carve-out by @danielhanchen in https://github.com/unslothai/unsloth/pull/10351 * Studio: prefer the self-contained MTP head so llama-server's --fit can measure it by @danielhanchen in https://github.com/unslothai/unsloth/pull/10342 * Studio: measure the real size of attached documents instead of guessing by @NilayYadav in https://github.com/unslothai/unsloth/pull/10318 * Bump the npm-frontend-security group across 1 directory with 5 updates by @dependabot[bot] in https://github.com/unslothai/unsloth/pull/10194 * Chat: keep the payload when a provider streams arguments as a decoded object by @lonexreb in https://github.com/unslothai/unsloth/pull/10275 * deps: bump setuptools build pins and raise the ip-address override to 10.3.1 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10138 * studio: stop find in page matching part way through a grapheme by @danielhanchen in https://github.com/unslothai/unsloth/pull/10200 * Studio: unsloth chat loads the model you picked, not another GGUF in the same folder by @NilayYadav in https://github.com/unslothai/unsloth/pull/10357 * Studio: keep the overlay rail honest about what it reserves by @danielhanchen in https://github.com/unslothai/unsloth/pull/10372 * Kaggle T4: fail a batched row that generates nothing while its single does not by @danielhanchen in https://github.com/unslothai/unsloth/pull/10367 * Docker: one command sets up the NVIDIA Container Toolkit on the host by @danielhanchen in https://github.com/unslothai/unsloth/pull/10366 * Kaggle T4: describe the batched-generation expectation as a precision property, not a pending fix by @danielhanchen in https://github.com/unslothai/unsloth/pull/10377 * Studio: keep an API key from borrowing the operator's Hugging Face token (#10126) by @harshaygadekar in https://github.com/unslothai/unsloth/pull/10142 * Use hybrid uv cache migration for Studio installs by @wasimysaid in https://github.com/unslothai/unsloth/pull/10204 * feat(chat): render on-disk sandbox images in chat markdown by @CelesteHeartsong in https://github.com/unslothai/unsloth/pull/10361 * Point unsloth start openclaw memory search at the Unsloth embeddings API by @NilayYadav in https://github.com/unslothai/unsloth/pull/10320 * Studio: serve /v1/embeddings from the configured embedding model when the loaded GGUF cannot by @NilayYadav in https://github.com/unslothai/unsloth/pull/10315 * Studio: stop converting the model twice when exporting GGUF to the Hub by @NilayYadav in https://github.com/unslothai/unsloth/pull/10317 * Studio: return an error when tools are sent to a model that cannot use them by @NilayYadav in https://github.com/unslothai/unsloth/pull/10314 * Local Agent Guides CI: judge a finished turn the CLI would not exit from by @danielhanchen in https://github.com/unslothai/unsloth/pull/10399 * Docker toolkit installer: stop pipefail turning a grep match into a miss by @danielhanchen in https://github.com/unslothai/unsloth/pull/10402 * Fix composer send and stop icon centering across display scales by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10407 * Give push_to_ollama the arguments create_ollama_modelfile takes by @vineethsaivs in https://github.com/unslothai/unsloth/pull/10304 * Kaggle CI: dispatch the kernel and collect it later, instead of holding a runner by @danielhanchen in https://github.com/unslothai/unsloth/pull/10183 * Studio: make the chat and sidebar menus open without freezing the page by @NilayYadav in https://github.com/unslothai/unsloth/pull/10262 * Studio: unbreak the frontend suite and the icon alignment check by @danielhanchen in https://github.com/unslothai/unsloth/pull/10413 * Studio smoke: report a transport failure instead of crashing on one by @danielhanchen in https://github.com/unslothai/unsloth/pull/10420 * Give `unsloth studio update` the same uv cache the backend already uses by @danielhanchen in https://github.com/unslothai/unsloth/pull/10386 * Studio installer: torch 2.11 on Linux CPU, Vulkan for AMD without ROCm, gfx1033 gate, and three install fixes by @danielhanchen in https://github.com/unslothai/unsloth/pull/8412 * Studio: four load and update messages that told the user the wrong thing by @danielhanchen in https://github.com/unslothai/unsloth/pull/10383 * Studio: keep the llama-server prompt cache on a shared-memory GPU by @danielhanchen in https://github.com/unslothai/unsloth/pull/10382 * Studio: retry as one sequence when llama.cpp refuses a unified KV cache by @danielhanchen in https://github.com/unslothai/unsloth/pull/10371 * Publish Docker on the daily schedule, and move layer cache off the Actions quota by @danielhanchen in https://github.com/unslothai/unsloth/pull/10429 * Studio: report a throughput the engine could have produced by @danielhanchen in https://github.com/unslothai/unsloth/pull/10384 * Stop shipping the frontend source tree and desktop crate in the wheel by @danielhanchen in https://github.com/unslothai/unsloth/pull/10426 * Studio: optimize video galleries by removing per-card media pipelines by @oobabooga in https://github.com/unslothai/unsloth/pull/10228 * Studio: do not crash a model load when shutdown tears the server down under it by @danielhanchen in https://github.com/unslothai/unsloth/pull/10369 * Studio: route AMD integrated GPUs to the Vulkan llama.cpp prebuilt by @danielhanchen in https://github.com/unslothai/unsloth/pull/10381 * Studio: give a local GGUF one variant identity, so an API load applies its saved settings by @Lyxot in https://github.com/unslothai/unsloth/pull/10238 * Studio: reuse MLX vision-language prompt prefixes between turns by @Lyxot in https://github.com/unslothai/unsloth/pull/10239 * Studio: share one Hub model_info read across the model-config probes by @Lyxot in https://github.com/unslothai/unsloth/pull/10230 * Keep the LoRA GGUF and compressed-tensors converters off the operator's Hugging Face token by @Souravrajvi0 in https://github.com/unslothai/unsloth/pull/10263 * Studio: load the speech model an audio API request asks for by @NilayYadav in https://github.com/unslothai/unsloth/pull/10217 * Studio: stop rejecting provider API keys longer than 190 bytes by @Lyxot in https://github.com/unslothai/unsloth/pull/10421 * Studio: dial the bound address for in-process API calls, not a loopback literal by @Lyxot in https://github.com/unslothai/unsloth/pull/10140 * Studio: admit a bearer that carries no token under keyless API access by @Lyxot in https://github.com/unslothai/unsloth/pull/10423 * Studio: convert pasted images when tools are turned on by @NilayYadav in https://github.com/unslothai/unsloth/pull/10094 * Fix GGUF catalog snapshot selection by @Imagineer99 in https://github.com/unslothai/unsloth/pull/10210 * Studio: accept the standard input_audio message part by @NilayYadav in https://github.com/unslothai/unsloth/pull/10255 * Studio: use the eval dataset for TTS and codec audio training by @NilayYadav in https://github.com/unslothai/unsloth/pull/10259 * studio: use the hermes and deepseek logos in the agents picker by @mahiatlinux in https://github.com/unslothai/unsloth/pull/10266 * Studio: use every thinking level a local model offers by @NilayYadav in https://github.com/unslothai/unsloth/pull/10458 * Bind the amp helpers on the MLX runtime too by @vineethsaivs in https://github.com/unslothai/unsloth/pull/9447 * OpenAI stream: gate UI control frames behind X-Unsloth-Events opt-in by @denys-bushuliak in https://github.com/unslothai/unsloth/pull/10362 * Clean up Hub runtime/config coupling by @Sneakr in https://github.com/unslothai/unsloth/pull/9886 * Stop unsloth start codex and openclaw from inheriting provider API keys by @NilayYadav in https://github.com/unslothai/unsloth/pull/10316 * Studio: add GPT-6 Astra to the fallback catalog and reasoning controls by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10475 * Studio: let Deep Research write longer reports on saved connections by @NilayYadav in https://github.com/unslothai/unsloth/pull/10254 * Fix the red Cross-platform parity run: decode PowerShell stdout as UTF-8 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10476 * Studio: name the llama.cpp backend in the install log, and stop labelling Windows ROCm torch as CPU by @danielhanchen in https://github.com/unslothai/unsloth/pull/10370 * notebook_validator: read shell the way bash does, and state the torch/torchcodec contract by @danielhanchen in https://github.com/unslothai/unsloth/pull/10414 * Docker Studio: build the labextension with @jupyter/builder so it never reaches for GitHub by @danielhanchen in https://github.com/unslothai/unsloth/pull/10483 * Drop late inference responses after their request is released by @ianderse in https://github.com/unslothai/unsloth/pull/10388 * Studio: stop re-fetching every llama.cpp release from the GitHub API by @NilayYadav in https://github.com/unslothai/unsloth/pull/10461 * Do not self-heal MLX into a --no-torch install by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10409 * Pin tokenizers with transformers so Apple Silicon keeps Train and Export by @danielhanchen in https://github.com/unslothai/unsloth/pull/10431 * Make the venv-hardening decode strict, and say which codepoints differed by @danielhanchen in https://github.com/unslothai/unsloth/pull/10432 * Stop unsloth train from ignoring config keys it does not know by @NilayYadav in https://github.com/unslothai/unsloth/pull/10452 * Apply the load settings unsloth start dsh is given by @NilayYadav in https://github.com/unslothai/unsloth/pull/10451 * Studio: keep an Ollama Modelfile SYSTEM prompt in force when the date line is on by @HughScott2002 in https://github.com/unslothai/unsloth/pull/10463 * Studio: fix sending an image with no caption on Anthropic by @NilayYadav in https://github.com/unslothai/unsloth/pull/10455 * Studio: keep the uploaded eval dataset for Whisper and audio VLM runs too by @danielhanchen in https://github.com/unslothai/unsloth/pull/10482 * torchcodec: cover torch 2.11 in the compatibility guard and pin per torch minor by @danielhanchen in https://github.com/unslothai/unsloth/pull/7474 * fix(tokenizer): enable add_bos_token for Gemma 4 base models by @Souravrajvi0 in https://github.com/unslothai/unsloth/pull/10312 * Studio: make the Min P and Repetition Penalty sliders work by @NilayYadav in https://github.com/unslothai/unsloth/pull/10456 * Studio: show mlx-community models as MLX in the model picker by @NilayYadav in https://github.com/unslothai/unsloth/pull/10457 * Recognise Windows code integrity blocks, and require the runtime we ship by @danielhanchen in https://github.com/unslothai/unsloth/pull/10404 * Assert the release publishing path uploads the wheel only by @danielhanchen in https://github.com/unslothai/unsloth/pull/10419 * Studio: harden the codec-audio eval config added in #10259 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10477 * Scan release bundles for potentially unwanted applications too by @danielhanchen in https://github.com/unslothai/unsloth/pull/10478 * Refactor setup.sh into modular functions and restructure main execution flow by @xerrni in https://github.com/unslothai/unsloth/pull/5408 * fix: private dataset splits/metadata not loading in Studio UI by @Shivamjohri247 in https://github.com/unslothai/unsloth/pull/4965 * Feat: add unsloth skill, fix cli by @TimPietrusky in https://github.com/unslothai/unsloth/pull/4443 * bump trl version by @danielhanchen in https://github.com/unslothai/unsloth/pull/4248 * Add persistent wiki-RAG pipeline with vendored Graphify, lint-driven enrichment, and debug/maintenance APIs by @zohairshafi in https://github.com/unslothai/unsloth/pull/5103 * Fix Windows setup access-denied on existing llama-server ACLs by @aiSynergy37 in https://github.com/unslothai/unsloth/pull/4881 * [WIP] Apple Silicon (MPS/Metal) Support by @danielhanchen in https://github.com/unslothai/unsloth/pull/4259 * docs: improve documentation on exporting models from Colab by @danielhanchen in https://github.com/unslothai/unsloth/pull/4247 * Add Qwen3-Omni Support with Optimized MTP Fine-Tuning by @danielhanchen in https://github.com/unslothai/unsloth/pull/4235 * Studio: allow DoRA training on Apple Silicon by @Lyxot in https://github.com/unslothai/unsloth/pull/7508 * Studio: ask for a password on a raw `-H 0.0.0.0` bind too by @danielhanchen in https://github.com/unslothai/unsloth/pull/10485 * fix(studio): refresh profile stats and mode-aware activity summary by @Souravrajvi0 in https://github.com/unslothai/unsloth/pull/9402 * Studio: keep queued prompts when generation is stopped by @claxman in https://github.com/unslothai/unsloth/pull/10445 * Fix the red parity gate: run_pwsh has to set the writing end of the pipe too by @danielhanchen in https://github.com/unslothai/unsloth/pull/10484 * Studio: say when a file cannot be read instead of ignoring it by @NilayYadav in https://github.com/unslothai/unsloth/pull/10261 * Studio: recover saved context when switching back to a snapshot path by @claxman in https://github.com/unslothai/unsloth/pull/10447 * Studio: install the supported MLX stack on fresh macOS installs by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10403 * Cache janitor: sweep every two hours, drop dead buildkit blobs on sight, keep one CodeQL overlay base by @danielhanchen in https://github.com/unslothai/unsloth/pull/10488 * Studio: stop installing flash-linear-attention and tilelang, unsloth_zoo vendors the GDN kernels by @danielhanchen in https://github.com/unslothai/unsloth/pull/10487 * Docker Hub README: xformers is amd64 only, GB10 runs through PTX, canonical docs link by @danielhanchen in https://github.com/unslothai/unsloth/pull/10492 * Docker Studio: keep the base image's CUDA llama.cpp instead of the CPU prebuilt by @danielhanchen in https://github.com/unslothai/unsloth/pull/10495 * Make the formatter refuse a ruff it is not pinned to, and re-format the four files that drifted by @danielhanchen in https://github.com/unslothai/unsloth/pull/10512 * Tests: let the xFormers pin guards hold on both main and pip by @danielhanchen in https://github.com/unslothai/unsloth/pull/10514 * Studio: fix document upload stalls, races and text decoding by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10496 * Desktop: fix NVIDIA X11 WebKit fence exhaustion by @oobabooga in https://github.com/unslothai/unsloth/pull/10214 * Studio: quiet image and video generation logs by @oobabooga in https://github.com/unslothai/unsloth/pull/9885 * Studio: record how a Windows install was launched and what it produced by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/8066 * Bump install.sh / install.ps1 pin to unsloth>=2026.9.3 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10521 * Fix main's red encoding guard, and the ruff drift in the same files by @danielhanchen in https://github.com/unslothai/unsloth/pull/10522 * Restore the executable bit on the formatter hook by @danielhanchen in https://github.com/unslothai/unsloth/pull/10519 * Studio: give the document upload simulations one deadline by @danielhanchen in https://github.com/unslothai/unsloth/pull/10517 * Let the torch tag check tell the handoff restore from a conditional report by @danielhanchen in https://github.com/unslothai/unsloth/pull/10524 * Keep scripts/run_ruff_format.py executable by @danielhanchen in https://github.com/unslothai/unsloth/pull/10518 * Unbreak CI on main: name the encoding on four checked-in file reads, and make the ruff format hook executable by @danielhanchen in https://github.com/unslothai/unsloth/pull/10523 * Pin the accelerator index for torchao too, and let a starved index pin fall back by @danielhanchen in https://github.com/unslothai/unsloth/pull/10490 * Release: do not fail the Windows Defender gate when the runner refuses real-time protection by @danielhanchen in https://github.com/unslothai/unsloth/pull/10527 * Studio: make three RAG tests hold on Windows by @danielhanchen in https://github.com/unslothai/unsloth/pull/10530 * Keep the loggers stub a package so tests/studio can be collected in one process by @danielhanchen in https://github.com/unslothai/unsloth/pull/10531 * Format two files that drifted from the pinned ruff on main by @danielhanchen in https://github.com/unslothai/unsloth/pull/10532 * Make build.sh executable so ./build.sh publish works from a clone by @danielhanchen in https://github.com/unslothai/unsloth/pull/10534 * CI: assert the installed unsloth CLI runs on the virgin Windows lane by @danielhanchen in https://github.com/unslothai/unsloth/pull/10535 * Stop unsloth start from killing a model download that is still running by @NilayYadav in https://github.com/unslothai/unsloth/pull/10453 * Studio: add opt-in first-use Blender MCP setup by @wasimysaid in https://github.com/unslothai/unsloth/pull/10443 * fix(desktop): trust the OS certificate store on the Linux desktop (#9218) by @yzxcj797 in https://github.com/unslothai/unsloth/pull/9240 * Fix Studio port fallback on Windows by @imherro in https://github.com/unslothai/unsloth/pull/9449 * Studio: recover compare-pane settings through a snapshot path by @claxman in https://github.com/unslothai/unsloth/pull/10505 * Studio: advise raising the iGPU memory allocation when a model overflows it by @danielhanchen in https://github.com/unslothai/unsloth/pull/10486 * Unbreak main: catch the install.ps1 handoff harness up with the block it drives by @danielhanchen in https://github.com/unslothai/unsloth/pull/10538 * Studio: clear dumpability before every crash the RAG probe child takes by @danielhanchen in https://github.com/unslothai/unsloth/pull/10547 * Bound RAG scope retirement by folder identity, not by the clock by @danielhanchen in https://github.com/unslothai/unsloth/pull/10561 * Studio: record what was on screen when an upload simulation fails by @danielhanchen in https://github.com/unslothai/unsloth/pull/10541 * Studio: only treat a real link definition as one by @NilayYadav in https://github.com/unslothai/unsloth/pull/10223 * Key the recreated-project delete tests to state, not to a call count by @danielhanchen in https://github.com/unslothai/unsloth/pull/10571 * Studio: detect models downloaded by Hermes by @NilayYadav in https://github.com/unslothai/unsloth/pull/10327 * Make run_ruff_format.py reject arguments it cannot honour instead of silently dropping them by @danielhanchen in https://github.com/unslothai/unsloth/pull/10578 * Collapse repeated fixture construction in the studio install tests by @danielhanchen in https://github.com/unslothai/unsloth/pull/10501 * Share the frontend source readers and the shell test harness by @danielhanchen in https://github.com/unslothai/unsloth/pull/10500 * Studio: decode a Windows device id before comparing it by @danielhanchen in https://github.com/unslothai/unsloth/pull/10536 * Studio: stop reading a success line like "Errors: 0" as a failed tool result by @NilayYadav in https://github.com/unslothai/unsloth/pull/10554 * Studio: remove OS tabs from generated agent command by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10586 * Resize Studio images and share Model Hub provider logos by @danielhanchen in https://github.com/unslothai/unsloth/pull/10427 * Share builders and setup helpers in the studio backend tests, part 2 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10498 * Keep model.device on the decoder while the embedding is offloaded to RAM by @danielhanchen in https://github.com/unslothai/unsloth/pull/10569 * Studio: keep torchao quantisation from mutating inductor config, and make its int8 GEMM capture-safe by @danielhanchen in https://github.com/unslothai/unsloth/pull/10525 * Studio: verify Hub credentials before cache-backed reads by @Souravrajvi0 in https://github.com/unslothai/unsloth/pull/10264 * Never import sentencepiece on Windows by @danielhanchen in https://github.com/unslothai/unsloth/pull/10593 * Attach dispatch hooks on a num_labels load that asked for fast_inference by @danielhanchen in https://github.com/unslothai/unsloth/pull/10509 * Bound the /validate calls one autoload cascade can send by @danielhanchen in https://github.com/unslothai/unsloth/pull/10508 * Trim the comments in scripts/uninstall.sh and scripts/uninstall.ps1 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10596 * Studio: run document uploads off the event loop by @NilayYadav in https://github.com/unslothai/unsloth/pull/10552 * Re-run the pinned ruff formatter over two test files by @danielhanchen in https://github.com/unslothai/unsloth/pull/10601 * Apply the pinned formatter to test_hub_token_caller_identity.py by @danielhanchen in https://github.com/unslothai/unsloth/pull/10602 * Studio: clamp an unavailable reasoning effort to the nearest rung, not the weakest by @shimmyshimmer in https://github.com/unslothai/unsloth/pull/10575 * fix: improve NVIDIA GPU detection and VS toolchain handling on Windows by @AronRubin in https://github.com/unslothai/unsloth/pull/5336 * Studio: find the AMD Vulkan driver through the Windows device registrations by @oobabooga in https://github.com/unslothai/unsloth/pull/10564 * Studio: skip torchcodec for torch below the compatibility table by @RudraBhaskar9439 in https://github.com/unslothai/unsloth/pull/10506 * Studio: avoid hidden PowerShell arguments in CLI setup and updates by @oobabooga in https://github.com/unslothai/unsloth/pull/10560 * Guard main against drifting out of its own formatting hook by @danielhanchen in https://github.com/unslothai/unsloth/pull/10603 * Ask for the NPP runtime by the name that has wheels on CUDA 13 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10587 * Studio: report a Claude reply cut off by the context window as truncated by @NilayYadav in https://github.com/unslothai/unsloth/pull/10557 * Share builders and setup helpers in the studio backend tests, part 1 by @danielhanchen in https://github.com/unslothai/unsloth/pull/10497 * [Fix] Studio: show "Using tool" for active tool calls by @debojyoti-dev in https://github.com/unslothai/unsloth/pull/10548 * Studio: give the conversation archive's order a final tiebreaker by @danielhanchen in https://github.com/unslothai/unsloth/pull/10572 * Studio: apply EXIF orientation to uploaded images by @NilayYadav in https://github.com/unslothai/unsloth/pull/10553 * Studio: capture the diffusion denoiser step into a CUDA graph by @danielhanchen in https://github.com/unslothai/unsloth/pull/10537 * Studio: remove the background staged desktop update and return to the classic update by @danielhanchen in https://github.com/unslothai/unsloth/pull/10604 * Studio: try every address a site resolves to when fetching a page by @NilayYadav in https://github.com/unslothai/unsloth/pull/10319 * Windows installer: emit the native path helper instead of compiling it by @danielhanchen in https://github.com/unslothai/unsloth/pull/10540 ## New Contributors * @KrishPatel1905 made their first contribution in https://github.com/unslothai/unsloth/pull/8924 * @amanyagami made their first contribution in https://github.com/unslothai/unsloth/pull/9912 * @harshaygadekar made their first contribution in https://github.com/unslothai/unsloth/pull/10142 * @denys-bushuliak made their first contribution in https://github.com/unslothai/unsloth/pull/10362 * @ianderse made their first contribution in https://github.com/unslothai/unsloth/pull/10388 * @HughScott2002 made their first contribution in https://github.com/unslothai/unsloth/pull/10463 * @xerrni made their first contribution in https://github.com/unslothai/unsloth/pull/5408 * @Shivamjohri247 made their first contribution in https://github.com/unslothai/unsloth/pull/4965 * @TimPietrusky made their first contribution in https://github.com/unslothai/unsloth/pull/4443 * @zohairshafi made their first contribution in https://github.com/unslothai/unsloth/pull/5103 * @claxman made their first contribution in https://github.com/unslothai/unsloth/pull/10445 * @imherro made their first contribution in https://github.com/unslothai/unsloth/pull/9449 * @AronRubin made their first contribution in https://github.com/unslothai/unsloth/pull/5336 * @RudraBhaskar9439 made their first contribution in https://github.com/unslothai/unsloth/pull/10506 * @debojyoti-dev made their first contribution in https://github.com/unslothai/unsloth/pull/10548 **Full Changelog**: https://github.com/unslothai/unsloth/compare/v0.1.806-beta...v0.1.808-beta