Поделиться через


Что такое поиск в Azure AI?

Поиск по искусственному интеллекту Azure — это масштабируемая инфраструктура поиска, которая индексирует разнородное содержимое и обеспечивает получение с помощью API, приложений и агентов ИИ. Платформа обеспечивает встроенную интеграцию с стеком ИИ Azure (OpenAI, AI Foundry, Machine Learning) и поддерживает расширяемые архитектуры для интеграции сторонних и моделей с открытым кодом.

Служба обрабатывает как традиционные рабочие нагрузки поиска, так и современные шаблоны RAG (содержащие дополненное извлечение) для конверсантных AI-приложений. Это делает его подходящим для сценариев корпоративного поиска, а также взаимодействия с клиентами с поддержкой ИИ, которые требуют динамического создания контента с помощью моделей завершения чата.

При создании службы поиска вы работаете со следующими возможностями:

  • Поисковая система для поиска с агентами, векторного поиска, поиска полного текста, многомодального поиска или гибридного поиска.
  • Обработка содержимого во время индексирования, которая может добавлять структуру и преобразования.
  • Расширенный синтаксис запросов для агентов, векторов, текста, гибридных и многомодальных запросов.
  • Интеллектуальные результаты с помощью семантического ранжирования, профилей оценки и параметризованных запросов.
  • Масштабирование, безопасность и охват Azure.
  • Интеграция Azure на уровне данных, уровне машинного обучения, службах ИИ Azure и Azure OpenAI.

С точки зрения архитектуры служба поиска находится между внешними хранилищами данных, которые содержат неиндексированные данные, и вашим клиентским приложением, которое отправляет запросы к индексу поиска и обрабатывает ответ.

Архитектура поиска ИИ Azure

В стороне индексирования, если содержимое находится в Azure, можно использовать индексаторы и наборы навыков для автоматического и обогащенного ИИ индексирования. Кроме того, создайте рабочий процесс приложения логики для эквивалентной автоматизации в более широком наборе поддерживаемых источников данных.

На этапе извлечения ваше приложение может быть агентом, инструментом, ботом или любым клиентом, который отправляет запросы в поисковый индекс или агент знаний.

В службе "Azure AI Search" индексирующее устройство и обработчик запросов — это один и тот же компонент, работающий в режимах чтения-записи и только для чтения, но на этой схеме мы разделили его, чтобы показать тип выполняемой задачи.

Внутри службы поиска

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

  • Индексирование — это процесс приема, который загружает содержимое в службу поиска и делает его доступным для поиска. Внутри системы входящий текст обрабатывается в маркеры и хранится в инвертированных индексах, а входящий векторы хранятся в векторных индексах. Формат документа, который может индексировать поиск ИИ Azure, — JSON. Вы можете отправить документы JSON или использовать индексатор или рабочий процесс приложения логики для извлечения и сериализации данных в JSON.

    Обогащение искусственного интеллекта осуществляется с помощью набора навыков , который расширяет индексирование с помощью моделей изображений и языка. Если у вас есть изображения или большой неструктурированный текст в исходном документе, можно присоединить навыки, которые разбивают на части и векторизируют содержимое. Если у вас есть содержимое изображений, можно использовать большие языковые модели (LLM) для суммирования содержимого, создания описаний, выполнения OCR (оптического распознавания символов) и анализа изображений. Навыки также могут определять структуру, переводить текст и выполнять многое другое. Выходные данные — это текст или векторы, которые можно сериализовать в формате JSON и загрузить в индекс поиска.

  • Запросы могут произойти после заполнения индекса с помощью поиска содержимого, когда клиентское приложение отправляет запросы в службу поиска и обрабатывает ответы. Все выполнение запроса выполняется по индексу поиска, который вы управляете. В коде настройте клиент поиска для обработки запросов для агентических запросов, векторных запросов, текстовых запросов, гибридных запросов, нечеткого поиска, автозавершения, геозавершения и других.

Служба "Поиск ИИ Azure" переносит нагрузки индексирования и запросов на выделенную службу поиска. Он хорошо подходит для следующих сценариев приложения:

  • Используйте его для усиления возможностей агентов и ботов на основе данных, извлеченных из вашего содержимого.

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

  • Консолидируйте разнородное содержимое в определяемый пользователем и заполненный индекс поиска, состоящий из векторов и текста. Вы поддерживаете владение и контроль над тем, что можно найти.

  • Преобразуйте большие неифференцированные текстовые файлы или файлы изображений или файлы приложений, хранящиеся в Хранилище BLOB-объектов Azure или Azure Cosmos DB, в блоки, доступные для поиска. Это достигается во время индексирования с помощью навыков искусственного интеллекта, которые добавляют внешнюю обработку из ИИ Azure.

  • Интегрируйте блоки данных и векторизацию для создания приложений ИИ и RAG.

  • Добавление лингвистического или пользовательского анализа текста для поиска ключевых слов. Если у вас есть содержимое, отличное от английского языка, служба "Поиск ИИ Azure" поддерживает анализаторы Lucene и процессоры естественного языка Майкрософт. Можно также настроить анализаторы для выполнения специализированной обработки необработанного содержимого, например для фильтрации диакритических знаков или распознавания и сохранения шаблонов в строках.

  • Удобная реализация функций поиска, таких как настройка релевантности, фасетная навигация, фильтры (включая геопространственный поиск), сопоставление синонимов и автозавершение.

  • Применение детализированного управления доступом на уровне документа.

Дополнительные сведения о конкретных функциях см. в разделе "Функции поиска ИИ Azure"

Как приступить к работе

Функциональные возможности предоставляются с помощью портал Azure, простых REST API или пакетов SDK Azure, таких как пакет SDK Azure для .NET. Портал Azure поддерживает администрирование служб и управление содержимым с инструментами для создания прототипов и запроса индексов и наборов навыков.

Использование портала Azure

Комплексное изучение основных функций поиска можно выполнить в четырех шагах:

  1. Определите уровень и регион. Одна бесплатная служба поиска разрешена для каждой подписки. Большинство быстрых начальных руководств можно выполнить на бесплатном тарифе. Для получения большего объема и возможностей требуется оплачиваемый уровень.

  2. Создайте службу поиска в портал Azure.

  3. Начните с мастера импорта данных. Выберите встроенный пример или поддерживаемый источник данных для создания, загрузки и запроса индекса в минутах.

  4. Завершите работу с обозревателем поиска, используя клиент портала для запроса только что созданного индекса поиска.

Ознакомьтесь с примерами

Мы поддерживаем инвентаризацию примеров, использующих REST API и языки программирования azure SDK, поддерживаемые поиском ИИ Azure:

Использование API

Кроме того, можно создать, загрузить и запросить индекс поиска в атомарных шагах:

  1. Создайте индекс поиска с помощью портал Azure, REST API, пакета SDK для .NET или другого пакета SDK. Схема индекса определяет структуру содержимого, доступного для поиска.

  2. Отправьте содержимоес помощью модели push-отправки документов JSON из любого источника или используйте модель извлечения (индексаторы), если исходные данные являются поддерживаемыми типами.

  3. Запросите индекс с помощью обозревателя поиска в портал Azure, REST API, пакета SDK для .NET или другого пакета SDK.

Использование акселераторов

Кроме того, попробуйте использовать акселераторы решений:

Совет

Чтобы помочь с сложными или настраиваемыми решениями, обратитесь к партнеру с глубоким опытом в технологии поиска ИИ Azure.