]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
common : fix double bos, use common_chat_templates for add_bos and add_eos (#15326)
authorDaniel Bevenius <redacted>
Fri, 15 Aug 2025 17:50:52 +0000 (19:50 +0200)
committerGitHub <redacted>
Fri, 15 Aug 2025 17:50:52 +0000 (19:50 +0200)
This commit updates common_chat_templates_apply_jinja to use the
the add_bos and add_eos parameters from the chat template instead of
the inputs.

The motivation for this is that currently if the `add_bos` and `add_eos`
from the input parameters are used it is possible to there will be a
missmatch between the model and the chat template which can lead to the
the removal of duplicate BOS/EOS tokens in chat.cpp `apply` to not
happen leading to two BOS tokens being added to the template.

common/chat.cpp

index 00f30994b5b09054e0e78242ba80f59c614600f0..23d3828f9cc2d7380475265f9978368a66f8a2c3 100644 (file)
@@ -2061,8 +2061,8 @@ static common_chat_params common_chat_templates_apply_jinja(
     params.enable_thinking = inputs.enable_thinking;
     params.grammar = inputs.grammar;
     params.now = inputs.now;
-    params.add_bos = inputs.add_bos;
-    params.add_eos = inputs.add_eos;
+    params.add_bos = tmpls->add_bos;
+    params.add_eos = tmpls->add_eos;
 
     params.extra_context = json::object();
     for (auto el : inputs.chat_template_kwargs) {