Change8

v0.1.49-beta

Breaking Changes
📦 unslothView on GitHub →
2 breaking44 features🐛 14 fixes🔧 20 symbols

Summary

Unsloth introduces extensive customization for its Studio, including new color palettes, custom fonts, and seven new display languages. Agents are now safer with enhanced tool-call permissions and workspace isolation, while Intel GPUs gain GPU-accelerated inference via Vulkan `llama.cpp` support.

⚠️ Breaking Changes

  • Removed `AGENTS.md` / `CLAUDE.md` from install artifacts and tightened instruction-file cleanup. Users may need to manually re-add or manage these files if they were relying on them being present in the installation.
  • Stopped silent full-sequence training: 'Train on completions' used a hardcoded template table and silently disabled masking on a miss. This change means DeepSeek and most LFM models trained on prompts too while the toggle said otherwise. Markers are now auto-detected from the tokenizer's chat template, and manual response-template markers that never matched their rendered templates have been fixed. This might affect training behavior if relying on the previous silent masking.

Migration Steps

  1. If relying on `AGENTS.md` or `CLAUDE.md` being present in install artifacts, manually re-add or manage these files.
  2. Users training models may need to review their training configurations due to changes in how markers are auto-detected from tokenizer chat templates and fixes to manual response-template markers.

✨ New Features

  • Added three new color palettes (Standard, Classic, Minimal) for Studio appearance customization, each with light and dark schemes.
  • Introduced custom accent, background, and foreground colors via an in-app color picker (hue/saturation, hex, eyedropper).
  • Added custom UI, heading, chat, and code fonts with font import (woff2/woff/ttf/otf) and device/folder font detection.
  • Added controls for font-size, contrast, pointer-cursor, reduced-motion, and font-smoothing.
  • Restyled core controls (inputs, dropdowns, buttons) and settings search.
  • Added seven new display languages: French, German, Spanish, Hindi, Arabic, Russian, and Korean.
  • Made Auto-detect (from browser language) the default for display languages.
  • Introduced a new Voice settings tab for dictation, dictionary, and read-aloud.
  • Added a four-level tool-call permission selector for agents: Ask, Approve for me, Off, and Full access.
  • Implemented agent workspace isolation.
  • Added Vulkan `llama.cpp` support for GPU-accelerated inference on Intel GPUs.
  • Introduced Inkling, a new 975B parameter (41B active) open model with up to a 1M context window, supporting text, images, and audio input.
  • Added Dynamic NVFP4 support for various models including Qwen, Inkling, GLM-4.7 Flash, and Gemma.
  • Enabled AMD users to opt into Vulkan with `UNSLOTH_FORCE_VULKAN=1`.
  • Improved prebuilt resolution via the release-assets CDN to avoid GitHub API rate limits.
  • Added eager attention and trainable FP8 grouped experts for DeepSeek-V4.
  • Auto-detects markers from the tokenizer's chat template for training.
  • Restored the process-global `torch.compile` config on torch 2.12 for gradient-checkpointing backward.
  • Keeps native RoPE scaling when extending context, carrying `rope_theta` for linear scaling.
  • Routes new architectures automatically, including `lfm2_moe` to transformers 5.3.0 and models by `CONFIG_MAPPING_NAMES`.
  • Offers the latest transformers release for brand-new architectures.
  • Fixed KV-cache-aware context buffer sizing for Inkling (TML) support with multi-GPU B200s.
  • Added tool-call healing for Inkling's typed `<|content_invoke_tool_json|>` markers.
  • Added a download-worker `HF_TOKEN` fallback for Inkling.
  • Added numeric reasoning-effort mapping for Inkling.
  • Fixed fast inference on compressed-tensors FP8 models.
  • Restored dropped FP8 `weight_scale_inv` tensors on load.
  • Guarded FP8 Triton launches with tensor device context.
  • Implemented single-pass GGUF export for directly convertible outtypes in `save.py`.
  • Added concise NVFP4 inference errors.
  • Probed xformers support on `sm_120` instead of disabling it by version.
  • Hardened OpenAI-compatible GGUF streaming.
  • Queued local GGUF requests before `llama-server`.
  • The `/v1/messages` endpoint now accepts thinking and null/unknown content blocks, fixing resumed Claude Code / Anthropic sessions.
  • The 'No model loaded' 400 error now hints at Model auto-switch.
  • Studio now auto-loads the last used local model, including GGUF variant.
  • Rendered image content returned by MCP tools.
  • Persistent stdio MCP sessions keep server state across tool calls.
  • Added the `UNSLOTH_SKIP_AUTOSTART` installer flag.
  • The installer now returns proper failure exit codes.
  • Detects Windows Intel GPUs via the registry before WMI.
  • Exposed Windows drive roots in the folder browser.
  • Fixed Studio auto-titles for reasoning models.
  • Fixed user-message overflow for long unb...

🐛 Bug Fixes

  • Fixed the permanent GGUF 'update available' on no-symlink caches.
  • Model state resyncs after a `llama.cpp` update unloads it.
  • Stop now interrupts a `llama.cpp` generation stalled mid-stream.
  • Honor the 'none' gradient-checkpointing option instead of silently forcing 'unsloth'.
  • Force-terminated a stuck training stop after a grace period.
  • Fixed Inkling (TML) support fixes for multi-GPU B200s.
  • Fixed `SyntheticDataKit.chunk_data` emitting chunks over `max_tokens`.
  • Guarded `smart_chunk_text` against `stride >= chunk_size`.
  • Fixed `FastSentenceTransformer` Qwen embedding preprocessing.
  • Switched recipes to a writable artifact path.
  • Fixed the Windows installer torch index override.
  • Installed a torchao Windows ROCm stub in the inference worker.
  • Fixed Studio auto-titles for reasoning models.
  • Fixed user-message overflow for long unb...

Affected Symbols