Evaluasi ujung ke ujung LLM

Azure AI services
Pencarian Azure AI
Azure OpenAI Service
Azure Machine Learning

Setelah mencapai fase ini, Anda telah membuat indeks pencarian dan menentukan pencarian apa yang ingin Anda lakukan. Fase ini membahas proses evaluasi solusi Retrieval-Augmented Generation (RAG) Anda dari perspektif mengevaluasi permintaan pengguna yang diharapkan yang berisi data grounding yang diambil terhadap model bahasa besar. Sebelum mencapai fase ini, Anda seharusnya telah menyelesaikan fase persiapan tempat Anda mengumpulkan dokumen dan kueri pengujian, memotong dokumen pengujian Anda, memperkaya gugus, menyematkan gugus, membuat indeks pencarian, dan menerapkan strategi pencarian. Anda harus mengevaluasi masing-masing fase ini dan senang dengan hasilnya. Pada titik ini, Anda harus merasa nyaman bahwa solusi Anda mengembalikan data grounding yang relevan untuk kueri pengguna.

Data grounding ini membentuk konteks untuk perintah yang Anda kirim ke model bahasa besar untuk mengatasi kueri pengguna. Strategi rekayasa prompt berada di luar cakupan artikel ini. Artikel ini membahas evaluasi panggilan rekayasa ke model bahasa besar dari perspektif data grounding. Artikel ini membahas beberapa metrik evaluasi model bahasa besar umum, dan beberapa metrik kesamaan dan evaluasi tertentu yang dapat digunakan dalam perhitungan evaluasi model bahasa besar atau sebagai metrik yang berdiri sendiri.

Artikel ini tidak mencoba memberikan daftar lengkap metrik model bahasa besar atau kesamaan dan metrik evaluasi. Jumlah metrik ini bertambah setiap hari. Yang penting bagi Anda untuk mengambil dari artikel ini adalah bahwa ada berbagai metrik, masing-masing dengan kasus penggunaan mereka sendiri yang berbeda. Anda adalah satu-satunya yang holistik memahami beban kerja Anda. Anda dan ilmuwan data Anda harus menentukan apa yang ingin Anda ukur dan metrik mana yang membantu Anda menyelesaikan tugas tersebut.

Artikel ini adalah bagian dari beberapa seri. Baca pengantar.

Metrik evaluasi model bahasa besar

Ada beberapa metrik yang dapat Anda gunakan untuk mengevaluasi respons model bahasa besar, termasuk groundedness, kelengkapan, pemanfaatan, dan relevansi.

Penting

Respons model bahasa besar tidak deterministik, yang berarti permintaan yang sama ke model bahasa besar dapat dan akan sering mengembalikan hasil yang berbeda. Ini penting untuk dipahami saat menggunakan model bahasa besar sebagai bagian dari proses evaluasi Anda. Pertimbangkan untuk menggunakan rentang target di atas satu target saat mengevaluasi menggunakan model bahasa besar.

Groundedness

Groundedness, kadang-kadang disebut sebagai kesetiaan, mengukur apakah respons sepenuhnya didasarkan pada konteks. Ini memvalidasi bahwa respons tidak menggunakan informasi selain apa yang ada dalam konteks. Metrik groundedness yang rendah menunjukkan bahwa model bahasa besar mungkin melayang ke wilayah imajinatif atau nonsensik yang dikenal sebagai halusinasi.

Menghitung

Mengevaluasi

Jika groundedness rendah, itu menunjukkan bahwa model bahasa besar tidak melihat potongan yang relevan. Anda harus mengevaluasi apakah Anda perlu menambahkan data ke korpus Anda, menyesuaikan strategi potongan atau ukuran gugus, atau menyempurnakan perintah Anda.

Kelengkapan

Kelengkapan mengukur apakah respons menjawab semua bagian kueri. Ini membantu Anda memahami apakah gugus dalam konteks berkaitan dan terkait langsung dengan kueri dan memberikan jawaban lengkap.

