cerebras.modelzoo.data_preparation.nlp.tokenizers.BPETokenizer.bytes_to_unicode#

cerebras.modelzoo.data_preparation.nlp.tokenizers.BPETokenizer.bytes_to_unicode()[source]#

Returns list of utf-8 byte and a corresponding list of unicode strings. The reversible bpe codes work on unicode strings. This means you need a large # of unicode characters in your vocab if you want to avoid UNKs. When you’re at something like a 10B token dataset you end up needing around 5K for decent coverage. This is a signficant percentage of your normal, say, 32K bpe vocab. To avoid that, we want lookup tables between utf-8 bytes and unicode strings. And avoids mapping to whitespace/control characters the bpe code barfs on.