Bump llama.cpp to ddd4ec142 (b10217), release v0.8.41 - #81
Merged
Conversation
Maintenance bump from b10178. The range does not break the upstream C API, so no NIF change was required and the public Elixir API is unchanged. Two binding-relevant headers moved, both additive: - include/llama.h: llama_model_params gains a trailing `bool load_mtp` (#26296). The NIF builds params from llama_model_default_params() rather than aggregate-initialising the struct, so the new field takes its upstream default and the addition is source-compatible. A new llama_vocab_get_suppress_tokens accessor (#26276) is unused here. - common/common.h: common_params_sampling::has_logit_bias() was removed alongside the suppress-tokens refactor (#26276), and a test-only common_get_model_or_exit was added (#26317). The binding calls neither and does not use common_params_sampling, so both are inert. ggml.h, ggml-backend.h, ggml-metal.h, chat.h, sampling.h, speculative.h and json-schema-to-grammar.h are untouched in this range. Makefile LLAMA_COMMIT is bumped in lockstep with the submodule so Hex source builds clone the same revision. Verified: NIF rebuilt from source at the new pin; full suite with real GGUF models (smoke + embeddings, dense Llama-3.2-1B) 489 passed, 0 failures; compile --warnings-as-errors, format --check-formatted, credo --strict and hex.build all clean. checksum.exs is intentionally untouched: the precompile workflow's checksum job generates and commits it after the tag push.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Maintenance bump from b10178 (
992c32532) to b10217 (ddd4ec142), 39 commits.This range does not break the upstream C API — no NIF change was required
and the public Elixir API is unchanged.
API compatibility
Two binding-relevant headers moved, both additive:
include/llama.h—llama_model_paramsgains a trailingbool load_mtp,so MTP tensors are only loaded when actually used (llama : load MTP tensors only if they are really used ggml-org/llama.cpp#26296).
The NIF builds its params from
llama_model_default_params()(
c_src/llama_cpp_ex/llama_nif.cpp:329) rather than aggregate-initialising thestruct, so the new field picks up its upstream default — source-compatible, no
change needed. A new
llama_vocab_get_suppress_tokensaccessor(llama: move suppress_tokens handling to common/sampling ggml-org/llama.cpp#26276) is not read by the binding.
common/common.h— the inlinecommon_params_sampling::has_logit_bias()helper was removed alongside the suppress-tokens refactor
(llama: move suppress_tokens handling to common/sampling ggml-org/llama.cpp#26276), and a test-only
common_get_model_or_exitwas added(tests : avoid building get-model.cpp many times ggml-org/llama.cpp#26317). The binding calls neither and does not use
common_params_sampling, so both are inert here.ggml/include/ggml.h,ggml/include/ggml-backend.h,ggml/include/ggml-metal.h,common/chat.h,common/sampling.h,common/speculative.handcommon/json-schema-to-grammar.hare all verified untouched in this range.Changes
vendor/llama.cpp—992c32532→ddd4ec142(tag b10217)Makefile—LLAMA_COMMITbumped in lockstep, so Hex source builds clonethe same revision as a git checkout gets
mix.exs—@version→0.8.41CHANGELOG.md— new## v0.8.41sectionchecksum.exsis intentionally untouched: the precompile workflow'schecksumjob generates it and commits it to
masterafter the tag push.Verification
NIF rebuilt from source at the new pin (
LLAMA_BACKEND=metal), then:489 passed, 0 failures, 21 excluded — matching the b10178 baseline exactly.
Also clean:
mix compile --warnings-as-errors,mix format --check-formatted,mix credo --strict(no issues),mix hex.build.