Menghitung

  • Dibantu AI: Permintaan Skor Pengambilan
  • Model bahasa besar dapat membantu Anda mengukur kualitas respons model bahasa besar. Anda memerlukan pertanyaan, konteks, dan jawaban yang dihasilkan untuk melakukan ini. Berikut ini menguraikan proses tingkat tinggi:
    1. Gunakan model bahasa besar untuk mengulangi, meringkas, atau menyederhanakan pertanyaan. Ini mengidentifikasi niat.
    2. Minta model untuk memeriksa apakah niat atau jawaban atas niat ditemukan atau dapat berasal dari dokumen yang diambil di mana jawabannya bisa "Tidak", atau "Ya" untuk setiap dokumen. Jawaban yang dimulai dengan "Ya" menunjukkan bahwa dokumen yang diambil relevan dengan niat atau jawaban atas niat.
    3. Hitung rasio niat yang memiliki jawaban yang dimulai dengan "Ya".
    4. Kuadrat skor untuk menyoroti kesalahan.

Mengevaluasi

Jika kelengkapan rendah, mulailah dengan mengevaluasi model penyematan Anda. Bandingkan kosakata dalam konten Anda dengan kosakata dalam model penyematan yang Anda pilih. Tentukan apakah Anda memerlukan model penyematan khusus domain atau Anda perlu menyempurnakan model yang ada. Sebagai langkah selanjutnya, evaluasi strategi potongan Anda. Jika Anda menggunakan panjang tetap, pertimbangkan untuk meningkatkan ukuran gugus Anda. Anda juga dapat mengevaluasi apakah data pengujian Anda memiliki data yang cukup untuk sepenuhnya mengatasi pertanyaan tersebut.

Pemanfaatan

Pemanfaatan mengukur sejauh mana respons terdiri dari informasi dari gugus dalam konteks. Tujuannya adalah untuk menentukan sejauh mana setiap gugus adalah bagian dari respons. Jika pemanfaatan rendah, ini menunjukkan bahwa hasil kami mungkin tidak relevan dengan kueri. Pemanfaatan harus dievaluasi di sepanjang kelengkapan samping.

Menghitung

Anda dapat menggunakan model bahasa besar untuk menghitung pemanfaatan. Anda dapat meneruskan respons dan konteks yang berisi gugus ke model bahasa besar. Anda dapat meminta model bahasa besar untuk menentukan jumlah gugus yang memerlukan jawaban.

Mengevaluasi

Tabel berikut ini menyediakan panduan, mengambil kelengkapan dan pemanfaatan bersama-sama.

Pemanfaatan tinggi Pemanfaatan rendah
Kelengkapan tinggi Tidak ada tindakan yang diperlukan Dalam hal ini, data yang dikembalikan dapat mengatasi pertanyaan, tetapi potongan yang tidak relevan dikembalikan. Pertimbangkan untuk mengurangi nilai parameter top-k untuk menghasilkan hasil yang lebih mungkin/deterministik.
Kelengkapan rendah Dalam hal ini, gugus yang Anda sediakan sedang digunakan, tetapi tidak sepenuhnya mengatasi pertanyaan. Pertimbangkan hal berikut:
  • Tinjau strategi penggugusan Anda untuk meningkatkan konteks dalam gugus
  • Tingkatkan jumlah gugus dengan meningkatkan nilai parameter top-k
  • Evaluasi apakah Anda memiliki gugus yang tidak dikembalikan yang dapat meningkatkan kelengkapan. Jika demikian, selidiki mengapa mereka tidak dikembalikan.
  • Ikuti panduan di bagian kelengkapan
Dalam hal ini, Anda tidak sepenuhnya menjawab pertanyaan dan gugus yang Anda berikan tidak dimanfaatkan dengan baik. Pertimbangkan hal berikut untuk mengatasi masalah ini:
  • Tinjau strategi penggugusan Anda untuk meningkatkan konteks dalam gugus. Jika Anda menggunakan potongan ukuran tetap, pertimbangkan untuk meningkatkan ukuran gugus.
  • Sesuaikan permintaan Anda untuk meningkatkan respons

Relevansi

Mengukur sejauh mana respons model bahasa besar berkaitan dan terkait dengan kueri.

Menghitung

Mengevaluasi

