Layanan:

MariaDB Vector Laravel 13: Semantic Search Tanpa Database Vektor Kedua

MariaDB Vector Laravel 13: Semantic Search Tanpa Database Vektor Kedua

MariaDB vector Laravel 13 berarti Laravel dapat mendefinisikan kolom vector, index vektor, cast AsVector, dan query kemiripan (whereVectorSimilarTo) langsung di MariaDB 11.7 atau lebih baru—tanpa menambah PostgreSQL+pgvector, layanan vector terpisah, atau package komunitas hanya untuk kebutuhan dasar.

Aplikasi tetap memakai satu database MariaDB yang sudah Anda punya. Yang tidak otomatis: MariaDB tidak mengubah teks menjadi embedding; model AI (Laravel AI SDK plus provider hosted atau Ollama lokal) tetap wajib di pipeline semantic search.

Robert Silén di MariaDB Foundation (7 Oktober 2026) menulis workflow native sudah utuh sejak Laravel 13.28, sementara changelog framework menunjukkan komponen masuk bertahap sepanjang rilis 13.x. Untuk proyek baru, pakai Laravel 13.x terbaru yang Anda uji—not pin ke versi minimum lama.

Highlight

MariaDB Vector Laravel 13: Semantic Search Tanpa Database Vektor Kedua

  • Minimum MariaDB 11.7; produksi sering 11.8 LTS atau 12.3 LTS menurut rekomendasi MariaDB Foundation.
  • DB_CONNECTION=mariadb wajib—driver mysql bisa gagal pada vector query meski SQL biasa jalan.
  • Jangan panggil Schema::ensureVectorExtensionExists() di MariaDB; helper itu untuk PostgreSQL pgvector.
  • Dimensi kolom (contoh 1536) harus cocok dengan output model embedding; ganti model bisa berarti re-embedding.
  • Core Laravel saat ini fokus cosine distance; metrik lain butuh package terpisah seperti laravel-vector-metrics.
  • Laravel 12 tidak punya dukungan core yang sama; opsi komunitas laravel-mariadb-vector masih relevan.

Apa yang dimaksud vector native di Laravel 13?

Sebelum rilis Laravel 13, story vector bawaan Laravel lebih sering mengarah ke PostgreSQL dan ekstensi pgvector. Tim yang sudah standar di MariaDB harus menambah database kedua, vendor vector cloud, atau package pihak ketiga.

MariaDB vector Laravel

Kini schema builder Laravel mendukung $table->vector('embedding', dimensions: N)->index(), Eloquent cast AsVector, dan builder query similarity. PostgreSQL+pgvector tetap didukung; MariaDB 11.7+ native vector adalah jalur alternatif arsitektur—not pengganti absolut untuk setiap beban production.

Semantic search di sini = retrieval berdasarkan jarak vektor antar embedding. Itu bukan RAG penuh (retrieval plus generasi LLM) dan bukan pengganti full-text search leksikal. Hybrid search di MariaDB masih area eksplorasi contributor; jangan anggap sudah first-class di setiap rilis Laravel.

Versi Laravel dan MariaDB yang relevan

MariaDB Foundation merujuk Laravel 13.28+ untuk kolom vector, index, dan similarity query «out of the box» di server MariaDB. Changelog framework mencatat potongan berbeda di rilis 13.x: index, binding AsVector, orderByVectorDistance, dropVectorIndex(), perbaikan vec_fromtext().

Framing aman: workflow «out of the box» selaras artikel MariaDB Foundation pada 13.28+, sementara implementasi framework memang bertahap. Dokumentasi AI SDK Laravel menyebut vector query didukung di PostgreSQL pgvector atau MariaDB 11.7+ (Laravel AI SDK).

Minimum versi server: MariaDB 11.7. MariaDB merekomendasikan 11.8 LTS atau 12.3 LTS untuk deployment jangka panjang—not artinya 11.7 otomatis tidak layak produksi, melainkan LTS punya konteks dukungan berbeda. Cek lifecycle resmi MariaDB bila kepatuhan versi penting.

Driver mariadb dan migration vector

Atur DB_CONNECTION=mariadb di .env. Laravel punya driver MariaDB dedicated sejak Laravel 11.

Memakai driver mysql ke server MariaDB berisiko: query biasa kadang jalan, vector index atau similarity query dapat melempar exception (MariaDB Foundation).

Contoh migration (cek docs Laravel terbaru sebelum copy ke production):

Schema::create('documents', function (Blueprint $table) {
    $table->id();
    $table->string('title');
    $table->text('content');
    $table->vector('embedding', dimensions: 1536)->index();
    $table->timestamps();
});

Angka 1536 hanya contoh umum model embedding; bukan requirement Laravel atau MariaDB. Dimensi kolom adalah kontrak dengan model yang Anda pilih—768, 1024, atau lainnya harus match output model saat insert dan saat query.

