Embedding Bahasa yang Hanya Dipahami oleh AI

Pernah nggak sih kamu heran kenapa AI kayak ChatGPT bisa jawab pertanyaan dengan lancar, meskipun kita tulis pakai bahasa campur-campur?
Faktanya, mesin itu buta huruf. Mereka nggak ngerti arti kata "kucing" atau "anjing". Yang mereka pahami hanyalah angka. Nah, proses mengubah teks jadi angka-angka inilah yang namanya embedding.
Anggap Saja Peta 3D, Tapi Dimensinya Ratusan
Bayangkan kita punya peta. Di peta ini:
- Kucing dan Anjing duduk bareng karena mirip (hewan peliharaan).
- Mobil balap ada di ujung lain karena beda banget.
Nah, embedding AI modern itu nggak cuma peta 3D, tapi peta dengan ratusan hingga ribuan dimensi. Otak kita nggak mungkin ngegambarinnya, tapi di ruang itulah AI mengukur kemiripan makna.
Caranya? Pakai kesamaan kosinus (ukur sudut antar vektor, bukan jarak lurus). Makanya, kata "kemeja merah" dan "baju marun" punya koordinat yang hampir nempel, meskipun hurufnya beda jauh.
Pengalaman Saya di Proyek Nyata
Beberapa waktu lalu, saya membangun sistem otomatis customer service multi-tenant. Stack-nya:
- Frontend: Next.js
- Backend: Laravel (buat yang monolitik)
- Database vektor: PostgreSQL + ekstensi
pgvector - ORM: Drizzle, jalan di atas Bun
Awalnya saya pikir cukup pakai database relasional biasa. Ternyata salah besar. Menyimpan 1.500 angka desimal presisi tinggi per baris data untuk jutaan produk itu nggak bisa pakai kolom text biasa.
Untungnya pgvector datang sebagai penyelamat. Migrasi skema harus ekstra hati-hati, karena tipe data vektor ini sensitif. Kalau asal pindah, struktur tabel yang sudah mapan bisa berantakan.
Setelah database aman, saya fokus ke UI. Pakai Tailwind CSS v4 yang lebih minimalis, antarmuka jadi bersih dan cepat. Hasilnya? Pengguna tinggal ngetik keluhan dengan bahasa santai, sistem langsung nyari solusi paling relevan dari database tanpa jeda berarti.
Kenapa Ini Mengubah Segalanya?
Dulu, mesin pencari itu bodoh. Kalau user cari "kemeja merah" dan database kita cuma punya "baju marun", hasilnya kosong. Developer pun repot bikin kamus sinonim manual.
Sekarang, dengan embedding:
- Query "kemeja merah" diubah ke vektor.
- Database cari vektor lain yang sudutnya paling deket.
- "Baju marun" muncul sebagai hasil teratas.
Inilah yang disebut pencarian semantik. Plus, ini juga fondasi dari RAG (Retrieval-Augmented Generation). Kita tinggal potong dokumen PDF raksasa jadi paragraf kecil, ubah jadi vektor, simpan di database. Saat user nanya, kita ambil potongan yang vektornya paling mirip, kasih ke AI, dan AI merangkai jawaban faktual tanpa harus membaca semua dokumen dari awal.
Tradeoff Dibaliknya
Embedding memang keren, tapi di dunia nyata ada dua musuh utama:
Boros Penyimpanan
Satu paragraf pendek bisa membengkak puluhan kali lipat jadi angka desimal. Bayangkan kalau data kita jutaan baris. Tagihan server cloud bisa melonjak drastis kalau nggak rajin bersih-bersih data.Lemot Kalau Nggak Diindeks
Bandingin jutaan vektor itu butuh CPU gila-gilaan. Kalau cuma pake brute force, response API bisa molor sampai pengguna kabur. Kita harus pinter-pinter pake indeks (seperti IVFFlat atau HNSW) demi kecepatan.
Kesimpulannya
Framework bakal ganti tiap tahun. Model AI makin canggih dengan dimensi lebih gila. Tapi konsep vektor ini akan tetap jadi fondasi.
Intinya: mesin tetap butuh angka, dan tugas kita sebagai arsitek adalah memastikan ruang vektor ini dikelola dengan efisien. Nggak perlu jadi ahli matematika, tapi paham cara nyimpen, nyari, dan nge-scale vektor adalah keharusan, bukan lagi nilai tambah.
Kalau kita cuma jadi penonton tren, kita bakal ketinggalan. Tapi kalau paham konsep dasarnya, kita bisa terus membangun sistem otomasi yang beneran cerdas.
Written by
Alfiansa
Just someone that loves coding