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


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

SearchResourceEncryptionKey

Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для обеспечения дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), когда требуется полная уверенность в том, что никто, даже корпорация Майкрософт, не сможет их расшифровать. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска будет игнорировать попытки установить для этого свойства значение null. Вы можете изменить это свойство по мере необходимости, если хотите повернуть ключ шифрования; Определение индексатора (и состояние его выполнения) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных поисковых служб и доступно только для платных служб, созданных 1 января 2019 г. или позже.

fieldMappings

FieldMapping[]

Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе.

outputFieldMappings

FieldMapping[]

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

parameters

IndexingParameters

Параметры для выполнения индексатора.

schedule

IndexingSchedule

Расписание для этого индексатора.

skillsetName

string

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

Ответы

Имя Тип Описание
201 Created

SearchIndexer

Other Status Codes

ErrorResponse

Ответ на ошибку.

Примеры

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"
      }
    }
  ]
}

Определения

Имя Описание
AzureActiveDirectoryApplicationCredentials

Учетные данные зарегистрированного приложения, созданного для службы поиска, используемого для доступа с проверкой подлинности к ключам шифрования, хранящимся в Azure Key Vault.

BlobIndexerDataToExtract

Указывает данные для извлечения из хранилища BLOB-объектов Azure и сообщает индексатору, какие данные следует извлечь из содержимого изображения, если для параметра imageAction задано значение, отличное от none. Это относится к содержимому внедренного изображения в .PDF или другом приложении, а также к файлам изображений, таким как .jpg и .png, в больших двоичных объектах Azure.

BlobIndexerImageAction

Определяет способ обработки внедренных образов и файлов изображений в хранилище BLOB-объектов Azure. Чтобы задать для конфигурации "imageAction" любое значение, отличное от "none", требуется, чтобы к этому индексатору также был прикреплен набор навыков.

BlobIndexerParsingMode

Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure.

BlobIndexerPDFTextRotationAlgorithm

Определяет алгоритм извлечения текста из PDF-файлов в хранилище BLOB-объектов Azure.

ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

ErrorDetail

Сведения об ошибке.

ErrorResponse

Ответ на ошибку

FieldMapping

Определяет сопоставление между полем в источнике данных и целевым полем в индексе.

FieldMappingFunction

Представляет функцию, которая преобразует значение из источника данных перед индексированием.

IndexerExecutionEnvironment

Указывает среду, в которой должен выполняться индексатор.

IndexingParameters

Представляет параметры для выполнения индексатора.

IndexingParametersConfiguration

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

IndexingSchedule

Представляет расписание выполнения индексатора.

SearchIndexer

Представляет индексатор.

SearchResourceEncryptionKey

Ключ шифрования, управляемый клиентом, в 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

ErrorAdditionalInfo[]

Ошибка дополнительная информация.

code

string

Код ошибки.

details

ErrorDetail[]

Сведения об ошибке.

message

string

Сообщение об ошибке.

target

string

Цель ошибки.

ErrorResponse

Ответ на ошибку

Имя Тип Описание
error

ErrorDetail

Объект ошибки.

FieldMapping

Определяет сопоставление между полем в источнике данных и целевым полем в индексе.

Имя Тип Описание
mappingFunction

FieldMappingFunction

Функция, применяемая к каждому значению исходного поля перед индексацией.

sourceFieldName

string

Имя поля в источнике данных.

targetFieldName

string

Имя целевого поля в индексе. То же, что и имя исходного поля по умолчанию.

FieldMappingFunction

Представляет функцию, которая преобразует значение из источника данных перед индексированием.

Имя Тип Описание
name

string

Имя функции сопоставления полей.

parameters

object

Словарь пар имя/значение параметра для передачи в функцию. Каждое значение должно быть примитивного типа.

IndexerExecutionEnvironment

Указывает среду, в которой должен выполняться индексатор.

Значение Описание
standard

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

private

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

IndexingParameters

Представляет параметры для выполнения индексатора.

