]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
vocab : fix attribute overrides for harmony (#18806)
authorGeorgi Gerganov <redacted>
Tue, 13 Jan 2026 15:40:13 +0000 (17:40 +0200)
committerGitHub <redacted>
Tue, 13 Jan 2026 15:40:13 +0000 (17:40 +0200)
* vocab : fix attribute overrides for harmony

* cont : add warning log

src/llama-vocab.cpp

index a20c6525e46ac35e95c786d08c8e9fe07295fd32..7cde0355e13992d4f6da8a9a81c9e6d405b38c34 100644 (file)
@@ -2436,7 +2436,10 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
             auto & attr = id_to_token[t.second].attr;
 
             if (t.first == "<|channel|>" || t.first == "<|message|>" || t.first == "<|start|>" || t.first == "<|constrain|>") {
-                attr = (llama_token_attr) (attr | LLAMA_TOKEN_ATTR_USER_DEFINED);
+                LLAMA_LOG_WARN("%s: setting token '%s' (%d) attribute to USER_DEFINED (%u), old attributes: %u\n",
+                        __func__, t.first.c_str(), t.second, LLAMA_TOKEN_ATTR_USER_DEFINED, attr);
+
+                attr = LLAMA_TOKEN_ATTR_USER_DEFINED;
             }
         }
 
@@ -2489,7 +2492,7 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
                 special_eog_ids.erase(end_id);
 
                 auto & attr = id_to_token[end_id].attr;
-                attr = (llama_token_attr) (attr | LLAMA_TOKEN_ATTR_USER_DEFINED);
+                attr = LLAMA_TOKEN_ATTR_USER_DEFINED;
 
                 LLAMA_LOG_WARN("%s: special_eog_ids contains both '<|return|>' and '<|call|>', or '<|calls|>' and '<|flush|>' tokens, removing '<|end|>' token from EOG list\n", __func__);
             }