Skip to content

Conversation

@wannaphong
Copy link

@wannaphong wannaphong commented Feb 16, 2025

From BlinkDL/RWKV-LM#286, I was add Thai tokens to tokenizer. I used Qwen 2.5 tokenizer to get Thai tokens.

GitHub: https://github.com/PyThaiNLP/improve-thai-rwkv-tokenizer

Benchmark 12700 tokens...
Encode 0.124 MB/s
Decode 6.881 MB/s
Encode 0.599 MB/s
Decode 7.164 MB/s
Unit test...
All OK

Test: https://github.com/PyThaiNLP/improve-thai-rwkv-tokenizer/blob/main/test.ipynb

@wannaphong
Copy link
Author

Test

    ๏ แผ่นดินฮั่นเสื่อมโทรมแสนสังเวช  พระปกเกศกองบู๊กู้ขึ้นใหม่
  สิบสองกษัตริย์ก่อนหน้าแลถัดไป       สององค์ไซร้โง่เขลาเบาปัญญา
    ทรงนับถือขันทีเป็นที่พึ่ง           บ้านเมืองจึงวิปริตเป็นนักหนา
  โฮจิ๋นเรียกทัพทั่วหัวเมืองมา         หมายจะฆ่ามดชั่วตัวสำคัญ
    เหมือนขับไสไล่เสือจากเคหา      รับหมาป่าเข้ามาเลยอาสัญ
  ฝ่ายอ้องอุ้นยุแยกให้แตกกัน          ใช้สาวนั้นเป็นชนวนชื่นชวนใจ
    พลันลิฉุยกุยกีกลับก่อเหตุ          ช่างอาเพศจริงหนาฟ้าร้องไห้
  ต้องรบราฆ่าฟันจนบรรลัย           ฤๅหาใครค้ำชูกู้บรรลังก์ ฯ

512 chars

rwkv_vocab_v20230424.txt

