
Это гениальная идея, она решает главную проблему поиска на основе векторных вложений: некорректный ввод пользователя.
К тому же это требует минимальных изменений в нашей текущей настройке, так как нужно лишь добавить небольшой шаг «обогащения» поискового запроса ![]()
По этой теме мы также можем реализовать гибридный поиск:
- Поиск с использованием существующего полнотекстового поиска в PostgreSQL
- Поиск с использованием векторных вложений
- Сборка лучших 50 результатов из обоих методов
- Передача результатов в сервис повторного ранжирования поиска
- Отображение повторно ранжированных результатов
У нас уже есть мощный сервис повторного ранжирования в нашем существующем API векторных вложений, доступный через отдельный эндпоинт. Все необходимые компоненты готовы к внедрению.
Пример здесь:
https://github.com/pgvector/pgvector-python/blob/master/examples/hybrid_search.py#L67-L70