@azure/search-documents 12.1.0-beta.2 → 12.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +405 -258
  3. package/dist/index.js.map +1 -1
  4. package/dist-esm/src/base64.browser.js +1 -1
  5. package/dist-esm/src/base64.browser.js.map +1 -1
  6. package/dist-esm/src/base64.js +1 -1
  7. package/dist-esm/src/base64.js.map +1 -1
  8. package/dist-esm/src/errorModels.js +1 -1
  9. package/dist-esm/src/errorModels.js.map +1 -1
  10. package/dist-esm/src/generated/data/models/index.js +17 -17
  11. package/dist-esm/src/generated/data/models/index.js.map +1 -1
  12. package/dist-esm/src/generated/data/models/mappers.js +153 -48
  13. package/dist-esm/src/generated/data/models/mappers.js.map +1 -1
  14. package/dist-esm/src/generated/data/searchClient.js +1 -1
  15. package/dist-esm/src/generated/data/searchClient.js.map +1 -1
  16. package/dist-esm/src/generated/service/models/index.js +43 -23
  17. package/dist-esm/src/generated/service/models/index.js.map +1 -1
  18. package/dist-esm/src/generated/service/models/mappers.js +89 -33
  19. package/dist-esm/src/generated/service/models/mappers.js.map +1 -1
  20. package/dist-esm/src/generated/service/searchServiceClient.js +1 -1
  21. package/dist-esm/src/generated/service/searchServiceClient.js.map +1 -1
  22. package/dist-esm/src/geographyPoint.js +1 -1
  23. package/dist-esm/src/geographyPoint.js.map +1 -1
  24. package/dist-esm/src/index.js +3 -3
  25. package/dist-esm/src/index.js.map +1 -1
  26. package/dist-esm/src/indexDocumentsBatch.js +1 -1
  27. package/dist-esm/src/indexDocumentsBatch.js.map +1 -1
  28. package/dist-esm/src/indexModels.js +1 -1
  29. package/dist-esm/src/indexModels.js.map +1 -1
  30. package/dist-esm/src/logger.js +1 -1
  31. package/dist-esm/src/logger.js.map +1 -1
  32. package/dist-esm/src/odata.js +1 -1
  33. package/dist-esm/src/odata.js.map +1 -1
  34. package/dist-esm/src/odataMetadataPolicy.js +1 -1
  35. package/dist-esm/src/odataMetadataPolicy.js.map +1 -1
  36. package/dist-esm/src/searchApiKeyCredentialPolicy.js +1 -1
  37. package/dist-esm/src/searchApiKeyCredentialPolicy.js.map +1 -1
  38. package/dist-esm/src/searchAudience.js +1 -1
  39. package/dist-esm/src/searchAudience.js.map +1 -1
  40. package/dist-esm/src/searchClient.js +1 -1
  41. package/dist-esm/src/searchClient.js.map +1 -1
  42. package/dist-esm/src/searchIndexClient.js +1 -1
  43. package/dist-esm/src/searchIndexClient.js.map +1 -1
  44. package/dist-esm/src/searchIndexerClient.js +1 -1
  45. package/dist-esm/src/searchIndexerClient.js.map +1 -1
  46. package/dist-esm/src/searchIndexingBufferedSender.js +1 -1
  47. package/dist-esm/src/searchIndexingBufferedSender.js.map +1 -1
  48. package/dist-esm/src/serialization.js +1 -1
  49. package/dist-esm/src/serialization.js.map +1 -1
  50. package/dist-esm/src/serviceModels.js +1 -1
  51. package/dist-esm/src/serviceModels.js.map +1 -1
  52. package/dist-esm/src/serviceUtils.js +58 -98
  53. package/dist-esm/src/serviceUtils.js.map +1 -1
  54. package/dist-esm/src/synonymMapHelper.browser.js +1 -1
  55. package/dist-esm/src/synonymMapHelper.browser.js.map +1 -1
  56. package/dist-esm/src/synonymMapHelper.js +1 -1
  57. package/dist-esm/src/synonymMapHelper.js.map +1 -1
  58. package/dist-esm/src/tracing.js +1 -1
  59. package/dist-esm/src/tracing.js.map +1 -1
  60. package/dist-esm/src/walk.js +1 -1
  61. package/dist-esm/src/walk.js.map +1 -1
  62. package/package.json +9 -8
  63. package/types/search-documents.d.ts +380 -267
  64. package/dist-esm/src/generatedStringLiteralUnions.js +0 -4
  65. package/dist-esm/src/generatedStringLiteralUnions.js.map +0 -1
@@ -26,7 +26,7 @@ export declare interface AIServicesVisionVectorizer extends BaseVectorSearchVect
26
26
  /** Polymorphic discriminator, which specifies the different types this object can be */
27
27
  kind: "aiServicesVision";
28
28
  /** Contains the parameters specific to AI Services Vision embedding vectorization. */
29
- aIServicesVisionParameters?: AIServicesVisionParameters;
29
+ parameters?: AIServicesVisionParameters;
30
30
  }
31
31
 
32
32
  /**
@@ -44,7 +44,7 @@ export declare interface AIServicesVisionVectorizer extends BaseVectorSearchVect
44
44
  export declare type AIStudioModelCatalogName = string;
45
45
 
46
46
  /**
47
- * An iterator for listing the aliases that exist in the Search service. Will make requests
47
+ * An iterator for listing the aliases that exist in the Search service. This will make requests
48
48
  * as needed during iteration. Use .byPage() to make one request to the server
49
49
  * per iteration.
50
50
  */
@@ -274,18 +274,17 @@ export declare interface AzureOpenAIEmbeddingSkill extends BaseSearchIndexerSkil
274
274
  * ### Known values supported by the service
275
275
  * **text-embedding-ada-002** \
276
276
  * **text-embedding-3-large** \
277
- * **text-embedding-3-small** \
278
- * **experimental**
277
+ * **text-embedding-3-small**
279
278
  */
280
279
  export declare type AzureOpenAIModelName = string;
281
280
 
