Langsung ke konten utama
AG·SORA
Teknologi

Pencarian Semantik dan Vector Search untuk Website dan Aplikasi Bisnis: Embedding, Hybrid Search, dan Evaluasi

Terbit 12 menit bacaDitulis oleh agsora.tech
AG·SORA / BLOGAG·SORATeknologiPencarian Semantik danVector Search untuk Websitedan Aplikasi Bisnis: Embedding,Hybrid Search, dan Evaluasiagsora.tech
Isi artikel

Kotak pencarian adalah salah satu fitur yang paling sering dipakai sekaligus paling sering mengecewakan. Pengunjung mengetik "cara klaim garansi laptop" tetapi halaman yang berjudul "Prosedur pengembalian produk elektronik" tidak muncul karena tidak mengandung kata yang sama persis. Karyawan mencari "kontrak vendor yang berakhir bulan depan" di intranet dan hanya menemukan dokumen dengan kata "kontrak" di judulnya. Pencarian kata kunci tradisional bekerja dengan mencocokkan huruf dan kata, bukan makna. Pencarian semantik dan vector search mencoba memperbaiki hal ini dengan mencocokkan makna: dua kalimat yang berbeda kata tetapi berarti sama dianggap dekat.

Artikel ini menjelaskan cara kerja pencarian semantik dengan bahasa yang bisa dipahami pemilik bisnis dan manajer produk, lalu masuk ke keputusan teknis yang penting: kapan teknologi ini layak dipakai, bagaimana memadukannya dengan pencarian kata kunci, bagaimana menjaga kualitas data dan privasi, dan bagaimana mengukur apakah hasilnya benar-benar lebih baik. Tidak ada klaim angka rekaan; yang diberikan adalah kerangka berpikir dan daftar periksa.

Ringkasan

  • Pencarian semantik mencocokkan makna lewat embedding, sehingga menemukan hasil yang relevan walau kata-katanya berbeda
  • Pencarian kata kunci tetap unggul untuk kode produk, nomor pesanan, nama diri, dan istilah persis; solusi terbaik biasanya hibrida
  • Kualitas pencarian ditentukan lebih oleh kualitas dan struktur dokumen daripada oleh pilihan model atau basis data vektor
  • Hak akses harus diterapkan pada hasil pencarian agar pengguna tidak melihat dokumen yang tidak boleh mereka lihat
  • Ukur dengan kumpulan pertanyaan uji dan metrik sederhana, bukan hanya kesan subjektif
  • Mulailah dari kasus penggunaan kecil yang jelas nilainya, seperti pusat bantuan atau katalog produk
Robot humanoid duduk membaca bahan bacaan sebagai gambaran mesin yang memahami teks
Embedding memungkinkan komputer membandingkan makna teks, bukan hanya kesamaan huruf

Mengapa pencarian kata kunci sering gagal

Mesin pencari klasik membangun indeks kata. Ketika pengguna mengetik kueri, mesin mencari dokumen yang mengandung kata-kata tersebut, lalu mengurutkannya berdasarkan seberapa sering dan seberapa khas kata itu muncul. Pendekatan ini cepat, murah, dan dapat diprediksi. Namun ada beberapa kelemahan yang berulang:

  • **Kesenjangan kosakata**: pengguna menulis "kulkas", dokumen menulis "lemari es"; pengguna menulis "balikin barang", dokumen menulis "pengembalian produk"
  • **Kueri berupa kalimat panjang atau pertanyaan**: "bagaimana cara mengubah alamat pengiriman setelah pesanan dibuat" sulit dipetakan ke satu atau dua kata penting
  • **Salah ketik dan variasi bahasa**: campuran bahasa Indonesia, Inggris, dan singkatan percakapan
  • **Konteks**: kata "apel" bisa buah, merek, atau nama orang
  • **Kueri tanpa hasil**: halaman "tidak ditemukan" yang membuat pengunjung pergi

Pembahasan bagaimana pengunjung mencari barang di toko daring, termasuk filter dan sinonim, ada di pencarian dan filter produk toko online. Pencarian semantik tidak menggantikan semua itu, melainkan menambah kemampuan memahami maksud.

Bagaimana pencarian semantik bekerja

Konsepnya dapat dijelaskan dalam empat langkah.

1. Mengubah teks menjadi embedding