'    '19250 b'\xe0\xb9'2993 b'\x8f'144 ' '33 'แ'9640 'ผ'9617 '่'9645 'น'9614 'ด'9609 'ิ'9634 'น'9614 b'\xe0\xb8'2992 b'\xae'175 'ั'9631 '่'9645 'น'9614 'เ'9639 'ส'9627 'ื่'43267 'อ'9629 'ม'9620 'โ'9641 'ท'9612 'ร'9622 'ม'9620 'แ'9640 'ส'9627 'น'9614 'ส'9627 'ั'9631 'ง'9604 'เ'9639 'ว'9624 'ช'9606 '  '267 'พ'9618 'ระ'43262 'ป'9616 'ก'9601 'เ'9639 'ก'9601 'ศ'9625 'ก'9601 'อง'43263 'บ'9615 'ู'9638 b'\xe0\xb9'2993 b'\x8a'139 'ก'9601 'ู'9638 '้'9646 'ข'9602 b'\xe0\xb8'2992 b'\xb6'183 '้'9646 'น'9614 'ใ'9642 'ห'9628 'ม'9620 '่'9645 '\n  '3331 'ส'9627 'ิ'9634 'บ'9615 'ส'9627 'อง'43263 'ก'9601 'ษ'9626 'ั'9631 'ต'9610 'ร'9622 'ิ'9634 'ย'9621 '์'9647 'ก'9601 '่'9645 'อ'9629 'น'9614 'ห'9628 'น'9614 '้า'43269 'แ'9640 'ล'9623 'ถ'9611 'ั'9631 'ด'9609 'ไ'9643 'ป'9616 '       '43914 'ส'9627 'อง'43263 'อง'43263 'ค'9603 '์'9647 'ไ'9643 b'\xe0\xb8'2992 b'\x8b'140 'ร'9622 '้'9646 'โ'9641 'ง'9604 '่'9645 'เ'9639 'ข'9602 'ล'9623 'า'9632 'เ'9639 'บ'9615 'า'9632 'ป'9616 'ั'9631 'ญ'9607 'ญ'9607 'า'9632 '\n    '28352 'ท'9612 'ร'9622 'ง'9604 'น'9614 'ั'9631 'บ'9615 'ถ'9611 'ื'9636 'อ'9629 'ข'9602 'ั'9631 'น'9614 'ท'9612 'ี'9635 'เ'9639 'ป'9616 '็'9644 'น'9614 'ที่'58514 'พ'9618 b'\xe0\xb8'2992 b'\xb6'183 '่'9645 'ง'9604 '           '61274 'บ'9615 '้า'43269 'น'9614 'เ'9639 'ม'9620 'ื'9636 'อง'43263 'จ'9605 b'\xe0\xb8'2992 b'\xb6'183 'ง'9604 'ว'9624 'ิ'9634 'ป'9616 'ร'9622 'ิ'9634 'ต'9610 'เ'9639 'ป'9616 '็'9644 'น'9614 'น'9614 'ั'9631 'ก'9601 'ห'9628 'น'9614 'า'9632 '\n  '3331 'โ'9641 b'\xe0\xb8'2992 b'\xae'175 'จ'9605 'ิ'9634 b'\xe0\xb9'2993 b'\x8b'140 'น'9614 'เ'9639 'ร'9622 'ี'9635 'ย'9621 'ก'9601 'ท'9612 'ั'9631 'พ'9618 'ท'9612 'ั'9631 '่'9645 'ว'9624 'ห'9628 'ั'9631 'ว'9624 'เ'9639 'ม'9620 'ื'9636 'อง'43263 'ม'9620 'า'9632 '         '54810 'ห'9628 'ม'9620 'า'9632 'ย'9621 'จ'9605 'ะ'9630 b'\xe0\xb8'2992 b'\x86'135 '่'9645 'า'9632 'ม'9620 'ด'9609 'ช'9606 'ั'9631 '่'9645 'ว'9624 'ต'9610 'ั'9631 'ว'9624 'ส'9627 'ำ'9633 'ค'9603 'ั'9631 'ญ'9607 '\n    '28352 'เ'9639 'ห'9628 'ม'9620 'ื'9636 'อ'9629 'น'9614 'ข'9602 'ั'9631 'บ'9615 'ไ'9643 'ส'9627 'ไ'9643 'ล'9623 '่'9645 'เ'9639 'ส'9627 'ื'9636 'อ'9629 'จ'9605 'า'9632 'ก'9601 'เ'9639 'ค'9603 'ห'9628 'า'9632 '      '36216 'ร'9622 'ั'9631 'บ'9615 'ห'9628 'ม'9620 'า'9632 'ป'9616 '่'9645 'า'9632 'เ'9639 'ข'9602 '้า'43269 'ม'9620 'า'9632 'เ'9639 'ล'9623 'ย'9621 'อ'9629 'า'9632 'ส'9627 'ั'9631 'ญ'9607 '\n  '3331 b'\xe0\xb8'2992 b'\x9d'158 '่'9645 'า'9632 'ย'9621 'อ'9629 '้'9646 'อง'43263 'อ'9629 'ุ'9637 '้'9646 'น'9614 'ย'9621 'ุ'9637 'แ'9640 'ย'9621 'ก'9601 'ใ'9642 'ห'9628 '้'9646 'แ'9640 'ต'9610 'ก'9601 'ก'9601 'ั'9631 'น'9614 '          '58655 'ใ'9642 'ช'9606 '้'9646 'ส'9627 'า'9632 'ว'9624 'น'9614 'ั'9631 '้'9646 'น'9614 'เ'9639 'ป'9616 '็'9644 'น'9614 'ช'9606 'น'9614 'ว'9624 'น'9614 'ช'9606 'ื่'43267 'น'9614 'ช'9606 'ว'9624 'น'9614 'ใ'9642 'จ'9605 '\n    '28352 'พ'9618 'ล'9623 'ั'9631 'น'9614 'ล'9623 'ิ'9634 b'\xe0\xb8'2992 b'\x89'138 'ุ'9637 'ย'9621 'ก'9601 'ุ'9637 'ย'9621 'ก'9601 'ี'9635 'ก'9601 'ล'9623 'ั'9631 'บ'9615 'ก'9601 '่'9645 'อ'9629 'เ'9639 'ห'9628 'ต'9610 'ุ'9637 '          '58655 'ช'9606 '่'9645 'าง'43264 'อ'9629 'า'9632 'เ'9639 'พ'9618 'ศ'9625 'จ'9605 'ร'9622 'ิ'9634 'ง'9604 'ห'9628 'น'9614 'า'9632 b'\xe0\xb8'2992 b'\x9f'160 '้า'43269 'ร'9622 '้'9646 'อง'43263 'ไ'9643 'ห'9628 '้'9646 '\n  '3331 'ต'9610 '้'9646 'อง'43263 'ร'9622 'บ'9615 'ร'9622 'า'9632 b'\xe0\xb8'2992 b'\x86'135 '่'9645 'า'9632 b'\xe0\xb8'2992 b'\x9f'160 'ั'9631 'น'9614 'จ'9605 'น'9614 'บ'9615 'ร'9622 'ร'9622 'ล'9623 'ั'9631 'ย'9621 '           '61274 b'\xe0\xb8'2992 b'\xa4'165 b'\xe0\xb9'2993 b'\x85'134 'ห'9628 'า'9632 'ใ'9642 'ค'9603 'ร'9622 'ค'9603 '้'9646 'ำ'9633 'ช'9606 'ู'9638 'ก'9601 'ู'9638 '้'9646 'บ'9615 'ร'9622 'ร'9622 'ล'9623 'ั'9631 'ง'9604 'ก'9601 '์'9647 ' '33 b'\xe0\xb8'2992 b'\xaf'176 

