Laravel и MariaDB Vector: что меняется для поиска в приложении
Встроенная поддержка MariaDB Vector в Laravel упрощает подключение векторного поиска, но не делает выдачу полезной сама по себе. Для приёмки нужны совместимые версии, согласованная модель векторов, правила доступа и контрольные запросы. Похожесть записи на запрос — отдельное условие от права показать её пользователю.
Что стало встроенным в октябрьском анонсе
7 октября 2026 года MariaDB Foundation описала поддержку Vector в Laravel 13.28: векторные колонки, индексы и запросы похожести доступны нативно. До этого существовал внешний пакет, поэтому неправильно писать, что MariaDB Vector вообще невозможно было использовать с Laravel.
Документация Query Builder указывает поддержку vector similarity clauses для MariaDB 11.7 и новее либо PostgreSQL с pgvector. Это требование векторной функции, а не универсальный минимум для любого подключения Laravel к MariaDB. Версии фреймворка и сервера фиксируют отдельно.
Модель векторов входит в контракт данных
Сохраните, какой моделью создаются векторы документов, каков их размер и как создаётся вектор запроса. Одинаковая длина массива сама по себе не подтверждает одинаковый смысл координат. Если команда меняет способ представления текста, необходимо отдельно определить судьбу уже записанных данных и индекса.
Не копируйте размерность из примера производителя как обязательную для любого проекта. Для своего решения выбирают модель и совместимый формат хранения. Результат должен позволять повторить подготовку данных и понять, какие записи были обработаны по действующим правилам, а какие ещё ожидают обновления.
Своя контрольная подборка вместо случайного удачного запроса
Рассмотрим вымышленный поиск внутренних инструкций для диспетчера сервисной компании. В наборе есть действующие документы, архивные версии и материал другого подразделения. Следующая таблица задаёт ожидаемое поведение; она не описывает готовую функцию наших продуктов или измеренную выдачу.
| Учебный запрос | Что должен проверить ответственный | Ожидаемая граница выдачи | Почему одной похожести мало |
|---|---|---|---|
| Как передать срочную заявку дежурному | Есть ли действующая инструкция нужного подразделения | Показать применимый разрешённый документ | Старый порядок может звучать почти так же |
| Название конкретной формы | Нужен ли точный поиск по названию рядом с семантическим | Не потерять явно названную форму | Близкий по смыслу документ не обязательно нужный |
| Порядок работы чужого подразделения | Как действуют права пользователя | Не раскрывать недоступное содержимое | Высокая близость не выдаёт разрешение |
| Вопрос, которого нет в базе | Достаточно ли сведений для ответа | Честно показать отсутствие подходящего материала | Первое место не гарантирует полезность результата |
Запросы и критерии стоит согласовать с человеком, который знает процесс. Иначе команда будет улучшать совпадение с собственным представлением разработчика, а не с задачей пользователя. Не превращайте первую удачную демонстрацию в общий процент качества поиска.
Порог похожести не заменяет проектный критерий
Laravel описывает фильтрацию по cosine similarity и порядок результатов по релевантности. Число порога выбирают по контрольным случаям, а не по универсальной норме из чужого примера. Отдельно решают, как сочетаются обязательные фильтры: организация, права, статус документа и другие реальные условия.
Для учебного диспетчера архивный текст может оказаться ближе к запросу, чем действующая инструкция. Это не обязательно ошибка операции поиска: отсутствует условие пригодности документа. Требование к поиску должно описывать не только близость, но и допустимый набор кандидатов.
Встроенное хранение не означает бесплатную подготовку векторов
Документация поясняет, что при передаче обычной строки Laravel может автоматически создать embeddings через AI SDK. Поэтому узнайте, где выполняется такое преобразование и какие условия поставщика используются. Размещение векторов в своей базе не доказывает отсутствие внешних вызовов или расходов на их создание.
- Зафиксируйте версии Laravel, MariaDB и выбранный путь векторных операций.
- Опишите модель, размерность и правила обновления представлений.
- Определите допустимый набор записей до оценки похожести.
- Согласуйте контрольные вопросы, включая точное название и отсутствие ответа.
- Проверьте выдачу вместе с владельцем рабочего процесса.
- Отдельно оцените индекс, время ответа и стоимость подготовки на ограниченном наборе.
Для разработки веб-приложения начните с этих критериев выдачи. В интеграции ИИ фиксируйте происхождение векторов, а при автоматизации внутренних процессов сохраняйте правила доступа и актуальности. Нативный API убирает часть связующего кода, но не принимает решения о полезности за команду продукта.
Вопросы и ответы
Что изменилось у Laravel MariaDB Vector?
Анонс MariaDB Foundation связывает нативную поддержку с Laravel 13.28. Это появление встроенных возможностей, а не первое в истории использование MariaDB Vector через Laravel.
Какую MariaDB использовать для vector search Laravel?
Текущая документация vector similarity clauses указывает MariaDB 11.7 и новее. Для конкретной поставки нужно дополнительно согласовать фреймворк, зависимости и структуру векторных данных.
Laravel vector search сам выбирает правильный документ?
API выполняет предусмотренную операцию похожести, но пригодность результата задаёт проект. Права, актуальность, точное название и случай отсутствия ответа требуют собственных критериев проверки.