训练器
Python
Rust
Node
BpeTrainer
class tokenizers.trainers.BpeTrainer
( )
参数
- vocab_size (
int
, 可选) — 最终词汇表的大小,包括所有标记和字母表。 - min_frequency (
int
, 可选) — 一对为了合并应该具有的最小频率。 - show_progress (
bool
, 可选) — 是否在训练时显示进度条。 - special_tokens (
List[Union[str, AddedToken]]
, 可选) — 模型应该知道的特殊标记列表。 - limit_alphabet (
int
, 可选) — 字母表中要保留的最大不同字符数。 - end_of_word_suffix (
str
, 可选) — 用于每个词尾子词的后缀。 - max_token_length (
int
, 可选) — 阻止创建超过指定大小的token。 这有助于减少像======这样的高度重复token污染你的词表,例如维基百科
能够训练BPE模型的训练器
UnigramTrainer
class tokenizers.trainers.UnigramTrainer
( vocab_size = 8000 show_progress = True special_tokens = [] shrinking_factor = 0.75 unk_token = None max_piece_length = 16 n_sub_iterations = 2 )
参数
- vocab_size (
int
) — 最终词表的规模,包括所有token和字母表。 - show_progress (
bool
) — 是否在训练时显示进度条。 - special_tokens (
List[Union[str, AddedToken]]
) — 模型应该知道的特殊token列表。 - initial_alphabet (
List[str]
) — 要包含在初始字母表中的字符列表,即使在训练数据集中没有看到它们。 如果字符串包含多个字符,则只保留第一个字符。 - shrinking_factor (
float
) — 训练的每个步骤中用于修剪词表的收缩因子。 - unk_token (
str
) — 用于超出词表的token。
能够训练 Unigram 模型的训练器
WordLevelTrainer
WordPieceTrainer
class tokenizers.trainers.WordPieceTrainer
( vocab_size = 30000 min_frequency = 0 show_progress = True special_tokens = [] limit_alphabet = None initial_alphabet = [] continuing_subword_prefix = '##' end_of_word_suffix = None )
参数
- vocab_size (
int
, optional) — 包含所有标记和字母表的最终词汇表的大小。 - min_frequency (
int
, optional) — 为了合并,一对应该具有的最小频率。 - show_progress (
bool
, optional) — 是否在训练时显示进度条。 - initial_alphabet (
List[str]
, 可选) — 要包含在初始字母表中的字符列表,即使在训练数据集中未看到它们。如果字符串包含多个字符,则只保留第一个字符。 - continuing_subword_prefix (
str
, 可选) — 用于所有不是词首的子词的前缀。 - end_of_word_suffix (
str
, 可选) — 用于所有是词尾的子词的后缀。
能够训练 WordPiece 模型的训练器