RAG untuk Agent: Mendasarkan Jawaban Tanpa Tenggelam di Konteks
Retrieval-augmented generation biasanya diperkenalkan sebagai pipeline: sematkan pertanyaan, ambil potongan teratas, tempel, hasilkan. Itu bekerja untuk kotak tanya jawab. Di dalam agent bentuknya salah, karena agent belum tahu apa yang dibutuhkannya sampai ia mengambil satu langkah.
Versi yang berhasil memperlakukan retrieval sebagai alat yang dipanggil agent ketika ia memutuskan butuh bukti — kadang dua kali dengan kueri berbeda, kadang tidak sama sekali. Satu perubahan itu menghapus banyak konteks tak relevan.
Retrieval sebagai alat, bukan pembuka#
Sajikan pencarian sebagai alat biasa dengan argumen kueri dan kembalian kecil terstruktur: beberapa paragraf, masing-masing dengan pengenal dan sumber. Agent memutuskan kapan memanggilnya, bisa memperhalus kueri setelah melihat hasilnya, dan bisa memanggil alat lain bila jawabannya berupa data terstruktur.
Catat kueri yang ditulis agent. Itu deskripsi paling jujur tentang apa yang sebenarnya ditanyakan pengguna Anda.
Keputusan pemotongan lebih penting daripada model embedding#
- Pisahkan menurut struktur — judul, bagian, butir daftar — bukan jumlah karakter tetap.
- Jaga tiap potongan berdiri sendiri.
- Lampirkan judul dokumen dan judul bagian ke tiap potongan.
- Simpan pengenal dan URL agar jawaban bisa menunjuk sumbernya.
- Lebih baik sedikit potongan besar yang bermakna; tumpang tindih hanyalah tambalan.
Hibrida mengalahkan vektor murni pada korpus nyata#
| Jenis kueri | Pencarian vektor | Kata kunci | Terbaik |
|---|---|---|---|
| Pertanyaan konseptual | Kuat | Lemah | Vektor |
| Kode produk atau teks galat persis | Lemah | Kuat | Kata kunci |
| Nama diri langka | Campuran | Kuat | Kata kunci |
| Pertanyaan kebijakan yang diparafrase | Kuat | Lemah | Vektor |
| Trafik nyata secara keseluruhan | Campuran | Campuran | Keduanya, digabung dan diurut ulang |
Minta mengutip, dan izinkan gagal#
Dua syarat mengerjakan sebagian besar keandalan. Pertama, tiap klaim dari retrieval membawa pengenal paragrafnya dan antarmuka Anda menjadikannya tautan. Kedua, pencarian harus boleh mengembalikan kosong, dan agent harus diajari bahwa `saya tak menemukannya di dokumentasi kami` adalah hasil yang benar. Agent yang tak boleh gagal saat mencari akan mengarang.
Pertanyaan yang sering diajukan
Haruskah agent selalu mencari sebelum menjawab?
Tidak. Mencari di tiap permintaan memboroskan latensi dan memenuhi konteks pada pertanyaan yang tak butuh bukti.
Berapa paragraf yang dikembalikan?
Tiga sampai enam yang terpilih baik mengalahkan dua puluh.
Bagaimana kalau retrieval tak mengembalikan yang berguna?
Itu harus jadi hasil yang didukung. Kembalikan kosong eksplisit dan minta agent mengatakannya lalu menawarkan langkah berikutnya.
rag untuk agentretrieval augmented generationpencarian hibridastrategi pemotonganjawaban berdasar