osFoundry / Platform
Diversifikasi MMR
Maximal Marginal Relevance memilih hasil yang mencakup sudut berbeda, bukan hanya kecocokan teratas.
Apa itu
Diversitas MMR adalah tahap retrieval di osFoundry yang menerapkan Maximal Marginal Relevance ketika knowledge base Anda dikueri. Peringkat berdasarkan relevansi semata punya kelemahan yang sudah dikenal: hasil teratas sering kali nyaris duplikat satu sama lain, karena semuanya cocok dengan kueri dengan cara yang sama. Jika lima chunk mengulang paragraf yang sama, empat di antaranya membuang ruang context window dan model tidak pernah melihat sudut kedua atau ketiga dari pertanyaan itu. MMR memperbaikinya dengan menilai tiap kandidat berdasarkan dua hal, yaitu relevansinya terhadap kueri dan ketidakmiripannya dengan chunk yang sudah terpilih, lalu memilih hasil yang relevan *sekaligus* saling berbeda.
Di dalam osFoundry, MMR adalah salah satu tahap dalam pipeline RAG khusus yang Anda bangun per Path chat di osStudio. Sebuah kueri pertama-tama melewati retrieval hibrida (pencarian embedding plus pencarian kata kunci BM25); setelah itu Anda dapat menambahkan tahap filter dan rerank, lalu menempatkan MMR sesudahnya agar ia mendiversifikasi kumpulan kandidat yang sudah berkualitas tinggi. Tahap ini menyediakan kontrol MMR standar: parameter lambda yang bergeser antara relevansi murni dan diversitas murni, ukuran candidate pool tempatnya memilih, dan berapa banyak chunk yang dikirimkannya ke prompt. Karena setiap tahap adalah konfigurasi terversi yang divalidasi JSON Schema, sebuah Path chat kode dan sebuah Path customer success bisa mendiversifikasi secara berbeda, dan Anda dapat me-rollback suatu perubahan tanpa menyentuh kode sumber.
Hal ini paling terasa pada pertanyaan yang luas atau ambigu, dan pada korpus dengan kosakata yang tumpang tindih, di mana hit embedding teratas mengelompok rapat. MMR menukar sedikit relevansi mentah top-1 demi cakupan, yang biasanya menghasilkan jawaban yang lebih berlandasan, karena model melihat rentang isi yang benar-benar ada di dalam knowledge base. Ini tetap konsisten dengan sikap BYOK dan local-first osFoundry: retrieval dan diversifikasi berjalan di workspace Anda, embedding melewati proxy Voyage terkelola atau key milik Anda sendiri, dan tidak ada biaya per kursi yang mengunci pipeline.
Kemampuan utama
- Menambahkan tahap MMR (Maximal Marginal Relevance) ke pipeline retrieval Anda yang menyeimbangkan relevansi terhadap redundansi, sehingga hasil teratas mencakup sudut yang berbeda alih-alih mengulang match teratas
- Konfigurasikan MMR per Path di osStudio: atur trade-off lambda antara relevansi dan diversitas, ukuran candidate pool, serta berapa banyak chunk final yang diteruskan ke prompt
- Dirangkai setelah tahap retrieve, filter, dan rerank, sehingga MMR mendiversifikasi kumpulan kandidat yang sudah terperingkat, bukan hit embedding mentah
- Berjalan pada hasil retrieval hibrida embedding + BM25, dengan embedding Voyage tersedia lewat proxy terkelola atau key Anda sendiri di bawah BYOK
- Setiap konfigurasi MMR adalah konfigurasi osStudio yang divalidasi JSON Schema dan terversi dengan rollback, sehingga berbagai permukaan chat dapat mendiversifikasi secara berbeda tanpa perubahan kode sumber
Kasus penggunaan
- Support engineer: sebuah pertanyaan troubleshooting yang luas mengembalikan lima chunk nyaris identik; MMR mengisi slot dengan penyebab yang berbeda-beda agar jawaban mencakup lebih dari satu mode kegagalan
- Peneliti: mengueri kumpulan dokumen besar di mana hit embedding teratas mengelompok pada satu bagian; MMR memunculkan bagian-bagian dari berbagai bagian korpus untuk sintesis yang lebih utuh
- Pembangun pipeline osStudio: menyetel lambda MMR pada Path chat kode untuk relevansi yang ketat sambil membiarkan Path discovery lebih beragam, semuanya sebagai konfigurasi terversi dengan rollback
Pertanyaan yang sering diajukan
Apa itu Maximal Marginal Relevance (MMR) dan mengapa saya perlu menambahkannya ke RAG?
MMR adalah metode seleksi yang memeringkat pasase kandidat berdasarkan relevansi terhadap kueri sambil memberi penalti pada kemiripan dengan pasase yang sudah dipilih. Anda menambahkannya ketika hasil retrieval teratas Anda cenderung nyaris duplikat: tanpa MMR, pertanyaan yang luas bisa mengembalikan lima chunk yang mengatakan hal yang sama, dan model hanya melihat satu sudut. MMR mempertahankan chunk paling relevan tetapi mengisi slot sisanya dengan pasase yang berbeda dan saling melengkapi.
Bagaimana cara mengaktifkan diversitas MMR di osFoundry?
MMR adalah tahap dalam pipeline RAG khusus yang Anda konfigurasikan per Path chat di osStudio. Anda menambahkan tahap MMR setelah tahap retrieve, filter, dan rerank opsional, lalu mengatur lambda-nya (trade-off relevansi versus diversitas), candidate pool yang menjadi sumbernya, dan jumlah chunk final. Konfigurasinya divalidasi JSON Schema dan terversi, sehingga Anda bisa menyetelnya, mengujinya pada satu Path, dan me-rollback bila perlu.
Apa bedanya MMR dengan reranker?
Reranker menilai ulang kandidat murni berdasarkan seberapa baik masing-masing cocok dengan kueri, sehingga meningkatkan presisi top-k. MMR mengoptimalkan tujuan yang berbeda: ia memaksimalkan relevansi sambil meminimalkan redundansi di seluruh set yang terpilih. Keduanya saling melengkapi: di osFoundry Anda biasanya rerank dulu untuk mendapatkan kandidat yang paling cocok, lalu menerapkan MMR agar chunk yang diteruskan mencakup aspek yang berbeda alih-alih mengulang satu match terbaik saja.