@@ -920,25 +920,6 @@ static void common_chat_parse_generic(common_chat_msg_parser & builder) {
920920 }
921921}
922922
923- static void common_chat_parse_qwen3_coder_xml (common_chat_msg_parser & builder) {
924- if (!builder.syntax ().parse_tool_calls ) {
925- builder.add_content (builder.consume_rest ());
926- return ;
927- }
928-
929- std::string content = builder.consume_rest ();
930-
931- // Try to parse Qwen3-Coder XML format
932- // For now, use empty tools vector - we'll need to pass tools differently
933- std::vector<common_chat_tool> empty_tools;
934- if (builder.parse_qwen3_xml_tool_call (content, empty_tools)) {
935- // Successfully parsed XML tool call
936- return ;
937- }
938- // If no tool call found, treat as regular content
939- builder.add_content (content);
940- }
941-
942923static common_chat_params common_chat_params_init_mistral_nemo (const common_chat_template & tmpl, const struct templates_params & inputs) {
943924 common_chat_params data;
944925 data.grammar_lazy = inputs.tool_choice != COMMON_CHAT_TOOL_CHOICE_REQUIRED;
@@ -2243,6 +2224,25 @@ static common_chat_params common_chat_params_init_qwen3_coder_xml(const common_c
22432224 return data;
22442225}
22452226
2227+ static void common_chat_parse_qwen3_coder_xml (common_chat_msg_parser & builder) {
2228+ if (!builder.syntax ().parse_tool_calls ) {
2229+ builder.add_content (builder.consume_rest ());
2230+ return ;
2231+ }
2232+
2233+ std::string content = builder.consume_rest ();
2234+
2235+ // Try to parse Qwen3-Coder XML format
2236+ // For now, use empty tools vector - we'll need to pass tools differently
2237+ std::vector<common_chat_tool> empty_tools;
2238+ if (builder.parse_qwen3_xml_tool_call (content, empty_tools)) {
2239+ // Successfully parsed XML tool call
2240+ return ;
2241+ }
2242+ // If no tool call found, treat as regular content
2243+ builder.add_content (content);
2244+ }
2245+
22462246static common_chat_params common_chat_params_init_without_tools (const common_chat_template & tmpl, const struct templates_params & inputs) {
22472247 common_chat_params data;
22482248 data.prompt = apply (tmpl, inputs);
0 commit comments