File size: 1,039 Bytes
17e7017
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import sentencepiece as spm

# Загрузка пользовательских символов
with open("user_defined_symbols.txt", "r", encoding="utf-8") as f:
    symbols = [line.strip() for line in f if line.strip()]

# Параметры модели
lang = "kyrgyz"
model_type = "unigram" # "bpe", "unigram", "bpe", "char", "word"
vocab_size = 51200 # Размер словаря (количество токенов)
model_prefix = f"models/{lang}_{model_type}_{vocab_size}"

print(f"Количество пользовательских символов: {len(symbols)}")
print(f"Пользовательские символы: {symbols}")
print(f"Итоговый префикс: {model_prefix}")

# Тренировка
spm.SentencePieceTrainer.train(
    input="kyrgyz_clean_sentences.txt",
    model_prefix=model_prefix,
    vocab_size=vocab_size,
    model_type=model_type,
    character_coverage=1.0,
    pad_id=0,
    unk_id=1,
    bos_id=2,
    eos_id=3,
    user_defined_symbols=symbols
)