Drupal is a registered trademark of Dries Buytaert
Protected Pages 3.0.0 Major update available for module protected_pages (3.0.0). Commerce Core 3.3.8 Minor update available for module commerce (3.3.8). Search API HTML Element Filter 1.0.7 Minor update available for module search_api_html_element_filter (1.0.7). Layout Builder Reorder 2.0.1 Minor update available for module layout_builder_reorder (2.0.1). Ban 1.1.0 Minor update available for module ban (1.1.0). Field Formatter Range 2.0.0 Major update available for module field_formatter_range (2.0.0). Field Formatter Range 8.x-1.8 Minor update available for module field_formatter_range (8.x-1.8). Varbase Media Header 9.2.1 Minor update available for module varbase_media_header (9.2.1). Search API Solr 4.3.11 Module search_api_solr updated after 14 months of inactivity (4.3.11). Provus Mega Menu Module provus_mega_menu crossed 1,000 active installs.

This experimental module allows AI Search to perform vector searches using your existing MySQL database, eliminating the need for a specialized vector database. It leverages a custom MySQL library to efficiently retrieve similar vectors through a two-step process of approximate nearest neighbor search and a final ranking by cosine similarity.

The MySQL VDB Provider is an experimental database module that works together with the AI module, to allow you to do vector searches in AI Search using just your existing MySQL database instead of specialised vector database.

It uses the mysql-vector class (https://github.com/allanpichardo/mysql-vector)
which does the actual vector search cosine similarity.

However, to improve performance on mysql it does the search in two steps:

1. First it uses quantization and filters using the Hamming Distance
to retrieve vectors that are "close" (fast).
2. Second it ranks the remaining results by cosine similarity (slow)

More information: albert.skibinski.nl/en/blog/experimenting-vector-search-mysql

Post-Installation

See a demo video here: https://youtu.be/kFDChP_NBZA

Important: do not use more than 2040 dimensions on your embedder of choice, because at this time this translates to a length of
255 bytes (2040/8) which is the limit of the field.

Additional Requirements

- Needs AI patch: #3507269-8

Also the mysql-vector fork currently in use does not have a packagist repo,
so you will need to add it to your composer repositories:

{
  "type": "vcs",
  "url": "https://github.com/askibinski/mysql-vector"
},

Activity

Total releases
1
First release
Feb 2025
Latest release
1 year ago
Releases (12 mo)
0 ▼ from 1
Maintenance
Dormant

Releases

Version Type Release date
1.0.x-dev Dev Feb 18, 2025