Имя Тип Default value Описание
batchSize

integer (int32)

Количество элементов, которые считываются из источника данных и индексируются как один пакет для повышения производительности. Значение по умолчанию зависит от типа источника данных.

configuration

IndexingParametersConfiguration

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

maxFailedItems

integer (int32)

0

Максимальное количество элементов, которые могут не пройти индексирование, чтобы выполнение индексатора по-прежнему считалось успешным. -1 означает отсутствие ограничений. Значение по умолчанию — 0.

maxFailedItemsPerBatch

integer (int32)

0

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

IndexingParametersConfiguration

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

Имя Тип Default value Описание
allowSkillsetToReadFileData

boolean

False

Если значение true, будет создан путь //document//file_data который представляет собой исходные данные файла, загруженные из источника данных BLOB-объекта. Это позволяет передавать исходные данные файла пользовательскому навыку для обработки в конвейере обогащения или навыку извлечения документов.

dataToExtract

BlobIndexerDataToExtract

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

IndexerExecutionEnvironment

standard

Указывает среду, в которой должен выполняться индексатор.

failOnUnprocessableDocument

boolean

False

Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование, если документ не прошел индексирование.

failOnUnsupportedContentType

boolean

False

Для больших двоичных объектов Azure задайте значение false, если вы хотите продолжить индексирование при обнаружении неподдерживаемого типа содержимого и вы заранее не знаете все типы содержимого (расширения файлов).

firstLineContainsHeaders

boolean

True

Для больших двоичных объектов CSV указывает, что первая (непустая) строка каждого большого двоичного объекта содержит заголовки.

imageAction

BlobIndexerImageAction

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

BlobIndexerParsingMode

default

Представляет режим синтаксического анализа для индексирования из источника данных BLOB-объектов Azure.

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

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

SearchResourceEncryptionKey

Описание ключа шифрования, созданного в Azure Key Vault. Этот ключ используется для обеспечения дополнительного уровня шифрования неактивных данных для определения индексатора (а также состояния выполнения индексатора), когда требуется полная уверенность в том, что никто, даже корпорация Майкрософт, не сможет их расшифровать. После шифрования определения индексатора оно всегда будет оставаться зашифрованным. Служба поиска будет игнорировать попытки установить для этого свойства значение null. Вы можете изменить это свойство по мере необходимости, если хотите повернуть ключ шифрования; Определение индексатора (и состояние его выполнения) не будут затронуты. Шифрование с помощью ключей, управляемых клиентом, недоступно для бесплатных поисковых служб и доступно только для платных служб, созданных 1 января 2019 г. или позже.

fieldMappings

FieldMapping[]

Определяет сопоставления между полями в источнике данных и соответствующими целевыми полями в индексе.

name

string

Имя индексатора.

outputFieldMappings

FieldMapping[]

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

parameters

IndexingParameters

Параметры для выполнения индексатора.

schedule

IndexingSchedule

Расписание для этого индексатора.

skillsetName

string

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

targetIndexName

string

Имя индекса, в который этот индексатор записывает данные.

SearchResourceEncryptionKey

Ключ шифрования, управляемый клиентом, в Azure Key Vault. Ключи, которые вы создаете и которыми управляете, можно использовать для шифрования или расшифровки хранимых данных, таких как индексы и сопоставления синонимов.

Имя Тип Описание
accessCredentials

AzureActiveDirectoryApplicationCredentials

Необязательные учетные данные Azure Active Directory, используемые для доступа к Azure Key Vault. Не требуется, если вместо этого используется управляемое удостоверение.

keyVaultKeyName

string

Имя ключа Azure Key Vault, который будет использоваться для шифрования неактивных данных.

keyVaultKeyVersion

string

Версия ключа Azure Key Vault, который будет использоваться для шифрования неактивных данных.

keyVaultUri

string

URI Azure Key Vault, также называемый DNS-именем, который содержит ключ, используемый для шифрования неактивных данных. Примером URI может быть .https://my-keyvault-name.vault.azure.net