Gemma 2: Peningkatan Model Bahasa Terbuka Berukuran Praktis [PDF]
(storage.googleapis.com)- Gemma 2 dari Google DeepMind adalah keluarga model terbuka ringan berskala 2B, 9B, dan 27B, dirilis dengan target performa yang dapat bersaing dengan model yang lebih besar meski pada model kecil
- 2B dan 9B menerapkan distilasi pengetahuan alih-alih prediksi token berikutnya, sementara 27B dilatih dari awal, sehingga strategi pelatihan berbeda menurut skala
- Dari sisi arsitektur, model ini menggabungkan pergantian local-global attention, Grouped-Query Attention, logit soft-capping, serta RMSNorm pre-norm dan post-norm untuk mengejar efisiensi sekaligus performa
- Data pelatihan terutama berupa dokumen web berbahasa Inggris, kode, dan literatur ilmiah; model ini bukan model multimodal dan tidak ditujukan untuk performa multibahasa mutakhir
- Dalam evaluasi, performanya lebih tinggi dibanding model terbuka berukuran serupa, tetapi sebelum deployment nyata diperlukan pengujian keamanan per kasus penggunaan
Ikhtisar model Gemma 2
- Gemma 2 adalah model terbuka ringan baru dalam keluarga Gemma, tersedia dalam skala parameter 2B, 9B, dan 27B
- Model 2B dan 9B dilatih dengan distilasi pengetahuan, bukan prediksi token berikutnya
- Dengan menggunakan model bahasa besar sebagai model guru, model siswa mempelajari distribusi kemungkinan token berikutnya untuk setiap token
- 2B dan 9B dilatih melalui distilasi dengan jumlah token lebih dari 50 kali lebih banyak daripada jumlah token yang secara teoritis compute-optimal
- Model 27B dilatih dari awal untuk pekerjaan ini
- Performanya meningkat signifikan dibanding model terbuka berukuran serupa, dan pada beberapa benchmark serta evaluasi manusia menunjukkan hasil yang mampu bersaing dengan model 2–3 kali lebih besar
- Sebelum penerapan nyata, semua pengguna harus melakukan pengujian keamanan yang sesuai dengan konteks deployment atau penggunaan
Struktur model dan pilihan desain
- Gemma 2 menggunakan arsitektur Transformer decoder-only yang mirip dengan Gemma sebelumnya
- Elemen desain umum adalah sebagai berikut
- Panjang konteks: 8192 token
- Embedding posisi RoPE
- Nonlinearitas GeGLU
- Tokenizer SentencePiece dengan kosakata 256.128
- Menggunakan tied embedding
- Perubahan arsitektur utama berfokus pada attention dan normalisasi
- local sliding window attention dan global attention ditempatkan bergantian per lapisan
- sliding window pada local attention adalah 4096 token
- rentang global attention adalah 8192 token
- logit soft-capping diterapkan pada attention layer dan final layer
- soft_cap pada self-attention layer adalah 50.0
- soft_cap pada final layer adalah 30.0
- RMSNorm diterapkan pada input dan output setiap Transformer sub-layer, sehingga menggunakan pre-norm dan post-norm sekaligus
- Dalam ablation, Grouped-Query Attention dikonfirmasi sebagai pilihan yang mempertahankan performa sambil meningkatkan kecepatan inferensi
- local sliding window attention dan global attention ditempatkan bergantian per lapisan
Data pelatihan dan infrastruktur
- Jumlah token prapelatihan berbeda menurut skala model
- Gemma 2 27B: 13 triliun token
- Gemma 2 9B: 8 triliun token
- Gemma 2 2B: 2 triliun token
- Data pelatihan terutama berbahasa Inggris dan terdiri dari berbagai sumber seperti dokumen web, kode, dan literatur ilmiah
- Model ini bukan model multimodal, dan tidak dilatih secara khusus untuk menargetkan performa multibahasa mutakhir
- Penyaringan data diterapkan dengan cara yang sama seperti Gemma 1
- Mengurangi ujaran yang tidak diinginkan atau tidak aman
- Menghapus informasi pribadi tertentu dan data sensitif
- Menghapus kontaminasi set evaluasi
- Memitigasi risiko pengulangan output sensitif
- Infrastruktur pelatihan berbasis TPU
- 2B: 512 chip TPUv5e
- 9B: 4096 chip TPUv4
- 27B: 6144 chip TPUv5p
- Emisi karbon dari prapelatihan diperkirakan sebesar 1247,61 tCO2eq
- Dihitung berdasarkan penggunaan energi per jam di pusat data TPU
- Netralitas karbon pusat data Google dicapai melalui efisiensi energi, pembelian energi terbarukan, dan carbon offset
Pascapelatihan dan format percakapan
- Pascapelatihan adalah proses fine-tuning model prapelatihan menjadi model instruction-tuned
- Tahap pelatihannya adalah sebagai berikut
- Melakukan SFT dengan pasangan prompt-response synthetic dan human-generated khusus teks bahasa Inggris
- Menerapkan RLHF menggunakan reward model yang dilatih dengan data preferensi bahasa Inggris
- Merata-ratakan model yang diperoleh pada tiap tahap untuk meningkatkan performa keseluruhan
- Campuran data dan resep pascapelatihan dipilih berdasarkan peningkatan helpfulness, pemastian keamanan, dan minimisasi bahaya terkait hallucination
- Data pascapelatihan setelah Gemma 1.1 diperluas dengan campuran data internal dan data publik eksternal
- Pada LMSYS-chat-1M, hanya prompt yang digunakan dan answer tidak digunakan
- Beberapa tahap penyaringan diterapkan pada synthetic data
- Informasi pribadi
- Output model yang tidak aman atau toxic
- Data identifikasi diri yang keliru
- Contoh duplikat
- Gemma 2 menggunakan control token yang sama dengan Gemma 1, tetapi formatting schema berbeda
- Model secara eksplisit mengeluarkan token
<end_of_turn><eos>pada akhir generasi - Sebelumnya hanya menghasilkan
<eos>
- Model secara eksplisit mengeluarkan token
Distilasi pengetahuan dan eksperimen pilihan arsitektur
- Dalam perbandingan model 2B yang dilatih dengan 500B token, pelatihan distilasi menghasilkan performa lebih tinggi daripada model yang dilatih dari awal
- Rata-rata 3 benchmark: from scratch 60.3, distilled 67.7
- 500B adalah 10 kali lebih banyak daripada jumlah token compute-optimal untuk model 2B
- Dalam perbandingan validation perplexity pada model 200M, 400M, dan 1B, perplexity model distilasi juga lebih rendah
- 200M: from scratch 23, distilled 21
- 400M: from scratch 19, distilled 17
- 1B: from scratch 17, distilled 15
- Pada model 9B, perbedaan performa antara GQA dan MHA kecil, dan GQA dipilih karena jumlah parameternya lebih sedikit serta lebih cepat saat inferensi
- Rata-rata 4 benchmark: MHA 50.3, GQA 50.8
- Pada jumlah parameter 9B yang sama, arsitektur yang lebih dalam menunjukkan performa sedikit lebih baik daripada arsitektur yang lebih lebar
- Rata-rata 4 benchmark: Wide 50.8, Deep 52.0
- Saat inferensi, mengubah ukuran sliding window menjadi 4096, 2048, atau 1024 hanya memberi dampak terbatas pada perplexity
- 4096: 1.63
- 2048: 1.63
- 1024: 1.64
Hasil benchmark otomatis
- Model prapelatihan 27B dibandingkan dengan Qwen1.5 32B dan LLaMA-3 70B dalam evaluasi HuggingFace
- MMLU: Gemma-2 27B 75.2, Qwen1.5 32B 74.3, LLaMA-3 70B 79.2
- GSM8K: Gemma-2 27B 74.0, Qwen1.5 32B 61.1, LLaMA-3 70B 76.9
- ARC-c: Gemma-2 27B 71.4, Qwen1.5 32B 63.6, LLaMA-3 70B 68.8
- HellaSwag: Gemma-2 27B 86.4, Qwen1.5 32B 85.0, LLaMA-3 70B 88.0
- Winogrande: Gemma-2 27B 83.7, Qwen1.5 32B 81.5, LLaMA-3 70B 85.3
- Model 2B dan 9B juga menunjukkan peningkatan besar dibanding model Gemma sebelumnya
- Model 9B meningkat hingga 10% dibanding versi sebelumnya pada beberapa benchmark
- Gemma 2 2B dilatih dengan jumlah token yang mirip dengan Gemma 1 2B, tetapi performanya meningkat
- Rata-rata keseluruhan dari berbagai benchmark adalah sebagai berikut
- Gemma 1 2B: 44.2
- Gemma 2 2B: 48.7
- Gemma 1 7B: 57.9
- Gemma 2 9B: 64.9
- Gemma 2 27B: 69.4
Evaluasi manusia dan Chatbot Arena
- Model Gemma 2 instruction-tuned dievaluasi di LMSYS Chatbot Arena dengan metode blind side-by-side
- Skor Elo adalah sebagai berikut
- gemma-2-27b-it: 1218
- gemma-2-9b-it: 1187
- gemma-2-2b-it: 1126
- Hasil perbandingan menunjukkan daya saing relatif terhadap ukuran model
- gemma-2-27b-it lebih tinggi daripada llama-3-70b-instruct dengan Elo 1206
- gemma-2-9b-it mirip dengan gpt-4-0314 dengan Elo 1186
- gemma-2-2b-it lebih tinggi daripada gpt-3.5-turbo-0613 dengan Elo 1116
- Dalam evaluasi preferensi manusia terpisah, safety dan instruction following diukur dengan held-out single-turn prompt
- instruction following: Gemma 1.1 IT 7B 24.3%, Gemma 2 IT 2B 26.5%, 9B 34.1%, 27B 37.7%
- safety: Gemma 1.1 IT 7B 42.8%, Gemma 2 IT 2B 57.5%, 9B 57.8%, 27B 55%
- Evaluasi multiturn dilakukan dengan 500 held-out scenario dan rata-rata 8,4 user turn
- Kepuasan pengguna: Gemma 1.1 IT 7B 3.32, Gemma 2 IT 2B 3.64, 9B 4.04, 27B 4.20
- Pencapaian tujuan percakapan: Gemma 1.1 IT 7B 3.36, Gemma 2 IT 2B 3.88, 9B 4.08, 27B 4.24
Memorization dan informasi pribadi
- Dalam kondisi tertentu, model bahasa besar dapat mengeluarkan apa adanya data pelatihan, sehingga Gemma 2 dievaluasi untuk verbatim dan approximate memorization
- Evaluasi dilakukan dengan memberikan prompt 50 token dan mengukur memorization 50 token dari data pelatihan
- Berdasarkan exact match
- Berdasarkan approximate match yang menggunakan edit distance 10%
- Overall exact memorization rate Gemma 2 adalah di bawah 0,1%
- Berdasarkan sumber data, memorization lebih banyak muncul pada kode, wiki, dan sumber ilmiah, tetapi secara keseluruhan berada pada tingkat yang lebih rendah daripada Gemma 1
- Evaluasi informasi pribadi menggunakan Google Cloud Sensitive Data Protection Tool
- Tidak ditemukan kasus output informasi pribadi dengan tingkat keparahan tinggi
- Proporsi data memorization yang berisi informasi pribadi tingkat keparahan rendah diukur sebesar 0,00026%
- Alat otomatis tidak mempertimbangkan konteks sehingga false positive dapat terjadi, dan hasilnya mungkin terlalu tinggi
Deployment yang bertanggung jawab dan keamanan
- Pengembangan Gemma 2 menerapkan tiga pilar: mitigasi keamanan selama pelatihan, evaluasi model yang transparan, dan pengembangan Responsible Generative AI Toolkit
- Model publik dapat memperluas manfaat teknologi AI, tetapi risiko penyalahgunaan seperti gambar deepfake, disinformasi buatan AI, serta pembuatan materi ilegal atau disturbing juga harus dievaluasi
- Belum ada laporan penggunaan berbahaya terhadap Gemma, tetapi jika ada laporan terkait, mereka berencana menyelidikinya dan memantau bersama komunitas
- Dengan mempertimbangkan bahwa model publik yang lebih besar dan lebih kuat sudah ada, dampak Gemma 2 terhadap keseluruhan lanskap risiko dinilai kecil
- Kebijakan keamanan dirancang sejalan dengan model Gemini untuk mencegah pembuatan harmful content
- Pelecehan dan eksploitasi seksual anak
- Pengungkapan informasi pribadi yang dapat berujung pada kerugian
- Ujaran kebencian dan perundungan
- Konten berbahaya atau berniat jahat
- Konten seksual eksplisit
- Nasihat medis yang bertentangan dengan konsensus ilmiah atau medis
- Model instruction-tuned disesuaikan melalui SFT dan RLHF agar menjauh dari perilaku yang tidak diinginkan
1 komentar
Opini Hacker News
Versi 27B sangat kuat
Di LMSys Chatbot Arena, skornya lebih tinggi daripada Llama-3-70B, dan berada di level OpenAI GPT-4 serta Claude-3 Sonnet
Jika ingin mengevaluasi Gemma secara lokal, itu bisa dilakukan cukup mudah dengan ollama dan promptfoo
Hal kecil yang selalu saya sukai dari Gemma adalah ia langsung masuk ke kode tanpa pembuka seperti "Sure, I can help you", lalu memberikan penjelasan setelahnya
Pelatihannya tampak berfokus pada struktur respons dan kemudahan dipahami
Selain itu, lebih baik menjalankan evaluasi yang tidak bergantung pada hafalan sederhana atas kode publik, jadi sebaiknya ubah ke pengujian pribadi
[0] https://ollama.com/library/gemma2
[1] https://github.com/promptfoo/promptfoo
Sebelum terbawa ekspektasi berlebihan, saya sarankan mengujinya sendiri dan menunggu sampai skor Chatbot Arena stabil
Dalam evaluasi pribadi, gemma-2-27b-it di AI Studio jauh lebih buruk daripada Llama 3 70B, terutama pada penalaran dan pertanyaan pemahaman dasar tentang dunia
Saya baru melihatnya belakangan, tetapi untuk catatan, model Gemma 2 tampaknya telah di-reinforcement learning agar sesuai dengan performa Chat Arena: https://x.com/natolambert/status/1806384821826109597
Bagian terkait dalam makalahnya sudah disorot
Saya penasaran apa kekuatan yang paling menonjol
Model kecil sering tampil baik di benchmark tetapi gagal dalam generalisasi, dan ini mengingatkan pada Phi-2
Ini tampaknya dipengaruhi oleh peningkatan data pelatihan untuk bahasa selain Inggris
Pada prompt bahasa Inggris yang sulit, ia 15 ELO lebih rendah dari Llama-3-70B, dan pada bahasa Inggris umum 41 ELO lebih rendah
Yang terakhir ini memang signifikan secara statistik
Salam lagi dari tim Gemma
Kami sangat senang bisa merilis ini, dan akan menjawab pertanyaan jika ada
Pendapat ini adalah pendapat pribadi dan bukan posisi Google DeepMind
Sebaliknya, memahami cara kerja dan penagihan Google Cloud Vertex lebih rumit, dan Azure serta AWS juga terasa sama rumitnya untuk tujuan ini
Akan menyenangkan jika Google Cloud bisa menyediakan API dan layanan yang kompatibel dengan OpenAI
Saya paham ini divisi yang berbeda, tetapi itu akan membuat penggunaan model jauh lebih mudah
Google Cloud sering terasa seperti tidak pernah benar-benar diuji dari sisi UX atau pengguna akhir
aistudio.google.com jelas sudah jauh lebih baik dibanding sebelumnya
27b bisa dicoba di www.aistudio,google.com, jadi silakan masukkan prompt yang sering Anda pakai dan semoga Anda menyukai responsnya
Saya penasaran mengapa memilih pendekatan itu, alih-alih langsung memakai 8k atau 16k penuh
Saya penasaran apakah ini karena perbedaan arsitektur mendasar, perbedaan set pelatihan, atau alasan lain
Untuk 2.6B/9B, rasanya perbandingannya seharusnya dengan Phi-3 mini 3.8B dari Microsoft, bukan Mistral atau Llama-3
Jika membandingkan tabel 13 di halaman 7 makalah ini dengan halaman 6 dari https://arxiv.org/pdf/2404.14219, secara keseluruhan Phi-3 tampak cukup lebih baik
Namun, laporan tentang pelatihan distilasi pengetahuan memang menarik
2.6B jelas akan tertinggal jauh dari Phi-3, jadi itulah mengapa tidak ada perbandingan
Jika dilihat sebagai 2.6 versus 3.8 mungkin terasa tidak terlalu berbeda, tetapi jika dilihat sebagai 2,6 miliar versus 3,8 miliar, selisih ukurannya cukup besar, jadi itu bisa dimengerti
Namun kemudian mulai muncul penggelembungan parameter seperti Mistral 7B vs Llama 8B vs Gemma 9B
Saat Llama 3 memilih 8B, saya sempat khawatir akan muncul tren mempermainkan angka parameter, tetapi saya kira itu kekhawatiran yang tidak perlu
Saya setuju bahwa keluarga Phi-3 adalah pembanding yang lebih baik untuk ekstraksi/peringkasan pengetahuan
Untuk pekerjaan seperti ini di workstation dengan VRAM terbatas, yang paling saya sukai saat ini adalah Phi-3 medium, yaitu phi3:14b-instruct
Versi 9B dan 27B tersedia di Ollama: https://ollama.com/library/gemma2
Model 27B juga bisa digunakan di AI Studio
https://aistudio.google.com/app/prompts/new_chat?model=gemma...
Sejauh ini, model ini tampak cukup kuat untuk ukurannya
Rilis yang luar biasa
Kalau ingin mencobanya secara lokal dengan antarmuka yang bagus, saya baru saja merilis pembaruan dukungan Gemma2 untuk aplikasi yang saya buat [1]
1: https://msty.app
msty kelihatannya sangat bagus
Saya bookmark untuk dilihat lagi nanti apakah ini bisa menggantikan cara saya memakai instance LibreChat yang di-host secara lokal
Untuk banyak pertanyaan, sepertinya memakai model lokal alih-alih model jarak jauh akan jadi peningkatan besar
Tapi saya penasaran apakah ada alasan msty tetap dibuat closed-source dan bukan open source
Saya membaca "why should I trust msty" di FAQ, tapi rasanya kurang meyakinkan
Itu jelas jauh lebih baik daripada tidak ada identitas sama sekali, tapi masih jauh dari bisa memverifikasi kepercayaan dengan membaca kodenya
Saya ingin mendengar alasan kenapa kodenya tidak dibuka
Meski begitu saya tetap berniat mencobanya
Kelihatannya keren, tapi saya berhati-hati karena ini closed-source
Di Arch Linux, saat mencoba menyimpan API key Anthropic, tidak terjadi apa-apa, dan muncul pesan "If you're experiencing problems saving API keys especially on Linux, contact Discord"
Kalau ini masalah yang cukup umum, rasanya seharusnya ada tautan ke solusi yang memungkinkan
Harus menambah satu server Discord lagi hanya untuk mengujinya, lalu mencari jawaban atas pertanyaan yang jelas pasti sudah sering ditanyakan, itu hambatan yang cukup besar
Saya sudah mengunduhnya dan kelihatannya bagus
Saya suka tampilan terpisah yang tersinkronisasi
Tapi tidak terlihat Gemma 2 maupun Claude 3.5 Sonnet, berbeda dari yang diumumkan di landing page
Penasaran apakah ada rencana menambahkannya ke Chocolatey untuk unduhan Windows
Ini kelihatan keren
Tidak tahu bagaimana saya bisa melewatkannya sampai sekarang, dan saya berniat mencobanya
Distilasi pengetahuan sangat menarik, tapi menghasilkan triliunan output dari model guru yang besar tampaknya akan sangat mahal
Saya penasaran apakah ini benar-benar lebih efisien dari sisi biaya dibanding memakai sumber daya komputasi itu untuk langsung melatih model dengan lebih banyak data atau lebih banyak epoch
Rasanya baru 6 bulan lalu semua orang takut pada model collapse, tapi sekarang pembuatan data latih sintetis dan model guru sedang tren
Saya penasaran apakah masalah model collapse ini sudah terpecahkan
Model murid menghasilkan sekuens, lalu model guru memberi umpan balik dalam bentuk logit
Saya penasaran dengan cara penggunaan token spesial yang eksplisit
Apa yang terjadi jika pengguna memasukkan token semacam itu ke dalam pesan, apakah ini bisa memudahkan hal seperti "abaikan instruksi sebelumnya"
Apakah input memang perlu disanitasi sendiri sebelum dikirim ke model
Kalau Anda bisa mengendalikan tokenizer, Anda bisa mencegah token seperti itu muncul dari input pengguna
Misalnya, alih-alih token spesial, buat menjadi encoding alami dari string itu seperti "<", "eos", ">"
Tokenizer llama3 punya opsi untuk mengendalikan tokenisasi token spesial: https://github.com/meta-llama/llama3/blob/bf8d18cd087a4a0b3f...
Cara menggabungkan token spesial dan input pengguna bisa dilihat di sini: https://github.com/meta-llama/llama3/blob/bf8d18cd087a4a0b3f...
Kalau Anda tidak bisa mengendalikan tokenizer, sepertinya memang harus disanitasi dari input seperti yang Anda katakan
Saya penasaran seberapa besar percepatan pelatihan dengan distilasi jika diukur dari jumlah iterasi yang dibutuhkan untuk mencapai tingkat performa tertentu
Saya ingin tahu apa yang dimaksud dengan unsafe di sini
Jadi ukurannya dua kali Phi 3 tapi jauh lebih buruk?
Saya tidak yakin apa yang saya lewatkan
Phi-3 pada dasarnya adalah terobosan dalam pembelajaran kurikulum
Ia mendapat hasil bagus dengan menyaring set pelatihan menjadi token berkualitas tinggi dan melatih dengan data sintetis
Gemma-2 adalah terobosan dalam distilasi
Ia mendapat hasil bagus dengan melatih LLM di bawah bimbingan LLM guru yang lebih besar
Tidak ada alasan kenapa keduanya tidak bisa digabungkan
Misalnya, walaupun Phi-3-Medium lebih baik di benchmark, di LMSYS Chatbot Arena ia kalah telak dari Llama-3-8b
Performa Gemma malah tampak cenderung lebih rendah di benchmark
27b saat ini berada di atas Llama3-70b di papan peringkat Chatbot Arena
Di LMSYS, phi-3 small ada di peringkat 52 dengan 1100 ELO, dan interval kepercayaan Gemma 2 9B adalah 1170~1200 ELO, jadi berada di kisaran peringkat 15~25
Bisa dicoba langsung di sini lalu dibandingkan dengan cara seperti itu: https://aistudio.google.com/app/prompts/new_chat?model=gemma...
Penasaran apakah kamu sudah mencoba Phi 3
Memang cerdas jadi hasil benchmark-nya bagus, tapi untuk percakapan atau chatbot tidak terlalu bagus
Gemma 2 sepertinya akan menjadi asisten serbaguna yang lebih baik bagi kebanyakan orang, sedangkan Phi 3 tampak lebih seperti LLM kecil yang solid untuk penggunaan yang lebih spesifik seperti ringkasan, RAG, dan pembelajaran matematika