Sebuah model bahasa mengubah potongan teks menjadi daftar angka yang disebut embedding atau vektor. Angka-angka ini adalah "koordinat" makna. Kalimat yang maknanya mirip akan memiliki vektor yang saling berdekatan, sedangkan yang berbeda topik berjauhan. Model embedding dilatih khusus untuk tugas ini dan berbeda dari model percakapan.

2. Menyimpan vektor di indeks

Setiap dokumen dipecah menjadi potongan (chunk), misalnya paragraf atau bagian bab, lalu masing-masing diubah menjadi vektor dan disimpan bersama metadata seperti judul, kategori, bahasa, tanggal, dan hak akses. Penyimpanan ini bisa berupa basis data vektor khusus atau ekstensi vektor pada basis data yang sudah Anda pakai. Untuk koleksi dokumen berukuran kecil hingga menengah, ekstensi pada basis data yang ada sering sudah cukup dan lebih sederhana dioperasikan.

3. Mengubah kueri dan mencari tetangga terdekat

Saat pengguna mengetik kueri, kueri itu diubah menjadi vektor dengan model yang sama, lalu sistem mencari vektor dokumen yang paling dekat. Pada koleksi besar, pencarian tetangga terdekat dilakukan secara aproksimasi agar cepat, dengan sedikit pengorbanan akurasi yang bisa disetel.

4. Mengurutkan dan menampilkan hasil

Hasil teratas ditampilkan, sering dengan potongan teks yang relevan. Banyak sistem menambah langkah pengurutan ulang (re-ranking) memakai model yang lebih teliti untuk memilih beberapa hasil terbaik dari puluhan kandidat. Langkah ini menambah kualitas dengan biaya waktu tambahan.

Pencarian hibrida: menggabungkan kata kunci dan makna

Pencarian semantik bukan peluru perak. Ia lemah pada hal yang justru kuat di pencarian kata kunci: kode produk "SKU-48213", nomor faktur, nama orang atau perusahaan yang tepat, dan istilah teknis yang jarang. Vektor cenderung menganggap "SKU-48213" mirip dengan kode lain, padahal pengguna menginginkan yang persis.

Pendekatan hibrida menjalankan keduanya, lalu menggabungkan skor. Praktiknya:

  • Jalankan pencarian kata kunci dan pencarian vektor secara paralel
  • Gabungkan daftar hasil dengan metode penggabungan peringkat sederhana
  • Beri bobot lebih pada kata kunci bila kueri tampak seperti kode, nomor, atau nama
  • Terapkan filter metadata (kategori, bahasa, tanggal) sebelum atau sesudah pencarian
  • Sediakan penyaring dan pengurutan bagi pengguna, jangan hanya mengandalkan skor otomatis

Pendekatan hibrida biasanya memberi hasil yang lebih stabil daripada salah satu metode saja. Karena itu, banyak proyek yang berhasil tidak mengganti pencarian lama, melainkan memperkayanya.

Kapan pencarian semantik layak dipakai

Pencarian semantik memberi nilai terbesar ketika pengguna mengungkapkan kebutuhan dengan kata-kata yang beragam dan konten Anda berupa teks bebas. Contoh kasus yang cocok:

  • **Pusat bantuan dan basis pengetahuan**: pelanggan bertanya dengan bahasa sehari-hari, artikel ditulis dengan istilah resmi. Hasil yang lebih tepat mengurangi tiket dukungan. Lihat juga [sistem tiket dukungan pelanggan dan SLA](/blog/sistem-tiket-dukungan-pelanggan-dan-sla)
  • **Katalog produk dengan deskripsi kaya**: pencarian "kemeja untuk kantor yang adem" dapat menemukan produk tanpa kata "adem" sama sekali
  • **Dokumen internal**: kebijakan, kontrak, prosedur, dan notulen rapat yang tersebar di banyak folder
  • **Rekomendasi konten terkait**: artikel blog, studi kasus, atau produk serupa
  • **Pencarian lintas bahasa**: sebagian model embedding multibahasa memungkinkan kueri Indonesia menemukan dokumen Inggris
  • **Pencarian di balik asisten AI**: chatbot berbasis pengetahuan perusahaan memakai pencarian semantik untuk mengambil bahan jawaban, seperti dibahas di [chatbot AI berbasis pengetahuan perusahaan dengan RAG](/blog/chatbot-ai-berbasis-pengetahuan-perusahaan-dengan-rag)

