Kemarin ada obrolan seru di grup diskusi koding. Salah satu teman nanya sambil heran, "Fian, model AI zaman sekarang kan udah jago banget bikin aplikasi full-stack, nulis esai berbobot, sampai bantu debugging error rumit. Tapi kenapa pas ditanya hal sepele kayak berapa jumlah huruf 'r' di kata strawberry, jawabannya malah sering salah dan ngotot bilang cuma ada dua?"
Kelihatannya memang konyol. Banyak orang langsung mengira model AI itu cuma pura-pura pintar atau sistemnya sedang halusinasi. Padahal kalau kita intip bagaimana mesin memproses teks dari level paling mendasar, jawabannya bukan karena modelnya bodoh, melainkan karena cara membaca mesin sangat berbeda dengan mata manusia: AI tidak pernah membaca huruf atau alfabet secara langsung.
Dunia Angka dan Vektor: Dari Teks Menjadi Token
Komputer pada hakikatnya cuma memahami angka biner (0 dan 1). Jaringan saraf tiruan (neural network) di dalam arsitektur Large Language Model (LLM) bekerja murni lewat perkalian matriks dan kalkulasi probabilitas angka berdimensi tinggi (vektor).
Supaya teks tulisan kita bisa diproses, kalimat yang kita ketik harus diubah dulu menjadi deretan angka. Proses pemotongan dan konversi ini disebut sebagai tokenisasi (tokenization), dan modul yang bertugas mengerjakannya dinamakan tokenizer.
Di sinilah letak perbedaan mendasarnya:
- Manusia: Membaca kata
strawberrydengan mengeja alfabet per karakter:s - t - r - a - w - b - e - r - r - y(total 10 huruf). - Tokenizer AI: Menggunakan algoritma seperti Byte-Pair Encoding (BPE) yang memotong teks berdasarkan frekuensi statistik kemunculan potongan kata dalam kumpulan data raksasa.
Dalam sebagian besar tokenizer modern, kata strawberry biasanya dipecah menjadi tiga potongan token terpisah:
Token 1: "straw" (Token ID: 2382)
Token 2: "ber" (Token ID: 342)
Token 3: "ry" (Token ID: 451)
Efek "Kacamata Kuda" pada Model AI
Ketika teks sudah melewati tokenizer dan masuk ke dalam lapisan jaringan saraf LLM, teks aslinya sudah hilang. Model hanya menerima deretan angka identitas: [2382, 342, 451].
Bagi model, token "straw" adalah sebuah entitas utuh yang punya representasi makna tersendiri (bisa sedotan, jerami, atau bagian dari buah). Begitu juga dengan "ber" dan "ry". Model sama sekali tidak punya mekanisme otomatis untuk menengok ke dalam token tersebut dan menghitung berapa banyak huruf 'r' yang tersembunyi di dalamnya.
Ketika kamu bertanya "Ada berapa huruf r di kata strawberry?", model mencoba menjawab pertanyaan itu hanya berdasarkan korelasi statistik dan tebakan pola dari kalimat-kalimat yang pernah dibacanya selama fase pelatihan. Kalau pola asosiasi probabilistiknya mengarah ke angka dua (mungkin karena kata 'berry' sering diasosiasikan secara terpisah atau data percakapan manusia banyak yang keliru), model akan menjawab dua tanpa menyadari kejanggalannya.
Kenapa Tidak Ditokenisasi Huruf demi Huruf Saja?
Mungkin ada yang berpikir: kenapa pengembang AI tidak membuat tokenizer yang memecah teks per satu huruf saja? Kan lebih simpel dan AI jadi bisa mengeja dengan tepat.
Ternyata alasannya murni karena efisiensi komputasi dan pemahaman bahasa:
- Beban Konteks (Context Window): Jika teks dipecah per karakter, sebuah artikel berisi 1.000 kata (sekitar 6.000 karakter) akan memakan 6.000 token. Dengan metode sub-kata seperti BPE, artikel yang sama rata-rata hanya butuh sekitar 1.300 sampai 1.500 token.
- Kebutuhan Memori Komputasi: Arsitektur Transformer menghitung relasi antar-token menggunakan mekanisme self-attention. Kompleksitas kalkulasi ini meningkat secara kuadratik terhadap jumlah token. Membaca teks huruf demi huruf akan membuat server AI membutuhkan daya komputasi dan VRAM GPU berkali-kali lipat lebih boros.
- Pemahaman Makna (Semantik): Potongan kata utuh membawa konteks makna yang jauh lebih kaya dibanding huruf tunggal. Kata seperti "belajar" langsung memberikan sinyal konsep aksi, sedangkan huruf 'b' sendiri tidak membawa arti apa-apa.
Dampaknya ke Bahasa Indonesia dan Perhitungan Matematika
Eksplorasi tokenizer ini juga membuka fakta menarik lainnya yang sering kita rasakan sehari-hari:
1. Konsumsi Token Bahasa Indonesia yang Lebih Boros
Mayoritas dataset pelatihan tokenizer awal didominasi oleh korpus bahasa Inggris. Akibatnya, kosakata bahasa Inggris sering mendapat alokasi satu token utuh untuk satu kata. Sebaliknya, kata bahasa Indonesia yang berimbuhan kompleks sering kali dipecah menjadi banyak serpihan kecil. Kata seperti mempertanggungjawabkannya bisa terpotong menjadi 5 hingga 6 token berbeda. Ini alasan kenapa kuota token terasa lebih cepat berkurang saat kita menggunakan prompt berbahasa Indonesia di layanan API.
2. Ketelitian Angka dan Matematika
Hal serupa terjadi pada angka. Angka seperti 2026 mungkin diproses sebagai satu token tunggal, tetapi angka 20267 bisa terbelah acak menjadi "202" dan "67". Inilah alasan kenapa model AI murni sering kali salah menjumlahkan angka berdigit banyak jika tidak dibantu langkah kalkulasi bertahap.
Cara Menjembatani Limitasi Tokenizer
Kabar baiknya, keterbatasan ini sudah banyak diatasi di ekosistem AI modern lewat beberapa pendekatan cerdas:
- Chain-of-Thought (Penalaran Bertahap): Jika kamu meminta model mengeja terlebih dahulu kata tersebut huruf per huruf sebelum menjawab (misal: "Tuliskan dulu tiap hurufnya, lalu hitung"), model dipaksa memecah token menjadi output karakter di jendela konteks barunya, sehingga jawabannya jadi akurat.
- Eksekusi Kode (Function Calling): Model modern sekarang bisa mendeteksi pertanyaan berbasis kalkulasi atau pencarian karakter dan secara otomatis membuat skrip Python sederhana seperti
len([c for c in 'strawberry' if c == 'r'])untuk dijalankan di lingkungan sandbox. - Tokenizer Generasi Baru: Model-model rilis terkini terus memperbesar perbendaharaan kosakata (vocabulary size) tokenizer mereka (dari 32.000 token hingga mencapai 128.000+ token) agar representasi bahasa non-Inggris dan karakter angka jauh lebih efisien dan seimbang.
Melihat Teknologi dengan Kacamata Realistis
Mengulik cara kerja tokenizer menyadarkan kita bahwa model AI bukanlah entitas magis yang punya kesadaran manusiawi. AI adalah tumpukan arsitektur komputasi brilian yang dirancang dengan trade-off teknis antara kecepatan, memori, dan fleksibilitas.
Begitu kita memahami batas dan cara kerja mesin di balik layar, kita tidak lagi gampang silau oleh klaim berlebihan, sekaligus tahu persis trik bagaimana memanfaatkannya secara maksimal untuk kebutuhan koding dan eksplorasi digital sehari-hari.
Kalian sendiri pernah menemukan hal unik apa lagi saat bereksperimen dengan model AI? Kalau ada topik ngulik lain yang seru dibahas, tulis di kolom komentar ya!
Kolom Komentar (0)
Silakan tinggalkan tanggapan atau pertanyaan Anda pada formulir di bawah ini.