Indexers - Create
Создает новый индексатор.
POST {endpoint}/indexers?api-version=2025-09-01
Параметры URI
| Имя | В | Обязательно | Тип | Описание |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
URL-адрес конечной точки службы поиска. |
|
api-version
|
query | True |
string |
Версия клиентского API. |
Заголовок запроса
| Имя | Обязательно | Тип | Описание |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
Идентификатор отслеживания, отправленный вместе с запросом на помощь в отладке. |
Текст запроса
| Имя | Обязательно | Тип | Описание |
|---|---|---|---|
| dataSourceName | True |
string |
Имя источника данных, из которого этот индексатор считывает данные. |
| name | True |
string |
Имя индексатора. |
| targetIndexName | True |
string |
Имя индекса, в который этот индексатор записывает данные. |
| @odata.etag |
string |
ETag индексатора. |
|
| description |
string |
Описание индексатора. |
|
| disabled |
boolean |
Значение, указывающее, отключен ли индексатор. По умолчанию — false. |
|
| encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для обеспечения дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), когда требуется полная уверенность в том, что никто, даже корпорация Майкрософт, не сможет их расшифровать. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска будет игнорировать попытки установить для этого свойства значение null. Вы можете изменить это свойство по мере необходимости, если хотите повернуть ключ шифрования; Определение индексатора (и состояние его выполнения) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных поисковых служб и доступно только для платных служб, созданных 1 января 2019 г. или позже. |
||
| fieldMappings |
Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе. |
||
| outputFieldMappings |
Сопоставления выходных полей применяются после обогащения и непосредственно перед индексацией. |
||
| parameters |
Параметры для выполнения индексатора. |
||
| schedule |
Расписание для этого индексатора. |
||
| skillsetName |
string |
Имя набора навыков, выполняемого с помощью этого индексатора. |
Ответы
| Имя | Тип | Описание |
|---|---|---|
| 201 Created | ||
| Other Status Codes |
Ответ на ошибку. |
Примеры
SearchServiceCreateIndexer
Образец запроса
POST https://stableexampleservice.search.windows.net/indexers?api-version=2025-09-01
{
"name": "myindexer",
"description": "Description of the indexer",
"dataSourceName": "mydocdbdatasource",
"skillsetName": "myskillset",
"targetIndexName": "stable-test",
"schedule": {
"interval": "P1D",
"startTime": "2025-01-07T19:30:00Z"
},
"parameters": {
"batchSize": 10,
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5,
"configuration": {
"excludedFileNameExtensions": ".png,.mp4",
"indexedFileNameExtensions": ".docx,.pptx",
"failOnUnsupportedContentType": true,
"failOnUnprocessableDocument": false,
"indexStorageMetadataOnlyForOversizedDocuments": true,
"delimitedTextHeaders": "Header1,Header2",
"delimitedTextDelimiter": "|",
"firstLineContainsHeaders": true,
"documentRoot": "/root",
"dataToExtract": "storageMetadata",
"imageAction": "none",
"allowSkillsetToReadFileData": false,
"pdfTextRotationAlgorithm": "none",
"executionEnvironment": "standard"
}
},
"fieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"outputFieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"disabled": false,
"@odata.etag": "0x1234568AE7E58A1"
}
Пример ответа
{
"@odata.etag": "0x1234568AE7E58A1",
"name": "myindexer",
"description": "Description of the indexer",
"dataSourceName": "mydocdbdatasource",
"skillsetName": "myskillset",
"targetIndexName": "stable-test",
"disabled": false,
"schedule": {
"interval": "P1D",
"startTime": "2024-06-06T00:01:50.265Z"
},
"parameters": {
"batchSize": 10,
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5,
"configuration": {
"excludedFileNameExtensions": ".png,.mp4",
"indexedFileNameExtensions": ".docx,.pptx",
"failOnUnsupportedContentType": true,
"failOnUnprocessableDocument": false,
"indexStorageMetadataOnlyForOversizedDocuments": true,
"delimitedTextHeaders": "Header1,Header2",
"delimitedTextDelimiter": "|",
"firstLineContainsHeaders": true,
"documentRoot": "/root",
"dataToExtract": "storageMetadata",
"imageAction": "none",
"allowSkillsetToReadFileData": false,
"pdfTextRotationAlgorithm": "none",
"executionEnvironment": "standard"
}
},
"fieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
],
"outputFieldMappings": [
{
"sourceFieldName": "/document",
"targetFieldName": "name",
"mappingFunction": {
"name": "base64Encode"
}
}
]
}
Определения
| Имя | Описание |
|---|---|
|
Azure |
Учетные данные зарегистрированного приложения, созданного для службы поиска, используемого для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault. |
|
Blob |
Указывает данные для извлечения из хранилища BLOB-объектов Azure и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от none. Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure. |
|
Blob |
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Чтобы задать для конфигурации "imageAction" любое значение, отличное от "none", требуется, чтобы к этому индексатору также был прикреплен набор навыков. |
|
Blob |
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure. |
|
Blob |
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure. |
|
Error |
Дополнительные сведения об ошибке управления ресурсами. |
|
Error |
Сведения об ошибке. |
|
Error |
Ответ на ошибку |
|
Field |
Определяет сопоставление между полем в источнике данных и целевым полем в индексе. |
|
Field |
Представляет функцию, которая преобразует значение из источника данных перед индексированием. |
|
Indexer |
Указывает среду, в которой должен выполняться индексатор. |
|
Indexing |
Представляет параметры для выполнения индексатора. |
|
Indexing |
Словарь свойств конфигурации, специфичных для индексатора. Каждое имя — это имя определенного свойства. Каждое значение должно быть примитивного типа. |
|
Indexing |
Представляет расписание выполнения индексатора. |
|
Search |
Представляет индексатор. |
|
Search |
Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования или расшифровки хранимых данных, таких как индексы и сопоставления синонимов. |
AzureActiveDirectoryApplicationCredentials
Учетные данные зарегистрированного приложения, созданного для службы поиска, используемого для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault.
| Имя | Тип | Описание |
|---|---|---|
| applicationId |
string |
Идентификатор приложения AAD, которому предоставлены необходимые разрешения на доступ к Azure Key Vault, который будет использоваться при шифровании неактивных данных. Идентификатор приложения не следует путать с идентификатором объекта для приложения AAD. |
| applicationSecret |
string |
Ключ аутентификации указанного приложения AAD. |
BlobIndexerDataToExtract
Указывает данные для извлечения из хранилища BLOB-объектов Azure и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от none. Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure.
| Значение | Описание |
|---|---|
| storageMetadata |
Индексирует только стандартные свойства BLOB-объектов и указанные пользователем метаданные. |
| allMetadata |
Извлекает метаданные, предоставленные подсистемой хранения BLOB-объектов Azure, и метаданные, относящиеся к типу содержимого (например, индексируются метаданные, уникальные только для .png файлов). |
| contentAndMetadata |
Извлекает все метаданные и текстовое содержимое из каждого большого двоичного объекта. |
BlobIndexerImageAction
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Чтобы задать для конфигурации "imageAction" любое значение, отличное от "none", требуется, чтобы к этому индексатору также был прикреплен набор навыков.
| Значение | Описание |
|---|---|
| none |
Игнорирует встроенные изображения или файлы изображений в наборе данных. Это значение по умолчанию. |
| generateNormalizedImages |
Извлекает текст из изображений (например, слово «СТОП» со знака «Остановка»), и встраивает его в поле содержимого. Для этого действия необходимо, чтобы для параметра "dataToExtract" было задано значение "contentAndMetadata". Нормализованное изображение относится к дополнительной обработке, в результате которой изображение выводится равномерно, его размер и поворот для обеспечения согласованной отрисовки при включении изображений в результаты визуального поиска. Эта информация генерируется для каждого изображения при использовании этой опции. |
| generateNormalizedImagePerPage |
Извлекает текст из изображений (например, слово «СТОП» со знака остановки на дороге) и встраивает его в поле содержимого, но обрабатывает PDF-файлы по-другому, в том смысле, что каждая страница будет отображаться как изображение и нормализоваться соответствующим образом, вместо извлечения встроенных изображений. Типы файлов, отличные от PDF, будут обрабатываться так же, как если бы был установлен параметр "generateNormalizedImages". |
BlobIndexerParsingMode
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure.
| Значение | Описание |
|---|---|
| default |
Установлено по умолчанию для обычной обработки файлов. |
| text |
Задайте для параметра text для повышения производительности индексирования обычных текстовых файлов в хранилище BLOB-объектов. |
| delimitedText |
Задайте значение delimitedText, если большие двоичные объекты являются обычными CSV-файлами. |
| json |
Задайте значение json, чтобы извлечь структурированное содержимое из файлов JSON. |
| jsonArray |
Задайте значение jsonArray, чтобы извлечь отдельные элементы массива JSON в виде отдельных документов. |
| jsonLines |
Задайте значение jsonLines, чтобы извлечь отдельные сущности JSON, разделенные новой строкой, как отдельные документы. |
BlobIndexerPDFTextRotationAlgorithm
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure.
| Значение | Описание |
|---|---|
| none |
Использует обычное извлечение текста. Это значение по умолчанию. |
| detectAngles |
Может обеспечить более качественное и удобочитаемое извлечение текста из PDF-файлов, в которых текст повернут. Обратите внимание, что при использовании этого параметра может наблюдаться небольшое влияние на скорость работы. Этот параметр применяется только к PDF-файлам и только к PDF-файлам со встроенным текстом. Если повернутый текст отображается во встроенном изображении в PDF-файле, этот параметр не применяется. |
ErrorAdditionalInfo
Дополнительные сведения об ошибке управления ресурсами.
| Имя | Тип | Описание |
|---|---|---|
| info |
object |
Дополнительная информация. |
| type |
string |
Тип дополнительной информации. |
ErrorDetail
Сведения об ошибке.
| Имя | Тип | Описание |
|---|---|---|
| additionalInfo |
Ошибка дополнительная информация. |
|
| code |
string |
Код ошибки. |
| details |
Сведения об ошибке. |
|
| message |
string |
Сообщение об ошибке. |
| target |
string |
Цель ошибки. |
ErrorResponse
Ответ на ошибку
| Имя | Тип | Описание |
|---|---|---|
| error |
Объект ошибки. |
FieldMapping
Определяет сопоставление между полем в источнике данных и целевым полем в индексе.
| Имя | Тип | Описание |
|---|---|---|
| mappingFunction |
Функция, применяемая к каждому значению исходного поля перед индексацией. |
|
| sourceFieldName |
string |
Имя поля в источнике данных. |
| targetFieldName |
string |
Имя целевого поля в индексе. То же, что и имя исходного поля по умолчанию. |
FieldMappingFunction
Представляет функцию, которая преобразует значение из источника данных перед индексированием.
| Имя | Тип | Описание |
|---|---|---|
| name |
string |
Имя функции сопоставления полей. |
| parameters |
object |
Словарь пар имя/значение параметра для передачи в функцию. Каждое значение должно быть примитивного типа. |
IndexerExecutionEnvironment
Указывает среду, в которой должен выполняться индексатор.
| Значение | Описание |
|---|---|
| standard |
Указывает, что служба поиска может определить, где должен выполняться индексатор. Это среда по умолчанию, в которой ничего не указано и является рекомендуемым значением. |
| private |
Указывает, что индексатор должен работать со средой, подготовленной специально для службы поиска. Это следует указывать в качестве среды выполнения только в том случае, если индексатору требуется безопасный доступ к ресурсам через общие ресурсы частного канала. |
IndexingParameters
Представляет параметры для выполнения индексатора.
| Имя | Тип | Default value | Описание |
|---|---|---|---|
| batchSize |
integer (int32) |
Количество элементов, которые считываются из источника данных и индексируются как один пакет для повышения производительности. Значение по умолчанию зависит от типа источника данных. |
|
| configuration |
Словарь свойств конфигурации, специфичных для индексатора. Каждое имя — это имя определенного свойства. Каждое значение должно быть примитивного типа. |
||
| maxFailedItems |
integer (int32) |
0 |
Максимальное количество элементов, которые могут не пройти индексирование, чтобы выполнение индексатора по-прежнему считалось успешным. -1 означает отсутствие ограничений. Значение по умолчанию — 0. |
| maxFailedItemsPerBatch |
integer (int32) |
0 |
Максимальное количество элементов в одном пакете, которое может не пройти индексирование, чтобы пакет по-прежнему считался успешным. -1 означает отсутствие ограничений. Значение по умолчанию — 0. |
IndexingParametersConfiguration
Словарь свойств конфигурации, специфичных для индексатора. Каждое имя — это имя определенного свойства. Каждое значение должно быть примитивного типа.
| Имя | Тип | Default value | Описание |
|---|---|---|---|
| allowSkillsetToReadFileData |
boolean |
False |
Если значение true, будет создан путь //document//file_data который представляет собой исходные данные файла, загруженные из источника данных BLOB-объекта. Это позволяет передавать исходные данные файла пользовательскому навыку для обработки в конвейере обогащения или навыку извлечения документов. |
| dataToExtract | contentAndMetadata |
Указывает данные для извлечения из хранилища BLOB-объектов Azure и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от none. Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure. |
|
| delimitedTextDelimiter |
string |
Для больших двоичных объектов CSV указывает односимвольный разделитель в конце строки для файлов CSV, где каждая строка начинает новый документ (например, "|"). |
|
| delimitedTextHeaders |
string |
Для больших двоичных объектов CSV указывает список заголовков столбцов, разделенных запятыми, что полезно для сопоставления исходных полей с полями назначения в индексе. |
|
| documentRoot |
string |
Для массивов JSON, для которых задан структурированный или частично структурированный документ, вы можете указать путь к массиву с помощью этого свойства. |
|
| excludedFileNameExtensions |
string |
Список расширений имен файлов, разделенных запятыми, которые следует игнорировать при обработке из хранилища BLOB-объектов Azure. Например, вы можете исключить ".png, .mp4", чтобы пропустить эти файлы во время индексации. |
|
| executionEnvironment | standard |
Указывает среду, в которой должен выполняться индексатор. |
|
| failOnUnprocessableDocument |
boolean |
False |
Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование, если документ не прошел индексирование. |
| failOnUnsupportedContentType |
boolean |
False |
Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование при обнаружении неподдерживаемого типа содержимого и вы заранее не знаете все типы содержимого (расширения файлов). |
| firstLineContainsHeaders |
boolean |
True |
Для больших двоичных объектов CSV указывает, что первая (непустая) строка каждого большого двоичного объекта содержит заголовки. |
| imageAction | none |
Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Чтобы задать для конфигурации "imageAction" любое значение, отличное от "none", требуется, чтобы к этому индексатору также был прикреплен набор навыков. |
|
| indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
Для больших двоичных объектов Azure задайте для этого свойства значение true, чтобы все еще индексировать метаданные хранилища для содержимого больших двоичных объектов, которое слишком велико для обработки. Большие двоичные объекты слишком большого размера по умолчанию считаются ошибками. Сведения об ограничениях на размер BLOB-объектов см. в разделе https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. |
| indexedFileNameExtensions |
string |
Список расширений имен файлов, разделенных запятыми, для выбора при обработке из хранилища BLOB-объектов Azure. Например, вы можете сосредоточить индексацию на определенных файлах приложений «.docx, .pptx, .msg», чтобы включить эти типы файлов. |
|
| parsingMode | default |
Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure. |
|
| pdfTextRotationAlgorithm | none |
Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure. |
|
| queryTimeout |
string |
00:05:00 |
Увеличивает время ожидания сверх 5-минутного значения по умолчанию для источников данных базы данных SQL Azure, указанного в формате "чч:мм:сс". |
IndexingSchedule
Представляет расписание выполнения индексатора.
| Имя | Тип | Описание |
|---|---|---|
| interval |
string (duration) |
Интервал времени между выполнениями индексатора. |
| startTime |
string (date-time) |
Время, когда индексатор должен начать работу. |
SearchIndexer
Представляет индексатор.
| Имя | Тип | Default value | Описание |
|---|---|---|---|
| @odata.etag |
string |
ETag индексатора. |
|
| dataSourceName |
string |
Имя источника данных, из которого этот индексатор считывает данные. |
|
| description |
string |
Описание индексатора. |
|
| disabled |
boolean |
False |
Значение, указывающее, отключен ли индексатор. По умолчанию — false. |
| encryptionKey |
Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для обеспечения дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), когда требуется полная уверенность в том, что никто, даже корпорация Майкрософт, не сможет их расшифровать. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска будет игнорировать попытки установить для этого свойства значение null. Вы можете изменить это свойство по мере необходимости, если хотите повернуть ключ шифрования; Определение индексатора (и состояние его выполнения) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных поисковых служб и доступно только для платных служб, созданных 1 января 2019 г. или позже. |
||
| fieldMappings |
Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе. |
||
| name |
string |
Имя индексатора. |
|
| outputFieldMappings |
Сопоставления выходных полей применяются после обогащения и непосредственно перед индексацией. |
||
| parameters |
Параметры для выполнения индексатора. |
||
| schedule |
Расписание для этого индексатора. |
||
| skillsetName |
string |
Имя набора навыков, выполняемого с помощью этого индексатора. |
|
| targetIndexName |
string |
Имя индекса, в который этот индексатор записывает данные. |
SearchResourceEncryptionKey
Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования или расшифровки хранимых данных, таких как индексы и сопоставления синонимов.
| Имя | Тип | Описание |
|---|---|---|
| accessCredentials |
Необязательные учетные данные Azure Active Directory, используемые для доступа к Azure Key Vault. Не требуется, если вместо этого используется управляемое удостоверение. |
|
| keyVaultKeyName |
string |
Имя ключа Azure Key Vault, который будет использоваться для шифрования неактивных данных. |
| keyVaultKeyVersion |
string |
Версия ключа Azure Key Vault, который будет использоваться для шифрования неактивных данных. |
| keyVaultUri |
string |
URI Azure Key Vault, также называемый DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Примером URI может быть . |