Sebaliknya, jika katalog Anda kecil, strukturnya rapi, dan pengguna terutama mencari berdasarkan nama atau kode, pencarian kata kunci yang baik dengan sinonim dan filter sering sudah memadai. Jangan menambah kompleksitas hanya karena teknologinya sedang populer.

Layar komputer menampilkan baris kode program untuk membangun indeks pencarian
Indeks vektor dibangun dari potongan dokumen yang sudah dibersihkan dan diberi metadata

Menyiapkan data: bagian yang paling menentukan

Kesalahan terbesar dalam proyek pencarian adalah menghabiskan waktu memilih model sementara dokumen sumbernya berantakan. Beberapa hal yang perlu dibereskan lebih dulu:

  • **Duplikasi dan versi usang**: jika tiga versi kebijakan yang sama ada di indeks, pengguna mendapat jawaban yang bertentangan. Tandai versi aktif dan keluarkan yang usang
  • **Struktur dokumen**: judul, subjudul, dan ringkasan yang jelas menghasilkan potongan yang bermakna. Dokumen hasil pindai tanpa teks perlu diproses dengan pengenalan karakter dan diperiksa kualitasnya
  • **Ukuran potongan**: terlalu kecil kehilangan konteks, terlalu besar mencampur banyak topik. Mulai dari bagian logis seperti paragraf dengan judulnya, lalu uji
  • **Metadata**: sumber, tanggal, pemilik, bahasa, kategori, dan tingkat akses. Metadata memungkinkan penyaringan dan sitasi
  • **Bahasa dan istilah internal**: singkatan perusahaan dan istilah khusus sebaiknya dicatat dalam daftar sinonim atau dimasukkan ke dalam teks

Panduan kesiapan data lebih umum ada di kesiapan data perusahaan sebelum memulai proyek AI dan kualitas data dan tata kelola data untuk bisnis menengah.

Memilih model embedding dan basis data

Pilihan teknis sebaiknya mengikuti kebutuhan, bukan tren. Beberapa pertimbangan:

  • **Bahasa**: pastikan model mendukung bahasa konten Anda dengan baik, termasuk Indonesia dan istilah campuran. Uji dengan kueri dan dokumen asli Anda
  • **Dimensi dan biaya penyimpanan**: vektor yang lebih panjang menghabiskan lebih banyak ruang dan waktu pencarian
  • **Layanan API atau model yang dijalankan sendiri**: API cloud cepat dipakai, tetapi data dikirim ke pihak ketiga. Model yang dijalankan sendiri memberi kendali data lebih besar dengan beban operasional lebih tinggi. Pertimbangan serupa dibahas di [LLM self-hosted atau API cloud](/blog/llm-self-hosted-atau-api-cloud-memilih-model-ai-untuk-data-bisnis)
  • **Pembaruan model**: jika Anda mengganti model embedding, semua dokumen perlu diindeks ulang karena vektor dari model berbeda tidak bisa dibandingkan. Simpan nama dan versi model di metadata indeks
  • **Skala**: ratusan ribu potongan biasanya dapat ditangani oleh basis data umum dengan dukungan vektor; skala sangat besar dengan lalu lintas tinggi mungkin memerlukan layanan khusus
  • **Fitur pendukung**: penyaringan metadata, pencarian hibrida, dan pembaruan inkremental lebih penting daripada selisih kecil pada skor tolok ukur

Hak akses, privasi, dan keamanan

Pencarian semantik membuat dokumen lebih mudah ditemukan, termasuk dokumen yang seharusnya tidak dilihat orang tertentu. Prinsip dasarnya: hak akses harus ditegakkan pada setiap hasil, bukan hanya pada antarmuka.

  • Simpan tingkat akses atau daftar peran sebagai metadata dan filter hasil berdasarkan identitas pengguna sebelum ditampilkan
  • Jangan mengindeks data sensitif yang tidak diperlukan, seperti nomor identitas atau data kesehatan
  • Catat kueri dengan hati-hati. Kueri bisa memuat informasi pribadi, jadi terapkan retensi dan batasan akses pada log
  • Jika dokumen dikirim ke layanan embedding pihak ketiga, periksa ketentuan penyimpanan dan penggunaan data
  • Waspadai dokumen yang disusupi instruksi tersembunyi ketika hasil pencarian diumpankan ke asisten AI. Risiko ini dibahas di [keamanan aplikasi AI: prompt injection dan kebocoran data](/blog/keamanan-aplikasi-ai-prompt-injection-dan-kebocoran-data)
  • Lindungi endpoint pencarian dari penyalahgunaan dan pengambilan massal dengan pembatasan laju, sebagaimana di [perlindungan bot, scraping, dan serangan otomatis](/blog/perlindungan-bot-scraping-dan-serangan-otomatis-pada-website-bisnis)