Ketika relevansi rendah, evaluasi hal berikut:

  • Pastikan bahwa potongan yang disediakan untuk model bahasa besar relevan.
    • Tentukan apakah ada gugus layak yang relevan yang tidak dikembalikan. Jika ada, evaluasi model penyematan Anda.
    • Jika tidak ada gugus yang layak, lihat apakah ada data yang relevan. Jika ya, evaluasi strategi potongan Anda.
  • Jika potongan yang relevan dikembalikan, evaluasi permintaan Anda.

Metode evaluasi lain seperti Kelengkapan harus dihitung dan harus menghasilkan skor yang sama dengan yang diamati dalam ukuran relevansi.

Metrik kesamaan dan evaluasi

Seperti disebutkan dalam pengenalan, ada ratusan metrik kesamaan dan evaluasi yang digunakan dalam ilmu data. Beberapa algoritma khusus untuk domain, seperti ucapan ke teks atau bahasa ke terjemahan bahasa. Setiap algoritma memiliki strategi unik untuk menghitung metriknya.

Ilmuwan data menentukan apa yang ingin Anda ukur dan metrik atau kombinasi metrik apa yang dapat Anda gunakan untuk mengukurnya. Misalnya, di area terjemahan bahasa, metrik Bleu memeriksa berapa banyak n-gram yang muncul dalam terjemahan mesin dan terjemahan manusia untuk mengukur kesamaan berdasarkan menggunakan kata yang sama. Kesamaan kosinus menggunakan penyematan antara mesin dan terjemahan manusia untuk mengukur kesamaan semantik. Jika tujuan Anda adalah memiliki kesamaan semantik yang tinggi dan menggunakan kata-kata yang mirip dengan terjemahan manusia, tujuan Anda akan menjadi skor Bleu tinggi dengan kesamaan kosinus yang tinggi. Jika Anda hanya peduli tentang kesamaan semantik, Anda akan fokus pada kesamaan kosinus.

Daftar berikut berisi sampel kecil kesamaan umum dan metrik evaluasi. Perhatikan bahwa metrik kesamaan yang tercantum dijelaskan sebagai berbasis token, berbasis urutan, atau berbasis edit, yang menggambarkan bagaimana metrik tersebut menggunakan pendekatan yang sangat berbeda untuk menghitung kesamaan. Perhatikan juga bahwa daftar berisi tiga algoritma untuk mengevaluasi kualitas terjemahan teks dari satu bahasa ke bahasa lain.

  • Substring umum terpanjang - Algoritma berbasis urutan yang menemukan substring umum terpanjang di antara dua string. Persentase substring umum terpanjang membutuhkan substring umum terpanjang dan membaginya dengan jumlah karakter string input yang lebih kecil atau lebih besar.
  • Subsekuensi umum terpanjang (LCS) - Algoritma berbasis urutan yang menemukan subsekuensi terpanjang antara dua string. LCS tidak mengharuskan suburutan berada dalam urutan berturut-turut.
  • Kesamaan kosinus - Algoritma berbasis token yang menghitung kosinus sudut antara kedua vektor.
  • Jaro Winkler - Edit algoritma berbasis yang menghitung jumlah minimum langkah untuk mengubah satu string menjadi string lainnya.
  • Hamming - Edit algoritma berbasis yang mengukur jumlah minimum substitusi yang diperlukan untuk mengubah satu string ke string lainnya.
  • Jaccard - Algoritma berbasis token yang menghitung kesamaan dengan membagi persimpangan dua string dengan penyatuan string tersebut.
  • Levenshtein - Edit algoritma berbasis yang menghitung kesamaan dengan menentukan jumlah minimum pengeditan karakter tunggal yang diperlukan untuk mengubah satu string ke string lainnya.
  • BLEU - Mengevaluasi kualitas teks yang merupakan hasil terjemahan mesin dari satu bahasa ke bahasa lain. Bleu menghitung tumpang tindih n-gram antara terjemahan mesin dan terjemahan kualitas manusia untuk membuat evaluasi ini.
  • ROUGE - Bandingkan terjemahan mesin satu bahasa dengan bahasa lain dengan terjemahan yang dibuat manusia. Ada beberapa varian ROUGE yang menggunakan tumpang tindih n-gram, skip-bigram, atau sub-urutan umum terpanjang.
  • METEOR - Mengevaluasi kualitas teks yang merupakan hasil terjemahan mesin dengan melihat kecocokan yang tepat, kecocokan setelah stemming, sinonim, parafrastis, dan perataan.