282
- /** Contains the parameters specific to using an Azure Open AI service for vectorization at query time. */
281
+ /** Specifies the parameters for connecting to the Azure OpenAI resource. */
283
282
  export declare interface AzureOpenAIParameters {
284
- /** The resource uri for your Azure Open AI resource. */
285
- resourceUri?: string;
286
- /** ID of your Azure Open AI model deployment on the designated resource. */
283
+ /** The resource URI of the Azure OpenAI resource. */
284
+ resourceUrl?: string;
285
+ /** ID of the Azure OpenAI model deployment on the designated resource. */
287
286
  deploymentId?: string;
288
- /** API key for the designated Azure Open AI resource. */
287
+ /** API key of the designated Azure OpenAI resource. */
289
288
  apiKey?: string;
290
289
  /** The user-assigned managed identity used for outbound connections. */
291
290
  authIdentity?: SearchIndexerDataIdentity;
@@ -293,12 +292,19 @@ export declare interface AzureOpenAIParameters {
293
292
  modelName?: AzureOpenAIModelName;
294
293
  }
295
294
 
295
+ export declare interface AzureOpenAITokenizerParameters {
296
+ /** Only applies if the unit is set to azureOpenAITokens. Options include 'R50k_base', 'P50k_base', 'P50k_edit' and 'CL100k_base'. The default value is 'CL100k_base'. */
297
+ encoderModelName?: SplitSkillEncoderModelName;
298
+ /** (Optional) Only applies if the unit is set to azureOpenAITokens. This parameter defines a collection of special tokens that are permitted within the tokenization process. */
299
+ allowedSpecialTokens?: string[];
300
+ }
301
+
296
302
  /** Contains the parameters specific to using an Azure Open AI service for vectorization at query time. */
297
303
  export declare interface AzureOpenAIVectorizer extends BaseVectorSearchVectorizer {
298
304
  /** Polymorphic discriminator, which specifies the different types this object can be */
299
305
  kind: "azureOpenAI";
300
306
  /** Contains the parameters specific to Azure Open AI embedding vectorization. */
301
- azureOpenAIParameters?: AzureOpenAIParameters;
307
+ parameters?: AzureOpenAIParameters;
302
308
  }
303
309
 
304
310
  /** Specifies the properties common between all AML vectorizer auth types. */
@@ -559,6 +565,9 @@ export declare interface BaseVectorQuery<TModel extends object> {
559
565
  weight?: number;
560
566
  /** The threshold used for vector queries. Note this can only be set if all 'fields' use the same similarity metric. */
561
567
  threshold?: VectorThreshold;
568
+ /** The OData filter expression to apply to this specific vector query. If no filter expression is defined at the vector level, the expression defined in
569
+ * the top level filter parameter is used instead. */
570
+ filterOverride?: string;
562
571
  }
563
572
 
564
573
  /** Contains configuration options specific to the algorithm used during indexing and/or querying. */
@@ -570,15 +579,17 @@ export declare interface BaseVectorSearchAlgorithmConfiguration {
570
579
  }
571
580
 
572
581
  /** Contains configuration options specific to the compression method used during indexing or querying. */
573
- export declare interface BaseVectorSearchCompressionConfiguration {
582
+ export declare interface BaseVectorSearchCompression {
574
583
  /** Polymorphic discriminator, which specifies the different types this object can be */
575
- kind: "scalarQuantization";
584
+ kind: "scalarQuantization" | "binaryQuantization";
576
585
  /** The name to associate with this particular configuration. */
577
- name: string;
586
+ compressionName: string;
578
587
  /** If set to true, once the ordered set of results calculated using compressed vectors are obtained, they will be reranked again by recalculating the full-precision similarity scores. This will improve recall at the expense of latency. */
579
588
  rerankWithOriginalVectors?: boolean;
580
589
  /** Default oversampling factor. Oversampling will internally request more documents (specified by this multiplier) in the initial search. This increases the set of results that will be reranked using recomputed similarity scores from full-precision vectors. Minimum value is 1, meaning no oversampling (1x). This parameter can only be set when rerankWithOriginalVectors is true. Higher values improve recall at the expense of latency. */
581
590
  defaultOversampling?: number;
591
+ /** The number of dimensions to truncate the vectors to. Truncating the vectors reduces the size of the vectors and the amount of data that needs to be transferred during search. This can save storage cost and improve search performance at the expense of recall. It should be only used for embeddings trained with Matryoshka Representation Learning (MRL) such as OpenAI text-embedding-3-large (small). The default value is null, which means no truncation. */
592
+ truncationDimension?: number;
582
593
  }
583
594
 
584
595
  /** Contains specific details for a vectorization method to be used during query time. */
@@ -586,7 +597,7 @@ export declare interface BaseVectorSearchVectorizer {
586
597
  /** Polymorphic discriminator, which specifies the different types this object can be */
587
598
  kind: VectorSearchVectorizerKind;
588
599
  /** The name to associate with this particular vectorization method. */
589
- name: string;
600
+ vectorizerName: string;
590
601
  }
591
602
 
592
603
  /** The threshold used for vector queries. */
@@ -595,13 +606,19 @@ export declare interface BaseVectorThreshold {
595
606
  kind: "vectorSimilarity" | "searchScore";
596
607
  }
597
608
 
598
- export declare type BlobIndexerDataToExtract = "storageMetadata" | "allMetadata" | "contentAndMetadata";
609
+ /** Contains configuration options specific to the binary quantization compression method used during indexing and querying. */
610
+ export declare interface BinaryQuantizationCompression extends BaseVectorSearchCompression {
611
+ /** Polymorphic discriminator, which specifies the different types this object can be */
612
+ kind: "binaryQuantization";
613
+ }
614
+
615
+ export declare type BlobIndexerDataToExtract = `${KnownBlobIndexerDataToExtract}`;
599
616
 
600
- export declare type BlobIndexerImageAction = "none" | "generateNormalizedImages" | "generateNormalizedImagePerPage";
617
+ export declare type BlobIndexerImageAction = `${KnownBlobIndexerImageAction}`;
601
618
 
602
- export declare type BlobIndexerParsingMode = "default" | "text" | "delimitedText" | "json" | "jsonArray" | "jsonLines";
619
+ export declare type BlobIndexerParsingMode = `${KnownBlobIndexerParsingMode}`;
603
620
 
604
- export declare type BlobIndexerPDFTextRotationAlgorithm = "none" | "detectAngles";
621
+ export declare type BlobIndexerPDFTextRotationAlgorithm = `${KnownBlobIndexerPDFTextRotationAlgorithm}`;
605
622
 
606
623
  /** Ranking function based on the Okapi BM25 similarity algorithm. BM25 is a TF-IDF-like algorithm that includes length normalization (controlled by the 'b' parameter) as well as term frequency saturation (controlled by the 'k1' parameter). */
607
624
  export declare interface BM25Similarity extends Similarity {
@@ -704,7 +721,7 @@ export declare interface ComplexField {
704
721
  /**
705
722
  * A list of sub-fields.
706
723
  */
707
- fields: SearchField[];
724
+ fields?: SearchField[];
708
725
  }
709
726
 
710
727
  /** A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output. */
@@ -941,7 +958,7 @@ export declare interface CustomEntityLookupSkill extends BaseSearchIndexerSkill
941
958
  globalDefaultFuzzyEditDistance?: number;
942
959
  }
943
960
 
944
- export declare type CustomEntityLookupSkillLanguage = "da" | "de" | "en" | "es" | "fi" | "fr" | "it" | "ko" | "pt";
961
+ export declare type CustomEntityLookupSkillLanguage = `${KnownCustomEntityLookupSkillLanguage}`;
945
962
 
946
963
  /** Allows you to configure normalization for filterable, sortable, and facetable fields, which by default operate with strict matching. This is a user-defined configuration consisting of at least one or more filters, which modify the token that is stored. */
947
964
  export declare interface CustomNormalizer extends BaseLexicalNormalizer {
@@ -953,30 +970,6 @@ export declare interface CustomNormalizer extends BaseLexicalNormalizer {
953
970
  charFilters?: CharFilterName[];
954
971
  }
955
972
 
956
- /** Contains the parameters specific to generating vector embeddings via a custom endpoint. */
957
- export declare interface CustomVectorizer extends BaseVectorSearchVectorizer {
958
- /** Polymorphic discriminator, which specifies the different types this object can be */
959
- kind: "customWebApi";
960
- /** Contains the parameters specific to generating vector embeddings via a custom endpoint. */
961
- customVectorizerParameters?: CustomVectorizerParameters;
962
- }
963
-
964
- /** Contains the parameters specific to generating vector embeddings via a custom endpoint. */
965
- export declare interface CustomVectorizerParameters {
966
- /** The uri for the Web API. */
967
- uri?: string;
968
- /** The headers required to make the http request. */
969
- httpHeaders?: Record<string, string>;
970
- /** The method for the http request. */
971
- httpMethod?: string;
972
- /** The desired timeout for the request. Default is 30 seconds. */
973
- timeout?: string;
974
- /** Applies to custom endpoints that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the vectorization connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token. */
975
- authResourceId?: string;
976
- /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to "none", the value of this property is cleared. */
977
- authIdentity?: SearchIndexerDataIdentity;
978
- }
979
-
980
973
  /**
981
974
  * Contains the possible cases for DataChangeDetectionPolicy.
982
975
  */
@@ -1112,6 +1105,11 @@ export declare interface DocumentDebugInfo {
1112
1105
  * NOTE: This property will not be serialized. It can only be populated by the server.
1113
1106
  */
1114
1107
  readonly semantic?: SemanticDebugInfo;
1108
+ /**
1109
+ * Contains debugging information specific to vector and hybrid search.
1110
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1111
+ */
1112
+ readonly vectors?: VectorsDebugInfo;
1115
1113
  }
1116
1114
 
1117
1115
  /** A skill that extracts content from a file within the enrichment pipeline. */
@@ -1182,7 +1180,7 @@ export declare interface ElisionTokenFilter extends BaseTokenFilter {
1182
1180
  articles?: string[];
1183
1181
  }
1184
1182
 
1185
- export declare type EntityCategory = "location" | "organization" | "person" | "quantity" | "datetime" | "url" | "email";
1183
+ export declare type EntityCategory = `${KnownEntityCategory}`;
1186
1184
 
1187
1185
  /** Using the Text Analytics API, extracts linked entities from text. */
1188
1186
  export declare interface EntityLinkingSkill extends BaseSearchIndexerSkill {
@@ -1214,7 +1212,7 @@ export declare interface EntityRecognitionSkill extends BaseSearchIndexerSkill {
1214
1212
  minimumPrecision?: number;
1215
1213
  }
1216
1214
 
1217
- export declare type EntityRecognitionSkillLanguage = "ar" | "cs" | "zh-Hans" | "zh-Hant" | "da" | "nl" | "en" | "fi" | "fr" | "de" | "el" | "hu" | "it" | "ja" | "ko" | "no" | "pl" | "pt-PT" | "pt-BR" | "ru" | "es" | "sv" | "tr";
1215
+ export declare type EntityRecognitionSkillLanguage = `${KnownEntityRecognitionSkillLanguage}`;
1218
1216
 
1219
1217
  /** Using the Text Analytics API, extracts entities of different types from text. */
1220
1218
  export declare interface EntityRecognitionSkillV3 extends BaseSearchIndexerSkill {
@@ -1495,9 +1493,9 @@ export declare interface ImageAnalysisSkill extends BaseSearchIndexerSkill {
1495
1493
  details?: ImageDetail[];
1496
1494
  }
1497
1495
 
1498
- export declare type ImageAnalysisSkillLanguage = "ar" | "az" | "bg" | "bs" | "ca" | "cs" | "cy" | "da" | "de" | "el" | "en" | "es" | "et" | "eu" | "fi" | "fr" | "ga" | "gl" | "he" | "hi" | "hr" | "hu" | "id" | "it" | "ja" | "kk" | "ko" | "lt" | "lv" | "mk" | "ms" | "nb" | "nl" | "pl" | "prs" | "pt-BR" | "pt" | "pt-PT" | "ro" | "ru" | "sk" | "sl" | "sr-Cyrl" | "sr-Latn" | "sv" | "th" | "tr" | "uk" | "vi" | "zh" | "zh-Hans" | "zh-Hant";
1496
+ export declare type ImageAnalysisSkillLanguage = `${KnownImageAnalysisSkillLanguage}`;
1499
1497
 
1500
- export declare type ImageDetail = "celebrities" | "landmarks";
1498
+ export declare type ImageDetail = `${KnownImageDetail}`;
1501
1499
 
1502
1500
  /** Defines values for IndexActionType. */
1503
1501
  export declare type IndexActionType = "upload" | "merge" | "mergeOrUpload" | "delete";
@@ -1587,7 +1585,7 @@ export declare interface IndexDocumentsResult {
1587
1585
  readonly results: IndexingResult[];
1588
1586
  }
1589
1587
 
1590
- export declare type IndexerExecutionEnvironment = "standard" | "private";
1588
+ export declare type IndexerExecutionEnvironment = `${KnownIndexerExecutionEnvironment}`;
1591
1589
 
1592
1590
  /** Represents the result of an individual indexer execution. */
1593
1591
  export declare interface IndexerExecutionResult {
@@ -1869,7 +1867,7 @@ export declare interface KeyPhraseExtractionSkill extends BaseSearchIndexerSkill
1869
1867
  modelVersion?: string;
1870
1868
  }
1871
1869
 
1872
- export declare type KeyPhraseExtractionSkillLanguage = "da" | "nl" | "en" | "fi" | "fr" | "de" | "it" | "ja" | "ko" | "no" | "pl" | "pt-PT" | "pt-BR" | "ru" | "es" | "sv";
1870
+ export declare type KeyPhraseExtractionSkillLanguage = `${KnownKeyPhraseExtractionSkillLanguage}`;
1873
1871
 
1874
1872
  /** Marks terms as keywords. This token filter is implemented using Apache Lucene. */
1875
1873
  export declare interface KeywordMarkerTokenFilter extends BaseTokenFilter {
@@ -2304,9 +2302,7 @@ export declare enum KnownAzureOpenAIModelName {
2304
2302
  /** TextEmbedding3Large */
2305
2303
  TextEmbedding3Large = "text-embedding-3-large",
2306
2304
  /** TextEmbedding3Small */
2307
- TextEmbedding3Small = "text-embedding-3-small",
2308
- /** Experimental */
2309
- Experimental = "experimental"
2305
+ TextEmbedding3Small = "text-embedding-3-small"
2310
2306
  }
2311
2307
 
2312
2308
  /** Known values of {@link BlobIndexerDataToExtract} that the service accepts. */
@@ -2353,12 +2349,6 @@ export declare enum KnownBlobIndexerPDFTextRotationAlgorithm {
2353
2349
  DetectAngles = "detectAngles"
2354
2350
  }
2355
2351
 
2356
- /** Known values of {@link CharFilterName} that the service accepts. */
2357
- export declare enum KnownCharFilterName {
2358
- /** A character filter that attempts to strip out HTML constructs. See https:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/charfilter\/HTMLStripCharFilter.html */
2359
- HtmlStrip = "html_strip"
2360
- }
2361
-
2362
2352
  /**
2363
2353
  * Defines values for CharFilterName.
2364
2354
  * @readonly
@@ -2827,7 +2817,7 @@ export declare enum KnownLexicalAnalyzerName {
2827
2817
  ViMicrosoft = "vi.microsoft",
2828
2818
  /** Standard Lucene analyzer. */
2829
2819
  StandardLucene = "standard.lucene",
2830
- /** Standard ASCII Folding Lucene analyzer. See https:\//docs.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#Analyzers */
2820
+ /** Standard ASCII Folding Lucene analyzer. See https:\//learn.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#Analyzers */
2831
2821
  StandardAsciiFoldingLucene = "standardasciifolding.lucene",
2832
2822
  /** Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/KeywordAnalyzer.html */
2833
2823
  Keyword = "keyword",
@@ -2857,38 +2847,8 @@ declare enum KnownLexicalNormalizerName {
2857
2847
  export { KnownLexicalNormalizerName }
2858
2848
  export { KnownLexicalNormalizerName as KnownNormalizerNames }
2859
2849
 
2860
- /** Known values of {@link LexicalTokenizerName} that the service accepts. */
2861
- export declare enum KnownLexicalTokenizerName {
2862
- /** Grammar-based tokenizer that is suitable for processing most European-language documents. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/standard\/ClassicTokenizer.html */
2863
- Classic = "classic",
2864
- /** Tokenizes the input from an edge into n-grams of the given size(s). See https:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ngram\/EdgeNGramTokenizer.html */
2865
- EdgeNGram = "edgeNGram",
2866
- /** Emits the entire input as a single token. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/KeywordTokenizer.html */
2867
- Keyword = "keyword_v2",
2868
- /** Divides text at non-letters. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/LetterTokenizer.html */
2869
- Letter = "letter",
2870
- /** Divides text at non-letters and converts them to lower case. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/LowerCaseTokenizer.html */
2871
- Lowercase = "lowercase",
2872
- /** Divides text using language-specific rules. */
2873
- MicrosoftLanguageTokenizer = "microsoft_language_tokenizer",
2874
- /** Divides text using language-specific rules and reduces words to their base forms. */
2875
- MicrosoftLanguageStemmingTokenizer = "microsoft_language_stemming_tokenizer",
2876
- /** Tokenizes the input into n-grams of the given size(s). See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ngram\/NGramTokenizer.html */
2877
- NGram = "nGram",
2878
- /** Tokenizer for path-like hierarchies. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/path\/PathHierarchyTokenizer.html */
2879
- PathHierarchy = "path_hierarchy_v2",
2880
- /** Tokenizer that uses regex pattern matching to construct distinct tokens. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/pattern\/PatternTokenizer.html */
2881
- Pattern = "pattern",
2882
- /** Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/standard\/StandardTokenizer.html */
2883
- Standard = "standard_v2",
2884
- /** Tokenizes urls and emails as one token. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/standard\/UAX29URLEmailTokenizer.html */
2885
- UaxUrlEmail = "uax_url_email",
2886
- /** Divides text at whitespace. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/WhitespaceTokenizer.html */
2887
- Whitespace = "whitespace"
2888
- }
2889
-
2890
- /** Known values of {@link LineEnding} that the service accepts. */
2891
- export declare enum KnownLineEnding {
2850
+ /** Known values of {@link OcrLineEnding} that the service accepts. */
2851
+ export declare enum KnownOcrLineEnding {
2892
2852
  /** Lines are separated by a single space character. */
2893
2853
  Space = "space",
2894
2854
  /** Lines are separated by a carriage return ('\r') character. */
@@ -3453,6 +3413,36 @@ export declare enum KnownSearchAudience {
3453
3413
  AzurePublicCloud = "https://search.azure.com"
3454
3414
  }
3455
3415
 
3416
+ /** Known values of {@link SearchFieldDataType} that the service accepts. */
3417
+ export declare enum KnownSearchFieldDataType {
3418
+ /** Indicates that a field contains a string. */
3419
+ String = "Edm.String",
3420
+ /** Indicates that a field contains a 32-bit signed integer. */
3421
+ Int32 = "Edm.Int32",
3422
+ /** Indicates that a field contains a 64-bit signed integer. */
3423
+ Int64 = "Edm.Int64",
3424
+ /** Indicates that a field contains an IEEE double-precision floating point number. */
3425
+ Double = "Edm.Double",
3426
+ /** Indicates that a field contains a Boolean value (true or false). */
3427
+ Boolean = "Edm.Boolean",
3428
+ /** Indicates that a field contains a date\/time value, including timezone information. */
3429
+ DateTimeOffset = "Edm.DateTimeOffset",
3430
+ /** Indicates that a field contains a geo-location in terms of longitude and latitude. */
3431
+ GeographyPoint = "Edm.GeographyPoint",
3432
+ /** Indicates that a field contains one or more complex objects that in turn have sub-fields of other types. */
3433
+ Complex = "Edm.ComplexType",
3434
+ /** Indicates that a field contains a single-precision floating point number. This is only valid when used with Collection(Edm.Single). */
3435
+ Single = "Edm.Single",
3436
+ /** Indicates that a field contains a half-precision floating point number. This is only valid when used with Collection(Edm.Half). */
3437
+ Half = "Edm.Half",
3438
+ /** Indicates that a field contains a 16-bit signed integer. This is only valid when used with Collection(Edm.Int16). */
3439
+ Int16 = "Edm.Int16",
3440
+ /** Indicates that a field contains a 8-bit signed integer. This is only valid when used with Collection(Edm.SByte). */
3441
+ SByte = "Edm.SByte",
3442
+ /** Indicates that a field contains a 8-bit unsigned integer. This is only valid when used with Collection(Edm.Byte). */
3443
+ Byte = "Edm.Byte"
3444
+ }
3445
+
3456
3446
  /** Known values of {@link SearchIndexerDataSourceType} that the service accepts. */
3457
3447
  export declare enum KnownSearchIndexerDataSourceType {
3458
3448
  /** Indicates an Azure SQL datasource. */
@@ -3481,7 +3471,7 @@ export declare enum KnownSemanticErrorMode {
3481
3471
 
3482
3472
  /** Known values of {@link SemanticErrorReason} that the service accepts. */
3483
3473
  export declare enum KnownSemanticErrorReason {
3484
- /** If 'semanticMaxWaitInMilliseconds' was set and the semantic processing duration exceeded that value. Only the base results were returned. */
3474
+ /** If `semanticMaxWaitInMilliseconds` was set and the semantic processing duration exceeded that value. Only the base results were returned. */
3485
3475
  MaxWaitExceeded = "maxWaitExceeded",
3486
3476
  /** The request was throttled. Only the base results were returned. */
3487
3477
  CapacityOverloaded = "capacityOverloaded",
@@ -3549,6 +3539,18 @@ export declare enum KnownSpeller {
3549
3539
  Lexicon = "lexicon"
3550
3540
  }
3551
3541
 
3542
+ /** Known values of {@link SplitSkillEncoderModelName} that the service accepts. */
3543
+ export declare enum KnownSplitSkillEncoderModelName {
3544
+ /** Refers to a base model trained with a 50,000 token vocabulary, often used in general natural language processing tasks. */
3545
+ R50KBase = "r50k_base",
3546
+ /** A base model with a 50,000 token vocabulary, optimized for prompt-based tasks. */
3547
+ P50KBase = "p50k_base",
3548
+ /** Similar to p50k_base but fine-tuned for editing or rephrasing tasks with a 50,000 token vocabulary. */
3549
+ P50KEdit = "p50k_edit",
3550
+ /** A base model with a 100,000 token vocabulary. */
3551
+ CL100KBase = "cl100k_base"
3552
+ }
3553
+
3552
3554
  /** Known values of {@link SplitSkillLanguage} that the service accepts. */
3553
3555
  export declare enum KnownSplitSkillLanguage {
3554
3556
  /** Amharic */
@@ -3619,6 +3621,14 @@ export declare enum KnownSplitSkillLanguage {
3619
3621
  Zh = "zh"
3620
3622
  }
3621
3623
 
3624
+ /** Known values of {@link SplitSkillUnit} that the service accepts. */
3625
+ export declare enum KnownSplitSkillUnit {
3626
+ /** The length will be measured by character. */
3627
+ Characters = "characters",
3628
+ /** The length will be measured by an AzureOpenAI tokenizer from the tiktoken library. */
3629
+ AzureOpenAITokens = "azureOpenAITokens"
3630
+ }
3631
+
3622
3632
  /** Known values of {@link TextSplitMode} that the service accepts. */
3623
3633
  export declare enum KnownTextSplitMode {
3624
3634
  /** Split the text into individual pages. */
@@ -3775,78 +3785,6 @@ export declare enum KnownTextTranslationSkillLanguage {
3775
3785
  Pa = "pa"
3776
3786
  }
3777
3787
 
3778
- /** Known values of {@link TokenFilterName} that the service accepts. */
3779
- export declare enum KnownTokenFilterName {
3780
- /** A token filter that applies the Arabic normalizer to normalize the orthography. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ar\/ArabicNormalizationFilter.html */
3781
- ArabicNormalization = "arabic_normalization",
3782
- /** Strips all characters after an apostrophe (including the apostrophe itself). See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/tr\/ApostropheFilter.html */
3783
- Apostrophe = "apostrophe",
3784
- /** Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the "Basic Latin" Unicode block) into their ASCII equivalents, if such equivalents exist. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/ASCIIFoldingFilter.html */
3785
- AsciiFolding = "asciifolding",
3786
- /** Forms bigrams of CJK terms that are generated from the standard tokenizer. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/cjk\/CJKBigramFilter.html */
3787
- CjkBigram = "cjk_bigram",
3788
- /** Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/cjk\/CJKWidthFilter.html */
3789
- CjkWidth = "cjk_width",
3790
- /** Removes English possessives, and dots from acronyms. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/standard\/ClassicFilter.html */
3791
- Classic = "classic",
3792
- /** Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/commongrams\/CommonGramsFilter.html */
3793
- CommonGram = "common_grams",
3794
- /** Generates n-grams of the given size(s) starting from the front or the back of an input token. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ngram\/EdgeNGramTokenFilter.html */
3795
- EdgeNGram = "edgeNGram_v2",
3796
- /** Removes elisions. For example, "l'avion" (the plane) will be converted to "avion" (plane). See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/util\/ElisionFilter.html */
3797
- Elision = "elision",
3798
- /** Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/de\/GermanNormalizationFilter.html */
3799
- GermanNormalization = "german_normalization",
3800
- /** Normalizes text in Hindi to remove some differences in spelling variations. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/hi\/HindiNormalizationFilter.html */
3801
- HindiNormalization = "hindi_normalization",
3802
- /** Normalizes the Unicode representation of text in Indian languages. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/in\/IndicNormalizationFilter.html */
3803
- IndicNormalization = "indic_normalization",
3804
- /** Emits each incoming token twice, once as keyword and once as non-keyword. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/KeywordRepeatFilter.html */
3805
- KeywordRepeat = "keyword_repeat",
3806
- /** A high-performance kstem filter for English. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/en\/KStemFilter.html */
3807
- KStem = "kstem",
3808
- /** Removes words that are too long or too short. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/LengthFilter.html */
3809
- Length = "length",
3810
- /** Limits the number of tokens while indexing. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/LimitTokenCountFilter.html */
3811
- Limit = "limit",
3812
- /** Normalizes token text to lower case. See https:\//lucene.apache.org\/core\/6_6_1\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/LowerCaseFilter.html */
3813
- Lowercase = "lowercase",
3814
- /** Generates n-grams of the given size(s). See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ngram\/NGramTokenFilter.html */
3815
- NGram = "nGram_v2",
3816
- /** Applies normalization for Persian. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/fa\/PersianNormalizationFilter.html */
3817
- PersianNormalization = "persian_normalization",
3818
- /** Create tokens for phonetic matches. See https:\//lucene.apache.org\/core\/4_10_3\/analyzers-phonetic\/org\/apache\/lucene\/analysis\/phonetic\/package-tree.html */
3819
- Phonetic = "phonetic",
3820
- /** Uses the Porter stemming algorithm to transform the token stream. See http:\//tartarus.org\/~martin\/PorterStemmer */
3821
- PorterStem = "porter_stem",
3822
- /** Reverses the token string. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/reverse\/ReverseStringFilter.html */
3823
- Reverse = "reverse",
3824
- /** Normalizes use of the interchangeable Scandinavian characters. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/ScandinavianNormalizationFilter.html */
3825
- ScandinavianNormalization = "scandinavian_normalization",
3826
- /** Folds Scandinavian characters åÅäæÄÆ-&gt;a and öÖøØ-&gt;o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/ScandinavianFoldingFilter.html */
3827
- ScandinavianFoldingNormalization = "scandinavian_folding",
3828
- /** Creates combinations of tokens as a single token. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/shingle\/ShingleFilter.html */
3829
- Shingle = "shingle",
3830
- /** A filter that stems words using a Snowball-generated stemmer. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/snowball\/SnowballFilter.html */
3831
- Snowball = "snowball",
3832
- /** Normalizes the Unicode representation of Sorani text. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ckb\/SoraniNormalizationFilter.html */
3833
- SoraniNormalization = "sorani_normalization",
3834
- /** Language specific stemming filter. See https:\//docs.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#TokenFilters */
3835
- Stemmer = "stemmer",
3836
- /** Removes stop words from a token stream. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/StopFilter.html */
3837
- Stopwords = "stopwords",
3838
- /** Trims leading and trailing whitespace from tokens. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/TrimFilter.html */
3839
- Trim = "trim",
3840
- /** Truncates the terms to a specific length. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/TruncateTokenFilter.html */
3841
- Truncate = "truncate",
3842
- /** Filters out tokens with same text as the previous token. See http:\//lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/RemoveDuplicatesTokenFilter.html */
3843
- Unique = "unique",
3844
- /** Normalizes token text to upper case. See https:\//lucene.apache.org\/core\/6_6_1\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/UpperCaseFilter.html */
3845
- Uppercase = "uppercase",
3846
- /** Splits words into subwords and performs optional transformations on subword groups. */
3847
- WordDelimiter = "word_delimiter"
3848
- }
3849
-
3850
3788
  /**
3851
3789
  * Defines values for TokenFilterName.
3852
3790
  * @readonly
@@ -4107,6 +4045,14 @@ export declare enum KnownVectorEncodingFormat {
4107
4045
  PackedBit = "packedBit"
4108
4046
  }
4109
4047
 
4048
+ /** Known values of {@link VectorFilterMode} that the service accepts. */
4049
+ export declare enum KnownVectorFilterMode {
4050
+ /** The filter will be applied after the candidate set of vector results is returned. Depending on the filter selectivity, this can result in fewer results than requested by the parameter 'k'. */
4051
+ PostFilter = "postFilter",
4052
+ /** The filter will be applied before the search query. */
4053
+ PreFilter = "preFilter"
4054
+ }
4055
+
4110
4056
  /** Known values of {@link VectorQueryKind} that the service accepts. */
4111
4057
  export declare enum KnownVectorQueryKind {
4112
4058
  /** Vector query where a raw vector value is provided. */
@@ -4119,14 +4065,36 @@ export declare enum KnownVectorQueryKind {
4119
4065
  ImageBinary = "imageBinary"
4120
4066
  }
4121
4067
 
4068
+ /** Known values of {@link VectorSearchAlgorithmKind} that the service accepts. */
4069
+ export declare enum KnownVectorSearchAlgorithmKind {
4070
+ /** HNSW (Hierarchical Navigable Small World), a type of approximate nearest neighbors algorithm. */
4071
+ Hnsw = "hnsw",
4072
+ /** Exhaustive KNN algorithm which will perform brute-force search. */
4073
+ ExhaustiveKnn = "exhaustiveKnn"
4074
+ }
4075
+
4076
+ /** Known values of {@link VectorSearchAlgorithmMetric} that the service accepts. */
4077
+ export declare enum KnownVectorSearchAlgorithmMetric {
4078
+ /** Measures the angle between vectors to quantify their similarity, disregarding magnitude. The smaller the angle, the closer the similarity. */
4079
+ Cosine = "cosine",
4080
+ /** Computes the straight-line distance between vectors in a multi-dimensional space. The smaller the distance, the closer the similarity. */
4081
+ Euclidean = "euclidean",
4082
+ /** Calculates the sum of element-wise products to gauge alignment and magnitude similarity. The larger and more positive, the closer the similarity. */
4083
+ DotProduct = "dotProduct",
4084
+ /** Only applicable to bit-packed binary data types. Determines dissimilarity by counting differing positions in binary vectors. The fewer differences, the closer the similarity. */
4085
+ Hamming = "hamming"
4086
+ }
4087
+
4122
4088
  /** Known values of {@link VectorSearchCompressionKind} that the service accepts. */
4123
4089
  export declare enum KnownVectorSearchCompressionKind {
4124
4090
  /** Scalar Quantization, a type of compression method. In scalar quantization, the original vectors values are compressed to a narrower type by discretizing and representing each component of a vector using a reduced set of quantized values, thereby reducing the overall data size. */
4125
- ScalarQuantization = "scalarQuantization"
4091
+ ScalarQuantization = "scalarQuantization",
4092
+ /** Binary Quantization, a type of compression method. In binary quantization, the original vectors values are compressed to the narrower binary type by discretizing and representing each component of a vector using binary values, thereby reducing the overall data size. */
4093
+ BinaryQuantization = "binaryQuantization"
4126
4094
  }
4127
4095
 
4128
- /** Known values of {@link VectorSearchCompressionTargetDataType} that the service accepts. */
4129
- export declare enum KnownVectorSearchCompressionTargetDataType {
4096
+ /** Known values of {@link VectorSearchCompressionTarget} that the service accepts. */
4097
+ export declare enum KnownVectorSearchCompressionTarget {
4130
4098
  /** Int8 */
4131
4099
  Int8 = "int8"
4132
4100
  }
@@ -4286,7 +4254,7 @@ export declare type LexicalAnalyzer = CustomAnalyzer | PatternAnalyzer | LuceneS
4286
4254
  * **ur.microsoft**: Microsoft analyzer for Urdu. \
4287
4255
  * **vi.microsoft**: Microsoft analyzer for Vietnamese. \
4288
4256
  * **standard.lucene**: Standard Lucene analyzer. \
4289
- * **standardasciifolding.lucene**: Standard ASCII Folding Lucene analyzer. See https:\/\/docs.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#Analyzers \
4257
+ * **standardasciifolding.lucene**: Standard ASCII Folding Lucene analyzer. See https:\/\/learn.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#Analyzers \
4290
4258
  * **keyword**: Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/KeywordAnalyzer.html \
4291
4259
  * **pattern**: Flexibly separates text into terms via a regular expression pattern. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/PatternAnalyzer.html \
4292
4260
  * **simple**: Divides text at non-letters and converts them to lower case. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/SimpleAnalyzer.html \
@@ -4349,18 +4317,6 @@ export declare interface LimitTokenFilter extends BaseTokenFilter {
4349
4317
  consumeAllTokens?: boolean;
4350
4318
  }
4351
4319
 
4352
- /**
4353
- * Defines values for LineEnding. \
4354
- * {@link KnownLineEnding} can be used interchangeably with LineEnding,
4355
- * this enum contains the known values that the service supports.
4356
- * ### Known values supported by the service
4357
- * **space**: Lines are separated by a single space character. \
4358
- * **carriageReturn**: Lines are separated by a carriage return ('\r') character. \
4359
- * **lineFeed**: Lines are separated by a single line feed ('\n') character. \
4360
- * **carriageReturnLineFeed**: Lines are separated by a carriage return and a line feed ('\r\n') character.
4361
- */
4362
- export declare type LineEnding = string;
4363
-
4364
4320
  /**
4365
4321
  * Options for list aliases operation.
4366
4322
  */
@@ -4568,17 +4524,31 @@ export declare interface NoAuthAzureMachineLearningVectorizerParameters extends
4568
4524
  scoringUri: string;
4569
4525
  }
4570
4526
 
4527
+ /**
4528
+ * Defines values for OcrLineEnding. \
4529
+ * {@link KnownOcrLineEnding} can be used interchangeably with OcrLineEnding,
4530
+ * this enum contains the known values that the service supports.
4531
+ * ### Known values supported by the service
4532
+ * **space**: Lines are separated by a single space character. \
4533
+ * **carriageReturn**: Lines are separated by a carriage return ('\r') character. \
4534
+ * **lineFeed**: Lines are separated by a single line feed ('\n') character. \
4535
+ * **carriageReturnLineFeed**: Lines are separated by a carriage return and a line feed ('\r\n') character.
4536
+ */
4537
+ export declare type OcrLineEnding = string;
4538
+
4571
4539
  /** A skill that extracts text from image files. */
4572
4540
  export declare interface OcrSkill extends BaseSearchIndexerSkill {
4573
4541
  /** Polymorphic discriminator, which specifies the different types this object can be */
4574
4542
  odatatype: "#Microsoft.Skills.Vision.OcrSkill";
4575
- /** A value indicating which language code to use. Default is en. */
4543
+ /** A value indicating which language code to use. Default is `en`. */
4576
4544
  defaultLanguageCode?: OcrSkillLanguage;
4577
4545
  /** A value indicating to turn orientation detection on or not. Default is false. */
4578
4546
  shouldDetectOrientation?: boolean;
4547
+ /** Defines the sequence of characters to use between the lines of text recognized by the OCR skill. The default value is "space". */
4548
+ lineEnding?: OcrLineEnding;
4579
4549
  }
4580
4550
 
4581
- export declare type OcrSkillLanguage = "af" | "sq" | "anp" | "ar" | "ast" | "awa" | "az" | "bfy" | "eu" | "be" | "be-cyrl" | "be-latn" | "bho" | "bi" | "brx" | "bs" | "bra" | "br" | "bg" | "bns" | "bua" | "ca" | "ceb" | "rab" | "ch" | "hne" | "zh-Hans" | "zh-Hant" | "kw" | "co" | "crh" | "hr" | "cs" | "da" | "prs" | "dhi" | "doi" | "nl" | "en" | "myv" | "et" | "fo" | "fj" | "fil" | "fi" | "fr" | "fur" | "gag" | "gl" | "de" | "gil" | "gon" | "el" | "kl" | "gvr" | "ht" | "hlb" | "hni" | "bgc" | "haw" | "hi" | "mww" | "hoc" | "hu" | "is" | "smn" | "id" | "ia" | "iu" | "ga" | "it" | "ja" | "Jns" | "jv" | "kea" | "kac" | "xnr" | "krc" | "kaa-cyrl" | "kaa" | "csb" | "kk-cyrl" | "kk-latn" | "klr" | "kha" | "quc" | "ko" | "kfq" | "kpy" | "kos" | "kum" | "ku-arab" | "ku-latn" | "kru" | "ky" | "lkt" | "la" | "lt" | "dsb" | "smj" | "lb" | "bfz" | "ms" | "mt" | "kmj" | "gv" | "mi" | "mr" | "mn" | "cnr-cyrl" | "cnr-latn" | "nap" | "ne" | "niu" | "nog" | "sme" | "nb" | "no" | "oc" | "os" | "ps" | "fa" | "pl" | "pt" | "pa" | "ksh" | "ro" | "rm" | "ru" | "sck" | "sm" | "sa" | "sat" | "sco" | "gd" | "sr" | "sr-Cyrl" | "sr-Latn" | "xsr" | "srx" | "sms" | "sk" | "sl" | "so" | "sma" | "es" | "sw" | "sv" | "tg" | "tt" | "tet" | "thf" | "to" | "tr" | "tk" | "tyv" | "hsb" | "ur" | "ug" | "uz-arab" | "uz-cyrl" | "uz" | "vo" | "wae" | "cy" | "fy" | "yua" | "za" | "zu" | "unk";
4551
+ export declare type OcrSkillLanguage = `${KnownOcrSkillLanguage}`;
4582
4552
 
4583
4553
  /**
4584
4554
  * Escapes an odata filter expression to avoid errors with quoting string literals.
@@ -4748,7 +4718,7 @@ export declare interface PIIDetectionSkill extends BaseSearchIndexerSkill {
4748
4718
  domain?: string;
4749
4719
  }
4750
4720
 
4751
- export declare type PIIDetectionSkillMaskingMode = "none" | "replace";
4721
+ export declare type PIIDetectionSkillMaskingMode = `${KnownPIIDetectionSkillMaskingMode}`;
4752
4722
 
4753
4723
  /**
4754
4724
  * A value that specifies whether answers should be returned as part of the search response.
@@ -4791,7 +4761,7 @@ export declare interface QueryAnswerResult {
4791
4761
  */
4792
4762
  export declare type QueryCaption = ExtractiveQueryCaption;
4793
4763
 
4794
- /** Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type 'semantic'.. */
4764
+ /** Captions are the most representative passages from the document relatively to the search query. They are often used as document summary. Captions are only returned for queries of type `semantic`. */
4795
4765
  export declare interface QueryCaptionResult {
4796
4766
  /** Describes unknown properties. The value of an unknown property can be of "any" type. */
4797
4767
  [property: string]: any;
@@ -4930,6 +4900,27 @@ export declare interface QueryResultDocumentSemanticField {
4930
4900
  readonly state?: SemanticFieldState;
4931
4901
  }
4932
4902
 
4903
+ /** The breakdown of subscores between the text and vector query components of the search query for this document. Each vector query is shown as a separate object in the same order they were received. */
4904
+ export declare interface QueryResultDocumentSubscores {
4905
+ /**
4906
+ * The BM25 or Classic score for the text portion of the query.
4907
+ * NOTE: This property will not be serialized. It can only be populated by the server.
4908
+ */
4909
+ readonly text?: TextResult;
4910
+ /**
4911
+ * The vector similarity and @search.score values for each vector query.
4912
+ * NOTE: This property will not be serialized. It can only be populated by the server.
4913
+ */
4914
+ readonly vectors?: {
4915
+ [propertyName: string]: SingleVectorFieldResult;
4916
+ }[];
4917
+ /**
4918
+ * The BM25 or Classic score for the text portion of the query.
4919
+ * NOTE: This property will not be serialized. It can only be populated by the server.
4920
+ */
4921
+ readonly documentBoost?: number;
4922
+ }
4923
+
4933
4924
  /**
4934
4925
  * Defines values for QuerySpellerType. \
4935
4926
  * {@link KnownQuerySpellerType} can be used interchangeably with QuerySpellerType,
@@ -4943,7 +4934,7 @@ export declare type QuerySpellerType = string;
4943
4934
  /** Defines values for QueryType. */
4944
4935
  export declare type QueryType = "simple" | "full" | "semantic";
4945
4936
 
4946
- export declare type RegexFlags = "CANON_EQ" | "CASE_INSENSITIVE" | "COMMENTS" | "DOTALL" | "LITERAL" | "MULTILINE" | "UNICODE_CASE" | "UNIX_LINES";
4937
+ export declare type RegexFlags = `${KnownRegexFlags}`;
4947
4938
 
4948
4939
  /**
4949
4940
  * Options for reset docs operation.
@@ -4984,7 +4975,7 @@ export declare interface ResourceCounter {
4984
4975
  export declare type RunIndexerOptions = OperationOptions;
4985
4976
 
4986
4977
  /** Contains configuration options specific to the scalar quantization compression method used during indexing and querying. */
4987
- export declare interface ScalarQuantizationCompressionConfiguration extends BaseVectorSearchCompressionConfiguration {
4978
+ export declare interface ScalarQuantizationCompression extends BaseVectorSearchCompression {
4988
4979
  /** Polymorphic discriminator, which specifies the different types this object can be */
4989
4980
  kind: "scalarQuantization";
4990
4981
  /** Contains the parameters specific to Scalar Quantization. */
@@ -4994,7 +4985,7 @@ export declare interface ScalarQuantizationCompressionConfiguration extends Base
4994
4985
  /** Contains the parameters specific to Scalar Quantization. */
4995
4986
  export declare interface ScalarQuantizationParameters {
4996
4987
  /** The quantized data type of compressed vector values. */
4997
- quantizedDataType?: VectorSearchCompressionTargetDataType;
4988
+ quantizedDataType?: VectorSearchCompressionTarget;
4998
4989
  }
4999
4990
 
5000
4991
  /**
@@ -5396,16 +5387,44 @@ export declare type SearchFieldArray<TModel extends object = object> = (<T>() =>
5396
5387
 
5397
5388
  /**
5398
5389
  * Defines values for SearchFieldDataType.
5399
- * Possible values include: 'Edm.String', 'Edm.Int32', 'Edm.Int64', 'Edm.Double', 'Edm.Boolean',
5400
- * 'Edm.DateTimeOffset', 'Edm.GeographyPoint', 'Collection(Edm.String)', 'Collection(Edm.Int32)',
5401
- * 'Collection(Edm.Int64)', 'Collection(Edm.Double)', 'Collection(Edm.Boolean)',
5402
- * 'Collection(Edm.DateTimeOffset)', 'Collection(Edm.GeographyPoint)', 'Collection(Edm.Single)',
5403
- * 'Collection(Edm.Half)', 'Collection(Edm.Int16)', 'Collection(Edm.SByte)'
5404
5390
  *
5405
- * NB: `Edm.Single` alone is not a valid data type. It must be used as part of a collection type.
5406
- * @readonly
5391
+ * ### Known values supported by the service:
5392
+ *
5393
+ * **Edm.String**: Indicates that a field contains a string.
5394
+ *
5395
+ * **Edm.Int32**: Indicates that a field contains a 32-bit signed integer.
5396
+ *
5397
+ * **Edm.Int64**: Indicates that a field contains a 64-bit signed integer.
5398
+ *
5399
+ * **Edm.Double**: Indicates that a field contains an IEEE double-precision floating point number.
5400
+ *
5401
+ * **Edm.Boolean**: Indicates that a field contains a Boolean value (true or false).
5402
+ *
5403
+ * **Edm.DateTimeOffset**: Indicates that a field contains a date/time value, including timezone
5404
+ * information.
5405
+ *
5406
+ * **Edm.GeographyPoint**: Indicates that a field contains a geo-location in terms of longitude and
5407
+ * latitude.
5408
+ *
5409
+ * **Edm.ComplexType**: Indicates that a field contains one or more complex objects that in turn
5410
+ * have sub-fields of other types.
5411
+ *
5412
+ * **Edm.Single**: Indicates that a field contains a single-precision floating point number. This is
5413
+ * only valid when used as part of a collection type, i.e. Collection(Edm.Single).
5414
+ *
5415
+ * **Edm.Half**: Indicates that a field contains a half-precision floating point number. This is
5416
+ * only valid when used as part of a collection type, i.e. Collection(Edm.Half).
5417
+ *
5418
+ * **Edm.Int16**: Indicates that a field contains a 16-bit signed integer. This is only valid when
5419
+ * used as part of a collection type, i.e. Collection(Edm.Int16).
5420
+ *
5421
+ * **Edm.SByte**: Indicates that a field contains a 8-bit signed integer. This is only valid when
5422
+ * used as part of a collection type, i.e. Collection(Edm.SByte).
5423
+ *
5424
+ * **Edm.Byte**: Indicates that a field contains a 8-bit unsigned integer. This is only valid when
5425
+ * used as part of a collection type, i.e. Collection(Edm.Byte).
5407
5426
  */
5408
- export declare type SearchFieldDataType = "Edm.String" | "Edm.Int32" | "Edm.Int64" | "Edm.Double" | "Edm.Boolean" | "Edm.DateTimeOffset" | "Edm.GeographyPoint" | "Collection(Edm.String)" | "Collection(Edm.Int32)" | "Collection(Edm.Int64)" | "Collection(Edm.Double)" | "Collection(Edm.Boolean)" | "Collection(Edm.DateTimeOffset)" | "Collection(Edm.GeographyPoint)" | "Collection(Edm.Single)" | "Collection(Edm.Half)" | "Collection(Edm.Int16)" | "Collection(Edm.SByte)" | "Collection(Edm.Byte)";
5427
+ export declare type SearchFieldDataType = Exclude<`${KnownSearchFieldDataType}` | `Collection(${KnownSearchFieldDataType})`, "Edm.ComplexType" | "Edm.Byte" | "Edm.Half" | "Edm.Int16" | "Edm.SByte" | "Edm.Single">;
5409
5428
 
5410
5429
  /**
5411
5430
  * Represents a search index definition, which describes the fields and search behavior of an
@@ -6066,14 +6085,14 @@ export declare interface SearchIndexerDataSourceConnection {
6066
6085
  encryptionKey?: SearchResourceEncryptionKey;
6067
6086
  }
6068
6087
 
6069
- export declare type SearchIndexerDataSourceType = "azuresql" | "cosmosdb" | "azureblob" | "azuretable" | "mysql" | "adlsgen2" | "onelake";
6088
+ export declare type SearchIndexerDataSourceType = `${KnownSearchIndexerDataSourceType}`;
6070
6089
 
6071
6090
  /** Specifies the identity for a datasource to use. */
6072
6091
  export declare interface SearchIndexerDataUserAssignedIdentity extends BaseSearchIndexerDataIdentity {
6073
6092
  /** Polymorphic discriminator, which specifies the different types this object can be */
6074
6093
  odatatype: "#Microsoft.Azure.Search.DataUserAssignedIdentity";
6075
6094
  /** The fully qualified Azure resource Id of a user assigned managed identity typically in the form "/subscriptions/12345678-1234-1234-1234-1234567890ab/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId" that should have been assigned to the search service. */
6076
- userAssignedIdentity: string;
6095
+ resourceId: string;
6077
6096
  }
6078
6097
 
6079
6098
  /** Represents an item- or document-level indexing error. */
@@ -6111,11 +6130,19 @@ export declare interface SearchIndexerError {
6111
6130
  }
6112
6131
 
6113
6132
  /** Definition of additional projections to secondary search indexes. */
6114
- export declare interface SearchIndexerIndexProjections {
6133
+ export declare interface SearchIndexerIndexProjection {
6115
6134
  /** A list of projections to be performed to secondary search indexes. */
6116
6135
  selectors: SearchIndexerIndexProjectionSelector[];
6117
6136
  /** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */
6118
- parameters?: SearchIndexerIndexProjectionsParameters;
6137
+ parameters?: SearchIndexerIndexProjectionParameters;
6138
+ }
6139
+
6140
+ /** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */
6141
+ export declare interface SearchIndexerIndexProjectionParameters {
6142
+ /** Describes unknown properties.*/
6143
+ [property: string]: unknown;
6144
+ /** Defines behavior of the index projections in relation to the rest of the indexer. */
6145
+ projectionMode?: IndexProjectionMode;
6119
6146
  }
6120
6147
 
6121
6148
  /** Description for what data to store in the designated search index. */
@@ -6130,14 +6157,6 @@ export declare interface SearchIndexerIndexProjectionSelector {
6130
6157
  mappings: InputFieldMappingEntry[];
6131
6158
  }
6132
6159
 
6133
- /** A dictionary of index projection-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type. */
6134
- export declare interface SearchIndexerIndexProjectionsParameters {
6135
- /** Describes unknown properties.*/
6136
- [property: string]: unknown;
6137
- /** Defines behavior of the index projections in relation to the rest of the indexer. */
6138
- projectionMode?: IndexProjectionMode;
6139
- }
6140
-
6141
6160
  /**
6142
6161
  * Definition of additional projections to azure blob, table, or files, of enriched data.
6143
6162
  */
@@ -6262,7 +6281,7 @@ export declare interface SearchIndexerSkillset {
6262
6281
  /**
6263
6282
  * Definition of additional projections to secondary search index(es).
6264
6283
  */
6265
- indexProjections?: SearchIndexerIndexProjections;
6284
+ indexProjection?: SearchIndexerIndexProjection;
6266
6285
  /**
6267
6286
  * The ETag of the skillset.
6268
6287
  */
@@ -6776,9 +6795,9 @@ export declare interface SemanticDebugInfo {
6776
6795
  readonly rerankerInput?: QueryResultDocumentRerankerInput;
6777
6796
  }
6778
6797
 
6779
- export declare type SemanticErrorMode = "partial" | "fail";
6798
+ export declare type SemanticErrorMode = `${KnownSemanticErrorMode}`;
6780
6799
 
6781
- export declare type SemanticErrorReason = "maxWaitExceeded" | "capacityOverloaded" | "transient";
6800
+ export declare type SemanticErrorReason = `${KnownSemanticErrorReason}`;
6782
6801
 
6783
6802
  /** A field that is used as part of the semantic configuration. */
6784
6803
  export declare interface SemanticField {
@@ -6859,7 +6878,7 @@ export declare interface SemanticSearchOptions {
6859
6878
  debugMode?: QueryDebugMode;
6860
6879
  }
6861
6880
 
6862
- export declare type SemanticSearchResultsType = "baseResults" | "rerankedResults";
6881
+ export declare type SemanticSearchResultsType = `${KnownSemanticSearchResultsType}`;
6863
6882
 
6864
6883
  /**
6865
6884
  * Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1.
@@ -6873,7 +6892,7 @@ export declare interface SentimentSkill extends BaseSearchIndexerSkill {
6873
6892
  defaultLanguageCode?: SentimentSkillLanguage;
6874
6893
  }
6875
6894
 
6876
- export declare type SentimentSkillLanguage = "da" | "nl" | "en" | "fi" | "fr" | "de" | "el" | "it" | "no" | "pl" | "pt-PT" | "ru" | "es" | "sv" | "tr";
6895
+ export declare type SentimentSkillLanguage = `${KnownSentimentSkillLanguage}`;
6877
6896
 
6878
6897
  /** Using the Text Analytics API, evaluates unstructured text and for each record, provides sentiment labels (such as "negative", "neutral" and "positive") based on the highest confidence score found by the service at a sentence and document-level. */
6879
6898
  export declare interface SentimentSkillV3 extends BaseSearchIndexerSkill {
@@ -6920,7 +6939,7 @@ export declare interface ServiceLimits {
6920
6939
  /** The maximum number of objects in complex collections allowed per document. */
6921
6940
  maxComplexObjectsInCollectionsPerDocument?: number;
6922
6941
  /** The maximum amount of storage in bytes allowed per index. */
6923
- maxStoragePerIndex?: number;
6942
+ maxStoragePerIndexInBytes?: number;
6924
6943
  }
6925
6944
 
6926
6945
  /** A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields). */
@@ -6969,11 +6988,7 @@ export declare interface SimpleField {
6969
6988
  */
6970
6989
  name: string;
6971
6990
  /**
6972
- * The data type of the field. Possible values include: 'Edm.String', 'Edm.Int32', 'Edm.Int64',
6973
- * 'Edm.Double', 'Edm.Boolean', 'Edm.DateTimeOffset', 'Edm.GeographyPoint',
6974
- * 'Collection(Edm.String)', 'Collection(Edm.Int32)', 'Collection(Edm.Int64)',
6975
- * 'Collection(Edm.Double)', 'Collection(Edm.Boolean)', 'Collection(Edm.DateTimeOffset)',
6976
- * 'Collection(Edm.GeographyPoint)', 'Collection(Edm.Single)'
6991
+ * The data type of the field.
6977
6992
  */
6978
6993
  type: SearchFieldDataType;
6979
6994
  /**
@@ -6986,10 +7001,10 @@ export declare interface SimpleField {
6986
7001
  /**
6987
7002
  * A value indicating whether the field can be returned in a search result. You can disable this
6988
7003
  * option if you want to use a field (for example, margin) as a filter, sorting, or scoring
6989
- * mechanism but do not want the field to be visible to the end user. This property must be true
7004
+ * mechanism but do not want the field to be visible to the end user. This property must be false
6990
7005
  * for key fields. This property can be changed on existing fields. Enabling this property does
6991
- * not cause any increase in index storage requirements. Default is true for simple fields and
6992
- * false for vector fields.
7006
+ * not cause any increase in index storage requirements. Default is true for vector fields, false
7007
+ * otherwise.
6993
7008
  */
6994
7009
  hidden?: boolean;
6995
7010
  /**
@@ -6997,8 +7012,8 @@ export declare interface SimpleField {
6997
7012
  * returned in a search result. You can disable this option if you don't plan to return the field
6998
7013
  * contents in a search response to save on storage overhead. This can only be set during index
6999
7014
  * creation and only for vector fields. This property cannot be changed for existing fields or set
7000
- * as false for new fields. If this property is set as false, the property `hidden` must be set as
7001
- * true. This property must be true or unset for key fields, for new fields, and for non-vector
7015
+ * as false for new fields. If this property is set to `false`, the property `hidden` must be set to
7016
+ * `true`. This property must be true or unset for key fields, for new fields, and for non-vector
7002
7017
  * fields, and it must be null for complex fields. Disabling this property will reduce index
7003
7018
  * storage requirements. The default is true for vector fields.
7004
7019
  */
@@ -7007,16 +7022,17 @@ export declare interface SimpleField {
7007
7022
  * A value indicating whether the field is full-text searchable. This means it will undergo
7008
7023
  * analysis such as word-breaking during indexing. If you set a searchable field to a value like
7009
7024
  * "sunny day", internally it will be split into the individual tokens "sunny" and "day". This
7010
- * enables full-text searches for these terms. This property must be false for simple
7025
+ * enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String)
7026
+ * are searchable by default. This property must be false for simple
7011
7027
  * fields of other non-string data types.
7012
- * Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an
7013
- * additional tokenized version of the field value for full-text searches.
7014
- * Defaults to false for simple fields.
7028
+ * Note: searchable fields consume extra space in your index to accommodate additional tokenized versions of the field value for full-text
7029
+ * searches. If you want to save space in your index and you don't need a field to be included in
7030
+ * searches, set searchable to false. Default is false.
7015
7031
  */
7016
7032
  searchable?: boolean;
7017
7033
  /**
7018
- * A value indicating whether to enable the field to be referenced in $filter queries. Filterable
7019
- * differs from searchable in how strings are handled. Fields of type Edm.String or
7034
+ * A value indicating whether to enable the field to be referenced in $filter queries. `filterable`
7035
+ * differs from `searchable` in how strings are handled. Fields of type Edm.String or
7020
7036
  * Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are
7021
7037
  * for exact matches only. For example, if you set such a field f to "sunny day", $filter=f eq
7022
7038
  * 'sunny' will find no matches, but $filter=f eq 'sunny day' will.
@@ -7025,12 +7041,12 @@ export declare interface SimpleField {
7025
7041
  filterable?: boolean;
7026
7042
  /**
7027
7043
  * A value indicating whether to enable the field to be referenced in $orderby expressions. By
7028
- * default Azure Cognitive Search sorts results by score, but in many experiences users will want
7044
+ * default, the service sorts results by score, but in many experiences users will want
7029
7045
  * to sort by fields in the documents. A simple field can be sortable only if it is single-valued
7030
7046
  * (it has a single value in the scope of the parent document). Simple collection fields cannot
7031
7047
  * be sortable, since they are multi-valued. Simple sub-fields of complex collections are also
7032
7048
  * multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent
7033
- * field, or an ancestor field, that's the complex collection. The default for sortable is false.
7049
+ * field, or an ancestor field, that's the complex collection. The default is false.
7034
7050
  */
7035
7051
  sortable?: boolean;
7036
7052
  /**
@@ -7042,23 +7058,23 @@ export declare interface SimpleField {
7042
7058
  */
7043
7059
  facetable?: boolean;
7044
7060
  /**
7045
- * The name of the language analyzer to use for the field. This option can be used only with
7061
+ * The name of the analyzer to use for the field. This option can be used only with
7046
7062
  * searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer.
7047
7063
  * Once the analyzer is chosen, it cannot be changed for the field.
7048
- * KnownAnalyzerNames is an enum containing known values.
7049
7064
  */
7050
7065
  analyzerName?: LexicalAnalyzerName;
7051
7066
  /**
7052
7067
  * The name of the analyzer used at search time for the field. This option can be used only with
7053
- * searchable fields. It must be set together with indexAnalyzer and it cannot be set together
7054
- * with the analyzer option. This analyzer can be updated on an existing field.
7055
- * KnownAnalyzerNames is an enum containing known values.
7068
+ * searchable fields. It must be set together with `indexAnalyzerName` and it cannot be set together
7069
+ * with the `analyzerName` option. This property cannot be set to the name of a language
7070
+ * analyzer; use the `analyzerName` property instead if you need a language analyzer. This
7071
+ * analyzer can be updated on an existing field.
7056
7072
  */
7057
7073
  searchAnalyzerName?: LexicalAnalyzerName;
7058
7074
  /**
7059
7075
  * The name of the analyzer used at indexing time for the field. This option can be used only
7060
7076
  * with searchable fields. It must be set together with searchAnalyzer and it cannot be set
7061
- * together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the
7077
+ * together with the `analyzerName` option. Once the analyzer is chosen, it cannot be changed for the
7062
7078
  * field. KnownAnalyzerNames is an enum containing known values.
7063
7079
  */
7064
7080
  indexAnalyzerName?: LexicalAnalyzerName;
@@ -7079,12 +7095,28 @@ export declare interface SimpleField {
7079
7095
  */
7080
7096
  vectorSearchDimensions?: number;
7081
7097
  /**
7082
- * The name of the vector search algorithm configuration that specifies the algorithm and
7083
- * optional parameters for searching the vector field.
7098
+ * The name of the vector search profile that specifies the algorithm and vectorizer to use when
7099
+ * searching the vector field.
7084
7100
  */
7085
7101
  vectorSearchProfileName?: string;
7086
- /** The encoding format to interpret the field contents. */
7087
- vectorSearchEncodingFormat?: VectorEncodingFormat;
7102
+ /**
7103
+ * The encoding format to interpret the field contents.
7104
+ */
7105
+ vectorEncodingFormat?: VectorEncodingFormat;
7106
+ }
7107
+
7108
+ /** A single vector field result. Both @search.score and vector similarity values are returned. Vector similarity is related to @search.score by an equation. */
7109
+ export declare interface SingleVectorFieldResult {
7110
+ /**
7111
+ * The @search.score value that is calculated from the vector similarity score. This is the score that's visible in a pure single-field single-vector query.
7112
+ * NOTE: This property will not be serialized. It can only be populated by the server.
7113
+ */
7114
+ readonly searchScore?: number;
7115
+ /**
7116
+ * The vector similarity score for this document. Note this is the canonical definition of similarity metric, not the 'distance' version. For example, cosine similarity instead of cosine distance.
7117
+ * NOTE: This property will not be serialized. It can only be populated by the server.
7118
+ */
7119
+ readonly vectorSimilarity?: number;
7088
7120
  }
7089
7121
 
7090
7122
  /** A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene. */
@@ -7122,15 +7154,45 @@ export declare type Speller = string;
7122
7154
  export declare interface SplitSkill extends BaseSearchIndexerSkill {
7123
7155
  /** Polymorphic discriminator, which specifies the different types this object can be */
7124
7156
  odatatype: "#Microsoft.Skills.Text.SplitSkill";
7125
- /** A value indicating which language code to use. Default is en. */
7157
+ /** A value indicating which language code to use. Default is `en`. */
7126
7158
  defaultLanguageCode?: SplitSkillLanguage;
7127
7159
  /** A value indicating which split mode to perform. */
7128
7160
  textSplitMode?: TextSplitMode;
7129
7161
  /** The desired maximum page length. Default is 10000. */
7130
7162
  maxPageLength?: number;
7163
+ /** Only applicable when textSplitMode is set to 'pages'. If specified, n+1th chunk will start with this number of characters/tokens from the end of the nth chunk. */
7164
+ pageOverlapLength?: number;
7165
+ /** Only applicable when textSplitMode is set to 'pages'. If specified, the SplitSkill will discontinue splitting after processing the first 'maximumPagesToTake' pages, in order to improve performance when only a few initial pages are needed from each document. */
7166
+ maximumPagesToTake?: number;
7167
+ /** Only applies if textSplitMode is set to pages. There are two possible values. The choice of the values will decide the length (maximumPageLength and pageOverlapLength) measurement. The default is 'characters', which means the length will be measured by character. */
7168
+ unit?: SplitSkillUnit;
7169
+ /** Only applies if the unit is set to azureOpenAITokens. If specified, the splitSkill will use these parameters when performing the tokenization. The parameters are a valid 'encoderModelName' and an optional 'allowedSpecialTokens' property. */
7170
+ azureOpenAITokenizerParameters?: AzureOpenAITokenizerParameters;
7131
7171
  }
7132
7172
 
7133
- export declare type SplitSkillLanguage = "am" | "bs" | "cs" | "da" | "de" | "en" | "es" | "et" | "fi" | "fr" | "he" | "hi" | "hr" | "hu" | "id" | "is" | "it" | "ja" | "ko" | "lv" | "nb" | "nl" | "pl" | "pt" | "pt-br" | "ru" | "sk" | "sl" | "sr" | "sv" | "tr" | "ur" | "zh";
7173
+ /**
7174
+ * Defines values for SplitSkillEncoderModelName. \
7175
+ * {@link KnownSplitSkillEncoderModelName} can be used interchangeably with SplitSkillEncoderModelName,
7176
+ * this enum contains the known values that the service supports.
7177
+ * ### Known values supported by the service
7178
+ * **r50k_base**: Refers to a base model trained with a 50,000 token vocabulary, often used in general natural language processing tasks. \
7179
+ * **p50k_base**: A base model with a 50,000 token vocabulary, optimized for prompt-based tasks. \
7180
+ * **p50k_edit**: Similar to p50k_base but fine-tuned for editing or rephrasing tasks with a 50,000 token vocabulary. \
7181
+ * **cl100k_base**: A base model with a 100,000 token vocabulary.
7182
+ */
7183
+ export declare type SplitSkillEncoderModelName = string;
7184
+
7185
+ export declare type SplitSkillLanguage = `${KnownSplitSkillLanguage}`;
7186
+
7187
+ /**
7188
+ * Defines values for SplitSkillUnit. \
7189
+ * {@link KnownSplitSkillUnit} can be used interchangeably with SplitSkillUnit,
7190
+ * this enum contains the known values that the service supports.
7191
+ * ### Known values supported by the service
7192
+ * **characters**: The length will be measured by character. \
7193
+ * **azureOpenAITokens**: The length will be measured by an AzureOpenAI tokenizer from the tiktoken library.
7194
+ */
7195
+ export declare type SplitSkillUnit = string;
7134
7196
 
7135
7197
  /** Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database. */
7136
7198
  export declare interface SqlIntegratedChangeTrackingPolicy extends BaseDataChangeDetectionPolicy {
@@ -7333,7 +7395,16 @@ export declare interface TagScoringParameters {
7333
7395
  tagsParameter: string;
7334
7396
  }
7335
7397
 
7336
- export declare type TextSplitMode = "pages" | "sentences";
7398
+ /** The BM25 or Classic score for the text portion of the query. */
7399
+ export declare interface TextResult {
7400
+ /**
7401
+ * The BM25 or Classic score for the text portion of the query.
7402
+ * NOTE: This property will not be serialized. It can only be populated by the server.
7403
+ */
7404
+ readonly searchScore?: number;
7405
+ }
7406
+
7407
+ export declare type TextSplitMode = `${KnownTextSplitMode}`;
7337
7408
 
7338
7409
  /** A skill to translate text from one language to another. */
7339
7410
  export declare interface TextTranslationSkill extends BaseSearchIndexerSkill {
@@ -7347,7 +7418,7 @@ export declare interface TextTranslationSkill extends BaseSearchIndexerSkill {
7347
7418
  suggestedFrom?: TextTranslationSkillLanguage;
7348
7419
  }
7349
7420
 
7350
- export declare type TextTranslationSkillLanguage = "af" | "ar" | "bn" | "bs" | "bg" | "yue" | "ca" | "zh-Hans" | "zh-Hant" | "hr" | "cs" | "da" | "nl" | "en" | "et" | "fj" | "fil" | "fi" | "fr" | "de" | "el" | "ht" | "he" | "hi" | "mww" | "hu" | "is" | "id" | "it" | "ja" | "sw" | "tlh" | "tlh-Latn" | "tlh-Piqd" | "ko" | "lv" | "lt" | "mg" | "ms" | "mt" | "nb" | "fa" | "pl" | "pt" | "pt-br" | "pt-PT" | "otq" | "ro" | "ru" | "sm" | "sr-Cyrl" | "sr-Latn" | "sk" | "sl" | "es" | "sv" | "ty" | "ta" | "te" | "th" | "to" | "tr" | "uk" | "ur" | "vi" | "cy" | "yua" | "ga" | "kn" | "mi" | "ml" | "pa";
7421
+ export declare type TextTranslationSkillLanguage = `${KnownTextTranslationSkillLanguage}`;
7351
7422
 
7352
7423
  /** Defines weights on index fields for which matches should boost scoring in search queries. */
7353
7424
  export declare interface TextWeights {
@@ -7409,7 +7480,7 @@ export declare type TokenFilter = AsciiFoldingTokenFilter | CjkBigramTokenFilter
7409
7480
  * **shingle**: Creates combinations of tokens as a single token. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/shingle\/ShingleFilter.html \
7410
7481
  * **snowball**: A filter that stems words using a Snowball-generated stemmer. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/snowball\/SnowballFilter.html \
7411
7482
  * **sorani_normalization**: Normalizes the Unicode representation of Sorani text. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/ckb\/SoraniNormalizationFilter.html \
7412
- * **stemmer**: Language specific stemming filter. See https:\/\/docs.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#TokenFilters \
7483
+ * **stemmer**: Language specific stemming filter. See https:\/\/learn.microsoft.com\/rest\/api\/searchservice\/Custom-analyzers-in-Azure-Search#TokenFilters \
7413
7484
  * **stopwords**: Removes stop words from a token stream. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/core\/StopFilter.html \
7414
7485
  * **trim**: Trims leading and trailing whitespace from tokens. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/TrimFilter.html \
7415
7486
  * **truncate**: Truncates the terms to a specific length. See http:\/\/lucene.apache.org\/core\/4_10_3\/analyzers-common\/org\/apache\/lucene\/analysis\/miscellaneous\/TruncateTokenFilter.html \
@@ -7459,7 +7530,7 @@ export declare type UploadDocumentsOptions = IndexDocumentsOptions;
7459
7530
  */
7460
7531
  export declare type VectorEncodingFormat = string;
7461
7532
 
7462
- export declare type VectorFilterMode = "postFilter" | "preFilter";
7533
+ export declare type VectorFilterMode = `${KnownVectorFilterMode}`;
7463
7534
 
7464
7535
  /** The query parameters to use for vector search when a base 64 encoded binary of an image that needs to be vectorized is provided. */
7465
7536
  export declare interface VectorizableImageBinaryQuery<TModel extends object> extends BaseVectorQuery<TModel> {
@@ -7496,7 +7567,15 @@ export declare interface VectorizedQuery<TModel extends object> extends BaseVect
7496
7567
  /** The query parameters for vector and hybrid search queries. */
7497
7568
  export declare type VectorQuery<TModel extends object> = VectorizedQuery<TModel> | VectorizableTextQuery<TModel> | VectorizableImageUrlQuery<TModel> | VectorizableImageBinaryQuery<TModel>;
7498
7569
 
7499
- export declare type VectorQueryKind = "vector" | "text" | "imageUrl" | "imageBinary";
7570
+ export declare type VectorQueryKind = `${KnownVectorQueryKind}`;
7571
+
7572
+ export declare interface VectorsDebugInfo {
7573
+ /**
7574
+ * The breakdown of subscores of the document prior to the chosen result set fusion/combination method such as RRF.
7575
+ * NOTE: This property will not be serialized. It can only be populated by the server.
7576
+ */
7577
+ readonly subscores?: QueryResultDocumentSubscores;
7578
+ }
7500
7579
 
7501
7580
  /** Contains configuration options related to vector search. */
7502
7581
  export declare interface VectorSearch {
@@ -7510,39 +7589,37 @@ export declare interface VectorSearch {
7510
7589
  * Contains configuration options specific to the compression method used during indexing or
7511
7590
  * querying.
7512
7591
  */
7513
- compressions?: VectorSearchCompressionConfiguration[];
7592
+ compressions?: VectorSearchCompression[];
7514
7593
  }
7515
7594
 
7516
7595
  /** Contains configuration options specific to the algorithm used during indexing and/or querying. */
7517
7596
  export declare type VectorSearchAlgorithmConfiguration = HnswAlgorithmConfiguration | ExhaustiveKnnAlgorithmConfiguration;
7518
7597
 
7519
- export declare type VectorSearchAlgorithmKind = "hnsw" | "exhaustiveKnn";
7598
+ export declare type VectorSearchAlgorithmKind = `${KnownVectorSearchAlgorithmKind}`;
7520
7599
 
7521
- export declare type VectorSearchAlgorithmMetric = "cosine" | "euclidean" | "dotProduct" | "hamming";
7600
+ export declare type VectorSearchAlgorithmMetric = `${KnownVectorSearchAlgorithmMetric}`;
7522
7601
 
7523
- /**
7524
- * Contains configuration options specific to the compression method used during indexing or
7525
- * querying.
7526
- */
7527
- export declare type VectorSearchCompressionConfiguration = ScalarQuantizationCompressionConfiguration;
7602
+ /** Contains configuration options specific to the compression method used during indexing or querying. */
7603
+ export declare type VectorSearchCompression = BinaryQuantizationCompression | ScalarQuantizationCompression;
7528
7604
 
7529
7605
  /**
7530
7606
  * Defines values for VectorSearchCompressionKind. \
7531
7607
  * {@link KnownVectorSearchCompressionKind} can be used interchangeably with VectorSearchCompressionKind,
7532
7608
  * this enum contains the known values that the service supports.
7533
7609
  * ### Known values supported by the service
7534
- * **scalarQuantization**: Scalar Quantization, a type of compression method. In scalar quantization, the original vectors values are compressed to a narrower type by discretizing and representing each component of a vector using a reduced set of quantized values, thereby reducing the overall data size.
7610
+ * **scalarQuantization**: Scalar Quantization, a type of compression method. In scalar quantization, the original vectors values are compressed to a narrower type by discretizing and representing each component of a vector using a reduced set of quantized values, thereby reducing the overall data size. \
7611
+ * **binaryQuantization**: Binary Quantization, a type of compression method. In binary quantization, the original vectors values are compressed to the narrower binary type by discretizing and representing each component of a vector using binary values, thereby reducing the overall data size.
7535
7612
  */
7536
7613
  export declare type VectorSearchCompressionKind = string;
7537
7614
 
7538
7615
  /**
7539
- * Defines values for VectorSearchCompressionTargetDataType. \
7540
- * {@link KnownVectorSearchCompressionTargetDataType} can be used interchangeably with VectorSearchCompressionTargetDataType,
7616
+ * Defines values for VectorSearchCompressionTarget. \
7617
+ * {@link KnownVectorSearchCompressionTarget} can be used interchangeably with VectorSearchCompressionTarget,
7541
7618
  * this enum contains the known values that the service supports.
7542
7619
  * ### Known values supported by the service
7543
7620
  * **int8**
7544
7621
  */
7545
- export declare type VectorSearchCompressionTargetDataType = string;
7622
+ export declare type VectorSearchCompressionTarget = string;
7546
7623
 
7547
7624
  /**
7548
7625
  * Defines options for vector search queries
@@ -7565,16 +7642,26 @@ export declare interface VectorSearchProfile {
7565
7642
  name: string;
7566
7643
  /** The name of the vector search algorithm configuration that specifies the algorithm and optional parameters. */
7567
7644
  algorithmConfigurationName: string;
7568
- /** The name of the kind of vectorization method being configured for use with vector search. */
7569
- vectorizer?: string;
7645
+ /** The name of the vectorization being configured for use with vector search. */
7646
+ vectorizerName?: string;
7570
7647
  /** The name of the compression method configuration that specifies the compression method and optional parameters. */
7571
- compressionConfigurationName?: string;
7648
+ compressionName?: string;
7572
7649
  }
7573
7650
 
7574
7651
  /** Contains configuration options on how to vectorize text vector queries. */
7575
- export declare type VectorSearchVectorizer = AzureOpenAIVectorizer | CustomVectorizer | AIServicesVisionVectorizer | AzureMachineLearningVectorizer;
7652
+ export declare type VectorSearchVectorizer = AIServicesVisionVectorizer | AzureMachineLearningVectorizer | AzureOpenAIVectorizer | WebApiVectorizer;
7576
7653
 
7577
- export declare type VectorSearchVectorizerKind = "azureOpenAI" | "customWebApi" | "aiServicesVision" | "aml";
7654
+ /**
7655
+ * Defines values for VectorSearchVectorizerKind. \
7656
+ * {@link KnownVectorSearchVectorizerKind} can be used interchangeably with VectorSearchVectorizerKind,
7657
+ * this enum contains the known values that the service supports.
7658
+ * ### Known values supported by the service
7659
+ * **azureOpenAI**: Generate embeddings using an Azure OpenAI resource at query time. \
7660
+ * **customWebApi**: Generate embeddings using a custom web endpoint at query time. \
7661
+ * **aiServicesVision**: Generate embeddings for an image or text input at query time using the Azure AI Services Vision Vectorize API. \
7662
+ * **aml**: Generate embeddings using an Azure Machine Learning endpoint deployed via the Azure AI Studio Model Catalog at query time.
7663
+ */
7664
+ export declare type VectorSearchVectorizerKind = string;
7578
7665
 
7579
7666
  /** The results of the vector query will be filtered based on the vector similarity metric. Note this is the canonical definition of similarity metric, not the 'distance' version. The threshold direction (larger or smaller) will be chosen automatically according to the metric used by the field. */
7580
7667
  export declare interface VectorSimilarityThreshold extends BaseVectorThreshold {
@@ -7595,7 +7682,25 @@ export declare interface VisionVectorizeSkill extends BaseSearchIndexerSkill {
7595
7682
  modelVersion?: string;
7596
7683
  }
7597
7684
 
7598
- export declare type VisualFeature = "adult" | "brands" | "categories" | "description" | "faces" | "objects" | "tags";
7685
+ export declare type VisualFeature = `${KnownVisualFeature}`;
7686
+
7687
+ /** Specifies the properties for connecting to a user-defined vectorizer. */
7688
+ export declare interface WebApiParameters {
7689
+ /** The URI of the Web API providing the vectorizer. */
7690
+ uri?: string;
7691
+ /** The headers required to make the HTTP request. */
7692
+ httpHeaders?: {
7693
+ [propertyName: string]: string;
7694
+ };
7695
+ /** The method for the HTTP request. */
7696
+ httpMethod?: string;
7697
+ /** The desired timeout for the request. Default is 30 seconds. */
7698
+ timeout?: string;
7699
+ /** Applies to custom endpoints that connect to external code in an Azure function or some other application that provides the transformations. This value should be the application ID created for the function or app when it was registered with Azure Active Directory. When specified, the vectorization connects to the function or app using a managed ID (either system or user-assigned) of the search service and the access token of the function or app, using this value as the resource id for creating the scope of the access token. */
7700
+ authResourceId?: string;
7701
+ /** The user-assigned managed identity used for outbound connections. If an authResourceId is provided and it's not specified, the system-assigned managed identity is used. On updates to the indexer, if the identity is unspecified, the value remains unchanged. If set to "none", the value of this property is cleared. */
7702
+ authIdentity?: SearchIndexerDataIdentity;
7703
+ }
7599
7704
 
7600
7705
  /**
7601
7706
  * A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call
@@ -7650,6 +7755,14 @@ export declare interface WebApiSkill extends BaseSearchIndexerSkill {
7650
7755
  authIdentity?: SearchIndexerDataIdentity;
7651
7756
  }
7652
7757
 
7758
+ /** Specifies a user-defined vectorizer for generating the vector embedding of a query string. Integration of an external vectorizer is achieved using the custom Web API interface of a skillset. */
7759
+ export declare interface WebApiVectorizer extends BaseVectorSearchVectorizer {
7760
+ /** Polymorphic discriminator, which specifies the different types this object can be */
7761
+ kind: "customWebApi";
7762
+ /** Specifies the properties of the user-defined vectorizer. */
7763
+ parameters?: WebApiParameters;
7764
+ }
7765
+
7653
7766
  /** Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene. */
7654
7767
  export declare interface WordDelimiterTokenFilter extends BaseTokenFilter {
7655
7768
  /** Polymorphic discriminator, which specifies the different types this object can be */