Mengukur kualitas pencarian

Tanpa pengukuran, "terasa lebih baik" mudah menipu. Bangun kumpulan evaluasi sederhana:

  • **Kumpulkan kueri nyata**: ambil dari log pencarian, tiket dukungan, atau wawancara pengguna. Sertakan kueri yang pendek, panjang, salah ketik, dan yang selama ini gagal
  • **Tentukan jawaban yang benar**: untuk setiap kueri, tandai satu atau beberapa dokumen yang seharusnya muncul. Libatkan orang yang memahami konten
  • **Pilih metrik sederhana**: apakah dokumen yang benar ada di tiga atau sepuluh hasil teratas, dan seberapa tinggi posisinya
  • **Bandingkan varian**: kata kunci saja, vektor saja, hibrida, dengan dan tanpa pengurutan ulang, ukuran potongan berbeda
  • **Pantau perilaku pengguna**: tingkat kueri tanpa hasil, klik pada hasil teratas, dan seberapa sering pengguna mengubah kueri setelah melihat hasil
  • **Tinjau secara berkala**: konten dan kebiasaan pengguna berubah, sehingga evaluasi perlu diulang

Pendekatan serupa untuk menilai keluaran sistem AI dibahas di evaluasi kualitas output AI dan LLM untuk aplikasi bisnis. Jangan lupa bahwa pencarian yang cepat juga bagian dari pengalaman; ukur latensi bersama kualitas, dan lihat Core Web Vitals untuk website bisnis bila pencarian tertanam di halaman web.

Biaya yang perlu diperhitungkan

Biaya pencarian semantik terdiri dari beberapa komponen yang sebaiknya diperkirakan sejak awal:

  • **Pembuatan embedding** untuk seluruh koleksi dokumen, dan pembaruan saat dokumen berubah
  • **Embedding kueri** setiap kali pengguna mencari
  • **Penyimpanan dan komputasi indeks vektor**
  • **Pengurutan ulang atau pembuatan jawaban** bila memakai model bahasa, yang biasanya komponen paling mahal. Teknik pengendaliannya ada di [mengendalikan biaya AI: token dan inferensi](/blog/mengendalikan-biaya-ai-token-dan-inferensi-untuk-aplikasi-bisnis)
  • **Tenaga kerja** untuk membersihkan data, membuat kumpulan evaluasi, dan merawat indeks

Cara menekan biaya antara lain menyimpan hasil kueri yang sering muncul, memakai pengurutan ulang hanya pada kandidat teratas, dan memilih model embedding yang ukurannya wajar. Untuk perspektif lebih luas tentang memilih pendekatan AI yang sesuai, baca prompt, RAG, atau fine-tuning.

Dampak pada SEO dan pengalaman pengguna

Pencarian di dalam situs memengaruhi konversi, tetapi juga memberi data tentang apa yang dicari pengunjung. Kueri tanpa hasil adalah daftar ide konten yang belum Anda tulis. Kueri populer menunjukkan istilah yang dipakai audiens, yang berguna untuk judul dan deskripsi halaman. Perlu dicatat bahwa halaman hasil pencarian internal umumnya tidak perlu diindeks mesin pencari; gunakan arahan yang sesuai agar tidak menghasilkan ribuan halaman tipis. Pembahasan arah pencarian modern dan dampaknya ada di pencarian berbasis AI dan masa depan SEO website bisnis.

Langkah implementasi yang realistis

Pendekatan bertahap mengurangi risiko dan membuktikan nilai lebih cepat:

  • **Minggu-minggu awal**: pilih satu kasus, misalnya pusat bantuan. Kumpulkan seratusan kueri nyata dan tentukan jawaban benar
  • **Tahap dasar**: rapikan dokumen, buat potongan dan metadata, bangun indeks, dan ukur dengan pencarian kata kunci yang ada sebagai pembanding
  • **Tahap hibrida**: gabungkan kata kunci dan vektor, tambahkan filter dan pengurutan ulang bila perlu
  • **Tahap produksi**: terapkan hak akses, pemantauan, pembaruan inkremental saat dokumen berubah, dan alur umpan balik pengguna
  • **Perluasan**: tambah sumber konten lain dan, bila relevan, hubungkan ke asisten AI atau sistem lain lewat integrasi standar seperti [Model Context Protocol](/blog/model-context-protocol-mcp-menghubungkan-ai-dengan-sistem-bisnis)

