Skip to content

Commit f75b830

Browse files
authored
chat : include kwargs in template example (#15309)
1 parent 7a0de96 commit f75b830

File tree

5 files changed

+8
-6
lines changed

5 files changed

+8
-6
lines changed

common/chat.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,11 +473,12 @@ std::string common_chat_format_single(
473473
return ss.str();
474474
}
475475

476-
std::string common_chat_format_example(const struct common_chat_templates * tmpls, bool use_jinja) {
476+
std::string common_chat_format_example(const struct common_chat_templates * tmpls, bool use_jinja, const std::map<std::string, std::string> & chat_template_kwargs) {
477477
common_chat_templates_inputs inputs;
478478
inputs.use_jinja = use_jinja;
479479
inputs.add_bos = tmpls->add_bos;
480480
inputs.add_eos = tmpls->add_eos;
481+
inputs.chat_template_kwargs = chat_template_kwargs;
481482
auto add_simple_msg = [&](auto role, auto content) {
482483
common_chat_msg msg;
483484
msg.role = role;

common/chat.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,8 @@ std::string common_chat_format_single(
187187
// Returns an example of formatted chat
188188
std::string common_chat_format_example(
189189
const struct common_chat_templates * tmpls,
190-
bool use_jinja);
190+
bool use_jinja,
191+
const std::map<std::string, std::string> & chat_template_kwargs);
191192

192193
const char* common_chat_format_name(common_chat_format format);
193194
const char* common_reasoning_format_name(common_reasoning_format format);

tools/main/main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ int main(int argc, char ** argv) {
220220
LOG_WRN("*** User-specified prompt will pre-start conversation, did you mean to set --system-prompt (-sys) instead?\n");
221221
}
222222

223-
LOG_INF("%s: chat template example:\n%s\n", __func__, common_chat_format_example(chat_templates.get(), params.use_jinja).c_str());
223+
LOG_INF("%s: chat template example:\n%s\n", __func__, common_chat_format_example(chat_templates.get(), params.use_jinja, params.default_template_kwargs).c_str());
224224
} else {
225225
LOG_INF("%s: in-suffix/prefix is specified, chat template will be disabled\n", __func__);
226226
}

tools/mtmd/mtmd-cli.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ struct mtmd_cli_context {
108108
}
109109

110110
tmpls = common_chat_templates_init(model, params.chat_template);
111-
LOG_INF("%s: chat template example:\n%s\n", __func__, common_chat_format_example(tmpls.get(), params.use_jinja).c_str());
111+
LOG_INF("%s: chat template example:\n%s\n", __func__, common_chat_format_example(tmpls.get(), params.use_jinja, params.default_template_kwargs).c_str());
112112

113113
init_vision_context(params);
114114

tools/server/server.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2053,7 +2053,7 @@ struct server_context {
20532053

20542054
chat_templates = common_chat_templates_init(model, params_base.chat_template);
20552055
try {
2056-
common_chat_format_example(chat_templates.get(), params.use_jinja);
2056+
common_chat_format_example(chat_templates.get(), params.use_jinja, params.default_template_kwargs);
20572057
} catch (const std::exception & e) {
20582058
SRV_WRN("%s: Chat template parsing error: %s\n", __func__, e.what());
20592059
SRV_WRN("%s: The chat template that comes with this model is not yet supported, falling back to chatml. This may cause the model to output suboptimal responses\n", __func__);
@@ -5075,7 +5075,7 @@ int main(int argc, char ** argv) {
50755075
// print sample chat example to make it clear which template is used
50765076
LOG_INF("%s: chat template, chat_template: %s, example_format: '%s'\n", __func__,
50775077
common_chat_templates_source(ctx_server.chat_templates.get()),
5078-
common_chat_format_example(ctx_server.chat_templates.get(), ctx_server.params_base.use_jinja).c_str());
5078+
common_chat_format_example(ctx_server.chat_templates.get(), ctx_server.params_base.use_jinja, ctx_server.params_base.default_template_kwargs).c_str());
50795079

50805080
ctx_server.queue_tasks.on_new_task([&ctx_server](server_task && task) {
50815081
ctx_server.process_single_task(std::move(task));

0 commit comments

Comments
 (0)