Use llama serve in Jobs serving guide (llama.cpp unified CLI)#2593
Conversation
Switches the llama.cpp section of the Jobs serving guide from the standalone `llama-server` binary to the unified `llama serve` command, per review feedback on huggingface#2554. `llama serve` and `llama-server` are the same server (the unified `llama` CLI, ggml-org/llama.cpp#23875). The unified binary ships in the `full-cuda` image; the `server-cuda` image only contains `/app/llama-server`, so the image changes too. Tested on live Jobs (full-cuda + a10g-small): both the `-hf` and the volume-mounted `--model` forms reached ready and returned completions through the exposed-port proxy. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update. |
| ... ghcr.io/ggml-org/llama.cpp:full-cuda -- \ | ||
| ... /app/llama serve -hf ggml-org/gemma-4-E4B-it-GGUF \ |
There was a problem hiding this comment.
Ah, I just verified it and the llama binary is indeed included in the full-cuda image (6.58 GB in my system) but not in the server-cuda one (4.35 GB). I wonder if we should include llama in server builds as well (but not all the other binaries/utilities that come with the full package).
There was a problem hiding this comment.
let's go llama everywhere by default then ?
There was a problem hiding this comment.
will hold off merging this for now to switch back to the lighter image
There was a problem hiding this comment.
For this particular use case (optimized server image), I'd include the same stuff we do now, but also a llama binary if that's possible. So calling llama serve will work, it's ok that llama cli doesn't, imo.
There was a problem hiding this comment.
let's go
llamaeverywhere by default then ?
Forgot it was already enabled by default 😅
There was a problem hiding this comment.
can you check if it's in the latest server-cuda images?
…ama.cpp#25035) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Verified directly by running the latest image on a Job: Switched back to the server image. IMO can merge now? |
Follow-up to #2554 addressing @julien-c's review feedback: push the new unified
llama servecommand instead of the standalonellama-server.What changed
The llama.cpp section now uses
llama serveon thefull-cudaimage (both the-hfexample and the volume-mount tip), with the surrounding prose and warning updated to match.Why the image also changed
llama serveandllama-serverare the same server — the unifiedllamaCLI (ggml-org/llama.cpp#23875, "git commitvsgit-commit"). But the unifiedllamabinary only ships in thefull-cudaimage;server-cudacontains only/app/llama-server. So usingllama serverequiresfull-cuda— a ~1 GB larger pull (3.6 GB vs 2.6 GB compressed). Startup is dominated by the model download/load, which is unchanged, so the "a few minutes" framing still holds.Tested
Ran on live Jobs (
full-cuda+a10g-small):llama serve -hf ggml-org/gemma-4-E4B-it-GGUF --host 0.0.0.0 --port 8080 -ngl 99→ server reached ready, returned a completion through the exposed-port proxy with a Bearer token.--model /model/...ggufvariant → ready in ~40s (nothing to download), completion returned.🤖 Generated with Claude Code
Note
Low Risk
Documentation-only wording and example command updates with no runtime or security impact.
Overview
Updates the Serve GGUF models with llama.cpp section in
jobs-serving.mdto document llama.cpp’s unifiedllama serveentry point instead of the standalonellama-server.Prose, the main
-hfjob example, the volume-mount tip, and the0.0.0.0warning now refer tollama serveand use/app/llama servein the sample commands; server flags and theghcr.io/ggml-org/llama.cpp:server-cudaimage tag in the snippets are unchanged in this diff.Reviewed by Cursor Bugbot for commit 3f9c7ac. Bugbot is set up for automated code reviews on this repo. Configure here.