Gunakan rilis bertahap dan sakelar fitur agar Anda bisa kembali ke pencarian lama bila ada masalah, seperti dibahas di feature flag dan rilis bertahap.

Kesalahan umum

  • Mengganti pencarian lama sepenuhnya tanpa pembanding sehingga kemunduran tidak terdeteksi
  • Mengindeks semua dokumen tanpa membersihkan duplikat dan versi usang
  • Mengabaikan hak akses pada hasil pencarian
  • Memilih model hanya dari peringkat umum tanpa menguji pada bahasa dan konten sendiri
  • Tidak menyimpan versi model embedding sehingga sulit melakukan migrasi
  • Menganggap pencarian semantik cocok untuk semua jenis kueri, termasuk kode dan nomor
  • Tidak menyediakan jalan keluar bagi pengguna, seperti filter, pengurutan, dan tombol hubungi kami saat tidak ada hasil

Pertanyaan yang sering diajukan

Apakah pencarian semantik membutuhkan AI generatif?

Tidak. Pencarian semantik memakai model embedding, yang berbeda dari model yang menyusun jawaban. Anda dapat menampilkan daftar hasil biasa tanpa AI generatif. Model generatif hanya diperlukan bila Anda ingin ringkasan atau jawaban langsung.

Apakah bisa dipakai untuk bahasa Indonesia dan campuran bahasa?

Bisa, selama model embedding mendukung bahasa tersebut dengan baik. Kualitasnya berbeda antar model, jadi uji dengan kueri dan dokumen nyata Anda, termasuk singkatan dan bahasa percakapan, sebelum memutuskan.

Apakah harus membeli basis data vektor khusus?

Belum tentu. Untuk koleksi kecil hingga menengah, ekstensi vektor pada basis data yang sudah ada sering cukup. Layanan khusus layak dipertimbangkan bila skala, kecepatan, atau fitur yang Anda perlukan melampaui kemampuan tersebut.

Berapa banyak dokumen yang dibutuhkan agar layak?

Tidak ada ambang pasti. Nilai muncul ketika pengguna kesulitan menemukan informasi yang sebenarnya ada. Jika dokumen hanya puluhan halaman dengan struktur jelas, navigasi yang baik mungkin lebih efektif.

Bagaimana menjaga indeks tetap mutakhir?

Rancang alur pembaruan inkremental: saat dokumen dibuat, diubah, atau dihapus, potongan terkait diindeks ulang atau dihapus dari indeks. Jadwalkan juga pemeriksaan berkala untuk menangkap perubahan yang terlewat.

Bagaimana dengan dokumen yang sangat sensitif?

Kecualikan dari indeks bila tidak perlu dicari, atau gunakan model yang dijalankan di lingkungan Anda sendiri dengan kontrol akses ketat. Libatkan pihak keamanan dan hukum sebelum mengindeks data pribadi atau rahasia.

Kesimpulan

Pencarian semantik membuat sistem memahami maksud pengguna, bukan sekadar mencocokkan kata. Nilainya paling besar bila dipadukan dengan pencarian kata kunci, ditopang data yang bersih dan metadata yang baik, dilindungi hak akses yang tegas, serta dievaluasi dengan kumpulan uji nyata. Mulailah dari satu kasus yang jelas manfaatnya, ukur sebelum dan sesudah, lalu perluas dengan hati-hati.

Tingkatkan kualitas pencarian di website dan aplikasi Anda

Agsora membantu merancang dan membangun pencarian semantik dan hibrida, dari persiapan data hingga evaluasi dan keamanan. Ceritakan kebutuhan pencarian Anda dan kami siapkan rekomendasi awal.

Konsultasi gratis

Checklist gratis: memilih software house

24 poin untuk menilai calon vendor sebelum menandatangani kontrak. Bisa disimpan sebagai PDF.

Ambil checklist

Siap membangun sistem yang tumbuh bersama bisnis Anda?

Diskusikan kebutuhan Anda dengan tim AG·SORA, tanpa biaya, tanpa komitmen.