welcomehola!Haii πŸ–οΈAI engineeringdigital solutions
Profile
Rezkydesyafa
Back to Writings
1 views

Improving RAG Accuracy Up to 85% with Contextual Retrieval

Bagaimana teknik Contextual Retrieval buatan Anthropic mengatasi hilangnya konteks pada Hybrid RAG dan meningkatkan akurasi chatbot secara signifikan.

Improving RAG Accuracy Up to 85% with Contextual Retrieval

Salah satu masalah terbesar dalam arsitektur Retrieval-Augmented Generation (RAG) tradisional adalah hilangnya konteks saat dokumen dipotong-potong menjadi partisi kecil (chunking).

Ketika sebuah dokumen hukum, dokumentasi sistem, atau modul finansial dipotong menjadi chunk berisi 300–500 kata, kalimat di dalam chunk tersebut sering kali kehilangan referensi utamanya. Misalnya, klausa tentang "denda keterlambatan 5%" pada Chunk 42 tidak akan berguna jika nama kontrak atau konteks perusahaannya hanya ada di Chunk 1.

Akibatnya, saat pencarian (search/retrieval) dilakukan, pencarian vektor gagal menemukan chunk yang relevan, atau LLM memberikan jawaban yang salah karena mendapat informasi tanpa konteks.

Untuk mengatasi masalah ini, Anthropic memperkenalkan pendekatan bernama Contextual Retrieval. Dengan mengombinasikan teknik ini ke dalam pipeline Hybrid RAG (Vector + BM25/TF-IDF) dan Reranking, akurasi pencarian sistem kami meningkat drastis hingga 85%.


Contextual Retrieval Architecture

Diagram arsitektur gabungan: Preprocessing (Contextual Retrieval + Dual Indexing) dan Runtime (Rank Fusion + Reranking + LLM).


1. Problem Utama Naive RAG: Context Loss

Pada pipeline RAG standar:

  1. Dokumen mentah di-chunk berdasarkan panjang karakter / token.
  2. Setiap chunk langsung di-embed menggunakan Embedding Model.
  3. Vector database menyimpan vektor hasil embed.

Masalahnya: Embedding model hanya melihat teks di dalam chunk itu saja. Jika teks di dalam chunk tidak secara eksplisit menyebutkan subjek utama dari dokumen keseluruhan, vektor yang dihasilkan tidak memuat representasi semantik yang akurat.


2. Solusi: Contextual Retrieval (Enrichment Sebelum Embedding)

Prinsip dasar Contextual Retrieval sederhana namun powerful: sebelum di-embed, setiap chunk disisipkan ringkasan konteks utuh dokumennya terlebih dahulu menggunakan LLM.

Mekanisme Preprocessing:

  1. Document-Level Context Prompting: Untuk setiap chunk, buat prompt ke LLM ringan (seperti Claude Haiku / GPT-4o-mini) dengan menyertakan seluruh dokumen dan chunk bersangkutan.
  2. Context Generation: LLM menghasilkan 50–100 kata ringkasan konteks yang menjelaskan posisi dan arti chunk tersebut dalam keseluruhan dokumen.
  3. Chunk Enrichment: Gabungkan teks konteks dengan chunk asli: $$\text{Enriched Chunk} = \text{Context} + \text{Original Chunk}$$
  4. Dual Indexing: Masukkan Enriched Chunk tersebut ke Vector Database (Embeddings) dan TF-IDF / BM25 Index (Lexical Search).

Dengan cara ini, kata kunci umum maupun konsep semantik global tercakup sempurna di dalam setiap chunk.


3. Runtime Pipeline: Hybrid Retrieval + Reranking

Agar performa pencarian maksimal, bagian runtime tidak hanya mengandalkan satu jenis pencarian:

  1. Hybrid Search (Vector + TF-IDF): Query pengguna dikirim ke Vector Database (Semantic Search) dan BM25/TF-IDF Index (Exact Keyword Match) secara paralel.
  2. Rank Fusion (Reciprocal Rank Fusion / RRF): Hasil Top-N dari kedua sistem pencarian digabungkan dan diurutkan ulang.
  3. Reranker (Cross-Encoder): Candidate chunks teratas diproses oleh model Reranker untuk menilai relevansi aktual query terhadap konteks secara lebih presisi, menghasilkan Top-K chunks terbaik.
  4. Generative Model Response: Top-K chunks yang super presisi disuapkan ke LLM utama untuk menghasilkan jawaban akhir.

Kesimpulan

Peningkatan akurasi pencarian hingga 85% tidak dicapai dengan mengganti model LLM yang lebih mahal, melainkan dengan memperbaiki kualitas data yang disuapkan ke retriever.

Dengan menyisipkan konteks dokumen ke tiap chunk (Contextual Retrieval) serta menggabungkan Hybrid Search dan Reranker, chatbot dan search engine tidak lagi kehilangan konteks penting dalam dokumen kompleks.


Referensi & Inspirasi:

Comments

No comments yet. Be the first to share your thoughts.