meilisearch/meilisearch

Молниеносный API поискового движка, обеспечивающий гибридный поиск на базе ИИ для ваших сайтов и приложений.

Инструменты⭐ 59 353Rustпоследний релиз: v1.54.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Meilisearch — это быстрый поисковый движок с API, поддерживающий гибридный поиск (комбинацию семантического и полнотекстового поиска).

Зачем нужен

Инструмент позволяет быстро внедрять качественную поисковую строку в веб-сайты и приложения, обеспечивая выдачу результатов менее чем за 50 мс. Он упрощает разработку, так как большинство функций, таких как фильтрация и учет опечаток, работают из коробки.

Что можно реализовать

  • Поиск по каталогу фильмов с учетом платформ для просмотра
  • Поиск по миллионам изображений с использованием семантического поиска
  • Интернет-магазины с фильтрацией по диапазонам, рейтингу и пагинацией
  • Поиск по аренде жилья с использованием естественного языка
  • Мультитенантные CRM-системы для поиска контактов и сделок

Ключевые возможности

  • Гибридный поиск: сочетание семантического и полнотекстового поиска для релевантности
  • Поиск в процессе ввода (Search-as-you-type) с задержкой менее 50 мс
  • Учет опечаток (Typo tolerance) для нахождения совпадений при ошибках в запросе
  • Фильтрация и фасетный поиск для создания сложных интерфейсов выбора
  • Поддержка сортировки результатов

👤 Кому подойдёт: разработчики, создающие поисковые интерфейсы для сайтов и приложений

Релизы

v1.54.0majorbreaking
🕐 4 ч назад · релиз на GitHub ↗

Важные изменения API динамических правил поиска: actions теперь объект с pin/scale, добавлено масштабирование релевантности.

  • Breaking: Эндпоинт POST /dynamic-search-rules возвращает actions как объект с полями pin и scale вместо списка.
  • Added: Добавлено действие scale для повышения, понижения или скрытия документов через множитель релевантности.
  • Added: В деталях ранжирования теперь указывается ruleUid для закрепленных документов и scale для масштабированных.
  • Breaking: UID __meilisearch_metadata зарезервирован и больше не может использоваться как ruleUid.
  • Added: Добавлены переменные окружения для ограничения максимального числа действий scale и комбинаций в поиске.
v1.53.2patch
🕐 14 дн назад · релиз на GitHub ↗

Исправлено ранжирование, убрана задержка репликации задач, усилены проверки авторизации при открытии индексов.

  • Fixed: Устранена задержка в 100 мс при репликации задач.
  • Fixed: Служебные слова больше не выделяются в результатах поиска.
  • Fixed: Правило точности ранжирования учитывает последние проиндексированные документы при обновлении атрибутов поиска.
  • Fixed: Авторизация теперь привязана к моменту открытия индекса.
  • Added: Обновлена библиотека charabia до версии 0.10.0.
v1.53.1minor
🕐 1 мес назад · релиз на GitHub ↗

Добавлена экспериментальная переменная окружения для настройки максимального числа одновременных транзакций чтения в очереди задач.

  • Added: Появилась переменная MEILI_EXPERIMENTAL_TASK_QUEUE_MAX_READERS для контроля количества одновременных транзакций чтения LMDB в очереди задач.
  • Обновлена версия встроенного mini-dashboard до v0.4.2.
v1.53.0minor
🕐 1 мес назад · релиз на GitHub ↗

Meilisearch v1.53.0: шардинг внешних фильтров, лимит 1000 документов, метрики размера индекса и исправления безопасности.

  • Added: Добавлен шардинг для внешних фильтров: документы подгружаются по сети, лимит увеличен с 100 до 1000.
  • Added: В эндпоинты /indexes/{index_uid}/stats и /stats добавлены поля indexSize и usedIndexSize.
  • Fixed: Исправлены уязвимости в GitHub Actions workflows и обновлена зависимость quinn-proto.
  • Обновлен GitHub Action peter-evans/repository-dispatch с версии 3.0.0 до 4.0.1.
v1.52.0minor
🕐 1 мес назад · релиз на GitHub ↗

Meilisearch v1.52.0: новые SSE-эндпоинты для задач, ускорение форматирования документов и исправления багов.

  • Added: Добавлены экспериментальные SSE-маршруты /tasks/stream и /batches/stream для push-уведомлений о задачах, что снижает сетевую нагрузку.
  • Added: Ускорено форматирование документов: операция преобразована из O(n) в O(1), что особенно заметно при запросе более 20 документов.
  • Fixed: Исправлена проблема с дублирующимися пинами в федеративном поиске.
  • Fixed: Обновление настроек теперь пропускается, если фактических изменений не произошло.
v1.49.0minor
🕐 2 мес назад · релиз на GitHub ↗

Улучшено хранение синонимов для ускорения поиска до 13x, исправлены ошибки ранжирования и OpenAPI.

  • Added: Оптимизировано хранение синонимов: теперь они загружаются лениво, что ускоряет поиск до 13 раз.
  • Fixed: Исправлена работа воркфлоу при повреждении показателей ранжирования.
  • Fixed: Смягчены строгие правила OpenAPI для маршрутов, возвращающих статус 202.
v1.48.3patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлены редкий баг с S3-снэпшотами и дублирование документов при удалённом поиске.

  • Fixed: Устранена гонка потоков при использовании S3-снэпшотов, приводившая к ошибкам и прерыванию загрузки.
  • Fixed: Исправлено дублирование документов в результатах при использовании удалённого федеративного поиска.
  • Added: В ответ на GET-запрос настроек чат-рабочего пространства добавлен отсутствующий параметр searchFilterParam.
  • Проведена реорганизация юнит-тестов: каждый тест вынесен в отдельный файл.