AI Umum

Sequoia: Algoritma Dekoding Spekulatif yang Dapat Diskalakan, Andal, dan Sadar Perangkat Keras

Pendahuluan

Meningkatnya penggunaan model bahasa besar (LLM) membuat dukungan yang efisien menjadi semakin penting. Mempercepat inferensi LLM merupakan tantangan karena setiap token baru memerlukan akses ke semua parameter LLM. Batasan I/O ini menyebabkan pemanfaatan perangkat keras yang kurang optimal selama pembuatan. Masalah ini diperburuk dalam pengaturan inferensi berbasis offloading dan batch kecil, karena menghasilkan satu token membutuhkan waktu yang sama dengan memproses prompt yang berisi ratusan atau ribuan token pada GPU saat ini.

Dekoding Spekulatif

Penelitian terbaru telah memperkenalkan dekoding spekulatif untuk mempercepat inferensi LLM sambil mempertahankan distribusi keluaran LLM. Pendekatan ini menggunakan satu atau lebih model draf untuk memprediksi keluaran LLM. Prediksi disusun dalam pohon token, dengan setiap node mewakili urutan token yang dispekulasikan. Selanjutnya, satu forward pass LLM digunakan untuk memverifikasi kebenaran token yang dispekulasikan ini secara bersamaan. Pohon token memungkinkan peningkatan jumlah token yang dapat diterima LLM karena ada beberapa alternatif untuk setiap posisi token.

Keterbatasan Dekoding Spekulatif Berbasis Pohon

Meskipun banyak penelitian tentang dekoding spekulatif berbasis pohon, para peneliti menunjukkan bahwa pendekatan ini memiliki keterbatasan yang signifikan. Pertama, mereka menemukan bahwa algoritma saat ini untuk membangun pohon token bekerja dengan baik untuk pohon yang sangat kecil tetapi tidak efektif untuk pohon yang sangat besar. Kedua, algoritma pengambilan sampel dan verifikasi pohon token saat ini diketahui tidak berfungsi dengan baik ketika diterapkan pada konfigurasi hiperparameter inferensi yang berbeda. Terakhir, sistem saat ini gagal mengoptimalkan ukuran dan struktur pohon yang diprediksi, terlepas dari pengaturan perangkat keras.

Sequoia: Algoritma Dekoding Spekulatif yang Lebih Baik

Para peneliti dari Carnegie Mellon University, Meta AI, Together AI, dan Yandex membingkai pembangunan pohon sebagai masalah optimisasi terbatas dan menggunakan pemrograman dinamis untuk menemukan pohon token spekulatif terbaik. Struktur pohon ini terbukti memungkinkan pembuatan token tanpa batas dan berkembang secara logaritmik dengan ukuran pohon, baik secara teori maupun praktik.

Tim ini menekankan pentingnya mengembangkan metode pengambilan sampel dan verifikasi pohon yang berfungsi dengan baik dengan hiperparameter inferensi yang berbeda, tidak terus mengambil sampel token yang salah, dan selalu menghasilkan hasil yang akurat. Untuk mengatasi hal ini, mereka menerapkan strategi pengambilan sampel yang tidak memperbarui model draf. Ini mencegah model draf membuat kesalahan yang sama dua kali dan menjaga distribusi keluaran model target tetap utuh. Pendekatan ini didasarkan pada algoritma SpecInfer. Mereka memberikan bukti empiris bahwa pendekatan pengambilan sampel dan verifikasi baru ini dapat mencapai tingkat penerimaan yang tinggi dalam lingkungan panas dan dingin.

Tim ini selanjutnya menyajikan pengoptimal pohon sadar perangkat keras yang mempertimbangkan hubungan yang bergantung pada perangkat keras antara jumlah token yang diverifikasi dan waktu verifikasi. Pengoptimal ini kemudian menggunakan hubungan ini untuk menentukan bentuk dan kedalaman pohon terbaik, sehingga mengatasi kendala terakhir. Temuan mereka menunjukkan bahwa strategi ini mengungguli metode yang tidak spesifik perangkat keras dalam hal kecepatan.

Evaluasi dan Hasil

Mereka membuktikan keefektifan Sequoia dengan uji coba menyeluruh dari ujung ke ujung dan penelitian ablasi. Implementasi Sequoia mereka menggunakan Grafik CUDA dan dibangun di atas Hugging Face (dan Accelerate). Dalam mode offloading pada GPU L40, Sequoia dapat meningkatkan hingga 4,04× untuk Llama2-7B dan 10,33× untuk Llama2-70B pada satu GPU A100. Selain itu, studi ablasi menunjukkan bahwa:

  • Struktur pohon Sequoia lebih dapat diskalakan daripada urutan k-independen (ukuran pohon ≤ 512), menghasilkan hingga 33% lebih banyak token per langkah dekode.
  • Algoritma pengambilan sampel dan verifikasi Sequoia kuat terhadap suhu dan top-p, memberikan percepatan hingga 65% dan 27%, masing-masing, dibandingkan dengan algoritma pengambilan sampel dan verifikasi SpecInfer dan top-k.
  • Pengoptimal pohon sadar perangkat keras Sequoia dapat secara otomatis menentukan ukuran dan kedalaman pohon yang optimal untuk berbagai perangkat keras.