diff --git a/include/minja/chat-template.hpp b/include/minja/chat-template.hpp index 3bc7c77..8f617db 100644 --- a/include/minja/chat-template.hpp +++ b/include/minja/chat-template.hpp @@ -165,11 +165,12 @@ class chat_template { auto out_empty = try_raw_render(json::array({dummy_user_msg, {{"role", "assistant"}, {"content", ""}}}), {}, false); auto out_null = try_raw_render(json::array({dummy_user_msg, {{"role", "assistant"}, {"content", nullptr}}}), {}, false); caps_.requires_non_null_content = contains(out_empty, user_needle) && !contains(out_null, user_needle); - + + json j_null; auto make_tool_calls_msg = [&](const json & tool_calls) { return json { {"role", "assistant"}, - {"content", caps_.requires_non_null_content? "" : nullptr}, + {"content", caps_.requires_non_null_content? "" : j_null}, {"tool_calls", tool_calls}, }; }; @@ -235,7 +236,7 @@ class chat_template { }; const json tool_call_msg { {"role", "assistant"}, - {"content", caps_.requires_non_null_content ? "" : nullptr}, + {"content", caps_.requires_non_null_content ? "" : j_null}, {"tool_calls", json::array({ { // TODO: detect if requires numerical id or fixed length == 6 like Nemo