Hybrid Search
Гибридный поиск сочетает сопоставление по ключевым словам с векторным поиском, используя разреженные и плотные представления для ранжирования результатов. Рассматриваются области применения и метаданные YOLO26.
Эта методика поиска объединяет точность традиционного сопоставления по ключевым словам с контекстным пониманием современных систем ИИ и извлекает и ранжирует информацию, используя разреженные и плотные представления данных. Стандартная поисковая система полагается исключительно на точное совпадение ключевых слов (так называемый лексический поиск), а векторные поисковые системы — только на семантическое сходство. Гибридная поисковая система объединяет оба подхода и выдаёт точные результаты с учётом контекста.
Как это работает#
Типичный конвейер гибридного поиска одновременно выполняет два отдельных метода извлечения и объединяет их результаты в единое оптимизированное ранжирование:
- Лексический (разреженный) поиск: использует алгоритмы вроде BM25 для оценки точных совпадений ключевых слов на основе частоты терминов. Это необходимо для поиска конкретных сущностей, акронимов, артикулов товаров или специального жаргона, которые чисто семантическая модель может не распознать.
- Семантический (плотный) поиск: с помощью моделей ИИ создаёт многомерные массивы чисел, чтобы понимать глубинный смысл запроса и его контекст. Благодаря этому система находит релевантные результаты, даже если в поисковом запросе нет точных слов.
После того как оба метода извлекут результаты-кандидаты, алгоритм объединения — чаще всего объединение обратных рангов (RRF) — объединяет списки. RRF рассчитывает новую оценку на основе позиции каждого элемента в соответствующих разреженном и плотном списках результатов. Так документы, занимающие высокие позиции в одном или обоих списках, поднимаются наверх, а широкий контекстный поиск сочетается с точностью поиска по ключевым словам.
Применение ИИ и машинного обучения в реальном мире#
Современные архитектуры ИИ активно используют этот метод, чтобы преодолеть ограничения применения одного метода извлечения в производственной среде.
- Гибридный RAG (генерация с дополнением извлечёнными данными): в корпоративных системах управления знаниями важно предоставлять большой языковой модели (LLM) наиболее релевантный контекст, чтобы предотвращать галлюцинации. Гибридная конфигурация RAG позволяет модели извлекать документы, соответствующие точным техническим требованиям, и одновременно находить семантически связанные абзацы.
- Электронная коммерция и визуальный поиск товаров: Розничные продавцы используют гибридный поиск для работы каталогов товаров. Например, пользователь может искать «красные кроссовки для бега». Лексический поиск находит точные названия брендов или категорий, а модель ИИ для компьютерного зрения использует векторные представления изображений, чтобы предложить визуально похожие товары.
Сегодня почти все крупные векторные базы данных, включая Pinecone, Qdrant и OpenSearch, поддерживают гибридный поиск из коробки, а PostgreSQL позволяет сочетать pgvector со встроенным полнотекстовым поиском. Благодаря этому разработчики могут эффективно индексировать разреженные ключевые слова и плотные векторы в рамках одной инфраструктуры.
Создание метаданных для гибридного поиска#
В конвейерах компьютерного зрения можно извлекать из изображений значимые ключевые слова, чтобы создать разреженный компонент гибридного индекса. С помощью Ultralytics YOLO26 можно автоматически выполнять обнаружение объектов на изображении и использовать названия классов в качестве тегов метаданных. Затем эти теги с ключевыми словами можно объединить с плотными векторными эмбеддингами изображения, чтобы создать полноценный индекс.
from ultralytics import YOLO
# Загрузи рекомендованную модель Ultralytics YOLO26 для обнаружения объектов
model = YOLO("yolo26n.pt")
# Запусти инференс, чтобы обнаружить объекты на изображении
results = model("store_aisle.jpg")
# Извлеки предсказанные названия классов для индексации в виде метаданных с ключевыми словами (разреженные данные)
keywords = [model.names[int(box.cls)] for box in results[0].boxes]
print("Sparse keywords for lexical search:", keywords)Дополняя плотные векторные представления изображений точными разреженными ключевыми словами, сгенерированными ИИ, разработчики могут использовать платформу Ultralytics и совместимые с гибридным поиском векторные базы данных для создания надёжных мультимодальных поисковых систем, которые понимают как явные текстовые теги, так и скрытый визуальный контекст данных.










