]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
vocab : validate default special token ids (#26506)
authorSigbjørn Skjæret <redacted>
Mon, 3 Aug 2026 15:40:53 +0000 (17:40 +0200)
committerGitHub <redacted>
Mon, 3 Aug 2026 15:40:53 +0000 (17:40 +0200)
src/llama-vocab.cpp

index 443cd46408581314cece607cfd712367efdb811d..10032a8c644206bb07f6ae77fc07b761c6690599 100644 (file)
@@ -2532,6 +2532,12 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
             const std::string & key = kv(std::get<0>(it));
             int32_t & id = std::get<1>(it);
 
+            if (id >= 0 && static_cast<size_t>(id) >= id_to_token.size()) {
+                LLAMA_LOG_WARN("%s: default special token '%s' = %d out of vocab range, disabling\n",
+                    __func__, key.c_str(), id);
+                id = LLAMA_TOKEN_NULL;
+            }
+
             uint32_t new_id;
             if (!ml.get_key(std::get<0>(it), new_id, false)) {
                 continue;