Laravel 13 supporta nativamente MariaDB Vector, senza package esterni
Da Laravel 13.28 le colonne vettoriali e le query di similarità funzionano su MariaDB 11.7+ senza pacchetti esterni né pgvector.
Redazione UptimeMag · 7 ottobre 2026 · 2 minuti di lettura

Da Laravel 13.28 le applicazioni che girano su MariaDB possono fare ricerca semantica (vector search) senza un secondo database, senza un servizio vettoriale esterno e senza package aggiuntivi. Lo riporta il blog ufficiale di MariaDB. Per chi gestisce hosting o VPS con stack Laravel, significa un componente in meno da installare e mantenere, e gli embedding restano nelle stesse tabelle dei dati che descrivono: stesso backup, stessa consistenza, stesse query Eloquent.
Fino all'estate scorsa il supporto vettoriale "built-in" di Laravel era una funzione solo PostgreSQL, basata su pgvector. La documentazione dell'AI SDK di Laravel ora specifica: "Vector queries are currently supported on PostgreSQL connections using the pgvector extension, or on MariaDB 11.7 or later using its native vector support."
Requisiti e configurazione
Serve Laravel 13 e MariaDB 11.7 o successiva; la fonte consiglia le versioni LTS 11.8 o 12.3. Nel file .env va impostato il driver dedicato:
DB_CONNECTION=mariadb
Due avvertenze pratiche segnalate da Mohamed Touhami Rhaima, lo sviluppatore che ha seguito buona parte del lavoro di integrazione:
- usare il driver
mariadb, nonmysql: puntato su un server MariaDB il drivermysqlsembra funzionare, ma le query e gli indici vettoriali generano eccezioni; - non chiamare
Schema::ensureVectorExtensionExists(): compare nella documentazione dell'AI SDK ma è un helper specifico di pgvector e su MariaDB lancia eccezioni, perché VECTOR è già un tipo nativo.
Una migrazione, un cast nel model e una query bastano per avere una colonna vettoriale ($table->vector('embedding', dimensions: 1536)->index();) interrogabile con whereVectorSimilarTo().
Chi ha fatto cosa
Il lavoro, concentrato tra metà agosto e fine settembre, ha coinvolto più contributor: oltre a Mohamed Touhami Rhaima (query vettoriali, test su MariaDB 11.8 LTS e 12.3 LTS, documentazione), hanno contribuito michielvaneerd (indici vettoriali), eas4ai (binding dei vettori e cast AsVector) e xurshudyan (dropVectorIndex()). Le pull request sono state revisionate e unite da Taylor Otwell, creatore e maintainer di Laravel.
Cosa resta fuori dal core
Laravel core supporta per ora solo la distanza coseno. La distanza euclidea e il parametro M per il tuning dell'indice restano in un package separato, laravel-vector-metrics. Chi cambia metrica deve ricreare l'indice con la stessa metrica usata nelle query: MariaDB utilizza l'indice vettoriale solo se la funzione di distanza corrisponde.
Per chi resta su Laravel 12, il package laravel-mariadb-vector di Erik Ros (oltre 2.000 installazioni) continua a essere l'opzione disponibile.
Testo redatto con il supporto dell'intelligenza artificiale e verificato dalla redazione (AI Act, art. 50). Fonte: MariaDB – rilasci.