Dziś publikuję mój pierwszy post na blogu: Tokenizacja z pierwszych zasad. Zbudowałem tokenizer BPE na poziomie bajtów z pre-tokenizacją w Rust i osiągnąłem prędkość kodowania porównywalną z tokenizerami huggingface. Prezentuję pomysły i algorytmy, w tym niuanse implementacji, takie jak użycie pamięci podręcznej LRU i listy podwójnie powiązanej. Na tej podstawie idę dalej. Większość tokenizerów po prostu dzieli tekst według regex, zachowując łączenia w obrębie słów, możemy zrobić lepiej. Osiągnąłem o 20% bardziej efektywne szkolenie LLM z SuperBPE. Demonstruję, jak wdrożyć SuperBPE w późnym etapie szkolenia, co pozwala na łączenie słów przy tej samej stracie na bajt podczas szkolenia. Wykresy + kod + link w odpowiedzi.