Indexers - Create
Crée un indexeur.
POST {endpoint}/indexers?api-version=2024-07-01
Paramètres URI
Nom | Dans | Obligatoire | Type | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
URL du point de terminaison du service de recherche. |
api-version
|
query | True |
string |
Version de l’API cliente. |
En-tête de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
x-ms-client-request-id |
string uuid |
ID de suivi envoyé avec la demande pour faciliter le débogage. |
Corps de la demande
Nom | Obligatoire | Type | Description |
---|---|---|---|
dataSourceName | True |
string |
Nom de la source de données à partir de laquelle cet indexeur lit les données. |
name | True |
string |
Nom de l’indexeur. |
targetIndexName | True |
string |
Nom de l’index dans lequel cet indexeur écrit des données. |
@odata.etag |
string |
ETag de l’indexeur. |
|
description |
string |
Description de l’indexeur. |
|
disabled |
boolean |
Valeur indiquant si l’indexeur est désactivé. La valeur par défaut est false. |
|
encryptionKey |
Description d’une clé de chiffrement que vous créez dans Azure Key Vault. Cette clé est utilisée pour fournir un niveau supplémentaire de chiffrement au repos pour votre définition d’indexeur (ainsi que l’état d’exécution de l’indexeur) lorsque vous souhaitez une assurance totale que personne, pas même Microsoft, ne peut les déchiffrer. Une fois que vous avez chiffré votre définition d’indexeur, elle reste toujours chiffrée. Le service de recherche ignore les tentatives de définition de cette propriété sur Null. Vous pouvez modifier cette propriété si nécessaire si vous souhaitez faire pivoter votre clé de chiffrement ; Votre définition d’indexeur (et l’état d’exécution de l’indexeur) ne sont pas affectées. Le chiffrement avec des clés gérées par le client n’est pas disponible pour les services de recherche gratuits et n’est disponible que pour les services payants créés le 1er janvier 2019. |
||
fieldMappings |
Définit des mappages entre les champs de la source de données et les champs cibles correspondants dans l’index. |
||
outputFieldMappings |
Les mappages de champs de sortie sont appliqués après l’enrichissement et immédiatement avant l’indexation. |
||
parameters |
Paramètres pour l’exécution de l’indexeur. |
||
schedule |
Planification de cet indexeur. |
||
skillsetName |
string |
Nom de l’ensemble de compétences en cours d’exécution avec cet indexeur. |
Réponses
Nom | Type | Description |
---|---|---|
201 Created | ||
Other Status Codes |
Réponse d’erreur. |
Exemples
SearchServiceCreateIndexer
Exemple de requête
POST https://myservice.search.windows.net/indexers?api-version=2024-07-01
{
"name": "myindexer",
"description": "an indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
Exemple de réponse
{
"name": "myindexer",
"description": "an indexer",
"dataSourceName": "mydatasource",
"targetIndexName": "orders",
"schedule": {
"interval": "PT1H",
"startTime": "2015-01-01T00:00:00Z"
},
"parameters": {
"maxFailedItems": 10,
"maxFailedItemsPerBatch": 5
},
"fieldMappings": [],
"disabled": false,
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": null
}
}
}
Définitions
Nom | Description |
---|---|
Azure |
Informations d’identification d’une application inscrite créée pour votre service de recherche, utilisée pour l’accès authentifié aux clés de chiffrement stockées dans Azure Key Vault. |
Blob |
Spécifie les données à extraire du stockage Blob Azure et indique à l’indexeur quelles données extraire du contenu de l’image lorsque « imageAction » est défini sur une valeur autre que « none ». Cela s’applique au contenu d’image incorporé dans une .PDF ou d’autres applications, ou des fichiers image tels que .jpg et .png, dans des objets blob Azure. |
Blob |
Détermine comment traiter des images incorporées et des fichiers image dans le stockage d’objets blob Azure. La définition de la configuration « imageAction » sur n’importe quelle valeur autre que « none » nécessite qu’un ensemble de compétences soit également attaché à cet indexeur. |
Blob |
Représente le mode d’analyse pour l’indexation à partir d’une source de données d’objet blob Azure. |
Blob |
Détermine l’algorithme d’extraction de texte à partir de fichiers PDF dans le stockage d’objets blob Azure. |
Error |
Informations supplémentaires sur l’erreur de gestion des ressources. |
Error |
Détail de l’erreur. |
Error |
Réponse d’erreur |
Field |
Définit un mappage entre un champ dans une source de données et un champ cible dans un index. |
Field |
Représente une fonction qui transforme une valeur d’une source de données avant l’indexation. |
Indexer |
Spécifie l’environnement dans lequel l’indexeur doit s’exécuter. |
Indexing |
Représente des paramètres pour l’exécution de l’indexeur. |
Indexing |
Dictionnaire de propriétés de configuration spécifiques à l’indexeur. Chaque nom est le nom d’une propriété spécifique. Chaque valeur doit être d’un type primitif. |
Indexing |
Représente une planification pour l’exécution de l’indexeur. |
Search |
Représente un indexeur. |
Search |
Clé de chiffrement gérée par le client dans Azure Key Vault. Les clés que vous créez et gérez peuvent être utilisées pour chiffrer ou déchiffrer des données au repos, telles que des index et des mappages de synonymes. |
AzureActiveDirectoryApplicationCredentials
Informations d’identification d’une application inscrite créée pour votre service de recherche, utilisée pour l’accès authentifié aux clés de chiffrement stockées dans Azure Key Vault.
Nom | Type | Description |
---|---|---|
applicationId |
string |
ID d’application AAD qui a reçu les autorisations d’accès requises au coffre de clés Azure à utiliser lors du chiffrement de vos données au repos. L’ID d’application ne doit pas être confondu avec l’ID d’objet de votre application AAD. |
applicationSecret |
string |
Clé d’authentification de l’application AAD spécifiée. |
BlobIndexerDataToExtract
Spécifie les données à extraire du stockage Blob Azure et indique à l’indexeur quelles données extraire du contenu de l’image lorsque « imageAction » est défini sur une valeur autre que « none ». Cela s’applique au contenu d’image incorporé dans une .PDF ou d’autres applications, ou des fichiers image tels que .jpg et .png, dans des objets blob Azure.
Nom | Type | Description |
---|---|---|
allMetadata |
string |
Extrait les métadonnées fournies par le sous-système de stockage d’objets blob Azure et les métadonnées spécifiques au type de contenu (par exemple, les métadonnées uniques à .png fichiers sont indexées). |
contentAndMetadata |
string |
Extrait toutes les métadonnées et le contenu textuel de chaque objet blob. |
storageMetadata |
string |
Indexe uniquement les propriétés d’objet blob standard et les métadonnées spécifiées par l’utilisateur. |
BlobIndexerImageAction
Détermine comment traiter des images incorporées et des fichiers image dans le stockage d’objets blob Azure. La définition de la configuration « imageAction » sur n’importe quelle valeur autre que « none » nécessite qu’un ensemble de compétences soit également attaché à cet indexeur.
Nom | Type | Description |
---|---|---|
generateNormalizedImagePerPage |
string |
Extrait du texte d’images (par exemple, le mot « STOP » à partir d’un signe d’arrêt du trafic) et l’incorpore dans le champ de contenu, mais traite les fichiers PDF différemment dans ce que chaque page sera rendu en tant qu’image et normalisé en conséquence, au lieu d’extraire des images incorporées. Les types de fichiers non PDF sont traités de la même façon que si « generateNormalizedImages » a été défini. |
generateNormalizedImages |
string |
Extrait du texte d’images (par exemple, le mot « STOP » à partir d’un signe d’arrêt de trafic) et l’incorpore dans le champ de contenu. Cette action nécessite que « dataToExtract » soit défini sur « contentAndMetadata ». Une image normalisée fait référence à un traitement supplémentaire entraînant une sortie d’image uniforme, dimensionnée et pivotée pour promouvoir un rendu cohérent lorsque vous incluez des images dans les résultats de recherche visuelle. Ces informations sont générées pour chaque image lorsque vous utilisez cette option. |
none |
string |
Ignore les images incorporées ou les fichiers image dans le jeu de données. Il s’agit de la valeur par défaut. |
BlobIndexerParsingMode
Représente le mode d’analyse pour l’indexation à partir d’une source de données d’objet blob Azure.
Nom | Type | Description |
---|---|---|
default |
string |
Définissez la valeur par défaut pour le traitement normal des fichiers. |
delimitedText |
string |
Définissez la valeur delimitedText lorsque les objets blob sont des fichiers CSV bruts. |
json |
string |
Définissez sur json pour extraire du contenu structuré à partir de fichiers JSON. |
jsonArray |
string |
Définissez sur jsonArray pour extraire des éléments individuels d’un tableau JSON en tant que documents distincts. |
jsonLines |
string |
Définissez sur jsonLines pour extraire des entités JSON individuelles, séparées par une nouvelle ligne, sous forme de documents distincts. |
text |
string |
Définissez le texte pour améliorer les performances d’indexation sur les fichiers de texte brut dans le stockage d’objets blob. |
BlobIndexerPDFTextRotationAlgorithm
Détermine l’algorithme d’extraction de texte à partir de fichiers PDF dans le stockage d’objets blob Azure.
Nom | Type | Description |
---|---|---|
detectAngles |
string |
Peut produire une meilleure extraction de texte lisible à partir de fichiers PDF qui ont pivoté du texte dans ces fichiers. Notez qu’il peut y avoir un faible impact sur la vitesse des performances lorsque ce paramètre est utilisé. Ce paramètre s’applique uniquement aux fichiers PDF et uniquement aux fichiers PDF avec du texte incorporé. Si le texte pivoté apparaît dans une image incorporée au format PDF, ce paramètre ne s’applique pas. |
none |
string |
Tire parti de l’extraction normale de texte. Il s’agit de la valeur par défaut. |
ErrorAdditionalInfo
Informations supplémentaires sur l’erreur de gestion des ressources.
Nom | Type | Description |
---|---|---|
info |
object |
Informations supplémentaires. |
type |
string |
Type d’informations supplémentaire. |
ErrorDetail
Détail de l’erreur.
Nom | Type | Description |
---|---|---|
additionalInfo |
Informations supplémentaires sur l’erreur. |
|
code |
string |
Code d’erreur. |
details |
Détails de l’erreur. |
|
message |
string |
Message d’erreur. |
target |
string |
Cible d’erreur. |
ErrorResponse
Réponse d’erreur
Nom | Type | Description |
---|---|---|
error |
Objet d’erreur. |
FieldMapping
Définit un mappage entre un champ dans une source de données et un champ cible dans un index.
Nom | Type | Description |
---|---|---|
mappingFunction |
Fonction à appliquer à chaque valeur de champ source avant l’indexation. |
|
sourceFieldName |
string |
Nom du champ dans la source de données. |
targetFieldName |
string |
Nom du champ cible dans l’index. Identique au nom du champ source par défaut. |
FieldMappingFunction
Représente une fonction qui transforme une valeur d’une source de données avant l’indexation.
Nom | Type | Description |
---|---|---|
name |
string |
Nom de la fonction de mappage de champ. |
parameters |
object |
Dictionnaire de paires nom/valeur de paramètre à passer à la fonction. Chaque valeur doit être d’un type primitif. |
IndexerExecutionEnvironment
Spécifie l’environnement dans lequel l’indexeur doit s’exécuter.
Nom | Type | Description |
---|---|---|
private |
string |
Indique que l’indexeur doit s’exécuter avec l’environnement approvisionné spécifiquement pour le service de recherche. Cela ne doit être spécifié que comme environnement d’exécution si l’indexeur doit accéder en toute sécurité aux ressources via des ressources de liaison privée partagée. |
standard |
string |
Indique que le service de recherche peut déterminer où l’indexeur doit s’exécuter. Il s’agit de l’environnement par défaut lorsque rien n’est spécifié et est la valeur recommandée. |
IndexingParameters
Représente des paramètres pour l’exécution de l’indexeur.
Nom | Type | Valeur par défaut | Description |
---|---|---|---|
batchSize |
integer |
Nombre d’éléments lus à partir de la source de données et indexés en tant que lot unique afin d’améliorer les performances. La valeur par défaut dépend du type de source de données. |
|
configuration |
Dictionnaire de propriétés de configuration spécifiques à l’indexeur. Chaque nom est le nom d’une propriété spécifique. Chaque valeur doit être d’un type primitif. |
||
maxFailedItems |
integer |
0 |
Nombre maximal d’éléments pouvant échouer l’indexation pour que l’exécution de l’indexeur soit toujours considérée comme réussie. -1 signifie aucune limite. La valeur par défaut est 0. |
maxFailedItemsPerBatch |
integer |
0 |
Nombre maximal d’éléments d’un seul lot pouvant échouer l’indexation du lot pour qu’il soit toujours considéré comme réussi. -1 signifie aucune limite. La valeur par défaut est 0. |
IndexingParametersConfiguration
Dictionnaire de propriétés de configuration spécifiques à l’indexeur. Chaque nom est le nom d’une propriété spécifique. Chaque valeur doit être d’un type primitif.
Nom | Type | Valeur par défaut | Description |
---|---|---|---|
allowSkillsetToReadFileData |
boolean |
False |
Si la valeur est true, créez un chemin //document//file_data qui est un objet représentant les données de fichier d’origine téléchargées à partir de votre source de données blob. Cela vous permet de transmettre les données de fichier d’origine à une compétence personnalisée pour le traitement dans le pipeline d’enrichissement ou à la compétence Extraction de documents. |
dataToExtract | contentAndMetadata |
Spécifie les données à extraire du stockage Blob Azure et indique à l’indexeur quelles données extraire du contenu de l’image lorsque « imageAction » est défini sur une valeur autre que « none ». Cela s’applique au contenu d’image incorporé dans une .PDF ou d’autres applications, ou des fichiers image tels que .jpg et .png, dans des objets blob Azure. |
|
delimitedTextDelimiter |
string |
Pour les objets blob CSV, spécifie le délimiteur à caractère unique de fin de ligne pour les fichiers CSV où chaque ligne démarre un nouveau document (par exemple, « | »). |
|
delimitedTextHeaders |
string |
Pour les objets blob CSV, spécifie une liste délimitée par des virgules d’en-têtes de colonne, utile pour mapper les champs sources aux champs de destination dans un index. |
|
documentRoot |
string |
Pour les tableaux JSON, en fonction d’un document structuré ou semi-structuré, vous pouvez spécifier un chemin d’accès au tableau à l’aide de cette propriété. |
|
excludedFileNameExtensions |
string |
Liste délimitée par des virgules des extensions de nom de fichier à ignorer lors du traitement à partir du stockage Blob Azure. Par exemple, vous pouvez exclure «.png, .mp4» pour ignorer ces fichiers pendant l’indexation. |
|
executionEnvironment | standard |
Spécifie l’environnement dans lequel l’indexeur doit s’exécuter. |
|
failOnUnprocessableDocument |
boolean |
False |
Pour les objets blob Azure, définissez la valeur false si vous souhaitez continuer l’indexation en cas d’échec de l’indexation d’un document. |
failOnUnsupportedContentType |
boolean |
False |
Pour les objets blob Azure, définissez la valeur false si vous souhaitez continuer l’indexation lorsqu’un type de contenu non pris en charge est rencontré et que vous ne connaissez pas tous les types de contenu (extensions de fichier) à l’avance. |
firstLineContainsHeaders |
boolean |
True |
Pour les objets blob CSV, indique que la première ligne (non vide) de chaque objet blob contient des en-têtes. |
imageAction | none |
Détermine comment traiter des images incorporées et des fichiers image dans le stockage d’objets blob Azure. La définition de la configuration « imageAction » sur n’importe quelle valeur autre que « none » nécessite qu’un ensemble de compétences soit également attaché à cet indexeur. |
|
indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
Pour les objets blob Azure, définissez cette propriété sur true pour toujours indexer les métadonnées de stockage pour le contenu d’objet blob trop volumineux à traiter. Les objets blob surdimensionnés sont traités comme des erreurs par défaut. Pour connaître les limites relatives à la taille de l’objet blob, consultez https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. |
indexedFileNameExtensions |
string |
Liste délimitée par des virgules d’extensions de nom de fichier à sélectionner lors du traitement à partir du stockage Blob Azure. Par exemple, vous pouvez concentrer l’indexation sur des fichiers d’application spécifiques «.docx, .pptx, .msg » pour inclure spécifiquement ces types de fichiers. |
|
parsingMode | default |
Représente le mode d’analyse pour l’indexation à partir d’une source de données d’objet blob Azure. |
|
pdfTextRotationAlgorithm | none |
Détermine l’algorithme d’extraction de texte à partir de fichiers PDF dans le stockage d’objets blob Azure. |
|
queryTimeout |
string |
00:05:00 |
Augmente le délai d’expiration au-delà de la valeur par défaut de 5 minutes pour les sources de données de base de données Azure SQL, spécifiées au format « hh :mm :ss ». |
IndexingSchedule
Représente une planification pour l’exécution de l’indexeur.
Nom | Type | Description |
---|---|---|
interval |
string |
Intervalle de temps entre les exécutions de l’indexeur. |
startTime |
string |
Heure à laquelle un indexeur doit commencer à s’exécuter. |
SearchIndexer
Représente un indexeur.
Nom | Type | Valeur par défaut | Description |
---|---|---|---|
@odata.etag |
string |
ETag de l’indexeur. |
|
dataSourceName |
string |
Nom de la source de données à partir de laquelle cet indexeur lit les données. |
|
description |
string |
Description de l’indexeur. |
|
disabled |
boolean |
False |
Valeur indiquant si l’indexeur est désactivé. La valeur par défaut est false. |
encryptionKey |
Description d’une clé de chiffrement que vous créez dans Azure Key Vault. Cette clé est utilisée pour fournir un niveau supplémentaire de chiffrement au repos pour votre définition d’indexeur (ainsi que l’état d’exécution de l’indexeur) lorsque vous souhaitez une assurance totale que personne, pas même Microsoft, ne peut les déchiffrer. Une fois que vous avez chiffré votre définition d’indexeur, elle reste toujours chiffrée. Le service de recherche ignore les tentatives de définition de cette propriété sur Null. Vous pouvez modifier cette propriété si nécessaire si vous souhaitez faire pivoter votre clé de chiffrement ; Votre définition d’indexeur (et l’état d’exécution de l’indexeur) ne sont pas affectées. Le chiffrement avec des clés gérées par le client n’est pas disponible pour les services de recherche gratuits et n’est disponible que pour les services payants créés le 1er janvier 2019. |
||
fieldMappings |
Définit des mappages entre les champs de la source de données et les champs cibles correspondants dans l’index. |
||
name |
string |
Nom de l’indexeur. |
|
outputFieldMappings |
Les mappages de champs de sortie sont appliqués après l’enrichissement et immédiatement avant l’indexation. |
||
parameters |
Paramètres pour l’exécution de l’indexeur. |
||
schedule |
Planification de cet indexeur. |
||
skillsetName |
string |
Nom de l’ensemble de compétences en cours d’exécution avec cet indexeur. |
|
targetIndexName |
string |
Nom de l’index dans lequel cet indexeur écrit des données. |
SearchResourceEncryptionKey
Clé de chiffrement gérée par le client dans Azure Key Vault. Les clés que vous créez et gérez peuvent être utilisées pour chiffrer ou déchiffrer des données au repos, telles que des index et des mappages de synonymes.
Nom | Type | Description |
---|---|---|
accessCredentials |
Informations d’identification Azure Active Directory facultatives utilisées pour accéder à votre coffre de clés Azure. Non obligatoire si vous utilisez plutôt une identité managée. |
|
keyVaultKeyName |
string |
Nom de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. |
keyVaultKeyVersion |
string |
Version de votre clé Azure Key Vault à utiliser pour chiffrer vos données au repos. |
keyVaultUri |
string |
URI de votre coffre de clés Azure, également appelé nom DNS, qui contient la clé à utiliser pour chiffrer vos données au repos. Un exemple d’URI peut être |