← Обзор / ai-search / concepts
Как работает AI Search
AI Search представляет собой управляемый сервис поиска. Подключите веб-сайт, бакет R2 или загрузите собственные документы, и AI Search проиндексирует ваш контент для запросов на естественном языке.
AI Search состоит из двух основных процессов:
- Индексирование: Асинхронный процесс, который преобразует ваш контент в векторы и индексы по ключевым словам для поиска. Индексация запускается автоматически при подключении источника данных или загрузке файлов.
- Запрос: Синхронный процесс, запускаемый запросами пользователей: он находит наиболее релевантный контент с помощью векторного поиска, поиска по ключевым словам или обоих способов и при необходимости формирует ответ.
Как работает индексирование
Индексация начинается автоматически, когда вы подключаете источник данных или загружаете файлы через API элементов.
Вот что происходит во время индексирования:
- Приём данных: AI Search считывает данные из подключённого источника данных или получает файлы, загруженные через API элементов.
- Преобразование в Markdown: AI Search использует Преобразование в Markdown от Workers AI для преобразования поддерживаемые типы данных в структурированный Markdown. Это обеспечивает единообразие для самых разных типов файлов. Для изображений Workers AI сначала выполняет распознавание объектов, а затем преобразование изображения в текст, чтобы получить изображение в виде текста Markdown. См. как преобразуются изображения для получения подробностей.
- Чанкинг: Извлечённый текст разбито на чанки на более мелкие части, чтобы повысить детализацию поиска.
- Эмбеддинг: Каждый чанк обрабатывается embedding-моделью Workers AI, которая преобразует контент в векторы.
- Индексирование по ключевым словам: Когда включён поиск по ключевым словам, каждый чанк также индексируется для сопоставления по ключевым словам BM25.
- Хранилище: Векторы, индекс ключевых слов и содержимое сохраняются и готовы к поиску.
Для экземпляров с подключённым источником данных AI Search регулярно проверяет наличие обновлений и автоматически индексирует изменения. Для экземпляров, использующих встроенное хранилище, новые файлы индексируются сразу при загрузке.
Как выполняются запросы
После завершения индексирования AI Search готов отвечать на запросы конечных пользователей в реальном времени.
Вот как работает конвейер запросов:
- Получение запроса от AI Search API: Рабочий процесс запроса начинается, когда вы отправляете запрос либо к интерфейсу AI Search, либо к Chat Completions или Поиск конечные точки.
- Переписывание запроса (необязательно): AI Search предоставляет возможность переписать входной запрос с помощью одной из LLM Workers AI, чтобы повысить качество поиска, преобразуя исходный запрос в более эффективный поисковый запрос.
- Эмбеддинг запроса: Переписанный (или исходный) запрос преобразуется в вектор с помощью той же модели эмбеддингов, которая использовалась для векторизации ваших данных.
- Векторный поиск: Вектор запроса сравнивается с сохранёнными векторами, чтобы найти семантически похожий контент.
- Поиск по ключевым словам (необязательно): Когда включён гибридный поиск, параллельно с векторным поиском выполняется поиск по ключевым словам BM25.
- Слияние (необязательно): При использовании гибридного поиска результаты векторного и ключевого поиска объединяются с помощью настроенного метода слияния.
- Реранкинг (необязательно): Модель cross-encoder заново оценивает результаты, совместно анализируя запрос и документ. См. Реранкинг для получения подробностей.
- Извлечение контента: Возвращаются наиболее релевантные чанки и их исходное содержимое. Если вы используете конечную точку Search, содержимое возвращается уже на этом этапе.
- Генерация ответа: Если вы используете эндпойнт Chat Completions, модель генерации текста формирует ответ на основе найденного контента. См. Системный промпт для получения подробностей.
Когда использовать AI Search, а когда Vectorize
AI Search построен на основе Vectorize и достраивает вокруг него остальной пайплайн поиска. Используйте Vectorize, если хотите управлять векторами самостоятельно, и AI Search, если нужен управляемый поиск по вашему контенту.
| Возможность | AI Search | Vectorize |
|---|---|---|
| Что это такое | Управляемый сквозной поиск по вашему контенту | Векторная база данных, на основе которой вы создаёте |
| Вы передаёте это | Файлы либо подключённый источник данных | Векторы, которые вы генерируете самостоятельно |
| Чанкинг и эмбеддинги | Делается за вас | Вы создаёте и вставляете их |
| Индексация | Автоматически, с непрерывной синхронизацией | Вы самостоятельно выполняете upsert векторов и управляете ими |
| Поиск | Векторный поиск и поиск по ключевым словам (гибридный), реранкинг, фильтрация по метаданным | Поиск по векторному сходству с фильтрацией по метаданным |
| Сгенерированные ответы | Необязательно, встроено | Не включено |
| Оптимально, когда | Вам нужно быстро добавить поиск или RAG | Вам нужен полный контроль над конвейером поиска |