From 5182342e03a002a6d5c061c653b23ab573a4693a Mon Sep 17 00:00:00 2001 From: biondizzle Date: Tue, 14 Apr 2026 00:51:11 +0000 Subject: [PATCH] need partial overlap function from newer utils. just inlined it --- deepseekv32_tool_parser.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/deepseekv32_tool_parser.py b/deepseekv32_tool_parser.py index 887d00a..7446d4e 100644 --- a/deepseekv32_tool_parser.py +++ b/deepseekv32_tool_parser.py @@ -51,11 +51,22 @@ from vllm.tool_parsers.abstract_tool_parser import ( Tool, ToolParser, ) -from vllm.tool_parsers.utils import partial_tag_overlap - logger = init_logger(__name__) +def partial_tag_overlap(text: str, tag: str) -> int: + """Length of the longest prefix of *tag* that matches a suffix of *text*. + + E.g. text ending in ``""``. + Returns 0 when there is no overlap. + """ + max_check = min(len(tag) - 1, len(text)) + for k in range(max_check, 0, -1): + if text.endswith(tag[:k]): + return k + return 0 + + class DeepSeekV32ToolParser(ToolParser): """ Re-parse-and-diff tool parser for DeepSeek-V3.2 DSML format.