【问题标题】:Azure search Language analyzers and diacriticsAzure 搜索语言分析器和变音符号
【发布时间】:2021-10-30 19:16:51
【问题描述】:

我们正在设置一个 azure 搜索索引,并且我们正在使用语言分析器,这似乎工作得很好。 (拆分单词,添加词干等)但是,我们遇到了变音符号(重音)的问题。

在荷兰语中,patient 写作patiënt。将包含patiënt 的文本添加到设置为microsoft.nl 的字段时,它还会添加patient 的标记。因此,如果我搜索 patient(不带 ë),它也会找到此文档。

当情况逆转时,问题就出现了。如果有人在文档中键入patient(因为他懒得添加ë),则标记器不会添加患者标记。当有人现在搜索患者时,找不到该文档。

对此的正确解决方案是什么?我希望是否在搜索文本中添加变音符号并不重要。我一直在寻找自定义分析器以完全删除变音符号,但它们似乎与语言分析器不兼容

澄清一下:我正在为所有带有变音符号的情况寻找解决方案,而不仅仅是这个特定的单词

当前字段定义:

{
    "name": "Contents_nlnl",
    "type": "Edm.String",
    "facetable": false,
    "filterable": false,
    "key": false,
    "retrievable": false,
    "searchable": true,
    "sortable": false,
    "analyzer": "nl.microsoft",
    "indexAnalyzer": null,
    "searchAnalyzer": null,
    "synonymMaps": [],
    "fields": []
}

【问题讨论】:

    标签: azure-cognitive-search diacritics


    【解决方案1】:

    您可以使用带有显式映射的同义词映射 https://docs.microsoft.com/en-us/azure/search/search-synonyms#explicit-mapping 请参阅下面的示例

    {
        "name": "patient",
        "format": "solr",
        "synonyms": "patient=> patiënt"
    }
    

    【讨论】:

    • 是的,这只会解决这个特定的情况,而不是所有带有变音符号的情况。我已经更新了我的问题以澄清
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    相关资源
    最近更新 更多