tokenizerによるエンコード
#ByteLevelBPETokenizer の encode を呼び出す
ByteLevelBPETokenizerはロードしている
#BaseTokenizer_(huggingface/tokenizers) で ラップしたTokenizerのencodeを呼び出している
return self._tokenizer.encode(...)
https://github.com/huggingface/tokenizers/blob/v0.12.0/bindings/python/py_src/tokenizers/implementations/base_tokenizer.py#L216
Encodingオブジェクトが返る
ref: https://huggingface.co/docs/tokenizers/python/master/api/reference.html#tokenizers.Tokenizer.encode
Encoding.tokensで人間が解釈できる表示となる
https://huggingface.co/docs/tokenizers/python/master/api/reference.html#tokenizers.Encoding.tokens
BERT向けに開始トークンと終了トークンを追加する
tokenizer._tokenizer.post_processor = BertProcessing(...)
Tokenizerのpost_processor属性に
https://huggingface.co/docs/tokenizers/python/master/api/reference.html#tokenizers.Tokenizer.post_processor
BertProcessingオブジェクトを代入
https://huggingface.co/docs/tokenizers/python/master/api/reference.html#tokenizers.processors.BertProcessing
SEPとCLSのトークンを指定
指定の仕方はタプルで("トークン", ID)
BaseTokenizerの実装を見ると、直接指定できる
https://github.com/huggingface/tokenizers/blob/v0.12.0/bindings/python/py_src/tokenizers/implementations/base_tokenizer.py#L403-L405
enable_truncation
https://github.com/huggingface/tokenizers/blob/v0.12.0/bindings/python/py_src/tokenizers/implementations/base_tokenizer.py#L112-L128
https://huggingface.co/docs/tokenizers/python/master/api/reference.html#tokenizers.Tokenizer.enable_truncation を呼び出している