Lewati baris Schema::ensureVectorExtensionExists() dari contoh PostgreSQL. Tipe VECTOR built-in di MariaDB; pgvector tidak diinstal di server MariaDB.

AsVector cast dan menyimpan embedding

Model Eloquent memakai cast resmi:

use Illuminate\Database\Eloquent\Casts\AsVector;

protected function casts(): array
{
    return [
        'embedding' => AsVector::class,
    ];
}

Cast membaca vector biner MariaDB, format teks kompatibel PostgreSQL bila relevan, mengembalikan array float saat read, dan menerima array saat write. Changelog Laravel 13.x menyebut perbaikan binding agar vector terikat lewat vec_fromtext()—detail implementasi, bukan langkah manual Anda.

Alur ingest: teks dokumen → model embedding → array float → simpan lewat Eloquent. MariaDB menyimpan, mengindeks, dan menghitung similarity—not menghasilkan vektor dari bahasa alami sendiri.

Semantic search dengan whereVectorSimilarTo

Query similarity contoh:

Document::query()
    ->whereVectorSimilarTo('embedding', 'panduan waterproofing dak beton')
    ->limit(10)
    ->get();

String bahasa alami pada argumen kedua dapat di-embed bila Laravel AI SDK terpasang dan provider (OpenAI, Ollama, dll.) sudah dikonfigurasi. Tanpa SDK/provider, Anda perlu vektor query yang sudah dihitung dengan model yang sama dengan corpus.

Core Laravel saat ini menekankan cosine distance untuk workflow ini. MariaDB sebagai database mendukung metrik jarak lain.

Abstraksi Laravel core belum necessarily expose semuanya. Package laravel-vector-metrics disebut MariaDB Foundation untuk Euclidean atau tuning index lanjutan. Jangan mengarang threshold «0,8 = relevan»; skor similarity bergantung metrik dan dataset.

Index vector mempercepat nearest-neighbor; tanpa index query bisa tetap jalan pada dataset kecil dengan biaya scan penuh. Uji beban sendiri sebelum mengasumsikan performa production.

Provider embedding dan kualitas retrieval

«Tanpa database vector kedua» tidak sama dengan «tanpa layanan AI eksternal». Anda bisa menyimpan vector di MariaDB lokal sambil memanggil API embedding cloud—or sebaliknya Ollama di server sendiri tanpa biaya token API, tetap dengan biaya CPU/RAM listrik.

Kualitas semantic search sangat bergantung model embedding dan bahasa konten. MariaDB Foundation merujuk eksperimen Erik Ros (ribuan job title EN/NL) where share top-1 benar bervariasi lebar antar model—not angka universal untuk situs Anda. Untuk konten Bahasa Indonesia, uji model pada query set internal sebelum go-live.

Bila Anda memetakan konten web ke retrieval AI, pola ini berbeda dari optimasi keyword klasik—tetap relevan memahami semantic relevance dan riset keyword di era AI Search untuk konten yang akan di-index ulang sebagai embedding.

Laravel 12, package komunitas, dan kapan vector DB terpisah

Laravel 12 tidak menawarkan paket core MariaDB vector yang setara. MariaDB Foundation menyebut package laravel-mariadb-vector (~2.000 install saat artikel mereka) sebagai opsi komunitas—not alasan wajib upgrade ke 13, melainkan pilihan jika Anda masih di 12.x.

Dukungan vector native di Laravel 13 cocok untuk monolith PHP: backup satu cluster, transaksi dengan data bisnis, retrieval sederhana, tahap awal RAG. Server tetap MariaDB—you tidak menambah PostgreSQL hanya untuk pgvector kecuali memang sudah rencana arsitektur.

Qdrant, Weaviate, Pinecone, atau PostgreSQL pgvector tetap layak bila skala, metrik custom, atau operasi vector-only jadi pusat arsitektur.

Tim yang membangun fitur pencarian AI di situs WordPress atau stack campuran sering butuh konsultasi integrasi terpisah; pola Laravel+MariaDB ini target developer PHP full-stack. Bila agent AI harus mengonsumsi konten situs, pastikan layer retrieval selaras dengan SEO untuk AI Agent—struktur HTML dan metadata tetap memengaruhi sumber yang layak di-embed.

Menurut kami, fitur ini menurunkan hambatan infra untuk POC semantic search di stack PHP Indonesia—not jaminan relevansi atau pengganti evaluasi model embedding.

Tim pemilik produk kerap meminta CodeF mengecek apakah kebutuhan search cukup di MariaDB atau perlu komponen vector terpisah sebelum sprint fitur AI. Upgrade framework dan MariaDB LTS, lalu benchmark query pada corpus nyata, baru commit arsitektur jangka panjang.

Artikel Terkait

Artikel & Informasi Seputar Bisnis & Website

→
baca semua artikel

Copyright © 2026 CodeF Web Developer. All rights reserved colaborated with Pajuda.com