Skip to content

Commit 54f128a

Browse files
committed
compatibility with the new reasoning-budget parameter
1 parent d585a14 commit 54f128a

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

common/chat.cpp

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1506,12 +1506,15 @@ static void common_chat_parse_functionary_v3_1_llama_3_1(common_chat_msg_parser
15061506
static common_chat_params common_chat_params_init_hermes_2_pro(const common_chat_template & tmpl, const struct templates_params & inputs) {
15071507
common_chat_params data;
15081508

1509-
data.prompt = apply(tmpl, inputs, /* messages_override =*/ std::nullopt, /* tools_override= */ std::nullopt, json {
1509+
json extra_context = json {
15101510
{"enable_thinking", inputs.enable_thinking},
1511-
});
1511+
};
1512+
extra_context.update(inputs.extra_context);
1513+
1514+
data.prompt = apply(tmpl, inputs, /* messages_override =*/ std::nullopt, /* tools_override= */ std::nullopt, extra_context);
15121515
data.format = COMMON_CHAT_FORMAT_HERMES_2_PRO;
15131516
if (string_ends_with(data.prompt, "<think>\n")) {
1514-
if (!inputs.enable_thinking) {
1517+
if (!extra_context["enable_thinking"]) {
15151518
data.prompt += "</think>";
15161519
} else {
15171520
data.thinking_forced_open = true;
@@ -1729,6 +1732,7 @@ static common_chat_params common_chat_templates_apply_jinja(
17291732
params.grammar = inputs.grammar;
17301733
params.now = inputs.now;
17311734

1735+
params.extra_context = json::object();
17321736
for (auto el : inputs.chat_template_kwargs) {
17331737
params.extra_context[el.first] = json::parse(el.second);
17341738
}

0 commit comments

Comments
 (0)