Teknik RAG Lanjutan Tidak Selalu Lebih Baik. Mereka Hanya Lebih Baik dalam Kondisi Tertentu.

Teknik RAG lanjutan bukanlah peningkatan gratis. Mereka adalah alat dengan berbagai tradeoff.

Saya menguji lima metode retrieval pada pipeline RAG menggunakan dokumentasi Anthropic. Saya ingin melihat mana yang benar-benar sebanding dengan kompleksitasnya.

Berikut adalah temuan saya:

• Dense Retrieval: Baseline. Berjalan dengan baik tetapi melewatkan istilah yang tepat. • Hybrid Search: Menggunakan pencarian dense ditambah kata kunci. Ini menemukan istilah tepat yang dilewatkan oleh dense. Namun, Anda harus memberikan bobot pada hasilnya dengan benar atau sinyalnya akan hilang. • Reranking: Menggunakan cross-encoder untuk memberi skor pada kandidat. Ini membantu ketika chunk yang tepat terkubur terlalu dalam di hasil pencarian. • HyDE: Menggunakan jawaban hipotetis untuk menemukan data. Ini berbahaya. Ini membantu kueri kasual. Namun pada kueri langsung, ini merusak segalanya. Recall turun dari 0,80 menjadi 0,17 dalam satu pengujian. • Contextual Retrieval: Menambahkan ringkasan ke dalam chunk. Ini membantu chunk yang pendek tetapi memakan biaya lebih besar dalam biaya LLM.

Pelajaran terbesar adalah tentang HyDE. Ini bukan alat yang "pasang dan lupakan" (set and forget). Anda sebaiknya hanya menggunakannya ketika kueri pengguna dan dokumen Anda menggunakan "bahasa" yang berbeda. Anda memerlukan router untuk memutuskan kapan harus menggunakannya.

Saya juga belajar sebuah pelajaran tentang pengukuran.

Saya mencoba menggunakan Ragas untuk evaluasi. Itu terlalu lambat. Ia menghabiskan waktu berjam-jam untuk mencoba kembali panggilan yang gagal. Saya memutuskan untuk membangun async harness saya sendiri. Alih-alih 11 jam, evaluasi saya hanya memakan waktu 221 detik.

Jangan menganggap alat AI sebagai black box. Jika sebuah alat lambat atau gagal, lihatlah matematika di baliknya. Bangun solusi Anda sendiri jika perlu.

Pekerjaannya bukan sekadar menambah fitur baru. Pekerjaannya adalah mengukur fitur mana yang layak mendapatkan tempat dalam sistem Anda.

Ringkasan kapan harus menggunakan masing-masing:

  • Hybrid: Gunakan saat kueri bergantung pada parameter yang tepat.
  • HyDE: Gunakan saat kueri disusun dengan buruk.
  • Reranking: Gunakan saat retrieval bersifat luas tetapi tidak akurat.
  • Contextual: Gunakan saat chunk Anda kekurangan konteks.

Berhentilah mengejar "state of the art." Mulailah mengukur hasil Anda.

Sumber: https://dev.to/yogesh23012001/advanced-rag-techniques-arent-better-theyre-better-sometimes-4m2o

Komunitas pembelajaran opsional: https://t.me/GyaanSetuAi