Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Примечание.
Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также лежит в основе Foundry IQ — управляемого слоя знаний, который преобразует корпоративный контент в многократно используемые базы знаний с учетом разрешений доступа для агентов на портале Microsoft Foundry.
В Поиск с использованием ИИ Azure запросы выполняются по содержимому, загруженному в индекс поиска или на удаленные источники знаний при использовании агентского поиска.
В этой статье описаны два основных рабочих процесса для заполнения индекса в службе поиска: push данных в индекс программно или pull данных с помощью поискового индексатора.
Оба подхода загружают документы из внешнего источника данных. Хотя вы можете создать пустой индекс, он не может запрашиваться, пока не будет добавлено содержимое.
Примечание.
Если обогащение ИИ или встроенная векторизация являются требованиями к решению, необходимо использовать модель извлечения (индексаторы) для загрузки индекса. Наборы навыков присоединяются к индексаторам и не выполняются независимо.
Отправка данных в индекс
Модель отправки использует API для отправки документов в существующий индекс поиска. Вы можете отправлять документы по одному за раз или в пакетах, до 1000 документов или 16 МБ на пакет, в зависимости от того, что происходит в первую очередь.
Основные преимущества:
Нет ограничений на тип источника данных. Полезная нагрузка должна состоять из документов JSON, которые соответствуют вашей схеме индекса, но данные могут поступать из любого источника.
Нет ограничений на частоту выполнения. Вы можете отправлять изменения в индекс с любой частотой. Для приложений, имеющих низкие требования к задержке (например, если индекс должен быть синхронизирован с колебаниями инвентаризации продуктов), модель push-отправки является единственным вариантом.
Подключение и безопасное извлечение документов полностью находятся под контролем. В отличие от этого, подключения индексатора проходят проверку подлинности с помощью функций безопасности, предоставляемых в Поиск с использованием ИИ Azure.
Отправка данных в индекс Поиск с использованием ИИ Azure
Используйте следующие API для загрузки одного или нескольких документов в индекс:
- Индексирование документов (REST API)
- IndexDocumentsAsync (пакет SDK Azure для .NET) или SearchIndexingBufferedSender
- IndexDocumentsBatch (пакет SDK Azure для Python) или SearchIndexingBufferedSender
- IndexDocumentsBatch (пакет SDK Azure для Java) или SearchIndexingBufferedSender
- IndexDocumentsBatch (Azure SDK для JavaScript) или SearchIndexingBufferedSender
Нет поддержки отправки данных через Azure portal.
Общие сведения об API push можно найти в следующих материалах:
- Быстрый старт: Полнотекстовый поиск
- Руководство по C#. Оптимизация индексирования с помощью API push-уведомлений
Действия индексирования: загрузка, объединение, объединениеИлиЗагрузка, удаление
Вы можете управлять типом действия индексирования для каждого документа, указывая, должен ли документ быть полностью передан, объединен с имеющимся содержимым документа или удален.
Независимо от того, используется ли REST API или пакет SDK для Azure, для импорта данных поддерживаются следующие операции документа:
Отправка, которая, как и в операции вставки или обновления, добавляет документ, если он новый, или обновляет его, если он уже существует. Если в документе отсутствуют значения, необходимые для индекса, значение поля документа устанавливается в null.
слияние обновляет документ, который уже существует, и не удается найти документ. Слияние заменяет существующие значения. По этой причине обязательно проверьте поля коллекции, содержащие несколько значений, таких как поля типа
Collection(Edm.String). Например, еслиtagsполе начинается со значения["budget"]и выполняется слияние с["economy", "pool"], конечное значениеtagsполя равно["economy", "pool"]. Это не будет["budget", "economy", "pool"].mergeOrUpload работает следующим образом: как merge, если документ существует, и как upload, если документ новый.
удаляет весь документ из индекса. Если вы хотите удалить отдельное поле, используйте слияние, установив это поле в значение null.
Извлечение данных в индекс
Модель извлечения использует индексаторы и рабочие процессы Logic Apps , подключающиеся к поддерживаемму источнику данных, автоматически загружая данные в индекс.
Индексаторы от Корпорации Майкрософт доступны для этих платформ:
- Хранилище BLOB-объектов Azure
- Хранилище таблиц Azure
- Azure Data Lake Storage 2-го поколения
- Файлы Azure (предварительная версия)
- Azure Cosmos DB
- База данных SQL Azure, Управляемый экземпляр SQL и SQL Server на виртуальных машинах Azure
- Файлы и ярлыки Microsoft OneLake
- SharePoint в Microsoft 365 (предварительная версия)
Если настроить индексированный источник знаний для агентного извлечения, Поиск с использованием ИИ Azure создает конвейер индексатора и загружает индекс с помощью свойств в источнике знаний.
Вы также можете использовать рабочие процессы Logic Apps или сторонние соединители, разработанные и поддерживаемые партнерами Майкрософт. Для получения дополнительной информации и ссылок, см. галерею источников данных.
С помощью этих автоматизированных подходов индекс подключается к источнику данных (обычно таблица, представление, контейнер или эквивалентная структура) и сопоставляет исходные поля с эквивалентными полями в индексе. Во время выполнения набор строк автоматически преобразуется в формат JSON и загружается в указанный индекс. Все индексаторы поддерживают расписания, чтобы указать частоту обновления данных. Большинство индексаторов предоставляют отслеживание изменений, если источник данных поддерживает его. Отслеживая процессы изменения и удаления существующих документов, помимо распознания новых документов, индексаторы исключают необходимость в активном управлении данными в индексе.
Как загрузить данные в индекс Поиск с использованием ИИ Azure
Используйте следующие средства и API для индексирования на основе индексатора:
- Портал Azure: мастер импорта данных
- REST API: создание индексатора (REST), создание источника данных (REST), создание индекса (REST)
- пакет SDK Azure для .NET: SearchIndexer, SearchIndexerDataSourceConnection, SearchIndex,
- пакет SDK Azure для Python: SearchIndexer, SearchIndexerDataSourceConnection, SearchIndex,
- пакет SDK Azure для Java: SearchIndexer, SearchIndexerDataSourceConnection, SearchIndex,
- пакет SDK Azure для JavaScript: SearchIndexer, SearchIndexerDataSourceConnection, SearchIndex,
Функциональность индексатора представлена в Azure portal, REST API и .NET SDK.
Преимущество использования Azure portal заключается в том, что Поиск с использованием ИИ Azure обычно может создавать схему индекса по умолчанию, считывая метаданные исходного набора данных.
Проверка импорта данных с помощью проводника поиска
Быстрый способ предварительной проверки загрузки документа — использовать Search explorer в портале Azure.
Инструмент позволяет создавать запросы к индексу без необходимости писать код. Интерфейс поиска основан на параметрах по умолчанию, таких как синтаксис simple и параметр запроса searchMode. Результаты возвращаются в формате JSON, позволяя проверить весь документ.
Ниже приведен пример запроса, который можно запустить в обозревателе поиска в представлении JSON. "HotelId" является ключом документа индекса hotels-sample. Фильтр возвращает идентификатор определенного документа.
{
"search": "*",
"filter": "HotelId eq '50'"
}
Если вы используете REST, этот запрос на поиск выполняет ту же функцию.