@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 7fea7250a4
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 7, 16:30 UTC

[Bug] Fix missing <think> tag after tool call in MiniMax 2.1 (#35352)

Signed-off-by: 冬马 <chenxinke@cai-inc.com> Co-authored-by: 冬马 <chenxinke@cai-inc.com>

stingoChen committed Feb 26, 2026 at 22:11 UTC 7fea7250a46c88c1ba9684d7774d2c4ac17c4b90
1 file changed +6 -1
vllm/reasoning/minimax_m2_reasoning_parser.py
+6 -1
@@ -87,10 +87,15 @@ class MiniMaxM2AppendThinkReasoningParser(ReasoningParser):
87 def __init__(self, tokenizer: TokenizerLike, *args, **kwargs):
88 super().__init__(tokenizer, *args, **kwargs)
89 self.end_token_id = self.vocab.get("</think>")
90 + self.start_token_id = self.vocab.get("<think>")
91
92 def is_reasoning_end(self, input_ids: Sequence[int]) -> bool:
93 end_token_id = self.end_token_id
93 - return any(input_id == end_token_id for input_id in reversed(input_ids))
94 + start_token_id = self.start_token_id
95 + for input_id in reversed(input_ids):
96 + if input_id in (end_token_id, start_token_id):
97 + return input_id == end_token_id
98 + return False
99
100 def extract_content_ids(self, input_ids: list[int]) -> list[int]:
101 return input_ids