From 19b251fe3d26ec9c8df6cb633af9dd196cc6ae18 Mon Sep 17 00:00:00 2001 From: baonudesifeizhai <85092850+baonudesifeizhai@users.noreply.github.com> Date: Wed, 14 Jan 2026 23:05:48 -0500 Subject: [PATCH] Fix optional parameter parsing in MiniMax M2 tool parser #32278 (#32342) Signed-off-by: baonudesifeizhai --- vllm/tool_parsers/minimax_m2_tool_parser.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/vllm/tool_parsers/minimax_m2_tool_parser.py b/vllm/tool_parsers/minimax_m2_tool_parser.py index eb5c46c327..fd8a5f9f25 100644 --- a/vllm/tool_parsers/minimax_m2_tool_parser.py +++ b/vllm/tool_parsers/minimax_m2_tool_parser.py @@ -217,16 +217,13 @@ class MinimaxM2ToolParser(ToolParser): Returns: The converted value """ - if value.lower() == "null": + # Check if the VALUE itself indicates null (not just if null is allowed) + if value.lower() in ("null", "none", "nil"): return None # Normalize types normalized_types = [t.lower() for t in param_types] - # Try null first if it's in the list - if "null" in normalized_types or value.lower() in ("null", "none", "nil"): - return None - # Try each type in order of preference (most specific first, string as fallback) # Priority: integer > number > boolean > object > array > string type_priority = [