Lihat sumber daya berikut untuk kesamaan umum dan metrik evaluasi:

Dokumentasi, pelaporan, dan agregasi

Anda harus mendokumentasikan hiperparameter yang Anda pilih untuk eksperimen dan metrik evaluasi yang dihasilkan sehingga Anda dapat memahami dampak hiperparameter pada hasil Anda. Anda harus mendokumen hiperparameter dan hasil pada tingkat terperinci seperti penyematan atau evaluasi pencarian dan pada tingkat makro, seperti menguji seluruh sistem secara menyeluruh.

Selama desain dan pengembangan, Anda mungkin dapat melacak hiperparameter dan hasil secara manual. Namun, saat melakukan beberapa evaluasi terhadap seluruh dokumen pengujian Anda dan menguji korpus kueri mungkin melibatkan ratusan eksekusi evaluasi dan ribuan hasil. Anda harus mengotomatiskan kegigihan parameter dan hasil untuk evaluasi Anda.

Setelah hiperparameter dan hasil Anda bertahan, Anda harus mempertimbangkan untuk membangun bagan dan grafik untuk memungkinkan Anda lebih mudah memvisualisasikan efek yang dimiliki pilihan hiperparameter pada metrik. Ini akan membantu Anda mengidentifikasi pilihan mana yang menyebabkan penurunan atau lonjakan performa.

Penting bagi Anda untuk memahami bahwa merancang dan mengevaluasi solusi RAG Anda bukanlah operasi satu kali. Korpus dokumen Anda akan berubah dari waktu ke waktu. Pertanyaan yang diajukan pelanggan Anda akan berubah dari waktu ke waktu dan pemahaman Anda tentang jenis pertanyaan akan berkembang saat Anda belajar dari produksi. Anda harus mengunjungi kembali proses ini lagi dan lagi. Mempertahankan dokumentasi evaluasi masa lalu sangat penting untuk upaya desain dan evaluasi di masa mendatang.

Akselerator Eksperimen RAG

Artikel ini memandu Anda melalui semua fase dan pilihan desain yang terlibat dalam merancang dan mengevaluasi solusi RAG. Artikel berfokus pada apa yang harus Anda lakukan, bukan bagaimana melakukannya. Tim teknik yang bekerja dengan pelanggan teratas Microsoft telah mengembangkan alat bernama RAG Experiment Accelerator. RAG Experiment Accelerator adalah kerangka kerja eksperimen canggih yang dirancang untuk mengoptimalkan dan meningkatkan pengembangan solusi Retrieval Augmented Generation (RAG). RAG Experiment Accelerator memberdayakan peneliti dan pengembang untuk mengeksplorasi dan menyempurnakan komponen penting secara efisien yang mendorong performa RAG, pada akhirnya mengarah ke pembuatan teks yang lebih akurat dan koheren.

Dengan antarmuka berbasis CLI-nya, Anda dapat dengan mudah bereksperimen dengan berbagai model penyematan, memperbaiki strategi penggugusan, dan mengevaluasi berbagai pendekatan pencarian untuk membuka potensi penuh sistem RAG Anda. Ini memungkinkan Anda untuk fokus pada aspek inti pengembangan RAG sambil mengabstraksi kompleksitas penyetelan hyper-parameter menggunakan konfigurasi sederhana.

Selain itu, kerangka kerja ini memberikan dukungan komprehensif untuk konfigurasi model bahasa besar, memungkinkan Anda untuk mencapai keseimbangan yang sempurna antara kompleksitas model dan kualitas pembuatan. Alat ini memungkinkan Anda untuk menyederhanakan proses eksperimen, menghemat waktu yang berharga, dan secara signifikan meningkatkan performa model RAG Anda.

Baik Anda seorang peneliti berpengalaman yang mendorong batas pemahaman bahasa alami atau profesional industri yang ingin meningkatkan kemampuan pembuatan teks, kerangka kerja eksperimen ini adalah solusi utama untuk mempercepat perjalanan pengembangan RAG Anda. Rangkul masa depan eksperimen RAG dan buka potensi sebenarnya dari model Anda dengan alat mutakhir ini.

Kontributor

Langkah berikutnya