From 934478ae317d337bc89887eb445df533de42b40b Mon Sep 17 00:00:00 2001 From: Daniel Han Date: Thu, 2 Apr 2026 11:52:37 -0700 Subject: [PATCH] fix(studio): revert llama.cpp default tag to latest (#4797) * fix(studio): revert llama.cpp default tag to latest The latest ggml-org/llama.cpp release (b8637) now includes Gemma 4 support. Revert the temporary "b8637" pin from #4796 to "latest" so the prebuilt resolver always picks the newest release automatically without needing manual tag bumps. * docs: add comment explaining latest vs master for llama.cpp tag Document in all three files why "latest" is preferred over "master" and when "master" should be used as a temporary override. --------- Co-authored-by: Daniel Han --- studio/install_llama_prebuilt.py | 6 +++++- studio/setup.ps1 | 6 +++++- studio/setup.sh | 7 ++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/studio/install_llama_prebuilt.py b/studio/install_llama_prebuilt.py index 9fe5b55e9f..1b02729649 100755 --- a/studio/install_llama_prebuilt.py +++ b/studio/install_llama_prebuilt.py @@ -60,7 +60,11 @@ def env_int(name: str, default: int, *, minimum: int | None = None) -> int: return value -DEFAULT_LLAMA_TAG = os.environ.get("UNSLOTH_LLAMA_TAG", "b8637") +# Prefer "latest" over "master" -- "master" bypasses the prebuilt resolver +# (no matching GitHub release), forces a source build, and causes HTTP 422 +# errors. Only use "master" temporarily when the latest release is missing +# support for a new model architecture. +DEFAULT_LLAMA_TAG = os.environ.get("UNSLOTH_LLAMA_TAG", "latest") # Force all installs to use mainline llama.cpp from ggml-org. # Previously: DEFAULT_PUBLISHED_REPO = os.environ.get("UNSLOTH_LLAMA_RELEASE_REPO", "unslothai/llama.cpp") DEFAULT_PUBLISHED_REPO = "ggml-org/llama.cpp" diff --git a/studio/setup.ps1 b/studio/setup.ps1 index 47d7f0ee55..d478319098 100644 --- a/studio/setup.ps1 +++ b/studio/setup.ps1 @@ -27,9 +27,13 @@ $PackageDir = Split-Path -Parent $ScriptDir # Change these in the GitHub-hosted script so users get updated defaults. # User env vars always override these baked-in values. # -------------------------------------------------------------------------- +# Prefer "latest" over "master" -- "master" bypasses the prebuilt resolver +# (no matching GitHub release), forces a source build, and causes HTTP 422 +# errors. Only use "master" temporarily when the latest release is missing +# support for a new model architecture. $DefaultLlamaPrForce = "" $DefaultLlamaSource = "https://github.com/ggml-org/llama.cpp" -$DefaultLlamaTag = "b8637" +$DefaultLlamaTag = "latest" # Verbose can be enabled either by CLI flag or by UNSLOTH_VERBOSE=1. $script:UnslothVerbose = ($env:UNSLOTH_VERBOSE -eq '1') diff --git a/studio/setup.sh b/studio/setup.sh index 4e7bd366ef..d9ce73661f 100755 --- a/studio/setup.sh +++ b/studio/setup.sh @@ -16,10 +16,15 @@ RULE=$(printf '\342\224\200%.0s' {1..52}) # _DEFAULT_LLAMA_SOURCE : git clone URL for source builds # _DEFAULT_LLAMA_TAG : llama.cpp ref to build ("latest" = newest release, # "master" = bleeding-edge, "bNNNN" = specific tag) +# Prefer "latest" over "master" -- "master" bypasses +# the prebuilt resolver (no matching GitHub release), +# forces a source build, and causes HTTP 422 errors. +# Only use "master" temporarily when the latest release +# is missing support for a new model architecture. # ────────────────────────────────────────────────────────────────────────── _DEFAULT_LLAMA_PR_FORCE="" _DEFAULT_LLAMA_SOURCE="https://github.com/ggml-org/llama.cpp" -_DEFAULT_LLAMA_TAG="b8637" +_DEFAULT_LLAMA_TAG="latest" # ── Colors (same palette as startup_banner / install_python_stack) ── if [ -n "${NO_COLOR:-}" ]; then