Kimi K3 + Parallel Chat + Deep Research
Hey everyone! Kimi K3 can now run locally with Unsloth Dynamic GGUFs, Unsloth can keep multiple chats generating in parallel, and the new Deep Research mode plans, reads and cites sources using your local model.
This release also brings better AMD and Intel GPU support, DoRA training, and many installer, MLX, export and inference fixes.
Kimi K3
Moonshot AI’s Kimi K3 is a 2.8T-parameter MoE model with 104B active parameters, native vision support and a 1M context window. Kimi K3 is thinking-only and supports low, high and max reasoning effort.
You can run our Kimi K3 Dynamic GGUFs through Unsloth or llama.cpp. Unsloth automatically detects multi-GPU setups and can offload model layers to system memory.
Kimi K3 is a very large model, so plan your hardware accordingly:
UD-IQ1_Sis 595GB in disk space.UD-Q4_K_XLis 1.51TB in disk space.- For lossless inference, use
UD-Q8_K_XL, which is 1.56TB in disk space.
Read our full Kimi K3 guide and learn more about Unsloth Dynamic 2.0 GGUFs.
Parallel Chat
Unsloth can now run multiple conversations at once. Starting a New Chat leaves the previous answer generating, and each active conversation gets its own progress indicator and Stop control.
- 4 llama-server slots by default, adjustable in the web UI.
- Tools, uploads, self-healing and agents stay isolated between chats.
- Stop one chat without interrupting others or restarting the server.
- Unsloth reduces the slot count when memory is limited.
- Reloading the model still stops active chats after confirmation.
Deep Research
Deep Research turns a local model into a complete research workflow. Give it a question and it will create a plan, search the web, organize the evidence and produce a cited report.
- Review and edit the plan before research begins.
- Follow its progress and collected sources while it works.
- Resume or cancel without losing completed research.
- Allow or block websites to control source selection.
- Sources and citations stay saved with each run.
- Before writing, Unsloth checks for unsupported claims, contradictions and unresolved gaps. Recommendations without direct evidence are marked as testable inferences.
One run can be active per chat. Deep Research currently works with local models. Optional full-page grounding can read top search results into temporary RAG before synthesis; enable it with UNSLOTH_RESEARCH_AUTO_SCRAPE=1. It remains off by default because it adds scraping time and needs additional context.
Improved AMD Support
This update builds on our initial AMD release and setup guide with support for more GPUs and more reliable ROCm inference and training.
- Improved detection for RDNA2, Radeon, Ryzen, Strix Halo and workstation GPUs.
- MI50 and Radeon VII support 16-bit LoRA and full fine-tuning on Linux.
- Fixed 4-bit NaNs, library conflicts and long RDNA startup stalls.
- Unsupported Windows HIP GPUs can fall back to Vulkan.
- Vulkan devices show their real names and can be selected individually.
- Clean Windows installs no longer require Winget or developer tools.
Training, Models and Platform Updates
- Intel XPU enables local chat and training on Intel Arc and Data Center GPUs.
- DoRA is available alongside LoRA and full fine-tuning.
- Large exports can use all visible GPUs to avoid GPU 0 memory limits.
- MLX adds streaming datasets, continued pretraining, callbacks and better VLM and LoRA support.
- Fixed incorrect
flash_attention_2model output. - Unsloth and saving utilities now work without bitsandbytes.
- Fixed
.jsondatasets and Qwen3.5/3.6 MoE and GRPO notebook setup. - Hub download folders are easier to find and open.
- Release notes are available in the Unsloth update popup.
unsloth start --as-subagentlets Codex, Claude Code and Pi delegate tasks to a local Unsloth model.
Updating / installing Unsloth
macOS, Linux, WSL:
curl -fsSL https://unsloth.ai/install.sh | shWindows:
irm https://unsloth.ai/install.ps1 | iexWhat's Changed
- Bump install.sh / install.ps1 pin to unsloth>=2026.7.4 by @danielhanchen in #7263
- Studio: don't let a malformed HF token empty the model picker's Recommended list by @oobabooga in #7266
- Fix local CLI streamed generation error handling by @Lyxot in #7135
- Studio: make tab navigation feel immediate by @oobabooga in #7271
- Feat/model picker per model config v2 by @Sneakr in #7207
- Fix Studio desktop reliability by @wasimysaid in #7255
- Fix resume training crash recovery and MLX checkpoints by @NilayYadav in #6796
- Studio: fix loading split GGUFs from the local HF cache by @oobabooga in #7273
- Show iconless models in Hub feed above likes threshold by @shimmyshimmer in #7284
- Installer: report the installed Unsloth version by @oobabooga in #7265
- Studio: show HF token tick only after validation by @Imagineer99 in #7268
- Installer: enable ROCm torch on RDNA2 (gfx1030-1036) on Windows by @danielhanchen in #7277
- show the mobile sidebar trigger above the chat header by @NilayYadav in #7267
- collapse composer pills to icons on narrow screens by @NilayYadav in #7269
- Add project pinning, Projects list view, and project chat-session fixes by @shimmyshimmer in #7291
- fix(rocm): prepend system ROCm libs on native Linux to avoid bundled HIP crash by @InfoSage05 in #7233
- studio: extend the _grouped_mm null-kernel guard to Linux ROCm RDNA4 (gfx1201) by @danielhanchen in #7292
- Recognize Radeon 8065S (Gorgon Halo / Ryzen AI Max 400) as gfx1151 by @danielhanchen in #7290
- fix(install.ps1): use ordinal IndexOf when stripping index URL credentials by @Solaris-star in #7286
- install.sh: route Strix to the AMD arch index on rocm7.2 (#7264) + PCI detection hint by @danielhanchen in #7293
- Studio: move sidebar search into the header by @shimmyshimmer in #7304
- Studio: reuse MLX prompt cache across turns instead of re-prefilling by @NilayYadav in #7311
- Unsloth start improvements: download progress, server reuse, and safe model switching by @oobabooga in #7313
- Baseline two benign unsloth-zoo test-file findings in scan_packages by @danielhanchen in #7325
- studio: show system-wide VRAM in the multi-GPU System tab view on ROCm by @hakanbaysal in #7216
- studio: classify embedding models from the HF cache and honor offline mode by @hakanbaysal in #7218
- Unsloth start: add local subagents for Claude Code, Codex, OpenCode and Pi by @danielhanchen in #7326
- fix(install): route Strix to AMD gfx index on ROCm 7.14 by @Souravrajvi0 in #7300
- Faster safetensors weight loading on unified-memory (integrated) GPUs by @danielhanchen in #5988
- Studio: lighten chat text weight on Linux to match macOS rendering by @oobabooga in #7308
- Studio: reorder sidebar, rename Hub to Models by @shimmyshimmer in #7327
- Studio: mask AMD GPU pins via ROCR so an unsupported iGPU can't crash llama-server by @guerrieroriccardo in #7272
- fix(install): infer Strix gfx when ROCm runtime is absent by @Souravrajvi0 in #7305
- Studio: calibrate Linux chat typography against macOS by @oobabooga in #7337
- Studio: prevent login error text clipping by @oobabooga in #7343
- Studio: fix stuck composer prompt on first send and unreachable --secure Cloudflare links by @NilayYadav in #7340
- installer: fix false "no GPU detected" on AMD hosts (dead KFD check) + clearer ROCm-less warning by @LeoBorcherding in #7314
- Studio: reject whitespace-only passwords by @NilayYadav in #7341
- Studio: UI font size scales all text consistently without moving layout by @shimmyshimmer in #7355
- Studio: guard project chat rename against IME composition keys by @danielhanchen in #7246
- fix(dataprep): don't emit a degenerate chunk for empty text by @chuenchen309 in #7183
- Studio: fix Connections settings tab overflow in the settings dialog by @danielhanchen in #7241
- Studio: drive UI font size through a typography scale instead of the root font size by @shimmyshimmer in #7359
- Installer: restore interrupted updates and clean stale rollback environments by @oobabooga in #7342
- Studio: add configurable model download location by @oobabooga in #7274
- Studio: add local speech-to-text dictation engine by @shimmyshimmer in #7095
- unsloth start/run: tool-call flags, positional model, and grouped help by @danielhanchen in #7328
- Security audit: refresh scan baselines for current dependency set by @danielhanchen in #7362
- Studio: always show the executed Python script in chat with a download option by @danielhanchen in #7240
- feat(studio): Mac-aware training controls for MLX (optimizers, LoftQ, packing) by @Lyxot in #7358
- Studio: viewport-gated highlight for the executed Python script (follow-up to #7240) by @danielhanchen in #7363
- Studio STT: only load safetensors weights for custom dictation models (RCE fix) by @danielhanchen in #7364
- Bump install.sh / install.ps1 pin to unsloth>=2026.7.5 by @danielhanchen in #7365
- Fix agent launch PWD normalization by @Imagineer99 in #7110
- Studio: fix composer reset after failed send by @NilayYadav in #7377
- fix(studio): show chat sidebar menu on touch devices by @Souravrajvi0 in #7297
- fix(studio): persist connection model selections for remote clients by @Souravrajvi0 in #7298
- fix: pin torchcodec for torch 2.10 and warn on ABI mismatch by @Souravrajvi0 in #7299
- fix(studio): opt-in source-build GPU smoke validation by @Souravrajvi0 in #7322
- fix(studio): resolve bare git on Windows sandbox PATH by @Souravrajvi0 in #7323
- fix(install): show detected distro in sudo apt Accept prompt by @Souravrajvi0 in #7324
- Studio: fail closed on index-referenced nested pickle shards in the offline embedding gate by @danielhanchen in #7366
- Studio whisper: pair slim bundles on the ggml commit, not the full llama tag by @danielhanchen in #7381
- Unsloth start: keep Claude subagents on the local model by @danielhanchen in #7333
- Unsloth start: Fix local subagents in Codex, Claude Code and Pi by @oobabooga in #7329
- unsloth run/start: apply per-model recommended sampling + sampling override flags by @danielhanchen in #7335
- Studio: refine GGUF per-GPU selection (gpu_ids) by @danielhanchen in #7239
- Studio UI test: survive a renderer crash in the voice model-picker step by @danielhanchen in #7389
- Studio: use text-ui-* tokens instead of raw px in the voice tab by @danielhanchen in #7387
- enable studio for intel GPU by @leizhenyuan in #4724
- Studio: register text-ui tokens with tailwind-merge so cn() keeps them by @shimmyshimmer in #7396
- Studio: scan HF cache snapshot loads by their repo id by @danielhanchen in #7398
- Fix ROCm wheel-index unit test: extract the gfx-arch probe helpers get_torch_index_url now calls by @danielhanchen in #7399
- fix(studio): stop false MTP/vision capability reports by @Souravrajvi0 in #7332
- feat(studio): expose full KV cache dtype list in model config UI by @Souravrajvi0 in #7348
- fix(studio/colab): restore blank Colab iframe embed (#7344) by @Souravrajvi0 in #7349
- feat(studio): presets include load settings (#7347) by @Souravrajvi0 in #7352
- feat(studio): add DoRA support to studio by @lzvxck in #7315
- Studio: use Hugeicons AI Security glyph for Run automatically permission by @shimmyshimmer in #7409
- Fix Studio model picker toolbar overflow by @Lyxot in #7403
- Studio: scale menu, toast, chat and composer icons with the UI font size by @shimmyshimmer in #7400
- Studio: prevent empty responses after model thinking by @oobabooga in #7418
- Recipe Studio: full-height canvas and in-app maximize control by @LeoBorcherding in #7394
- Unsloth Studio (desktop): fix canvas preview, download file button, toast placement, and model-load typing lag by @LeoBorcherding in #7391
- Restore the inheritance-before-guard ordering assertion in the gguf order test by @danielhanchen in #7251
- fix(studio): honor run settings on initial model load (#7346) by @Souravrajvi0 in #7351
- Studio: prevent long reasoning from jumping the chat on completion by @oobabooga in #7388
- Studio: reset quantized KV cache to f16 when the flash-attn-off crash-recovery fallback fires by @danielhanchen in #7390
- fix(studio/colab): fix OutStream startup crash and tidy the notebook cards by @danielhanchen in #7404
- tests: anchor the gguf ordering assertion on the branch that owns the marker by @danielhanchen in #7443
- AMD: CI coverage for recent fixes, plus three wrong gfx ids by @LeoBorcherding in #7431
- fix(studio): support hostname-based enterprise proxies by @alkinun in #7416
- Settings: slightly wider and taller dialog by @shimmyshimmer in #7456
- Sidebar: settings gear above the profile in the collapsed rail by @shimmyshimmer in #7458
- Add drag and drop sources to the create project dialog by @shimmyshimmer in #7441
- Settings: match dialog fills to the app shell surfaces by @shimmyshimmer in #7457
- Add Agents settings tab for unsloth start by @shimmyshimmer in #7303
- Studio: fail fast on out-of-disk instead of a doomed llama.cpp source build by @NilayYadav in #7420
- test: fast end-to-end GRPO fast_inference vLLM rollout test by @JoshuaL3000 in #7136
- Studio: reset the reasoning open state when a new stream starts by @danielhanchen in #7444
- studio: shard export checkpoint loads across all visible GPUs by @hakanbaysal in #7215
- install.sh: do not assume sudo consent when there is no terminal by @LeoBorcherding in #7435
- Fix the CPU-only ROCm routing errors and two font-scale UI flakes by @danielhanchen in #7469
- Studio: recover tool-enabled GGUF chats after llama-server exits by @oobabooga in #7424
- Studio: use the UI font scale tokens in the Agents settings tab by @danielhanchen in #7462
- Studio: use the scaling text tokens in the Agents settings tab by @danielhanchen in #7468
- studio/tests: cover the GGUF load ordering behaviourally and make the structlog stub order-independent by @danielhanchen in #7442
- install.sh, setup.sh: apply the no-tty consent fix to the remaining sites by @danielhanchen in #7470
- Import bitsandbytes before the hardware spoof rewrites torch by @danielhanchen in #7471
- Fix PDF-grounded QA recipe for QLoRA by @Etherll in #7107
- Studio: default tool-call permission to Approve for me, prompt only on high-risk actions by @danielhanchen in #7285
- Add interactive Agents command builder by @Imagineer99 in #7312
- Baseline the fastapi SSE keepalive loop after its 0.140.0 rewrite by @danielhanchen in #7480
- Bypass fast_generate for flash_attention_2 models (StaticCache + FA2 produces gibberish) by @pwasiewi in #7429
- fix(studio): reject Vulkan diffusion gpu_ids before Phase 1 teardown by @Souravrajvi0 in #7415
- fix(studio): report Vulkan GPUs in system UI by @alkinun in #7476
- tests: read checked-in files as UTF-8 instead of the platform default by @LeoBorcherding in #7438
- Studio: add Deep Research by @alkinun in #7219
- Studio: add UNSLOTH_STUDIO_DISABLE_PUBLIC_CHECK to switch off the startup public lookups by @LeoBorcherding in #7433
- Fix the wall-clock timeout tests on Python 3.10 by @danielhanchen in #7488
- Pin utf-8 on shipping-code text I/O instead of the operator locale by @danielhanchen in #7486
- Let a decode failure degrade instead of escaping a fail-closed helper by @danielhanchen in #7487
- Remove the no-op rmtree guard around the GGUF save by @vineethsaivs in #7479
- Studio: fetch bare hostnames as https instead of refusing them by @NilayYadav in #7427
- tests: record the gfx1152 llama.cpp bundle gap so the next one is not silent by @danielhanchen in #7491
- unsloth start: keep the local subagent unattended and out of plan mode by @danielhanchen in #7437
- Keep the newer-mapper probe from replacing the installed FP8 mappers by @vineethsaivs in #7478
- Studio: admission control on /v1/messages, slot pool that tracks --parallel by @danielhanchen in #7436
- Keep the newer-mapper probe alive when the fetched mapper has no fp8 tables by @danielhanchen in #7497
- Studio: fix the "No model loaded" error, and optionally auto-download a model named in an API request by @danielhanchen in #7454
- Vulkan GPUs: real device names and selectable ordinals (rebase of #7356 onto #7476) by @danielhanchen in #7498
- AMD: enable ROCm torch on gfx906 (MI50 / Radeon VII) on Linux by @LeoBorcherding in #7354
- Rotate desktop updater signing key by @wasimysaid in #7500
- Studio: Expose GPU memory mode in unsloth run and unsloth start by @oobabooga in #7421
- Studio: tighten the comments added by the OpenAI model-admission work by @danielhanchen in #7501
- avoid Hub metadata probe when loading tokenizers with local_files_only by @Souravrajvi0 in #7482
- gitignore: match the stray "~" TMPDIR dir at any depth, plus /temp/ by @danielhanchen in #7499
- tests: stop the installer constraint test counting occurrences by @danielhanchen in #7503
- Installer: opt-in Vulkan llama.cpp backend (and fallback when no AMD card is HIP-supported) by @Souravrajvi0 in #7373
- docs(studio): fix stale gfx110X example in ROCR masking comments by @LeoBorcherding in #7440
- Studio UI font-scale test: normalise paths so the allowlists work on Windows by @LeoBorcherding in #7434
- Studio voice-tab: use text-ui-* tokens instead of raw px text sizes by @LeoBorcherding in #7378
- Studio: split parallel tool calls for Llama 3.x chat templates by @NilayYadav in #7426
- Fix MLX inference Transformers sidecar activation order by @Lyxot in #7402
- Studio: add option to disable the in-memory API monitor by @gaurav0107 in #7156
- Studio: keep automatic model loading toast visible until completion by @oobabooga in #7425
- Surface actionable installer failures in Studio desktop by @oobabooga in #7529
- Studio: detect an interrupted dependency install instead of launching a backend that cannot import by @danielhanchen in #7492
- Default coding-agent servers to reasoning off by @Imagineer99 in #7521
- Fix Claude client tools under server tool policy by @Imagineer99 in #7518
- Handle llama.cpp tool schema limits by @Imagineer99 in #7512
- Isolate Studio PostCSS configuration by @Imagineer99 in #7513
- Fix Windows Codex temporary home path by @Imagineer99 in #7519
- Remove the transient Studio desktop auth handoff by @wasimysaid in #7542
- feat(studio): run chats in parallel in the Chat tab by @danielhanchen in #7455
- Fix image and file paste in Studio desktop by @wasimysaid in #7543
- Studio: preserve durations across reasoning blocks by @oobabooga in #7520
- Studio: Gate fenced-HTML canvas cards on the Canvas toggle by @NilayYadav in #7514
- Studio: match llama.cpp SWA cache sizing by @oobabooga in #7530
- Installer: name the encoding when syncing the prebuilt marker by @danielhanchen in #7554
- Studio tests: bump the tensor-abort mtime by 1ms so the case runs on Windows by @danielhanchen in #7556
- Studio: keep grouped Python scripts visible and save them natively by @oobabooga in #7528
- Pin utf-8 on the two marker reads/writes added with the Vulkan backend by @danielhanchen in #7507
- perf(studio): remove quadratic region scan in LaTeX preprocessing by @shimmyshimmer in #7538
- Gate the sed commands that run a shell by @danielhanchen in #7483
- Fix Windows no-torch setup by @Imagineer99 in #7511
- Studio: improve Deep Research synthesis by @oobabooga in #7393
- fix(rocm): prefer system LLVM runtime on native Linux by @Oxygen56 in #7448
- Studio: fix macOS titlebar drag and collapsed layout by @wasimysaid in #7555
- fix(studio): stop re-tokenizing the whole code block on every frame while streaming by @shimmyshimmer in #7537
- Studio: run the src-tauri unit tests in CI and fix the two that never ran by @danielhanchen in #7558
- Add Unsloth desktop deep links by @wasimysaid in #7560
- Keep
import unslothworking when bitsandbytes is absent by @danielhanchen in #7502 - Studio: bound how many tool approvals may park their slot by @danielhanchen in #7496
- Windows setup: route the stale-manifest failure through Exit-SetupFailure by @danielhanchen in #7569
- fix: enable XPU support and update hardcoded CUDA selections for tests by @JoshuaL3000 in #7401
- Studio: pass raise_on_error=False on the stdio MCP call path by @NilayYadav in #7517
- Cover the FP8 row-scaling path in the newer-mapper probe by @vineethsaivs in #7516
- Parse a .json dataset file as one JSON document instead of line-by-line by @vineethsaivs in #7422
- feat(studio): adjustable llama-server parallel slots from the web UI by @knamroud in #7447
- Route the stale-manifest abort through Exit-SetupFailure by @danielhanchen in #7570
- Studio: honour LLAMA_ARG_FLASH_ATTN when recording the launched flash-attention state by @danielhanchen in #7557
- amd: require bitsandbytes>=0.50.0 in the amd extra (fixes ROCm 4-bit NaNs) by @LeoBorcherding in #7535
- fix(studio): show the current artifact's source after switching artifacts by @danielhanchen in #7565
- Studio: surface the tool-call nudge in the chat UI by @danielhanchen in #7559
- Studio: free the llama-server slot when a chat stream reaches [DONE] by @danielhanchen in #7564
- Installer: stop requiring a developer toolchain on the consumer path by @danielhanchen in #7547
- Desktop: ask before quitting on top of a running install by @danielhanchen in #7550
- Tests: import bitsandbytes before the GPU-free harness spoofs CUDA by @danielhanchen in #7582
- Gate the torchcodec audio extras to platforms that have a wheel by @danielhanchen in #7587
- Installer: wrap install.sh in a function so a piped install cannot report curl (56) by @danielhanchen in #7548
- Clear ALLOW_BITSANDBYTES when the bitsandbytes native kernels are not real by @danielhanchen in #7578
- Fix bitsandbytes zombie module breaking test collection on CPU runners by @danielhanchen in #7580
- Show release notes in the update popup, sourced from CHANGELOG.md by @shimmyshimmer in #7432
- Studio: read model text as utf-8 so umlauts survive on Windows by @shimmyshimmer in #7467
- Fix the red test on main from the #7578 / #7580 merge interaction by @danielhanchen in #7590
- Studio: make the model download folder reachable from the Hub, and findable in search by @shimmyshimmer in #7466
- Studio: make the sidebar width draggable by @shimmyshimmer in #7561
- Studio: tighten the sidebar pill right inset by @shimmyshimmer in #7562
- Measure where Studio's startup time actually goes by @danielhanchen in #7553
- Windows: unblock the consumer install on clean and no-winget machines by @danielhanchen in #7549
- Studio: make the run settings panel draggable by @shimmyshimmer in #7566
- Studio: Write auth secret files with a trailing newline by @NilayYadav in #7576
- CI: extract Get-HostMachineArch for the VC++ round-trip test by @danielhanchen in #7597
- Run unsloth_cli/tests in Backend CI by @danielhanchen in #7598
- Make the unsloth_cli studio tests pass in isolation by @danielhanchen in #7599
- Studio: reset-password rotates the credential in place instead of deleting auth.db by @NilayYadav in #7573
- Studio: match the Deep research caret to the other composer pills by @shimmyshimmer in #7601
- Studio: Stop every running Unsloth server, not just the last one recorded by @NilayYadav in #7577
- CI: stop printing the reset passphrase into the agent-guides job logs by @danielhanchen in #7603
- Add test to guard against duplicate keys in __INT_TO_FLOAT_MAPPER by @Suchitra-idu in #7419
- Studio: Don't re-prompt finished answers in the tool loop by @NilayYadav in #7505
- Studio: Drop from fetched page main content by @NilayYadav in #7509
- Extract Get-HostMachineArch for the setup.ps1 Pester suite by @danielhanchen in #7606
- Installer: accept wget in studio/setup.sh, as install.sh already does by @danielhanchen in #7600
- unsloth start: harden coding-agent installation by @oobabooga in #7523
- Studio: use local Unsloth logo for Hub fallbacks by @wasimysaid in #7609
- CI: prove the installer works on a machine with no developer toolchain by @danielhanchen in #7551
- Studio: stabilize floating live monitor geometry by @oobabooga in #7579
- Studio: support Vulkan GPU selection and explicit Vulkan installation by @InfoSage05 in #7188
- Use leading-tight on the truncating sidebar model name by @danielhanchen in #7611
- CI: prove an interrupted install can never masquerade as a healthy one by @danielhanchen in #7552
- feat: allow disabling Studio API monitor logs by @Adityai1411 in #7175
- Export ACCELERATE_MIXED_PRECISION when bf16/fp16 is set explicitly (fixes #4891) by @Sekinal in #7534
New Contributors
- @Solaris-star made their first contribution in #7286
- @Souravrajvi0 made their first contribution in #7300
- @guerrieroriccardo made their first contribution in #7272
- @lzvxck made their first contribution in #7315
- @JoshuaL3000 made their first contribution in #7136
- @pwasiewi made their first contribution in #7429
- @Oxygen56 made their first contribution in #7448
- @knamroud made their first contribution in #7447
- @Suchitra-idu made their first contribution in #7419
- @Adityai1411 made their first contribution in #7175
Full Changelog: v0.1.50-beta...v0.1.510-beta
What's Changed in Unsloth-Zoo
- Fix sys.modules leak in offline cross-sync test breaking Core CI by @danielhanchen in unslothai/unsloth-zoo#926
- Harden Mega-cache artifact loading by @Imagineer99 in unslothai/unsloth-zoo#906
- Fix MLX Metal resource-limit crash in finite text training via CPU batch plans and bounded compile signatures by @Lyxot in unslothai/unsloth-zoo#918
- Auto-disable gradient-checkpoint double buffering on unified-memory GPUs by @danielhanchen in unslothai/unsloth-zoo#928
- Fix Gemma 4 audio and forced-float32 PLE dtype mismatches by @Etherll in unslothai/unsloth-zoo#925
- MLX: faithful fused CCE for scaled/transformed output heads, head-eligibility gating, and label smoothing by @Lyxot in unslothai/unsloth-zoo#930
- Fix Gemma-4 vision pooler float16 overflow (26B-A4B / 31B NaN loss) by @danielhanchen in unslothai/unsloth-zoo#931
- Prefer rocBLAS over hipBLASLt on ROCm RDNA to avoid Composable Kernel GEMM JIT stall by @danielhanchen in unslothai/unsloth-zoo#921
- fix: unstack hf_to_vllm_mapper for in-memory LoRA on vLLM >= 0.25.0 and enable XPU by @JoshuaL3000 in unslothai/unsloth-zoo#919
- Fix MLX simulation shim children traversal by @Lyxot in unslothai/unsloth-zoo#934
- feat(mlx): true grad-norm reporting and compiled global-norm clipping with gradient accumulation by @Lyxot in unslothai/unsloth-zoo#922
- Fix CPU MLX shim so output-head resolution tests pass without real MLX by @danielhanchen in unslothai/unsloth-zoo#935
- Fix allocator fragmentation on Windows/WSL and correct the torch 2.10 alloc conf boundary by @danielhanchen in unslothai/unsloth-zoo#933
- Fix CPU MLX shim: drop duplicate Module.children/contains by @danielhanchen in unslothai/unsloth-zoo#938
- Fix Whisper pad token repair by @Etherll in unslothai/unsloth-zoo#936
- feat(mlx): accept bnb_4bit_use_double_quant and cover double-quant loads by @BardiaKoopah in unslothai/unsloth-zoo#911
- fix(mlx): accept Studio VLM singular image batches by @Lyxot in unslothai/unsloth-zoo#894
- Preserve MLX-VLM contracts across supported releases by @Lyxot in unslothai/unsloth-zoo#898
- Fix MLX LoRA for routed SwitchLinear experts by @Lyxot in unslothai/unsloth-zoo#909
- MLX: lazy/streaming dataset support for text and VLM training, length-grouped batching, and background prefetch by @Lyxot in unslothai/unsloth-zoo#927
- feat(mlx): CUDA-parity continued pretraining (embed_tokens / lm_head) by @Lyxot in unslothai/unsloth-zoo#932
- fix(mlx): freeze base when reloading a LoRA adapter for continued training by @Lyxot in unslothai/unsloth-zoo#939
- MLX: bound compiled VLM training signatures with a finite batch plan and shape guard by @Lyxot in unslothai/unsloth-zoo#940
- Preserve MLX-VLM compatibility across 0.4.4–0.6.7 by @Lyxot in unslothai/unsloth-zoo#952
- Tests: unblock MLX CI on Mac by not requiring the fused MRoPE grad to raise by @danielhanchen in unslothai/unsloth-zoo#948
- Fix compiler codegen for a forward hidden behind a bare decorator by @danielhanchen in unslothai/unsloth-zoo#949
- Add HF-style callback support to MLXTrainer by @Lyxot in unslothai/unsloth-zoo#873
- Keep saving_utils importable when bitsandbytes is absent by @danielhanchen in unslothai/unsloth-zoo#953
- hf_utils: unwrap single-adapter peft_config and reject empty model_types by @BardiaKoopah in unslothai/unsloth-zoo#955
- Fix silent embedding corruption in add_new_tokens on padded-vocab mod by @BardiaKoopah in unslothai/unsloth-zoo#923