Unsloth: Introducing AMD support Unsloth announced AMD GPU support for local LLM training and inference, enabling 500+ models to run up to 2× faster with 70% less VRAM on AMD Radeon, Instinct, Ryzen, and data center GPUs. The release includes improved ROCm compatibility, automatic GPU placement, faster chat restarts, and a new MCP endpoint for AI clients. Hey everyone This release brings local LLM training and inference to AMD GPUs across Windows, WSL and Linux. Read our AMD Blog + Guide https://unsloth.ai/docs/basics/amd Starting today, our AMD collaboration, custom Triton kernels, and math algorithms enables you to train and run 500+ models across AMD's Radeon, Instinct, Ryzen and data center GPUs, up to 2× faster with 70% less VRAM and no accuracy loss. Optimized ROCm builds also support GGUF & Safetensors inference. Train LLMs Locally on AMD - Train, run RL, chat with and deploy models locally on AMD GPUs. - More reliable AMD GPU detection and installation across Windows, WSL and Linux. - Improved ROCm compatibility for AMD MI300X and MI325X GPUs. - Remote access Unsloth via unsloth studio --secure through free HTTPS via Cloudflare Run Larger Models on Your Hardware - Use automatic GPU placement or choose exactly which GPUs and model layers to use. - Move MoE expert layers into system memory to help larger models fit. - Split models across multiple GPUs or use Tensor Parallelism. - Save hardware settings separately for each model and quant. Faster Chat Restarts and More Reliable Downloads - Resume long chats without rebuilding the full conversation after an idle model frees its VRAM. - Stalled Hugging Face XET downloads automatically retry over standard HTTP. - Existing GGUF files are reused instead of being downloaded again whenever a model loads. Better Search, Tools and Agents - Web search can now read PDF papers, manuals and other PDF results. - Parallel tool calls, reasoning output and tool retries work more reliably. - A new opt-in MCP endpoint lets compatible AI clients inspect models and training history, start or stop training, load checkpoints, validate recipes and export GGUFs. - Enable it with UNSLOTH STUDIO ENABLE MCP=1 and set the required bearer token with UNSLOTH STUDIO MCP TOKEN . - Enable it with Training and Export Fixes - Text-only training with multimodal models no longer truncates long examples before packing. - Fine-tuned Qwen3.5 and Qwen3.6 MTP models now export correctly to GGUF. - Fixed a Windows permission error that could stop GGUF exports during the final write step. In Case You Missed It Our previous Studio release added Dynamic NVFP4 models, deeper personalization, seven new display languages, safer agents and Vulkan GPU acceleration. Dynamic NVFP4 Unsloth Dynamic NVFP4 keeps accuracy-sensitive layers in FP8 or BF16 while running the rest in W4A4. On NVIDIA Blackwell GPUs, this enables up to 2.5x faster inference, while calibrated FP8 KV caches provide up to 2x longer context. Read the Dynamic NVFP4 guide https://unsloth.ai/docs/basics/nvfp4 and explore our expanded NVFP4 collection https://huggingface.co/collections/unsloth/nvfp4 , including Qwen3.6, Qwen3.5, Inkling, GLM-4.7 Flash and Gemma 4. Personalize Your Studio Choose between Standard, Classic and Minimal color palettes, each with light and dark modes. You can also customize colors, import fonts and adjust font size, contrast, reduced motion and more. Studio also includes a Voice settings tab for dictation, custom dictionary settings and read-aloud. New Languages Unsloth Studio is now available in French, German, Spanish, Hindi, Arabic, Russian and Korean, alongside Chinese Simplified , Japanese and Portuguese Brazil . Browser-language auto-detection is now the default. Safer Agents A four-level tool-call permission selector- Ask , Approve for me , Off and Full access -provides finer control over agents. Agent workspace isolation and safer installer checks also reduce the risk of unintended changes. Updating Unsloth To update Unsloth or install a fresh 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.7.3 by @danielhanchen https://github.com/danielhanchen in 7155 https://github.com/unslothai/unsloth/pull/7155 - fix dataprep : smart chunk text single-chunk path leaks internal tensor type when eos token id is None by @chuenchen309 https://github.com/chuenchen309 in 7151 https://github.com/unslothai/unsloth/pull/7151 - Fix Settings layout overflow by @shimmyshimmer https://github.com/shimmyshimmer in 7167 https://github.com/unslothai/unsloth/pull/7167 - Keep nested dropdown menus on screen by @shimmyshimmer https://github.com/shimmyshimmer in 7168 https://github.com/unslothai/unsloth/pull/7168 - Fix DeepSeek reasoning test shim by @shimmyshimmer https://github.com/shimmyshimmer in 7169 https://github.com/unslothai/unsloth/pull/7169 - Harden desktop release token permissions by @wasimysaid https://github.com/wasimysaid in 7172 https://github.com/unslothai/unsloth/pull/7172 - Studio: clickable sidebar settings cog, long name truncation, Canvas menu opt-in by @shimmyshimmer https://github.com/shimmyshimmer in 7171 https://github.com/unslothai/unsloth/pull/7171 - CI: opt tool-calling smoke tests out of the chat tool approval gate by @danielhanchen https://github.com/danielhanchen in 7162 https://github.com/unslothai/unsloth/pull/7162 - Fix Inkling reasoning-effort coercion for duck-typed engine stand-ins by @danielhanchen https://github.com/danielhanchen in 7158 https://github.com/unslothai/unsloth/pull/7158 - fix config cards clipping content at narrow window widths by @NilayYadav https://github.com/NilayYadav in 7146 https://github.com/unslothai/unsloth/pull/7146 - Studio: use one shared Hugging Face token across Settings and training by @NilayYadav https://github.com/NilayYadav in 7152 https://github.com/unslothai/unsloth/pull/7152 - Studio: don't drop parallel tool calls after an internal no-op by @oobabooga https://github.com/oobabooga in 7157 https://github.com/unslothai/unsloth/pull/7157 - Studio: extract text from PDF web results by @oobabooga https://github.com/oobabooga in 7154 https://github.com/unslothai/unsloth/pull/7154 - don't kill live llama-servers when a new Studio instance starts by @NilayYadav https://github.com/NilayYadav in 7182 https://github.com/unslothai/unsloth/pull/7182 - fix save : unsloth push to hub gguf save method="lora" raises NameError by @chuenchen309 https://github.com/chuenchen309 in 7193 https://github.com/unslothai/unsloth/pull/7193 - Feat/model picker per model config by @Sneakr https://github.com/Sneakr in 6647 https://github.com/unslothai/unsloth/pull/6647 - fix studio : recover stalled Hub downloads over HTTP by @rodboev https://github.com/rodboev in 6858 https://github.com/unslothai/unsloth/pull/6858 - fix mlx : relax Metal context-store timeout by default by @Lyxot https://github.com/Lyxot in 7141 https://github.com/unslothai/unsloth/pull/7141 - Studio: don't re-download updated GGUFs on load by @oobabooga https://github.com/oobabooga in 7209 https://github.com/unslothai/unsloth/pull/7209 - Fix Studio reasoning channel rendering by @Lyxot https://github.com/Lyxot in 7121 https://github.com/unslothai/unsloth/pull/7121 - Fix Studio safetensors tool reprompt reasoning leakage by @Lyxot https://github.com/Lyxot in 7134 https://github.com/unslothai/unsloth/pull/7134 - Studio: don't apply nest asyncio on plain CLI starts breaks asyncio on Python 3.14+ by @NilayYadav https://github.com/NilayYadav in 7186 https://github.com/unslothai/unsloth/pull/7186 - Propagate fp8 block size before the early return in get lora parameters bias by @vineethsaivs https://github.com/vineethsaivs in 7189 https://github.com/unslothai/unsloth/pull/7189 - feat studio : expose an opt-in MCP control plane by @RitwijParmar https://github.com/RitwijParmar in 7191 https://github.com/unslothai/unsloth/pull/7191 - fix tokenizer : check for tokenizer.model after saving it, not before by @chuenchen309 https://github.com/chuenchen309 in 7194 https://github.com/unslothai/unsloth/pull/7194 - Stabilize Studio regression tests by @shimmyshimmer https://github.com/shimmyshimmer in 7192 https://github.com/unslothai/unsloth/pull/7192 - fix dataprep : skip .jsonl lines that are valid JSON but not objects by @chuenchen309 https://github.com/chuenchen309 in 7195 https://github.com/unslothai/unsloth/pull/7195 - fix studio : equal padding in the dataset source segmented control by @shimmyshimmer https://github.com/shimmyshimmer in 7230 https://github.com/unslothai/unsloth/pull/7230 - fix canvas staying open after starting a New Chat by @NilayYadav https://github.com/NilayYadav in 7229 https://github.com/unslothai/unsloth/pull/7229 - Allow API key for Ollama connections by @shimmyshimmer https://github.com/shimmyshimmer in 7173 https://github.com/unslothai/unsloth/pull/7173 - Studio: keep the Bypass permissions pill label when composer pills collapse by @shimmyshimmer https://github.com/shimmyshimmer in 7231 https://github.com/unslothai/unsloth/pull/7231 - fix studio : honor MLX adapter state in compare mode by @Lyxot https://github.com/Lyxot in 7196 https://github.com/unslothai/unsloth/pull/7196 - Refresh the fastapi C2-loop scan baseline entry for the current release by @danielhanchen https://github.com/danielhanchen in 7223 https://github.com/unslothai/unsloth/pull/7223 - Studio: enforce 60s minimum on idle auto-unload TTL 0 stays off by @NilayYadav https://github.com/NilayYadav in 7185 https://github.com/unslothai/unsloth/pull/7185 - Replace standalone Studio wording with Unsloth by @shimmyshimmer https://github.com/shimmyshimmer in 7221 https://github.com/unslothai/unsloth/pull/7221 - Studio: hide the RAG embedder and llama.cpp probe from the hub cached inventory by @shimmyshimmer https://github.com/shimmyshimmer in 7018 https://github.com/unslothai/unsloth/pull/7018 - fix registry : don't register deepseek models at import time by @chuenchen309 https://github.com/chuenchen309 in 7227 https://github.com/unslothai/unsloth/pull/7227 - studio: show the active run's saved config in the Training Progress popover by @hakanbaysal https://github.com/hakanbaysal in 7217 https://github.com/unslothai/unsloth/pull/7217 - test version-compat : keep GRPO fake-run logits finite on CPU by @danielhanchen https://github.com/danielhanchen in 7247 https://github.com/unslothai/unsloth/pull/7247 - Studio: GPU memory configuration for GGUF models by @oobabooga https://github.com/oobabooga in 6414 https://github.com/unslothai/unsloth/pull/6414 - Give opencode real timeout headroom in Local Agent Guides CI by @danielhanchen https://github.com/danielhanchen in 7235 https://github.com/unslothai/unsloth/pull/7235 - Installer: allow torch 2.11.x on the CUDA install path fresh install + studio by @danielhanchen https://github.com/danielhanchen in 6959 https://github.com/unslothai/unsloth/pull/6959 - fix chat templates : bind loop messages when default system message is None by @chuenchen309 https://github.com/chuenchen309 in 7199 https://github.com/unslothai/unsloth/pull/7199 - Installer: preserve the previous torch release across every flavor and vendor on re-runs by @danielhanchen https://github.com/danielhanchen in 7250 https://github.com/unslothai/unsloth/pull/7250 - Studio: fix stale GGUF load-marker ordering test after llama extra args relocation by @danielhanchen https://github.com/danielhanchen in 7252 https://github.com/unslothai/unsloth/pull/7252 - Route OpenCode yolo aliases to native auto mode by @Imagineer99 https://github.com/Imagineer99 in 7187 https://github.com/unslothai/unsloth/pull/7187 - Pin the Hermes remote installer and harden consent by @Imagineer99 https://github.com/Imagineer99 in 7179 https://github.com/unslothai/unsloth/pull/7179 - Translate PWD for WSL-launched Windows agents by @Imagineer99 https://github.com/Imagineer99 in 7111 https://github.com/unslothai/unsloth/pull/7111 - persist llama.cpp KV cache across idle auto-unload slot save/restore by @NilayYadav https://github.com/NilayYadav in 7204 https://github.com/unslothai/unsloth/pull/7204 - Fix text-only VLM CPT packing truncation by @alkinun https://github.com/alkinun in 7211 https://github.com/unslothai/unsloth/pull/7211 - feat studio : add UNSLOTH LLAMA CPP BACKEND env var to force CPU fallback 7213 https://github.com/unslothai/unsloth/issues/7213 by @VectorCipher https://github.com/VectorCipher in 7228 https://github.com/unslothai/unsloth/pull/7228 - Experimental: correct varlen sample packing for hybrid linear-attention models by @danielhanchen https://github.com/danielhanchen in 7249 https://github.com/unslothai/unsloth/pull/7249 - install: let UNSLOTH TORCH INDEX FAMILY / URL override CUDA wheel detection by @danielhanchen https://github.com/danielhanchen in 6692 https://github.com/unslothai/unsloth/pull/6692 - Studio: Data settings tab, uploaded files manager, quant pinning, and chat image preview fix by @shimmyshimmer https://github.com/shimmyshimmer in 7029 https://github.com/unslothai/unsloth/pull/7029 - Studio: fix per-GPU VRAM reporting on Windows ROCm by @danielhanchen https://github.com/danielhanchen in 7238 https://github.com/unslothai/unsloth/pull/7238 - Studio: do not show Run for embedding-only non-GGUF models in the Model Hub by @danielhanchen https://github.com/danielhanchen in 7245 https://github.com/unslothai/unsloth/pull/7245 - Studio: make Stop and stall deadlines interrupt a wedged stream portably by @danielhanchen https://github.com/danielhanchen in 7236 https://github.com/unslothai/unsloth/pull/7236 - Studio: clarify tool permission controls by @shimmyshimmer https://github.com/shimmyshimmer in 7181 https://github.com/unslothai/unsloth/pull/7181 - Update README with latest features and Unsloth Start by @Imagineer99 https://github.com/Imagineer99 in 7258 https://github.com/unslothai/unsloth/pull/7258 - Studio: lock the last enabled GPU switch instead of silently ignoring it by @oobabooga https://github.com/oobabooga in 7259 https://github.com/unslothai/unsloth/pull/7259 - Fix unsloth start on Windows: agent install, PATH resolution, and local model selection by @danielhanchen https://github.com/danielhanchen in 7257 https://github.com/unslothai/unsloth/pull/7257 - Fix On Device model picker startup ordering by @Imagineer99 https://github.com/Imagineer99 in 6994 https://github.com/unslothai/unsloth/pull/6994 - Studio: validate Hugging Face tokens before use by @oobabooga https://github.com/oobabooga in 7261 https://github.com/unslothai/unsloth/pull/7261 - Studio Windows : keep prompt caching on full GPU offload by @danielhanchen https://github.com/danielhanchen in 7260 https://github.com/unslothai/unsloth/pull/7260 New Contributors @chuenchen309 https://github.com/chuenchen309 made their first contribution in 7151 https://github.com/unslothai/unsloth/pull/7151 @VectorCipher https://github.com/VectorCipher made their first contribution in 7228 https://github.com/unslothai/unsloth/pull/7228 Full Changelog : v0.1.49-beta...v0.1.50-beta What's Changed in Unsloth-Zoo - mlx: fixes for bnb dequant, report to, early stopping, and NEFTune by @oobabooga https://github.com/oobabooga in unslothai/unsloth-zoo 851 https://github.com/unslothai/unsloth-zoo/pull/851 - MLX: clear error when mlx-lm/mlx-vlm is too old for a QK-norm arch gemma4/qwen3 5 by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 845 https://github.com/unslothai/unsloth-zoo/pull/845 - MLX: fix gemma-4-e2b gemma4 audio-tower conv double transpose on load by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 879 https://github.com/unslothai/unsloth-zoo/pull/879 - Add Mixtral MoE experts patch for Split LoRA fix 4bit QLoRA forward crash by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 881 https://github.com/unslothai/unsloth-zoo/pull/881 - Forward declared tools to the DiffusionGemma visual server by @oobabooga https://github.com/oobabooga in unslothai/unsloth-zoo 864 https://github.com/unslothai/unsloth-zoo/pull/864 - Add mixtral moe to temporary patches import test list by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 884 https://github.com/unslothai/unsloth-zoo/pull/884 - feat mlx : add DDP training support by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 841 https://github.com/unslothai/unsloth-zoo/pull/841 - feat mlx : support distributed inference loading by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 854 https://github.com/unslothai/unsloth-zoo/pull/854 - fix mlx : preserve inference norm dtypes by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 844 https://github.com/unslothai/unsloth-zoo/pull/844 - fix mlx : normalize legacy tokenizer sidecars for VLM loads by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 846 https://github.com/unslothai/unsloth-zoo/pull/846 - fix mlx : support text label parity datasets by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 793 https://github.com/unslothai/unsloth-zoo/pull/793 - MLX: fix gated-delta Qwen3.5 training and add fused backward kernels by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 754 https://github.com/unslothai/unsloth-zoo/pull/754 - GRPO Fix SAPO on version TRL 0.27.2 and add Luspo from TRL = 0.28.0 by @marcandrelarochelle https://github.com/marcandrelarochelle in unslothai/unsloth-zoo 869 https://github.com/unslothai/unsloth-zoo/pull/869 - GRPO Add importance sampling modes TRL = 0.26.0 , Switch to vllm importance sampling clip support for TRL = 1.6.0 and Fix VESPO not using the importance sampling ratio by @marcandrelarochelle https://github.com/marcandrelarochelle in unslothai/unsloth-zoo 870 https://github.com/unslothai/unsloth-zoo/pull/870 - saving: fold per-expert gpt-oss 4bit expert LoRA into merged 16bit by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 885 https://github.com/unslothai/unsloth-zoo/pull/885 - Fix gpt oss mask factory signature introspection on transformers 5.x by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 880 https://github.com/unslothai/unsloth-zoo/pull/880 - Fix CPU test drift on transformers 5.5.0 and the MLX bitsandbytes stub by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 886 https://github.com/unslothai/unsloth-zoo/pull/886 - Guard MLX distributed eval against zero-token batches by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 888 https://github.com/unslothai/unsloth-zoo/pull/888 - Fix chat template marker auto-detection for Zephyr's context-dependent tokenization by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 899 https://github.com/unslothai/unsloth-zoo/pull/899 - Persist torch.compile artifacts across processes with Mega-cache by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 901 https://github.com/unslothai/unsloth-zoo/pull/901 - Fix ModuleNotFoundError crash in fla vendor's is flash linear attention available probe by @amareshhebbar https://github.com/amareshhebbar in unslothai/unsloth-zoo 897 https://github.com/unslothai/unsloth-zoo/pull/897 - Fix false DownloadStallError for non-standard sharded weight filenames by @olsh https://github.com/olsh in unslothai/unsloth-zoo 900 https://github.com/unslothai/unsloth-zoo/pull/900 - Fix false DownloadStallError for diffusers components with non-standard sharded weight filenames by @danielhanchen https://github.com/danielhanchen in unslothai/unsloth-zoo 902 https://github.com/unslothai/unsloth-zoo/pull/902 - tokenizer utils: match IGNORED TOKENIZER NAMES case-insensitively in fix untrained tokens by @oobabooga https://github.com/oobabooga in unslothai/unsloth-zoo 823 https://github.com/unslothai/unsloth-zoo/pull/823 - Fix GGUF export crash for fine-tuned MTP models Qwen3.5 by @oobabooga https://github.com/oobabooga in unslothai/unsloth-zoo 904 https://github.com/unslothai/unsloth-zoo/pull/904 - fix: ROCm compatibility — guard SM-arch paths, FlashInfer, and mem get info by @zhihuidu-amd https://github.com/zhihuidu-amd in unslothai/unsloth-zoo 910 https://github.com/unslothai/unsloth-zoo/pull/910 - Fix Windows GGUF export PermissionError Errno 13 : anchor converter --outfile to input folder by @LeoBorcherding https://github.com/LeoBorcherding in unslothai/unsloth-zoo 907 https://github.com/unslothai/unsloth-zoo/pull/907 - Fix silent expert-weight transposition in MoE preprocess weight by @BardiaKoopah https://github.com/BardiaKoopah in unslothai/unsloth-zoo 913 https://github.com/unslothai/unsloth-zoo/pull/913 - Replace standalone Studio wording with Unsloth by @shimmyshimmer https://github.com/shimmyshimmer in unslothai/unsloth-zoo 914 https://github.com/unslothai/unsloth-zoo/pull/914 - Fix Gemma 4 audio training crash by @BardiaKoopah https://github.com/BardiaKoopah in unslothai/unsloth-zoo 917 https://github.com/unslothai/unsloth-zoo/pull/917 - Fix Gemma 4 MLX GGUF tensor namespace restoration by @Lyxot https://github.com/Lyxot in unslothai/unsloth-zoo 905 https://github.com/unslothai/unsloth-zoo/pull/905