赞
踩
本文分享学习 huggingface Tokenizers 库记录。我分成了五大主题:
数据用wikitext-103
(516M of text) ,每行一条文本。下载并解压到本地
wget https://s3.amazonaws.com/research.metamind.io/wikitext/wikitext-103-raw-v1.zip
unzip wikitext-103-raw-v1.zip
以BPE tokenizer为例,主要步骤是:实例化 BPE
tokenizer
、BpeTrainer
,调用 tokenizer.train
训练,调用 tokenizer.save
保存成json文件。
from tokenizers import Tokenizer from tokenizers.models import BPE from tokenizers.trainers import BpeTrainer from tokenizers.pre_tokenizers import Whitespace # Step 1:实例化一个空白的BPE tokenizer tokenizer = Tokenizer(BPE(unk_token="[UNK]")) # Step 2:实例化一个BPE tokenizer 的训练器 trainer 这里 special_tokens 的顺序决定了其id排序 trainer = BpeTrainer( special_tokens=["[UNK]", "[CLS]", "[SEP]", "[PAD]", "[MASK]"], min_frequency=1, show_progress=True, vocab_size=40000 ) # Step 3:定义预分词规则(比如以空格预切分) tokenizer.pre_tokenizer = Whitespace() # Step 4:加载数据集 训练tokenizer files = [f"./wikitext-103-raw/wiki.test.raw"] tokenizer.train(files, trainer) # Step 5:保存 tokenizer tokenizer.save("./tokenizer-wiki.json")
训练完后得到一个json文件,里面长这样:
# 加载 tokenzier
tokenizer = Tokenizer.from_file("./tokenizer-wiki.json")
# 使用 tokenizer
sentence = "Hello, y'all! How are you 声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/281446?site
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。