Query Rewriting: Otak Kecil Sebelum Agent Pakai Mesin Pencari
Agent disuruh mencari "nano banana"? Tanpa query rewriting, hasil pencarian bisa dua dunia. Ini 5 pola rewrite yang saya pasang di agent.
Ringkasan
Query ambigu seperti "nano banana" bisa mengacaukan riset otomatis sejak awal, jadi penulis mewajibkan lima variasi: literal, disambiguasi konteks, Inggris, sinonim industri, dan pertanyaan penuh. Semua dieksekusi lalu hasilnya digabung, dan karena agent sendiri yang menulis ulang, biayanya nyaris nol. Aturan ini sudah dipakai di chat dan cron riset sebagai jejak audit, meski efeknya belum ada benchmark.
Satu query, dua dunia makna
Kemarin, di tengah sesi merancang alat riset, muncul pertanyaan sederhana: apa yang terjadi kalau agent disuruh mencari "nano banana"? Di sesi yang sedang membahas model AI, maksudnya jelas: nama panggilan model image Google. Dibaca tanpa konteks, itu buah di pasar. Query tiga kata, dua dunia makna, dan mesin pencari tidak pernah tahu sedang diajak bicara soal yang mana.
Kasus kecil, tapi menyerang titik paling rapuh di pipeline riset otomatis: tahap paling awal, sebelum crawler dan ranking dijalankan. Perplexity menyebut tahap ini intent parsing dan menaruhnya di posisi pertama dari enam tahap pipeline mereka (Ziptie). LangChain memformalkan idenya di MultiQueryRetriever: LLM menulis beberapa varian query, semuanya dieksekusi, hasilnya digabung sebagai union unik (dokumentasi resmi). Bahwa retrieval bisa gagal bukan spekulasi. Anthropic mengukur RAG tradisional yang membuang konteks saat encoding sering gagal menemukan informasi relevan, dan perbaikan khusus di tahap retrieval menurunkan tingkat kegagalannya sampai 49% (Anthropic). Angka itu diukur di RAG dokumen internal, bukan web search. Tapi arah masalahnya sama: yang rusak bukan mesinnya, tapi apa yang diberikan ke mesin di detik pertama.
Lima pola yang saya pasang
Saya tidak menyewa LLM tambahan untuk menulis ulang query. Yang dipasang justru aturan perilaku di AGENTS.md project dan skill riset: setiap query mentah dari user wajib dikembangkan menjadi lima variasi sebelum satu pun pencarian dijalankan, dan bahan bakunya adalah konteks percakapan sesi yang sedang berjalan. Untuk "nano banana" di sesi yang sedang bahas AI image, hasilnya begini.
| Pola | Contoh query |
|---|---|
| Literal | nano banana |
| Disambiguasi entitas dari konteks | "nano banana" Gemini image model |
| Versi Inggris | nano banana Google image model |
| Sinonim industri | AI image generation model nickname |
| Pertanyaan penuh | what is nano banana in AI? |
Kelima variasi dieksekusi semua, hasil digabung, URL duplikat dibuang. Kenapa lima, bukan satu yang diperhalus? Karena tiap pola menutup jenis kegagalan yang berbeda. Literal menjaga kemungkinan user memang mau yang non-teknis. Disambiguasi menangkap kasus nama panggilan seperti di atas. Versi Inggris mengakui kenyataan bahwa sumber primer jarang ditulis dalam bahasa Indonesia. Sinonim industri mengejar istilah yang dipakai para praktisi, dan pertanyaan penuh cocok untuk forum tempat jawaban sering nangkring.
Dua pagar pengaman menahan aturan ini jadi pemborosan. Pertama, query yang sudah spesifik delapan kata ke atas cukup dua sampai tiga variasi; memaksa lima justru menambah noise. Kedua, kalau dua makna yang mungkin terlalu jauh, agent boleh bertanya balik. Menebak lima kali untuk pertanyaan yang bisa diklarifikasi sekali itu bukan kecerdasan, itu keras kepala.
Efek di agent, dan batas jujurnya
Aturan ini kini hidup di dua tempat sekaligus. Di chat, query ambigu tercakup tanpa user harus menjelaskan ulang maksudnya. Di cron riset artikel, aturan yang sama menempel di skill riset, jadi pipeline otomatis memakai kebiasaan yang sama dengan riset manual. Setiap dossier riset kini mencatat lima query yang dipakai sebagai jejak audit: kalau hasilnya meleset, kelima query itulah yang diperiksa pertama.
Biayanya nyaris nol. Tidak ada API call tambahan; yang menulis ulang query adalah agent itu sendiri, pakai kepalanya. Yang bertambah hanya jumlah pencarian, maksimal lima kali lipat, dan hanya untuk query yang memang ambigu.
Yang belum saya punya: angka. Belum ada studi publik yang mengukur efek query rewriting khusus di web search agent, jadi saya tulis apa adanya. Ini keputusan desain yang berdiri di atas mekanisme yang sudah terbukti di RAG, bukan hasil benchmark. Risiko yang paling diwaspadai justru over-expansion: lima pencarian untuk query yang sebenarnya sudah jelas berarti lima kali lebih banyak halaman untuk difilter. Kalau nanti aturan ini sering meleset karena bergantung pada disiplin model, rencana lanjutannya sudah siap: pindahkan logikanya ke skrip terpisah dengan model lokal, biar deterministik dan bisa diuji. Untuk sekarang, lima pola ini membuat ketidakjelasan jadi tercakup, bukan ditambah.