2014-10-09 2 views
0

Учитывая я мой индекс настроен так:Azure Поиск Fuzzy Предлагайте Через несколько полей

{ 
    "Error": null, 
    "IsSuccess": true, 
    "StatusCode": 201, 
    "Body": { 
    "name": "test-want-index", 
    "fields": [ 
     { 
     "name": "Id", 
     "type": "Edm.String", 
     "searchable": false, 
     "filterable": false, 
     "sortable": false, 
     "facetable": false, 
     "suggestions": false, 
     "key": true, 
     "retrievable": true 
     }, 
     { 
     "name": "Title", 
     "type": "Edm.String", 
     "searchable": true, 
     "filterable": false, 
     "sortable": false, 
     "facetable": false, 
     "suggestions": true, 
     "key": false, 
     "retrievable": true 
     }, 
     { 
     "name": "Description", 
     "type": "Edm.String", 
     "searchable": true, 
     "filterable": false, 
     "sortable": false, 
     "facetable": false, 
     "suggestions": true, 
     "key": false, 
     "retrievable": true 
     }, 
    ], 
    "scoringProfiles": [], 
    "defaultScoringProfile": null, 
    "corsOptions": null 
    } 
} 

заселена с этими данными:

Id:123, Title:starbucks, Description:coffee that is good 
Id:456, Title:big b, Description:coffee that is bad 
Id:789, Title:elk brand, Description:we have elk stars 

Когда пользователь, который входит в следующий запрос starbucs coffee

Можно ли настроить поля индекса, чтобы я мог:

    элемент
  1. матч с идентификатором 123 и идентификатор 456
  2. Нечеткий поиск (или предложение?) Название и описание

Примечание:

  1. Ввод stabuck как этот термин поиск по предложению возвращает идентификатор 123
  2. Ввод coffee в качестве поискового запроса для предложений id 456
  3. Ввод starbucs coffee ничего не возвращает. < - моя проблема.

ответ

6

В настоящее время мы не выполняем исправления орфографии/нечеткие запросы при поиске. Мы работаем над тем, чтобы улучшить лингвистику в целом, и многие из них со временем улучшатся.

В данном конкретном случае, поиск и предложения ничего не возвращаются по разным причинам:

Поиск возвращается пустой, потому что он не делает нечеткого соответствия, таким образом starbucs не совпадает. Обратите внимание, что если для параметра searchMode установлено значение «any» (по умолчанию), документ все равно должен возвращаться, потому что «кофе» соответствует.

Предложения возвращаются пустым, потому что он выполняет только полный матч, и нет единого поля, содержащего всю строку «starbucks coffee» (с или без орфографических ошибок). Мы получили массу «страстных отзывов» о том, что предложения являются только префиксами, и мы смотрим, как сделать это более гибким.

Извините, у меня нет очень действенного ответа, кроме как убедиться, что у вас есть & searchMode = any, поэтому поиск будет соответствовать другим словам. Остальное будет лучше, но нам нужно немного времени. Мы каждую неделю нажимаем новые биты с новыми функциональными возможностями, поэтому все быстро развивается.