430 tokens

rwkv_vocab_v20250216.txt

'    '19314 '๏'19277 ' '33 'แผ่น'65549 'ดิน'59528 'ฮ'19284 'ั'9631 '่น'44272 'เส'44277 'ื่อ'59431 'ม'9620 'โทร'59492 'ม'9620 'แสน'59726 'สัง'59680 'เว'44380 'ช'9606 '  '267 'พระ'59426 'ปก'44178 'เก'44076 'ศ'9625 'กอง'59577 'บู'44059 '๊'19253 'ก'9601 'ู้'44243 'ขึ้น'65306 'ใหม่'65641 '\n  '3331 'สิ'44056 'บ'9615 'สอง'59676 'ก'9601 'ษ'9626 'ั'9631 'ตร'44159 'ิ'9634 'ย์'44202 'ก่อนหน้า'67867 'แล'44328 'ถ'9611 'ัด'44186 'ไป'44326 '       '44412 'สอง'59676 'องค์'65561 'ไซ'44379 'ร'9622 '้'9646 'โ'9641 'ง'9604 '่'9645 'เข'44102 'ลา'44228 'เบา'59564 'ปัญญา'66884 '\n    '28423 'ทรง'59376 'นับ'59309 'ถือ'59473 'ขั'44065 'น'9614 'ที'44237 'เป็นที่'67651 'พ'9618 'ึ่ง'59384 '           '62422 'บ้าน'65535 'เมือง'66957 'จึง'59675 'วิ'44034 'ปริ'59435 'ต'9610 'เป็น'65571 'นัก'59658 'หน'44036 'า'9632 '\n  '3331 'โฮ'44025 'จิ'44183 '๋'19278 'น'9614 'เรียก'67105 'ทัพ'59277 'ทั่ว'65502 'หัว'59452 'เมือง'66957 'มา'44184 '         '55323 'หมาย'65330 'จะ'44339 'ฆ่า'59470 'ม'9620 'ด'9609 'ชั่ว'65728 'ตัว'59550 'สำคัญ'67073 '\n    '28423 'เหมือน'67274 'ขับ'59319 'ไ'9643 'ส'9627 'ไล่'59647 'เส'44277 'ือ'44227 'จาก'59353 'เค'44318 'หา'44176 '      '36287 'รับ'59609 'หม'44180 'า'9632 'ป่า'59555 'เข้ามา'67278 'เลย'59474 'อา'44294 'สัญ'59734 '\n  '3331 'ฝ่าย'65705 'อ'9629 '้อง'59471 'อุ'43974 '้น'44028 'ยุ'44150 'แยก'59504 'ให้'59280 'แตก'59278 'กัน'59653 '          '59776 'ใช้'59559 'สาว'59541 'นั้น'65653 'เป็น'65571 'ชน'44327 'วน'44141 'ช'9606 'ื่'43338 'น'9614 'ชวน'59224 'ใจ'44019 '\n    '28423 'พล'44004 'ัน'44152 'ลิ'44018 'ฉ'19295 'ุ'9637 'ยก'44296 'ุ'9637 'ยก'44296 'ี'9635 'กลับ'65654 'ก่อ'59611 'เหตุ'65435 '          '59776 'ช่าง'65382 'อา'44294 'เพศ'59284 'จริง'65565 'หน'44036 'า'9632 'ฟ้า'59215 'ร้อง'65726 'ไ'9643 'ห'9628 '้'9646 '\n  '3331 'ต้อง'65597 'ร'9622 'บร'44075 'า'9632 'ฆ่า'59470 'ฟัน'59425 'จน'44012 'บรร'59641 'ล'9623 'ัย'44268 '           '62422 'ฤ'19282 'ๅ'19289 'หา'44176 'ใคร'59476 'ค'9603 '้ำ'44168 'ชู'44250 'ก'9601 'ู้'44243 'บรร'59641 'ลัง'59207 'ก'9601 '์'9647 ' '33 'ฯ'19285 

193 tokens

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant