@@ -1816,7 +1816,7 @@ static void common_chat_parse_deepseek_v3_1(common_chat_msg_parser & builder) {
18161816
18171817static common_chat_params common_chat_params_init_minimax_m2 (const common_chat_template & tmpl, const struct templates_params & params) {
18181818 common_chat_params data;
1819- data.grammar_lazy = params.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED; ;
1819+ data.grammar_lazy = params.tools . is_array () && !params. tools . empty () && params. tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
18201820
18211821 data.prompt = apply (tmpl, params);
18221822 data.format = COMMON_CHAT_FORMAT_MINIMAX_M2;
@@ -1872,7 +1872,7 @@ static void common_chat_parse_minimax_m2(common_chat_msg_parser & builder) {
18721872
18731873static common_chat_params common_chat_params_init_qwen3_coder_xml (const common_chat_template & tmpl, const struct templates_params & params) {
18741874 common_chat_params data;
1875- data.grammar_lazy = params.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED; ;
1875+ data.grammar_lazy = params.tools . is_array () && !params. tools . empty () && params. tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
18761876
18771877 data.prompt = apply (tmpl, params);
18781878 data.format = COMMON_CHAT_FORMAT_QWEN3_CODER_XML;
@@ -1921,7 +1921,7 @@ static void common_chat_parse_qwen3_coder_xml(common_chat_msg_parser & builder)
19211921
19221922static common_chat_params common_chat_params_init_kimi_k2 (const common_chat_template & tmpl, const struct templates_params & params) {
19231923 common_chat_params data;
1924- data.grammar_lazy = params.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED; ;
1924+ data.grammar_lazy = params.tools . is_array () && !params. tools . empty () && params. tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
19251925
19261926 data.prompt = apply (tmpl, params);
19271927 data.format = COMMON_CHAT_FORMAT_KIMI_K2;
@@ -1979,7 +1979,7 @@ static void common_chat_parse_kimi_k2(common_chat_msg_parser & builder) {
19791979
19801980static common_chat_params common_chat_params_init_apriel_1_5 (const common_chat_template & tmpl, const struct templates_params & params) {
19811981 common_chat_params data;
1982- data.grammar_lazy = params.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED; ;
1982+ data.grammar_lazy = params.tools . is_array () && !params. tools . empty () && params. tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
19831983
19841984 data.prompt = apply (tmpl, params);
19851985 data.format = COMMON_CHAT_FORMAT_APRIEL_1_5;
@@ -2033,7 +2033,7 @@ static void common_chat_parse_apriel_1_5(common_chat_msg_parser & builder) {
20332033
20342034static common_chat_params common_chat_params_init_xiaomi_mimo (const common_chat_template & tmpl, const struct templates_params & params) {
20352035 common_chat_params data;
2036- data.grammar_lazy = params.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED; ;
2036+ data.grammar_lazy = params.tools . is_array () && !params. tools . empty () && params. tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
20372037
20382038 data.prompt = apply (tmpl, params);
20392039 data.format = COMMON_CHAT_FORMAT_XIAOMI_MIMO;
0 commit comments