Dipublikasikan: 30 Oktober 2024
Mem-build fitur dengan model bahasa besar (LLM) sangat berbeda dengan rekayasa software konvensional. Developer perlu mempelajari teknik prompt untuk menangani hasil non-deterministik, input prapemrosesan, dan hasil pascapemrosesan.
Salah satu tantangan yang telah Anda sampaikan kepada kami adalah menguji output dari LLM, menentukan validitas dan kualitas, memerlukan waktu yang lama. Developer sering kali menggunakan batch untuk menghasilkan output menggunakan input yang berbeda, lalu memvalidasinya secara manual menggunakan penilaian manusia.
Pendekatan yang lebih skalabel untuk mengevaluasi hasil berbagai model dan perintah adalah teknik LLM sebagai hakim. Dengan teknik ini, validasi model didelegasikan ke LLM lain, bukan mengandalkan penilaian manusia. LLM kedua harus merupakan LLM berbasis cloud yang lebih besar, yang mungkin memiliki kemampuan penalaran yang lebih baik.
Dalam dokumen ini, kami menggunakan peringkasan untuk menunjukkan cara Anda dapat membandingkan berbagai model dan, sebagai bonus, menunjukkan peningkatan kualitas dari Gemma ke Gemma 2.
Memilih model untuk perbandingan dan menyiapkan data
Kami mengevaluasi kemampuan tiga model dalam perangkuman. Kami membandingkan hasil dari dua model terbuka Google yang dapat menjalankan sisi klien, Gemma dan Gemma 2, keduanya dalam ukuran parameter 2 miliar. Sebagai kontras, kami juga mengevaluasi model berbasis cloud yang lebih besar dan lebih mampu: Gemini 1.5 Flash.
Kami menggunakan set data 2.225 artikel BBC, yang mencakup bidang seperti bisnis, hiburan, politik, olahraga, dan teknologi, serta membuat ringkasan dari setiap artikel, menggunakan masing-masing model yang dipilih. Perintah yang sama digunakan di semua model:
Rangkum artikel dalam satu paragraf.
Kami menyimpan artikel asli dan menghasilkan ringkasan dalam database sehingga dapat dengan mudah diakses pada setiap langkah.
Memilih juri untuk menganalisis dan menilai ringkasan
Untuk menganalisis kualitas ringkasan, kami menggunakan Gemini 1.5 Flash untuk menilai ringkasan yang dibuat oleh Gemma 2B dan Gemma 2 2B. Pendekatan spesifik kami didasarkan pada penyelarasan, yang merupakan bagian dari metrik ringkasan DeepEval.
Penyesuaian adalah metrik yang mengukur frekuensi pernyataan yang disertakan dalam ringkasan didukung dalam konten asli yang menjadi dasar ringkasan.
Kami membagi proses evaluasi menjadi dua langkah. Pertama, kita meminta model untuk membagi setiap ringkasan menjadi pernyataan terpisah. Kemudian, kami memerintahkan model tersebut untuk menentukan apakah setiap pernyataan didukung oleh teks artikel asli.
Mengekstrak pernyataan dari ringkasan
Kami meminta Gemini 1.5 Flash untuk membagi teks yang lebih panjang menjadi pernyataan terpisah. Contoh:
Bek Everton David Weir meremehkan pembicaraan tentang sepak bola Eropa, meskipun timnya berada di posisi kedua di Premiership setelah mengalahkan Liverpool.
Gemini 1.5 Flash membagi kalimat ini menjadi pernyataan berikut:
- "David Weir bermain sebagai bek untuk Everton."
- "Everton saat ini berada di posisi kedua di Premiership."
- "Everton mengalahkan Liverpool dalam pertandingan terakhir."
- "David Weir telah meminimalkan diskusi tentang Everton yang bermain di sepak bola Eropa."
Memvalidasi pernyataan
Kemudian, kami meminta Gemini 1.5 Flash untuk menganalisis kalimat asli, dibandingkan dengan pernyataan yang dipisah. Model ini mengklasifikasikan validitas setiap pernyataan sebagai:
- Ya: Pernyataan didukung oleh teks asli.
- Tidak. Pernyataan tersebut bertentangan dengan teks aslinya.
- IDK. Tidak dapat diverifikasi apakah pernyataan tersebut didukung atau bertentangan dengan teks aslinya.
Analisis hasil
Proses ini menghasilkan dua metrik yang dapat digunakan untuk membandingkan model:
- Penyesuaian: Seberapa sering model menghasilkan ringkasan yang berisi pernyataan yang didukung oleh teks asli.
- Kekayaan: Jumlah rata-rata pernyataan yang terdapat dalam ringkasan yang dihasilkan oleh model.
Perataan
Kami menghitung kesesuaian dengan menghitung jumlah ringkasan yang memiliki setidaknya satu pernyataan yang ditandai sebagai "Tidak", dan membaginya dengan jumlah total ringkasan.
Model Gemini 1.5 Flash memiliki skor perataan tertinggi, melebihi 92%. Artinya, AI ini sangat baik dalam berpegang pada fakta dan menghindari mengada-ada.
Gemma 2 2B memiliki skor yang baik sebesar 78,64%, yang menunjukkan tingkat akurasi yang baik. Sementara itu, Gemma 2B versi sebelumnya memiliki skor perataan yang lebih rendah, yang berarti lebih cenderung untuk menyertakan informasi yang tidak didukung oleh teks aslinya.
Kekayaan
Kami menghitung kekayaan model dengan menghitung rata-rata jumlah pernyataan yang dihasilkan oleh model untuk setiap ringkasan.
Gemma 2 2B memiliki skor kekayaan tertinggi sebesar 9,1, yang menunjukkan bahwa ringkasannya menyertakan lebih banyak detail dan poin penting. Model Flash Gemini 1.5 juga memiliki skor kekayaan yang tinggi, melebihi 8,4. Gemma 2B memiliki skor kekayaan yang lebih rendah, yang menunjukkan bahwa Gemma 2B mungkin tidak menangkap informasi penting sebanyak dari teks asli.
Kesimpulan
Kami memutuskan bahwa model yang lebih kecil yang mampu menjalankan sisi klien, seperti Gemma 2 2B, dapat menghasilkan output berkualitas tinggi. Meskipun model berbasis cloud, seperti Gemini 1.5 Flash, sangat andal dalam menghasilkan ringkasan yang selaras dengan artikel asli, yang memuat sejumlah besar informasi, perbedaannya harus dipertimbangkan bersama dengan performa aplikasi, kebutuhan privasi dan keamanan, serta pertanyaan lain yang mungkin Anda ajukan saat menentukan apakah Anda harus membuat AI sisi klien.
Terdapat evolusi yang jelas dalam kemampuan kelompok model Gemma, karena Gemma 2 2B mampu menghasilkan ringkasan yang lebih kaya dan lebih selaras daripada Gemma 2B.
Mengevaluasi kasus penggunaan Anda
Dokumen ini hanya membahas hal-hal umum yang dapat dilakukan dengan LLM sebagai teknik penilaian. Meskipun dengan ringkasan, Anda dapat melihat lebih banyak metrik dan hasilnya mungkin berbeda. Misalnya, Anda dapat mengevaluasi cakupan dengan menggunakan perintah untuk mengidentifikasi poin-poin penting dari artikel, lalu menggunakan perintah lain untuk memvalidasi apakah poin-poin penting tersebut tercakup dalam setiap ringkasan.
Kasus penggunaan lainnya, seperti menulis teks, menulis ulang teks, atau retrieval-Augmented Generation (RAG) mungkin memiliki hasil yang berbeda untuk metrik yang sama atau harus menggunakan metrik lain untuk evaluasi.
Saat menerapkan pendekatan ini, pikirkan bagaimana manusia akan mengevaluasi output untuk menentukan metrik mana yang terbaik untuk kasus penggunaan Anda. Sebaiknya Anda juga memeriksa framework yang ada, seperti DeepEval, yang mungkin sudah memiliki sekumpulan metrik yang sesuai untuk kasus penggunaan Anda.
Sudahkah Anda menerapkan LLM sebagai juri untuk mengevaluasi model? Tweetkan temuan Anda kepada kami di @ChromiumDev atau bagikan ke Chrome untuk Developer di LinkedIn.