from tokenizers import Tokenizer import re def create_bpe(): tokenizer = Tokenizer.from_pretrained("Shu-vi/Russian_BPE_Tokenizer_16k") def _inner(text: str): return tokenizer.encode(text).tokens return _inner def tokenize_naive(text: str): # Простая токенизация по пробелам (и отделяем лишние пунктуации у концов) parts = text.split() tokens = [p.strip("«»()[]{}.,:;!?\"'“”—–…") for p in parts if p.strip("«»()[]{}.,:;!?\"'“”—–…")] return tokens def tokenize_regex(text: str): return re.compile(r"[A-Za-zА-Яа-яЁё]+(?:[-'][A-Za-zА-Яа-яЁё]+)*", flags=re.UNICODE).findall(text)