[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>
This commit is contained in:
stingoChen
2026-02-26 22:11:07 +08:00
committed by GitHub
parent 845ee348ef
commit 7fea7250a4

View File

@@ -87,10 +87,15 @@ class MiniMaxM2AppendThinkReasoningParser(ReasoningParser):
def __init__(self, tokenizer: TokenizerLike, *args, **kwargs):
super().__init__(tokenizer, *args, **kwargs)
self.end_token_id = self.vocab.get("</think>")
self.start_token_id = self.vocab.get("<think>")
def is_reasoning_end(self, input_ids: Sequence[int]) -> bool:
end_token_id = self.end_token_id
return any(input_id == end_token_id for input_id in reversed(input_ids))
start_token_id = self.start_token_id
for input_id in reversed(input_ids):
if input_id in (end_token_id, start_token_id):
return input_id == end_token_id
return False
def extract_content_ids(self, input_ids: list[int]) -> list[int]:
return input_ids