mirror of
https://github.com/vllm-project/vllm.git
synced 2025-12-06 06:53:12 +08:00
43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
# SPDX-License-Identifier: Apache-2.0
|
|
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
|
|
from vllm.tokenizers import TokenizerLike, TokenizerRegistry
|
|
from vllm.transformers_utils.tokenizer import get_tokenizer
|
|
|
|
|
|
class TestTokenizer(TokenizerLike):
|
|
@classmethod
|
|
def from_pretrained(cls, *args, **kwargs) -> "TestTokenizer":
|
|
return TestTokenizer() # type: ignore
|
|
|
|
@property
|
|
def bos_token_id(self) -> int:
|
|
return 0
|
|
|
|
@property
|
|
def eos_token_id(self) -> int:
|
|
return 1
|
|
|
|
@property
|
|
def pad_token_id(self) -> int:
|
|
return 2
|
|
|
|
@property
|
|
def is_fast(self) -> bool:
|
|
return True
|
|
|
|
|
|
def test_customized_tokenizer():
|
|
TokenizerRegistry.register("test_tokenizer", __name__, TestTokenizer.__name__)
|
|
|
|
tokenizer = TokenizerRegistry.get_tokenizer("test_tokenizer")
|
|
assert isinstance(tokenizer, TestTokenizer)
|
|
assert tokenizer.bos_token_id == 0
|
|
assert tokenizer.eos_token_id == 1
|
|
assert tokenizer.pad_token_id == 2
|
|
|
|
tokenizer = get_tokenizer("test_tokenizer", tokenizer_mode="custom")
|
|
assert isinstance(tokenizer, TestTokenizer)
|
|
assert tokenizer.bos_token_id == 0
|
|
assert tokenizer.eos_token_id == 1
|
|
assert tokenizer.pad_token_id == 2
|