Отладка сеансов в поиске ИИ Azure

Note

Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также служит основой для Foundry IQ — управляемого уровня знаний, который преобразует корпоративный контент в повторно используемые базы знаний с учетом прав доступа для агентов на портале Microsoft Foundry.

Сеансы отладки — это визуальный редактор, который работает с существующим набором навыков в портале Azure, предоставляя структуру и содержимое одного обогащенного документа в процессе его создания индексатором и набором навыков на протяжении всего сеанса. Так как вы работаете с динамическим документом, сеанс интерактивный— вы можете выявлять ошибки, изменять и вызывать выполнение навыка, а также проверять результаты в режиме реального времени. Если изменения устраняют проблему, их можно зафиксировать в опубликованный набор навыков для глобального применения исправлений.

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

Поддерживаемые сценарии

Использование сеансов отладки для исследования и устранения проблем с:

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

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

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

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

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

Снимок экрана: сеанс отладки для анализа OCR и изображений.

На втором изображении показан типичный шаблон интегрированной векторизации. Навыки интегрированной векторизации обычно включают навык разделения текста и навык внедрения. Навык разделения текста делит документ на блоки. Навык встраивания вызывает API встраивания для векторизации этих блоков. Этот набор навыков разбивает содержимое в виде массива "страниц". Для интегрированной векторизации проекционные отображения определяют, как фрагменты сопоставляются с полями в индексе.

Снимок экрана: сеанс отладки для интегрированной векторизации.

Ограничения

Сеансы отладки работают со всеми общедоступными источниками данных индексатора и большинством источников данных предварительной версии с следующими исключениями:

  • Индексатор SharePoint.

  • Индексатор Azure Cosmos DB для MongoDB.

  • Для Azure Cosmos DB для NoSQL, если строка завершается ошибкой во время индексирования и отсутствуют соответствующие метаданные, то сеанс отладки может не выбрать правильную строку.

  • Для API SQL в Azure Cosmos DB, если ранее неразделенная коллекция стала разделенной, сеанс отладки не сможет найти документ.

  • Для пользовательских навыков управляемое удостоверение, назначаемое пользователем, не поддерживается для подключения сеанса отладки к хранилищу Azure. Как указано в предварительных требованиях, можно использовать системное управляемое удостоверение или указать полную строку подключения, включая ключ. Дополнительные сведения см. в статье "Подключение службы поиска к другим ресурсам Azure с помощью управляемого удостоверения".

  • Источники данных с включенным шифрованием с помощью управляемых клиентом ключей (CMK).

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

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

Как работает сеанс отладки

При запуске сеанса служба поиска создает копию набора навыков, индексатора и источника данных, содержащего один документ, используемый для тестирования набора навыков. Служба Поиск с использованием ИИ Azure сохраняет всё состояние сеанса в новом контейнере больших двоичных объектов (BLOB), который создаётся в указанной вами учётной записи служба хранилища Azure. Созданное имя контейнера имеет префикс ms-az-cognitive-search-debugsession. Этот префикс снижает вероятность случайного экспорта данных сеанса в другой контейнер в учетной записи.

Если вы настраиваете подключение учетной записи хранения с помощью управляемой идентичности, назначьте Storage Blob Data Contributor роль идентичности службы поиска для этой учетной записи хранения. В учетной записи хранения включите доверенные службы, чтобы разрешить доступ на запись из Поиск с использованием ИИ Azure.

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

Если конвейер обогащения не имеет ошибок, сеанс отладки можно использовать для добавочного обогащения документа, тестирования и проверки каждого изменения перед фиксацией изменений.

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

Отладка сеансов и частного подключения

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

Обходное решение. Использование тестовой службы поиска

Чтобы выполнить отладку набора навыков, создайте отдельную службу Поиск с использованием ИИ Azure без ограничений приватного подключения. Чтобы сохранить рабочие данные и сведения о схеме вне частной среды, создайте тестовую настройку с помощью синтетических документов:

  • Создайте тестовые документы, соответствующие типам полей и структуре рабочих данных, но используйте универсальные имена полей (например, content, , titlecategory) и заполнители вместо реальных данных. Логика набора навыков зависит от типов контента и структуры, а не имен полей.
  • Скопируйте JSON-файл набора навыков из своей рабочей службы. Если входные данные навыка ссылаются на имена полей в рабочей среде, обновите эти ссылки так, чтобы они соответствовали именам общих тестовых полей. Используйте сопоставления полей в индексаторе тестов для выравнивания имен полей теста с входными данными набора навыков.
  • Настройте индексатор для запуска в тестовом источнике данных.

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

Макет сеанса отладки

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

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

Снимок экрана: панель сведений о навыке с возможностью детализации для получения более подробной информации.

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

Снимок экрана, показывающий область сведений о навыке с средством оценки выражений для заданного вывода.

Область сведений о навыке

Область сведений о навыке содержит следующие разделы:

  • Итерации: показывает, сколько раз выполняется навык. Вы можете проверить входные и выходные данные каждого из них.
  • Параметры навыка: просмотр или изменение определения набора навыков JSON.
  • Ошибки и предупреждения: отображаются ошибки или предупреждения, относящиеся к этому навыку.

Обогащенная область структуры данных

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

Следующие шаги

Теперь, когда вы понимаете элементы сеансов отладки, запустите первый сеанс отладки в существующем наборе навыков.