fix(cookbook): pull llama.cpp from the ggml-org GHCR namespace (#4457) (#4490)

The Dependencies tab's llama.cpp docker recipe surfaced
\`docker pull ghcr.io/ggerganov/llama.cpp:server-cuda\`. The upstream
repo moved from github.com/ggerganov/llama.cpp to
github.com/ggml-org/llama.cpp and the old GHCR namespace no longer
publishes images, so copying the recipe failed with:

  failed to resolve reference "ghcr.io/ggerganov/llama.cpp:server-cuda":
  not found

Point the recipe at \`ghcr.io/ggml-org/llama.cpp:server-cuda\`, which is
already the namespace routes/cookbook_routes.py uses for the source
clone. Adds a regression test in the same shape as
test_cookbook_diagnosis_js.py asserting the new namespace and forbidding
the dead one.

No CSS/HTML/SVG/style changes — the file is a pure data module
(no DOM access) consumed by other renderers; only the displayed command
text changes.
This commit is contained in:
Wei Hong
2026-06-19 03:29:47 +08:00
committed by GitHub
parent 7475779b7c
commit a52ac6822b
2 changed files with 28 additions and 1 deletions
+1 -1
View File
@@ -56,7 +56,7 @@ const _RECIPES = [
match: () => true,
variants: {
pip: { commands: ['CMAKE_ARGS="-DGGML_CUDA=on" uv pip install -U "llama-cpp-python[server]"'] },
docker: { commands: ['docker pull ghcr.io/ggerganov/llama.cpp:server-cuda'] },
docker: { commands: ['docker pull ghcr.io/ggml-org/llama.cpp:server-cuda'] },
},
},
];
+27
View File
@@ -0,0 +1,27 @@
"""Guard the llama.cpp Docker pull recipe surfaced in Cookbook → Dependencies.
The upstream repo moved from github.com/ggerganov/llama.cpp to
github.com/ggml-org/llama.cpp. The old GHCR namespace
(ghcr.io/ggerganov/llama.cpp) no longer publishes images, so the
docker variant in the Dependencies panel returned
"failed to resolve reference … not found" when copied verbatim (#4457).
The other llama.cpp reference in routes/cookbook_routes.py already uses
ggml-org; this guards the JS recipe so the two stay aligned.
"""
from pathlib import Path
RECIPES_JS = (
Path(__file__).resolve().parent.parent / "static" / "js" / "cookbook-deps-recipes.js"
)
def test_llama_cpp_docker_recipe_uses_ggml_org_namespace():
source = RECIPES_JS.read_text(encoding="utf-8")
assert "ghcr.io/ggml-org/llama.cpp:server-cuda" in source, (
"Expected the llama.cpp docker recipe to pull from the ggml-org namespace."
)
assert "ghcr.io/ggerganov/llama.cpp" not in source, (
"The ggerganov GHCR namespace no longer publishes llama.cpp images. "
"Use ghcr.io/ggml-org/llama.cpp:server-cuda."
)