Индексирование данных из библиотек документов SharePoint
Внимание
Поддержка индексатора SharePoint Online доступна в общедоступной предварительной версии. Он предлагает "как есть", в соответствии с дополнительными условиями использования и поддерживается только для лучших усилий. Предварительные версии функций не рекомендуется использовать для рабочих нагрузок и не гарантируется, что они становятся общедоступными.
Перед началом работы посетите раздел известных ограничений .
Чтобы использовать эту предварительную версию, заполните эту форму. Вы не будете получать уведомление об утверждении сразу после того, как любой запрос на доступ автоматически принимается после отправки. После включения доступа используйте REST API предварительной версии для индексирования содержимого.
В этой статье объясняется, как настроить индексатор поиска для индексирования документов, хранящихся в библиотеках документов SharePoint, для полнотекстового поиска в службе "Поиск ИИ Azure". Шаги по настройке сначала следуют поведению и сценариям
Функция
Индексатор в поиске ИИ Azure — это обходчик, который извлекает данные, доступные для поиска, и метаданные из источника данных. Индексатор SharePoint Online подключается к сайту SharePoint и индексирует документы из одной или нескольких библиотек документов. Индексатор обеспечивает следующие возможности:
- Индексируйте файлы и метаданные из одной или нескольких библиотек документов.
- Индекс увеличивается, выбирая только новые и измененные файлы и метаданные.
- Обнаружение удаления встроено. Удаление в библиотеке документов выполняется при следующем запуске индексатора, и документ удаляется из индекса.
- Текст и нормализованные изображения извлекаются по умолчанию из документов, индексированных. При необходимости можно добавить набор навыков для более глубокого обогащения ИИ, например OCR или перевода текста.
Необходимые компоненты
Файлы в библиотеке документов
Поддерживаемые форматы документов
Индексатор SharePoint Online может извлечь текст из следующих форматов документов:
- CSV (см. раздел индексирование больших двоичных объектов CSV)
- EML
- EPUB
- GZ
- HTML
- JSON (см. индексирование BLOB-объектов JSON);
- KML (XML для географических представлений)
- Форматы Microsoft Office: DOCX/DOC/DOCM, XLSX/XLSM, PPTX/PPT/PPTM, MSG (outlook emails), XML (как 2003, так и 2006 WORD XML)
- Форматы открытых документов: ODT, ODS, ODP
- обычные текстовые файлы (см. также индексирование обычного текста);
- RTF
- XML
- ZIP
Рекомендации и ограничения
Ниже приведены ограничения этой функции.
Индексирование списков SharePoint не поддерживается.
Индексирование SharePoint. Содержимое сайта ASPX не поддерживается.
Файлы записной книжки OneNote не поддерживаются.
Частная конечная точка не поддерживается.
Переименование папки SharePoint не запускает добавочное индексирование. Переименованная папка обрабатывается как новое содержимое.
SharePoint поддерживает детальную модель авторизации, которая определяет доступ на уровне документа на уровне пользователя. Индексатор не извлекает эти разрешения в индекс, а поиск ИИ Azure не поддерживает авторизацию на уровне документа. Если документ индексируется из SharePoint в службу поиска, содержимое доступно любому, у кого есть доступ на чтение к индексу. Если требуется разрешение на уровне документа, следует рассмотреть фильтры безопасности, чтобы обрезать результаты и автоматизировать копирование разрешений на уровне файла в поле в индексе.
Индексирование зашифрованных пользователем файлов, защищенных файлов Управления правами на доступ к данным (IRM), ZIP-файлов с паролями или аналогичным зашифрованным содержимым не поддерживается. Для обработки зашифрованного содержимого пользователь с соответствующими разрешениями для определенного файла должен удалить шифрование, чтобы элемент можно было индексировать соответствующим образом, когда индексатор запускает следующую запланированную итерацию.
Рекурсивно индексирование дочерних сайтов с определенного сайта не поддерживается.
Индексатор SharePoint Online не поддерживается при включении условного доступа идентификатора MICROSOFT ENTRA.
Ниже приведены рекомендации по использованию этой функции:
Если вам нужно создать пользовательское приложение Copilot / RAG (получение дополненного поколения) для чата с данными SharePoint, рекомендуется использовать Microsoft Copilot Studio вместо этой функции предварительной версии.
Если вам требуется решение индексирования содержимого SharePoint в рабочей среде, рассмотрите возможность создания пользовательского соединителя с веб-перехватчиками SharePoint, вызывая API Microsoft Graph для экспорта данных в контейнер BLOB-объектов Azure, а затем используйте индексатор BLOB-объектов Azure для добавочного индексирования.
- Если конфигурация SharePoint позволяет процессам Microsoft 365 обновлять метаданные файловой системы SharePoint, помните, что эти обновления могут активировать индексатор SharePoint Online, что приводит к приему документов в индексаторе несколько раз. Так как индексатор SharePoint Online является сторонним соединителем в Azure, индексатор не может считывать конфигурацию или изменять его поведение. Он реагирует на изменения в новом и измененном содержимом независимо от способа внесения этих обновлений. По этой причине убедитесь, что вы тестируете настройку и понимаете количество обработки документов перед использованием индексатора и любого обогащения ИИ.
Настройка индексатора SharePoint Online
Чтобы настроить индексатор SharePoint Online, используйте как портал Azure, так и REST API предварительной версии. Вы можете использовать 2020-06-30-preview или более поздней версии. Рекомендуется использовать последнюю предварительную версию API.
В этом разделе приведены действия. Вы также можете посмотреть следующее видео.
Шаг 1 (необязательно). Включение управляемого удостоверения, назначаемого системой
Включите управляемое удостоверение, назначаемое системой, для автоматического обнаружения клиента, в который подготавливается служба поиска.
Выполните этот шаг, если сайт SharePoint находится в том же клиенте, что и служба поиска. Пропустите этот шаг, если сайт SharePoint находится в другом клиенте. Удостоверение не используется для индексирования, а только для обнаружения клиентов. Этот шаг также можно пропустить, если вы хотите поместить идентификатор клиента в строка подключения.
После нажатия кнопки "Сохранить" вы получите идентификатор объекта, назначенный службе поиска.
Шаг 2. Определите разрешения, необходимые индексатору
Индексатор SharePoint Online поддерживает делегированные и разрешения приложения . Выберите разрешения, которые вы хотите использовать в зависимости от вашего сценария.
Рекомендуется использовать разрешения на основе приложений. Ознакомьтесь с ограничениями для известных проблем, связанных с делегированными разрешениями.
Разрешения приложения (рекомендуется), где индексатор выполняется под удостоверением клиента SharePoint с доступом ко всем сайтам и файлам. Индексатору требуется секрет клиента. Индексатор также потребует утверждения администратора клиента, прежде чем он сможет индексировать любое содержимое.
Делегированные разрешения, где индексатор выполняется под удостоверением пользователя или приложения, отправляющего запрос. Доступ к данным ограничен сайтами и файлами, к которым имеет доступ вызывающий объект. Для поддержки делегированных разрешений индексатору требуется запрос кода устройства для входа от имени пользователя. Делегированные пользователем разрешения применяют срок действия маркера каждые 75 минут на последние библиотеки безопасности, используемые для реализации этого типа проверки подлинности. Это не поведение, которое можно изменить. Для маркера с истекшим сроком действия требуется ручное индексирование с помощью индексатора Run (предварительная версия). По этой причине вместо этого могут потребоваться разрешения на основе приложений.
Шаг 3. Создание регистрации приложения Microsoft Entra
Индексатор SharePoint Online использует это приложение Microsoft Entra для проверки подлинности.
Войдите на портал Azure.
Найдите или перейдите к идентификатору Microsoft Entra, а затем выберите Регистрация приложений.
Выберите +Создать регистрацию:
- Укажите имя приложения.
- Выберите Один клиент.
- Пропустите шаг обозначения URI. URI перенаправления не требуется.
- Выберите Зарегистрировать.
Слева выберите разрешения API, а затем добавьте разрешение, а затем Microsoft Graph.
Если индексатор использует разрешения API приложений, выберите разрешения приложения и добавьте следующее:
- Приложение — Files.Read.All
- Приложение — Sites.Read.All
Использование разрешений приложения означает, что индексатор обращается к сайту SharePoint в контексте службы. Поэтому при запуске индексатора он будет иметь доступ ко всему содержимому в клиенте SharePoint, для которого требуется утверждение администратора клиента. Для проверки подлинности также требуется секрет клиента. Настройка секрета клиента описана далее в этой статье.
Если индексатор использует делегированные разрешения API, выберите делегированные разрешения и добавьте следующее:
- Delegated - Files.Read.All
- Delegated - Sites.Read.All
- Delegated - User.Read
Делегированные разрешения позволяют клиенту поиска подключаться к SharePoint под удостоверением безопасности текущего пользователя.
Предоставьте согласие администратора.
При использовании разрешений API приложения требуется согласие администратора клиента. Некоторые клиенты блокируются таким образом, чтобы согласие администратора клиента также требовалось для делегированных разрешений API. Если одно из этих условий применяется, перед созданием индексатора необходимо предоставить согласие администратора клиента для этого приложения Microsoft Entra.
Выберите вкладку Аутентификация.
Установите для параметра "Разрешить общедоступные потоки клиентов" значение "Да ", а затем нажмите кнопку "Сохранить".
Выберите + Добавить платформу, затем Мобильные приложения и приложения для компьютера, затем установите флажок
https://login.microsoftonline.com/common/oauth2/nativeclient
и выберите Настроить.(Только разрешения API приложений) Для проверки подлинности в приложении Microsoft Entra с помощью разрешений приложения индексатору требуется секрет клиента.
Выберите сертификаты и секреты в меню слева, а затем секреты клиента, а затем новый секрет клиента.
В всплывающем меню введите описание нового секрета клиента. При необходимости измените дату окончания срока действия. Если срок действия секрета истекает, его необходимо повторно создать, и индексатору необходимо обновить с помощью нового секрета.
Новый секрет клиента отображается в списке секретов. После перехода с страницы секрет больше не отображается, поэтому скопируйте его с помощью кнопки копирования и сохраните его в безопасном расположении.
Шаг 4. Создание источника данных
Начиная с этого раздела, используйте REST API предварительной версии для остальных шагов. Рекомендуется использовать последнюю предварительную версию API.
Источник данных указывает, какие данные следует индексировать, учетные данные и политики для эффективной идентификации изменений данных (новые, измененные или удаленные строки). Источник данных могут использовать несколько индексаторов в одной службе поиска.
Чтобы индексировать SharePoint, источник данных должен иметь следующие свойства:
- Свойство name — уникальное имя источника данных в службе поиска.
- type — "sharepoint". Это значение учитывает регистр.
- учетные данные предоставляют конечную точку SharePoint и идентификатор приложения Microsoft Entra (клиента). Пример конечной точки SharePoint.
https://microsoft.sharepoint.com/teams/MySharePointSite
Конечную точку можно получить, перейдя на домашнюю страницу сайта SharePoint и скопировав URL-адрес из браузера. - container указывает, какую библиотеку документов индексировать. Элемент управления свойствами , которые индексируются документами.
Чтобы создать источник данных, вызовите создание источника данных (предварительная версия).
POST https://[service name].search.windows.net/datasources?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name" : "sharepoint-datasource",
"type" : "sharepoint",
"credentials" : { "connectionString" : "[connection-string]" },
"container" : { "name" : "defaultSiteLibrary", "query" : null }
}
Формат строки подключения
Формат строка подключения изменяется на основе того, использует ли индексатор делегированные разрешения API или разрешения API приложения
Делегированные разрешения API строка подключения формате
SharePointOnlineEndpoint=[SharePoint site url];ApplicationId=[Azure AD App ID];TenantId=[SharePoint site tenant id]
Разрешения API приложения строка подключения формате
SharePointOnlineEndpoint=[SharePoint site url];ApplicationId=[Azure AD App ID];ApplicationSecret=[Azure AD App client secret];TenantId=[SharePoint site tenant id]
Примечание.
Если сайт SharePoint находится в том же клиенте, что и служба поиска и назначаемое системой управляемое удостоверение, TenantId
не требуется включать в строка подключения. Если сайт SharePoint находится в другом клиенте службы поиска, TenantId
необходимо включить его.
Шаг 5. Создание индекса
Индекс задает поля в документе, атрибуты, и другие компоненты, которые определяют процедуру поиска.
Чтобы создать индекс, вызовите create Index (preview):
POST https://[service name].search.windows.net/indexes?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]
{
"name" : "sharepoint-index",
"fields": [
{ "name": "id", "type": "Edm.String", "key": true, "searchable": false },
{ "name": "metadata_spo_item_name", "type": "Edm.String", "key": false, "searchable": true, "filterable": false, "sortable": false, "facetable": false },
{ "name": "metadata_spo_item_path", "type": "Edm.String", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
{ "name": "metadata_spo_item_content_type", "type": "Edm.String", "key": false, "searchable": false, "filterable": true, "sortable": false, "facetable": true },
{ "name": "metadata_spo_item_last_modified", "type": "Edm.DateTimeOffset", "key": false, "searchable": false, "filterable": false, "sortable": true, "facetable": false },
{ "name": "metadata_spo_item_size", "type": "Edm.Int64", "key": false, "searchable": false, "filterable": false, "sortable": false, "facetable": false },
{ "name": "content", "type": "Edm.String", "searchable": true, "filterable": false, "sortable": false, "facetable": false }
]
}
Внимание
Можно использовать только metadata_spo_site_library_item_id
в качестве ключевого поля в индексе, заполненном индексатором SharePoint Online. Если поле ключа не существует в источнике данных, metadata_spo_site_library_item_id
автоматически сопоставляется с полем ключа.
Шаг 6. Создание индексатора
Индексатор соединяет источник данных с целевым индексом поиска и предоставляет расписание для автоматизации обновления данных. После создания индекса и источника данных можно создать индексатор.
Если вы используете делегированные разрешения, на этом шаге вам будет предложено войти с учетными данными организации, имеющими доступ к сайту SharePoint. По возможности рекомендуется создать новую учетную запись пользователя организации и дать новому пользователю точные разрешения, которые должен иметь индексатор.
Чтобы создать индексатор, выполните следующие действия:
Отправьте запрос создания индексатора (предварительная версия):
POST https://[service name].search.windows.net/indexers?api-version=2024-05-01-preview Content-Type: application/json api-key: [admin key] { "name" : "sharepoint-indexer", "dataSourceName" : "sharepoint-datasource", "targetIndexName" : "sharepoint-index", "parameters": { "batchSize": null, "maxFailedItems": null, "maxFailedItemsPerBatch": null, "base64EncodeKeys": null, "configuration": { "indexedFileNameExtensions" : ".pdf, .docx", "excludedFileNameExtensions" : ".png, .jpg", "dataToExtract": "contentAndMetadata" } }, "schedule" : { }, "fieldMappings" : [ { "sourceFieldName" : "metadata_spo_site_library_item_id", "targetFieldName" : "id", "mappingFunction" : { "name" : "base64Encode" } } ] }
Если вы используете разрешения приложения, необходимо подождать, пока начальное выполнение не завершится, прежде чем начать запрашивать индекс. Следующие инструкции, приведенные на этом шаге, относятся специально к делегированным разрешениям и не применимы к разрешениям приложения.
При создании индексатора в первый раз запрос создания индексатора (предварительная версия) ожидает завершения следующего шага. Чтобы получить ссылку и ввести новый код устройства, необходимо вызвать состояние индексатора .
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview Content-Type: application/json api-key: [admin key]
Если вы не запускаете состояние индексатора в течение 10 минут, срок действия кода истекает, и вам потребуется повторно создать источник данных.
Скопируйте код входа устройства из ответа "Состояние индексатора ". Имя входа устройства можно найти в файле errorMessage.
{ "lastResult": { "status": "transientFailure", "errorMessage": "To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code <CODE> to authenticate." } }
Укажите код, включенный в сообщение об ошибке.
Индексатор SharePoint Online получит доступ к содержимому SharePoint в качестве пользователя, выполнившего вход. Пользователь, который входит в систему на этом шаге, будет пользователем, выполнившим вход. Таким образом, если вы войдешь с учетной записью пользователя, у которой нет доступа к документу в библиотеке документов, которую вы хотите индексировать, индексатор не будет иметь доступа к данному документу.
По возможности рекомендуется создать новую учетную запись пользователя организации и дать новому пользователю разрешения, которые должен иметь индексатор.
Утвердите запрошенные разрешения.
Начальный запрос создания индексатора (предварительная версия) завершается, если все указанные выше разрешения верны и в течение 10 минут.
Примечание.
Если приложению Microsoft Entra требуется утверждение администратора и его не было утверждено перед входом, вы можете увидеть следующий экран. Для продолжения требуется утверждение администратора.
Шаг 7. Проверка состояния индексатора
После создания индексатора можно вызвать состояние индексатора:
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]
Обновление источника данных
Если нет обновлений для объекта источника данных, индексатор выполняется по расписанию без взаимодействия с пользователем.
Однако при изменении объекта источника данных во время истечения срока действия кода устройства необходимо выполнить вход еще раз, чтобы индексатор выполнялся. Например, если изменить запрос источника данных, войдите повторно с помощью https://microsoft.com/devicelogin
и получите новый код устройства.
Ниже приведены шаги по обновлению источника данных, если истек срок действия кода устройства:
Вызовите индексатор запуска (предварительная версия), чтобы вручную запустить выполнение индексатора.
POST https://[service name].search.windows.net/indexers/sharepoint-indexer/run?api-version=2024-05-01-preview Content-Type: application/json api-key: [admin key]
Проверьте состояние индексатора.
GET https://[service name].search.windows.net/indexers/sharepoint-indexer/status?api-version=2024-05-01-preview Content-Type: application/json api-key: [admin key]
Если вы получите сообщение об ошибке с просьбой посетить
https://microsoft.com/devicelogin
, откройте страницу и скопируйте новый код.Вставьте код в диалоговое окно.
Повторно запустите индексатор вручную и проверьте состояние индексатора. На этот раз индексатор должен успешно запуститься.
Индексирование метаданных документа
Если вы индексируют метаданные документа ("dataToExtract": "contentAndMetadata"
), следующие метаданные будут доступны для индексирования.
Идентификатор | Тип | Описание |
---|---|---|
metadata_spo_site_library_item_id | Edm.String | Сочетание ключа идентификатора сайта, идентификатора библиотеки и идентификатора элемента, который однозначно идентифицирует элемент в библиотеке документов для сайта. |
metadata_spo_site_id | Edm.String | Идентификатор сайта SharePoint. |
metadata_spo_library_id | Edm.String | Идентификатор библиотеки документов. |
metadata_spo_item_id | Edm.String | Идентификатор элемента (документа) в библиотеке. |
metadata_spo_item_last_modified | Edm.DateTimeOffset | Дата и время последнего изменения элемента (в формате UTC). |
metadata_spo_item_name | Edm.String | Наименование номенклатуры. |
metadata_spo_item_size | Edm.Int64 | Размер элемента в байтах. |
metadata_spo_item_content_type | Edm.String | Тип содержимого элемента. |
metadata_spo_item_extension | Edm.String | Расширение элемента. |
metadata_spo_item_weburi | Edm.String | URI элемента. |
metadata_spo_item_path | Edm.String | Сочетание родительского пути и имени элемента. |
Индексатор SharePoint Online также поддерживает метаданные, относящиеся к каждому типу документа. Дополнительные сведения можно найти в свойствах метаданных контента, используемых в службе "Поиск ИИ Azure".
Примечание.
Чтобы индексировать пользовательские метаданные, необходимо указать "additionalColumns" в параметре запроса источника данных.
Включение или исключение по типу файла
Вы можете управлять индексированием файлов, задав критерии включения и исключения в разделе "параметры" определения индексатора.
Включите определенные расширения файлов, задав "indexedFileNameExtensions"
разделяемый запятыми список расширений файлов (с главной точкой). Исключите определенные расширения файлов, задав "excludedFileNameExtensions"
для расширений, которые следует пропустить. Если одно и то же расширение находится в обоих списках, он исключен из индексирования.
PUT /indexers/[indexer name]?api-version=2024-05-01-preview
{
"parameters" : {
"configuration" : {
"indexedFileNameExtensions" : ".pdf, .docx",
"excludedFileNameExtensions" : ".png, .jpeg"
}
}
}
Управление индексацией документов
Один индексатор SharePoint Online может индексировать содержимое из одной или нескольких библиотек документов. Используйте параметр container в определении источника данных, чтобы указать, какие сайты и библиотеки документов следует индексировать.
Раздел источника данных "контейнер" имеет два свойства для этой задачи: "имя" и "запрос".
Имя.
Свойство name является обязательным и должно быть одним из трех значений:
значение | Описание |
---|---|
defaultSiteLibrary | Индексируйте все содержимое из библиотеки документов по умолчанию сайта. |
allSiteLibraries | Индексируйте все содержимое из всех библиотек документов на сайте. Библиотеки документов из дочернего сайта недоступны. Если требуется содержимое из дочерних сайтов, выберите "useQuery" и укажите "includeLibrariesInSite". |
useQuery | Индексировать только содержимое, определенное в запросе. |
Query
Параметр "query" источника данных состоит из пар ключевых слов и значений. Ниже приведены ключевые слова, которые можно использовать. Значения — URL-адреса сайта или URL-адреса библиотеки документов.
Примечание.
Чтобы получить значение для определенного ключевого слова, рекомендуется перейти к библиотеке документов, которую вы пытаетесь включить или исключить и скопировать URI из браузера. Это самый простой способ получить значение для использования с ключевым словом в запросе.
Ключевое слово | Описание и примеры значений |
---|---|
null | Если значение равно null или пусто, индексируется либо библиотека документов по умолчанию, либо все библиотеки документов в зависимости от имени контейнера. Пример: "container" : { "name" : "defaultSiteLibrary", "query" : null } |
includeLibrariesInSite | Индексирование содержимого из всех библиотек под указанным сайтом в строка подключения. Значение должно быть URI сайта или дочернего сайта. Пример 1: "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/mysite" } Пример 2 (только для нескольких дочерних сайтов): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite1;includeLibrariesInSite=https://mycompany.sharepoint.com/sites/TopSite/SubSite2" } |
includeLibrary | Индексировать все содержимое из этой библиотеки. Это полный путь к библиотеке, которую можно скопировать из браузера: Пример 1 (полный путь): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary" } Пример 2 (URI, скопированный из браузера): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" } |
excludeLibrary | Не индексировать содержимое из этой библиотеки. Это полный путь к библиотеке, которую можно скопировать из браузера: Пример 1 (полный путь): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mysite.sharepoint.com/subsite1; excludeLibrary=https://mysite.sharepoint.com/subsite1/MyDocumentLibrary" } Пример 2 (URI, скопированный из браузера): "container" : { "name" : "useQuery", "query" : "includeLibrariesInSite=https://mycompany.sharepoint.com/teams/mysite; excludeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx" } |
additionalColumns | Индексировать столбцы из библиотеки документов. Это значение представляет собой разделенный запятыми список имен столбцов, которые требуется индексировать. Используйте двойную обратную косую черту для обхода запятых и запятых в именах столбцов: Пример 1 (additionalColumns=MyCustomColumn,MyCustomColumn2): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/mysite/MyDocumentLibrary;additionalColumns=MyCustomColumn,MyCustomColumn2" } Пример 2 (escape-символы с двойной обратной косой чертой): "container" : { "name" : "useQuery", "query" : "includeLibrary=https://mycompany.sharepoint.com/teams/mysite/MyDocumentLibrary/Forms/AllItems.aspx;additionalColumns=MyCustomColumnWith\\,,MyCustomColumnWith\\;" } |
Обработка ошибок
По умолчанию индексатор SharePoint Online останавливается, как только обнаружит документ с неподдерживаемым типом содержимого (например, изображение). Параметр можно использовать excludedFileNameExtensions
для пропуска определенных типов контента. Однако вам может потребоваться индексировать документы, не зная все возможные типы контента заранее. Чтобы продолжить индексирование при обнаружении неподдерживаемого типа содержимого, задайте для параметра конфигурации failOnUnsupportedContentType
значение "false":
PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=2024-05-01-preview
Content-Type: application/json
api-key: [admin key]
{
... other parts of indexer definition
"parameters" : { "configuration" : { "failOnUnsupportedContentType" : false } }
}
Для некоторых документов поиск Azure AI не может определить тип контента или не может обработать документ другого поддерживаемого типа контента. Чтобы пропустить этот сбой, задайте для failOnUnprocessableDocument
параметра конфигурации значение False:
"parameters" : { "configuration" : { "failOnUnprocessableDocument" : false } }
Поиск по искусственному интеллекту Azure ограничивает размер индексированных документов. Эти ограничения описаны в ограничениях службы в поиске ИИ Azure. Документы слишком большого размера по умолчанию считаются ошибками. Но вы все равно можете индексировать метаданные хранилища документов слишком большого размера, если для параметра конфигурации indexStorageMetadataOnlyForOversizedDocuments
задать значение "true":
"parameters" : { "configuration" : { "indexStorageMetadataOnlyForOversizedDocuments" : true } }
Вы также можете продолжить индексирование, если ошибки возникают в какой-либо момент обработки — при анализе документов или при добавлении документов в индекс. Чтобы пропустить определенное количество ошибок, задайте для параметров конфигурации maxFailedItems
и maxFailedItemsPerBatch
нужные значения. Например:
{
... other parts of indexer definition
"parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 10 }
}
Если файл на сайте SharePoint включен, может возникнуть сообщение об ошибке, аналогичное следующему:
Code: resourceModified Message: The resource has changed since the caller last read it; usually an eTag mismatch Inner error: Code: irmEncryptFailedToFindProtector
Сообщение об ошибке также будет содержать идентификатор сайта SharePoint, идентификатор диска и идентификатор элемента диска в следующем шаблоне: <sharepoint site id> :: <drive id> :: <drive item id>
Эти сведения можно использовать для определения того, какой элемент завершается сбоем в конце SharePoint. Затем пользователь может удалить шифрование из элемента, чтобы устранить проблему.