Consistency LLM: Mengubah LLM menjadi decoder paralel untuk meningkatkan kecepatan inferensi 3,5x
(hao-ai-lab.github.io)Consistency Large Language Models (CLLM)
- LLM secara tradisional dianggap sebagai decoder sekuensial yang bekerja dengan mendekode satu token secara berurutan
- Blog ini menunjukkan bahwa LLM yang telah dipra-latih dapat dengan mudah diubah menjadi decoder paralel yang efisien
- Consistency Large Language Models (CLLM) adalah keluarga decoder paralel baru yang dapat mengurangi latensi inferensi dengan secara efisien mendekode urutan n token pada setiap tahap inferensi
- CLLM meniru proses kognitif manusia yang membentuk kalimat lengkap di dalam pikiran sebelum mengucapkan kata demi kata, dan dapat dilatih secara efektif hanya dengan melakukan fine-tuning pada LLM yang telah dipra-latih
- CLLM dilatih dengan melakukan decoding paralel yang memetakan urutan n token yang diinisialisasi secara acak ke hasil decoding autoregressive (AR) yang identik, dalam sesedikit mungkin langkah
- Menurut hasil eksperimen, CLLM menunjukkan peningkatan kecepatan generasi 2,4x hingga 3,4x dibandingkan decoder AR konvensional, serta menampilkan performa yang sebanding atau lebih baik daripada teknik inferensi cepat seperti Medusa2 atau Eagle
- CLLM dapat mencapai peningkatan performa ini tanpa biaya memori tambahan
Latar belakang dan keterbatasan decoding Jacobi
- LLM menghasilkan token satu per satu dengan metode decoding AR, sehingga respons yang panjang menimbulkan latensi tinggi
- Decoding Jacobi berasal dari metode penyelesaian persamaan nonlinier Jacobi dan Gauss-Seidel, dan telah dibuktikan ekuivalen dengan generasi AR yang menggunakan greedy sampling
- Decoding Jacobi mereformulasi proses generasi sekuensial menjadi sistem n persamaan nonlinier dengan n variabel berbasis iterasi Jacobi, sehingga memungkinkan pemrosesan paralel
- Pada setiap tahap iterasi, satu atau lebih token yang benar dapat diprediksi, sehingga decoding AR berpotensi dipercepat
- Namun dalam praktiknya, karena LLM yang dilatih secara AR hampir tidak dapat menghasilkan token yang benar ketika token sebelumnya mengandung kesalahan, sebagian besar iterasi Jacobi hanya menghasilkan satu koreksi untuk urutan n token, sehingga membentuk trajectory Jacobi yang lebih panjang
- Lookahead decoding atau speculative decoding berupaya mengurangi inefisiensi decoding Jacobi ini, tetapi menimbulkan biaya memori tambahan saat inferensi, sedangkan CLLM tidak
Metode pelatihan CLLM
- Pelatihan CLLM secara umum terdiri dari dua bagian: persiapan trajectory Jacobi serta optimisasi consistency loss dan AR loss
- Pada tahap persiapan trajectory Jacobi, urutan respons penuh dipotong per n token dan decoding Jacobi dilakukan secara berurutan hingga seluruh urutan respons sepanjang l token terbentuk; urutan yang dihasilkan dari tiap trajectory diperlakukan sebagai satu item data
- Saat pelatihan, consistency loss dan AR loss dioptimalkan bersama; consistency loss memastikan beberapa token dapat diprediksi sekaligus, sementara AR loss menjaga agar CLLM tidak menyimpang dari LLM target sehingga kualitas generasi tetap terjaga
- Global consistency (GC) loss meminimalkan jarak antara titik acak pada trajectory Jacobi dan fixed point, sehingga mendorong CLLM untuk memprediksi fixed point dari titik mana pun pada trajectory Jacobi
- Local consistency (LC) loss mendorong state yang berdekatan pada trajectory Jacobi untuk menghasilkan output yang sama
- AR loss mencakup AR loss tradisional berdasarkan hasil generasi dari LLM target, dengan tujuan agar CLLM tidak menyimpang dari distribusi LLM target
Hasil eksperimen
- Eksperimen mencakup tugas domain khusus seperti Spider (text-to-SQL), Human-Eval (penyelesaian kode Python), dan GSM8k (matematika), serta tantangan percakapan terbuka yang luas seperti MT-bench
- CLLM menunjukkan peningkatan kecepatan terbesar dibanding model target, dan mencapai peningkatan kecepatan yang serupa atau lebih baik daripada Medusa2 tanpa biaya tambahan saat inferensi
- Di MT-bench, CLLM mencapai peningkatan kecepatan yang hampir sama dengan saat dikombinasikan dengan Medusa2, tetapi menawarkan adaptabilitas dan efisiensi memori yang lebih tinggi
- Biaya fine-tuning CLLM berada pada tingkat yang wajar, dan bahkan ketika ukuran dataset besar, menggunakan sekitar 10% dari dataset untuk menghasilkan trajectory Jacobi sudah cukup untuk memperoleh peningkatan kecepatan sekitar 2,5x
- CLLM dapat memprediksi beberapa token berurutan dengan benar dalam satu iterasi Jacobi melalui fenomena fast forwarding
- CLLM menunjukkan kemampuan stationary token, yaitu dapat memprediksi token yang benar lebih awal dan mempertahankannya agar tidak berubah meskipun token sebelumnya mengandung kesalahan
- Melalui pelatihan, CLLM mempelajari konsep bahasa inti seperti collocation, yang memungkinkannya menyimpulkan struktur dari titik mana pun pada trajectory Jacobi dan memprediksi beberapa kata sekaligus untuk meminimalkan jumlah langkah iterasi
Opini GN⁺
-
CLLM tampak secara efektif mengatasi masalah latensi panjang pada metode decoding AR milik LLM yang ada dengan memanfaatkan decoding Jacobi. Terutama, kemampuan mencapai peningkatan kecepatan melalui decoding paralel tanpa biaya memori tambahan sangat mengesankan
-
Metode pelatihan CLLM tampak relatif sederhana karena hanya melakukan fine-tuning pada LLM yang ada melalui consistency loss, tetapi tetap bermakna karena mampu mempelajari salah satu karakteristik penting bahasa, yaitu collocation, sehingga sangat meningkatkan performa decoding paralel
-
Namun, karena CLLM mengasumsikan greedy sampling, masih diperlukan penelitian lanjutan untuk mengetahui apakah pendekatan ini dapat bekerja baik pada strategi decoding yang lebih beragam. Selain itu, karena hasil eksperimen saat ini masih terbatas pada bahasa Inggris, kemungkinan generalisasi ke berbagai bahasa lain juga tampaknya perlu diverifikasi
-
CLLM tampak sebagai pendekatan praktis untuk mempercepat kecepatan respons LLM. Pendekatan ini sepertinya dapat diterapkan dengan baik pada tugas yang menuntut respons waktu nyata seperti pencarian web atau chatbot
-
Secara pribadi, ada harapan bahwa metode pelatihan consistency milik CLLM mungkin juga bisa diterapkan bukan hanya pada LLM seperti GPT, tetapi juga pada model generatif lain seperti model pembangkit gambar atau model sintesis suara. Semoga ide CLLM ke depannya dapat berkontribusi pada peningkatan efisiensi berbagai model generatif
1 komentar
Komentar Hacker News