Token (LLM) (ID)

From Systems analysis Wiki
Jump to navigation Jump to search

Token — satuan teks terkecil yang dapat diproses oleh large language model (LLM). Setiap teks sebelum diproses oleh LLM terlebih dahulu diubah menjadi urutan token, yang kemudian diterjemahkan ke dalam representasi numerik yang mudah dianalisis dan diproses oleh model.

Tergantung pada strategi tokenisasi yang digunakan, token dapat berupa:

  • Kata utuh (misalnya, "rumah")
  • Bagian kata atau akar kata (misalnya, "rumah" dalam "rumahan")
  • Karakter tunggal atau tanda baca (misalnya, ",", "!")

Penggunaan token memungkinkan model bahasa untuk mempelajari dan mereproduksi struktur teks secara efektif, mengidentifikasi pola, serta memahami semantik dan sintaksis teks.

Proses Tokenisasi

Tokenisasi (tokenization) — adalah proses pemecahan teks sumber menjadi token-token yang kemudian diubah menjadi pengenal numerik yang dapat dipahami oleh model.

Tahap ini merupakan langkah wajib dan fundamental dalam cara kerja large language model. Melalui proses ini, LLM memperoleh kemampuan untuk:

  • Menganalisis sintaksis — struktur teks dan susunan elemen-elemennya (kata dan frasa);
  • Mengekstrak semantik — makna mendalam dari teks dan hubungan antar elemen.

Terdapat beberapa metode tokenisasi utama, di antaranya:

  • Byte Pair Encoding (BPE): Algoritma yang secara iteratif menggantikan pasangan karakter yang paling sering muncul dengan token baru, sehingga memungkinkan pemrosesan kata-kata langka dan variasi morfologis secara efisien.
  • WordPiece: Digunakan dalam model BERT dan memecah kata menjadi satuan sub-kata, yang membantu dalam pemrosesan kata-kata yang tidak dikenal.
  • SentencePiece: Metode yang memandang teks sebagai urutan karakter dan menerapkan model berbasis BPE atau Unigram untuk tokenisasi.

Pilihan metode tokenisasi memengaruhi performa model, kemampuannya dalam memproses berbagai bahasa, serta efisiensi pelatihan.

Token Khusus

Selain token utama, model juga menggunakan token khusus untuk menandai elemen fungsional dalam teks, seperti:

  • [CLS] (class) — token penanda awal urutan, yang sering digunakan untuk tugas klasifikasi teks;
  • [SEP] (separator) — memisahkan bagian-bagian teks yang berbeda (misalnya, pertanyaan dan jawaban, kalimat, atau paragraf);
  • [MASK] — token khusus untuk menandai kata yang harus diprediksi oleh model (digunakan dalam BERT dan model masked-language lainnya);
  • [PAD] (padding) — digunakan untuk menyamakan panjang teks.

Token-token khusus ini membantu model untuk memahami struktur dan konteks teks yang diproses dengan lebih tepat.

Token dan Jendela Konteks

Jendela konteks (context window) — adalah jumlah maksimum token yang dapat dipertimbangkan dan diproses secara bersamaan oleh model saat menghasilkan teks.

Sebagai contoh, model GPT-3 memiliki jendela konteks sebesar 2048 token. Artinya, saat menghasilkan teks, model dapat secara bersamaan mempertimbangkan informasi yang terkandung dalam maksimal 2048 token dari teks sumber. Ukuran jendela konteks memengaruhi:

  • Volume maksimum informasi yang tersedia bagi model;
  • Kualitas dan kebermaknaan respons yang dihasilkan;
  • Kemampuan model untuk memproses teks panjang dan mempertahankan konteks pada jarak yang jauh antar token.

Literatur

  • Sennrich, R.; Haddow, B.; Birch, A. (2016). Neural Machine Translation of Rare Words with Subword Units. arXiv:1508.07909.
  • Kudo, T.; Richardson, J. (2018). SentencePiece: A Simple and Language-Independent Subword Tokenizer and Detokenizer for Neural Text Processing. arXiv:1808.06226.
  • Kudo, T. (2018). Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates. arXiv:1804.10959.
  • Devlin, J. et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
  • Song, X. et al. (2021). Fast WordPiece Tokenization. *EMNLP 2021*. ACL Anthology.
  • Mielke, S. J.; Dalmia, S.; Cotterell, R. (2021). A Brief History of Open-Vocabulary Modeling and Tokenization in NLP. arXiv:2112.10508.
  • Xue, J. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
  • Limisiewicz, T.; Balhar, J.; Mareček, D. (2023). Tokenization Impacts Multilingual Language Modeling: Assessing Vocabulary Allocation and Overlap Across Languages. arXiv:2305.17179.
  • Pourmostafa Roshan Sharami, J.; Shterionov, D.; Spronck, P. (2023). A Systematic Analysis of Vocabulary and BPE Settings for Optimal Fine-tuning of NMT. arXiv:2303.00722.
  • Batsuren, K. et al. (2024). Evaluating Subword Tokenization: Alien Subword Composition and OOV Generalization Challenge. arXiv:2404.13292.
  • Chai, Y. et al. (2024). Tokenization Falling Short: On Subword Robustness in Large Language Models. arXiv:2406.11687.