Azure 搜索自定义分析器

Azure Search Custom Analyzer

我们正在尝试通过 Azure Search Rest api-版本:2015-02-28-preview 来使用自定义分析器 (KeywordAnalyzer)。

您在下面看到的索引定义代码是从 Microsoft 文档中完全复制的。 如果我们将 Analyzer Type 设置为 CustomAnalyzer,这将起作用。但是,如果我们通过将分析器类型从 CustomAnalyzer 更改为任何其他分析器(例如 KeywordAnalyzer)来进行单一更改,则在创建索引时会出现错误请求错误并且不会创建索引。

如果有人能告诉我们如何指定分析器,我们将不胜感激。

非常感谢

 {
           "name":"homes",
           "fields":[
              {
                 "name":"Id",
                 "type":"Edm.String",
                 "key":true,
                 "searchable":false},
              {
                 "name":"IdStd",
                 "type":"Edm.String",
                 "searchable":true,
                 "analyzer":"my_analyzer"}
           ],
           "analyzers":[
              {
                 "name":"my_analyzer",
                 "@odata.type":"#Microsoft.Azure.Search.CustomAnalyzer",
                 "tokenizer":"my_standard_tokenizer",
                 "tokenFilters":[
                    "my_asciifolding",
                    "lowercase"
                 ]
              }
           ],
           "tokenizers":[
              {
                 "name":"my_standard_tokenizer",
                 "@odata.type":"#Microsoft.Azure.Search.StandardTokenizer",
                 "maxTokenLength":20}
           ],
           "tokenFilters":[
              {
                 "name":"my_asciifolding",
                 "@odata.type":"#Microsoft.Azure.Search.AsciiFoldingTokenFilter",
                 "preserveOriginal":true}
           ]
    }

我来自 Azure 搜索。您看到的错误消息和 BadRequest 响应代码是什么?

编辑: 我重读了你的问题。您可能正在为 KeywordAnalyzer 指定 tokenizer 和 tokenFilter 属性。这些属性仅适用于 CustomAnalyzer。如果您发现文档不足或令人困惑,请告诉我。我们将确保使其更加清晰易懂。