main
py 20 lines 746 Bytes
Raw
1 # SPDX-License-Identifier: Apache-2.0
2 # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
4 from vllm.entrypoints.openai.chat_completion.protocol import (
5 ChatCompletionRequest,
6 )
7 from vllm.entrypoints.openai.responses.protocol import ResponsesRequest
8 from vllm.parser.engine.registered_adapters import KimiK2ParserToolAdapter
9
10
11 class KimiK2ToolParser(KimiK2ParserToolAdapter): # type: ignore[valid-type, misc]
12 structural_tag_model = "kimi"
13
14 def adjust_request(
15 self,
16 request: ChatCompletionRequest | ResponsesRequest,
17 ) -> ChatCompletionRequest | ResponsesRequest:
18 if request.tools and request.tool_choice != "none":
19 request.skip_special_tokens = False
20 return request