Indexers - Create
Tworzy nowy indeksator.
POST {endpoint}/indexers?api-version=2025-09-01
Parametry identyfikatora URI
| Nazwa | W | Wymagane | Typ | Opis |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
Adres URL punktu końcowego usługi wyszukiwania. |
|
api-version
|
query | True |
string |
Wersja interfejsu API klienta. |
Nagłówek żądania
| Nazwa | Wymagane | Typ | Opis |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
Identyfikator śledzenia wysłany z żądaniem, aby pomóc w debugowaniu. |
Treść żądania
| Nazwa | Wymagane | Typ | Opis |
|---|---|---|---|
| dataSourceName | True |
string |
Nazwa źródła danych, z którego ten indeksator odczytuje dane. |
| name | True |
string |
Nazwa indeksatora. |
| targetIndexName | True |
string |
Nazwa indeksu, do którego ten indeksator zapisuje dane. |
| @odata.etag |
string |
Element ETag indeksatora. |
|
| description |
string |
Opis indeksatora. |
|
| disabled |
boolean |
Wartość wskazująca, czy indeksator jest wyłączony. Wartość domyślna to „false”. |
|
| encryptionKey |
Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz jest używany w celu zapewnienia dodatkowego poziomu szyfrowania magazynowanych dla definicji indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może ich odszyfrować. Po zaszyfrowaniu definicji indeksatora zawsze pozostanie ona zaszyfrowana. Usługa wyszukiwania zignoruje próby ustawienia tej właściwości na wartość null. Możesz zmienić tę właściwość zgodnie z potrzebami, jeśli chcesz obrócić klucz szyfrowania; Definicja indeksatora (i stan wykonywania indeksatora) nie będzie miała wpływu. Szyfrowanie za pomocą kluczy zarządzanych przez klienta nie jest dostępne w przypadku bezpłatnych usług wyszukiwania i jest dostępne tylko w przypadku płatnych usług utworzonych 1 stycznia 2019 r. lub później. |
||
| fieldMappings |
Definiuje mapowania między polami w źródle danych i odpowiadającymi im polami docelowymi w indeksie. |
||
| outputFieldMappings |
Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem. |
||
| parameters |
Parametry wykonywania indeksatora. |
||
| schedule |
Harmonogram dla tego indeksatora. |
||
| skillsetName |
string |
Nazwa zestawu umiejętności wykonywanego za pomocą tego indeksatora. |
Odpowiedzi
| Nazwa | Typ | Opis |
|---|---|---|
| 201 Created | ||
| Other Status Codes |
Odpowiedź na błąd. |
Przykłady
SearchServiceCreateIndexer
Przykładowe żądanie
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"
}
Przykładowa odpowiedź
{
"@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"
}
}
]
}
Definicje
| Nazwa | Opis |
|---|---|
|
Azure |
Poświadczenia zarejestrowanej aplikacji utworzonej dla usługi wyszukiwania, używanej do uwierzytelnionego dostępu do kluczy szyfrowania przechowywanych w usłudze Azure Key Vault. |
|
Blob |
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają zostać wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to osadzonej zawartości obrazu w .PDF lub innej aplikacji albo plików obrazów, takich jak .jpg i .pngw obiektach blob platformy Azure. |
|
Blob |
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga, aby zestaw umiejętności był również dołączony do tego indeksatora. |
|
Blob |
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektów blob platformy Azure. |
|
Blob |
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage. |
|
Error |
Dodatkowe informacje o błędzie zarządzania zasobami. |
|
Error |
Szczegóły błędu. |
|
Error |
Odpowiedź na błąd |
|
Field |
Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie. |
|
Field |
Reprezentuje funkcję, która przekształca wartość ze źródła danych przed indeksowaniem. |
|
Indexer |
Określa środowisko, w którym indeksator powinien być wykonywany. |
|
Indexing |
Reprezentuje parametry wykonywania indeksatora. |
|
Indexing |
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą określonej właściwości. Każda wartość musi być typu pierwotnego. |
|
Indexing |
Reprezentuje harmonogram wykonywania indeksatora. |
|
Search |
Reprezentuje indeksator. |
|
Search |
Klucz szyfrowania zarządzany przez klienta w usłudze Azure Key Vault. Klucze, które tworzysz i którymi zarządzasz, mogą służyć do szyfrowania lub odszyfrowywania danych magazynowanych, takich jak indeksy i mapy synonimów. |
AzureActiveDirectoryApplicationCredentials
Poświadczenia zarejestrowanej aplikacji utworzonej dla usługi wyszukiwania, używanej do uwierzytelnionego dostępu do kluczy szyfrowania przechowywanych w usłudze Azure Key Vault.
| Nazwa | Typ | Opis |
|---|---|---|
| applicationId |
string |
Identyfikator aplikacji usługi AAD, któremu udzielono wymaganych uprawnień dostępu do usługi Azure Key Vault, który ma być używany podczas szyfrowania danych magazynowanych. Identyfikatora aplikacji nie należy mylić z identyfikatorem obiektu aplikacji usługi AAD. |
| applicationSecret |
string |
Klucz uwierzytelniania określonej aplikacji usługi AAD. |
BlobIndexerDataToExtract
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają zostać wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to osadzonej zawartości obrazu w .PDF lub innej aplikacji albo plików obrazów, takich jak .jpg i .pngw obiektach blob platformy Azure.
| Wartość | Opis |
|---|---|
| storageMetadata |
Indeksuje tylko standardowe właściwości obiektu blob i metadane określone przez użytkownika. |
| allMetadata |
Wyodrębnia metadane dostarczone przez podsystem usługi Azure Blob Storage i metadane specyficzne dla typu zawartości (na przykład metadane unikatowe tylko dla .png plików są indeksowane). |
| contentAndMetadata |
Wyodrębnia wszystkie metadane i zawartość tekstową z każdego obiektu blob. |
BlobIndexerImageAction
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga, aby zestaw umiejętności był również dołączony do tego indeksatora.
| Wartość | Opis |
|---|---|
| none |
Ignoruje osadzone obrazy lub pliki obrazów w zestawie danych. Jest to opcja domyślna. |
| generateNormalizedImages |
Wyodrębnia tekst z obrazów (na przykład słowa "STOP" ze znaku zakazu ruchu) i osadza go w polu zawartości. Ta akcja wymaga, aby wartość "dataToExtract" była ustawiona na wartość "contentAndMetadata". Znormalizowany obraz odnosi się do dodatkowego przetwarzania, w wyniku którego uzyskuje się jednolity obraz wyjściowy, którego rozmiar i obrót zapewnia spójne renderowanie podczas dołączania obrazów do wizualnych wyników wyszukiwania. Te informacje są generowane dla każdego obrazu podczas korzystania z tej opcji. |
| generateNormalizedImagePerPage |
Wyodrębnia tekst z obrazów (na przykład słowo "STOP" ze znaku zakazu ruchu) i osadza go w polu zawartości, ale traktuje pliki PDF inaczej, ponieważ każda strona jest renderowana jako obraz i odpowiednio znormalizowana, zamiast wyodrębniać osadzone obrazy. Typy plików innych niż PDF będą traktowane tak samo, jak w przypadku ustawienia "generateNormalizedImages". |
BlobIndexerParsingMode
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektów blob platformy Azure.
| Wartość | Opis |
|---|---|
| default |
Ustawione na domyślne dla normalnego przetwarzania plików. |
| text |
Ustaw wartość text, aby zwiększyć wydajność indeksowania plików zwykłego tekstu w usłudze Blob Storage. |
| delimitedText |
Ustaw wartość delimitedText, gdy obiekty blob są zwykłymi plikami CSV. |
| json |
Ustaw wartość json, aby wyodrębnić zawartość ustrukturyzowaną z plików JSON. |
| jsonArray |
Ustaw wartość jsonArray, aby wyodrębnić poszczególne elementy tablicy JSON jako osobne dokumenty. |
| jsonLines |
Ustaw wartość jsonLines, aby wyodrębnić poszczególne jednostki JSON, oddzielone nowym wierszem, jako oddzielne dokumenty. |
BlobIndexerPDFTextRotationAlgorithm
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage.
| Wartość | Opis |
|---|---|
| none |
Wykorzystuje normalne wyodrębnianie tekstu. Jest to opcja domyślna. |
| detectAngles |
Może zapewnić lepsze i bardziej czytelne wyodrębnianie tekstu z plików PDF, które mają obrócony tekst. Należy pamiętać, że użycie tego parametru może mieć niewielki wpływ na szybkość działania. Ten parametr ma zastosowanie tylko do plików PDF i tylko do plików PDF z osadzonym tekstem. Jeśli obrócony tekst znajduje się w obrazie osadzonym w pliku PDF, ten parametr nie ma zastosowania. |
ErrorAdditionalInfo
Dodatkowe informacje o błędzie zarządzania zasobami.
| Nazwa | Typ | Opis |
|---|---|---|
| info |
object |
Dodatkowe informacje. |
| type |
string |
Dodatkowy typ informacji. |
ErrorDetail
Szczegóły błędu.
| Nazwa | Typ | Opis |
|---|---|---|
| additionalInfo |
Dodatkowe informacje o błędzie. |
|
| code |
string |
Kod błędu. |
| details |
Szczegóły błędu. |
|
| message |
string |
Komunikat o błędzie. |
| target |
string |
Element docelowy błędu. |
ErrorResponse
Odpowiedź na błąd
| Nazwa | Typ | Opis |
|---|---|---|
| error |
Obiekt błędu. |
FieldMapping
Definiuje mapowanie między polem w źródle danych a polem docelowym w indeksie.
| Nazwa | Typ | Opis |
|---|---|---|
| mappingFunction |
Funkcja, która ma być stosowana do każdej wartości pola źródłowego przed indeksowaniem. |
|
| sourceFieldName |
string |
Nazwa pola w źródle danych. |
| targetFieldName |
string |
Nazwa pola docelowego w indeksie. Domyślnie taka sama jak nazwa pola źródłowego. |
FieldMappingFunction
Reprezentuje funkcję, która przekształca wartość ze źródła danych przed indeksowaniem.
| Nazwa | Typ | Opis |
|---|---|---|
| name |
string |
Nazwa funkcji mapowania pól. |
| parameters |
object |
Słownik par nazwa/wartość parametru, które mają być przekazywane do funkcji. Każda wartość musi być typu pierwotnego. |
IndexerExecutionEnvironment
Określa środowisko, w którym indeksator powinien być wykonywany.
| Wartość | Opis |
|---|---|
| standard |
Wskazuje, że usługa wyszukiwania może określić, gdzie indeksator powinien zostać wykonany. Jest to środowisko domyślne, w którym nic nie jest określone i jest to wartość zalecana. |
| private |
Wskazuje, że indeksator powinien działać w środowisku aprowizowanym specjalnie dla usługi wyszukiwania. Należy to określić jako środowisko wykonawcze tylko wtedy, gdy indeksator musi bezpiecznie uzyskiwać dostęp do zasobów za pośrednictwem udostępnionych zasobów łącza prywatnego. |
IndexingParameters
Reprezentuje parametry wykonywania indeksatora.
| Nazwa | Typ | Domyślna wartość | Opis |
|---|---|---|---|
| batchSize |
integer (int32) |
Liczba elementów, które są odczytywane ze źródła danych i indeksowane jako pojedyncza partia w celu zwiększenia wydajności. Wartość domyślna zależy od typu źródła danych. |
|
| configuration |
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą określonej właściwości. Każda wartość musi być typu pierwotnego. |
||
| maxFailedItems |
integer (int32) |
0 |
Maksymalna liczba elementów, które mogą zakończyć się niepowodzeniem indeksowania w celu wykonania indeksatora, aby nadal być uznawana za powodzenie. -1 oznacza brak limitu. Wartość domyślna to 0. |
| maxFailedItemsPerBatch |
integer (int32) |
0 |
Maksymalna liczba elementów w jednej partii, które mogą zakończyć się niepowodzeniem indeksowania, aby partia nadal była uznawana za powodzenie. -1 oznacza brak limitu. Wartość domyślna to 0. |
IndexingParametersConfiguration
Słownik właściwości konfiguracji specyficznych dla indeksatora. Każda nazwa jest nazwą określonej właściwości. Każda wartość musi być typu pierwotnego.
| Nazwa | Typ | Domyślna wartość | Opis |
|---|---|---|---|
| allowSkillsetToReadFileData |
boolean |
False |
Jeśli true, utworzy ścieżkę //document//file_data która jest obiektem reprezentującym oryginalne dane pliku pobrane ze źródła danych obiektu blob. Dzięki temu można przekazać oryginalne dane pliku do niestandardowej umiejętności w celu przetwarzania w potoku wzbogacania lub do umiejętności wyodrębniania dokumentów. |
| dataToExtract | contentAndMetadata |
Określa dane do wyodrębnienia z usługi Azure Blob Storage i informuje indeksator, które dane mają zostać wyodrębnione z zawartości obrazu, gdy wartość "imageAction" jest ustawiona na wartość inną niż "none". Dotyczy to osadzonej zawartości obrazu w .PDF lub innej aplikacji albo plików obrazów, takich jak .jpg i .pngw obiektach blob platformy Azure. |
|
| delimitedTextDelimiter |
string |
W przypadku obiektów blob CSV określa jednoznakowy ogranicznik końca wiersza dla plików CSV, w których każdy wiersz rozpoczyna nowy dokument (na przykład "|"). |
|
| delimitedTextHeaders |
string |
W przypadku obiektów blob CSV określa rozdzielaną przecinkami listę nagłówków kolumn, przydatną do mapowania pól źródłowych na pola docelowe w indeksie. |
|
| documentRoot |
string |
W przypadku tablic JSON, biorąc pod uwagę dokument ze strukturą lub częściowo ustrukturyzowany, można określić ścieżkę do tablicy przy użyciu tej właściwości. |
|
| excludedFileNameExtensions |
string |
Rozdzielana przecinkami lista rozszerzeń nazw plików, które mają być ignorowane podczas przetwarzania z usługi Azure Blob Storage. Na przykład możesz wykluczyć ".png, .mp4", aby pominąć te pliki podczas indeksowania. |
|
| executionEnvironment | standard |
Określa środowisko, w którym indeksator powinien być wykonywany. |
|
| failOnUnprocessableDocument |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw wartość false, jeśli chcesz kontynuować indeksowanie, jeśli indeksowanie dokumentu zakończy się niepowodzeniem. |
| failOnUnsupportedContentType |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw wartość false, jeśli chcesz kontynuować indeksowanie po napotkaniu nieobsługiwanego typu zawartości i nie znasz wszystkich typów zawartości (rozszerzeń plików) z wyprzedzeniem. |
| firstLineContainsHeaders |
boolean |
True |
W przypadku obiektów blob CSV wskazuje, że pierwszy (niepusty) wiersz każdego obiektu blob zawiera nagłówki. |
| imageAction | none |
Określa sposób przetwarzania osadzonych obrazów i plików obrazów w usłudze Azure Blob Storage. Ustawienie konfiguracji "imageAction" na dowolną wartość inną niż "none" wymaga, aby zestaw umiejętności był również dołączony do tego indeksatora. |
|
| indexStorageMetadataOnlyForOversizedDocuments |
boolean |
False |
W przypadku obiektów blob platformy Azure ustaw tę właściwość na true, aby nadal indeksować metadane magazynu dla zawartości obiektu blob, która jest zbyt duża do przetworzenia. Oversized blobs są domyślnie traktowane jako błędy. Aby uzyskać informacje o ograniczeniach rozmiaru obiektu blob, zobacz https://learn.microsoft.com/azure/search/search-limits-quotas-capacity. |
| indexedFileNameExtensions |
string |
Rozdzielana przecinkami lista rozszerzeń nazw plików do wybrania podczas przetwarzania z usługi Azure Blob Storage. Na przykład możesz skupić się na indeksowaniu określonych plików aplikacji ".docx, .pptx, .msg", aby uwzględnić te typy plików. |
|
| parsingMode | default |
Reprezentuje tryb analizowania indeksowania ze źródła danych obiektów blob platformy Azure. |
|
| pdfTextRotationAlgorithm | none |
Określa algorytm wyodrębniania tekstu z plików PDF w usłudze Azure Blob Storage. |
|
| queryTimeout |
string |
00:05:00 |
Zwiększa limit czasu poza 5-minutowy domyślny dla źródeł danych usługi Azure SQL Database, określony w formacie "hh:mm:ss". |
IndexingSchedule
Reprezentuje harmonogram wykonywania indeksatora.
| Nazwa | Typ | Opis |
|---|---|---|
| interval |
string (duration) |
Interwał czasu między wykonaniami indeksatora. |
| startTime |
string (date-time) |
Czas, w którym indeksator powinien zacząć działać. |
SearchIndexer
Reprezentuje indeksator.
| Nazwa | Typ | Domyślna wartość | Opis |
|---|---|---|---|
| @odata.etag |
string |
Element ETag indeksatora. |
|
| dataSourceName |
string |
Nazwa źródła danych, z którego ten indeksator odczytuje dane. |
|
| description |
string |
Opis indeksatora. |
|
| disabled |
boolean |
False |
Wartość wskazująca, czy indeksator jest wyłączony. Wartość domyślna to „false”. |
| encryptionKey |
Opis klucza szyfrowania utworzonego w usłudze Azure Key Vault. Ten klucz jest używany w celu zapewnienia dodatkowego poziomu szyfrowania magazynowanych dla definicji indeksatora (a także stanu wykonywania indeksatora), gdy chcesz mieć pełną pewność, że nikt, nawet firma Microsoft, nie może ich odszyfrować. Po zaszyfrowaniu definicji indeksatora zawsze pozostanie ona zaszyfrowana. Usługa wyszukiwania zignoruje próby ustawienia tej właściwości na wartość null. Możesz zmienić tę właściwość zgodnie z potrzebami, jeśli chcesz obrócić klucz szyfrowania; Definicja indeksatora (i stan wykonywania indeksatora) nie będzie miała wpływu. Szyfrowanie za pomocą kluczy zarządzanych przez klienta nie jest dostępne w przypadku bezpłatnych usług wyszukiwania i jest dostępne tylko w przypadku płatnych usług utworzonych 1 stycznia 2019 r. lub później. |
||
| fieldMappings |
Definiuje mapowania między polami w źródle danych i odpowiadającymi im polami docelowymi w indeksie. |
||
| name |
string |
Nazwa indeksatora. |
|
| outputFieldMappings |
Mapowania pól wyjściowych są stosowane po wzbogaceniu i bezpośrednio przed indeksowaniem. |
||
| parameters |
Parametry wykonywania indeksatora. |
||
| schedule |
Harmonogram dla tego indeksatora. |
||
| skillsetName |
string |
Nazwa zestawu umiejętności wykonywanego za pomocą tego indeksatora. |
|
| targetIndexName |
string |
Nazwa indeksu, do którego ten indeksator zapisuje dane. |
SearchResourceEncryptionKey
Klucz szyfrowania zarządzany przez klienta w usłudze Azure Key Vault. Klucze, które tworzysz i którymi zarządzasz, mogą służyć do szyfrowania lub odszyfrowywania danych magazynowanych, takich jak indeksy i mapy synonimów.
| Nazwa | Typ | Opis |
|---|---|---|
| accessCredentials |
Opcjonalne poświadczenia usługi Azure Active Directory używane do uzyskiwania dostępu do usługi Azure Key Vault. Nie jest to wymagane, jeśli zamiast tego używasz tożsamości zarządzanej. |
|
| keyVaultKeyName |
string |
Nazwa klucza usługi Azure Key Vault, który ma być używany do szyfrowania danych magazynowanych. |
| keyVaultKeyVersion |
string |
Wersja klucza usługi Azure Key Vault, która ma być używana do szyfrowania danych magazynowanych. |
| keyVaultUri |
string |
Identyfikator URI usługi Azure Key Vault, nazywany również nazwą DNS, który zawiera klucz, który ma być używany do szyfrowania danych magazynowanych. Przykładowym identyfikatorem URI może być |