Как семантический поиск использует поля, настроенные в семантической конфигурации, для повторного ранжирования результатов в Когнитивном поиске Azure
У меня есть индекс в Azure Cognitive Search, где я предоставил подробную информацию о своих предложениях. Есть два основных поля (среди многих других, таких как «Имя», «Доступность» и т. д.):
Биография (Edm.String) Теги (Коллекция(Edm.String)) Я определил профиль оценки, который придает наибольший вес совпадению, присутствующему в Тегах (вес:10) и Биографии (вес:4). Теперь, когда я делаю полный текстовый поиск (без включенного семантического поиска), когда запрос включает термин, который напрямую соответствует в поле «Теги», я получаю требуемые результаты, где результаты имеют совпадения в тегах и биографии вверху, что является ожидаемым поведением. Теперь, когда я включаю семантический поиск с конфигурацией ниже:
"semantic": {
"defaultConfiguration": null,
"configurations": [
{
"name": "semantic-config",
"prioritizedFields": {
"titleField": {
"fieldName": "Name"
},
"prioritizedContentFields": [
{
"fieldName":"Bio"
}
],
"prioritizedKeywordsFields": [
{
"fieldName": "Tags"
}
]
}
}
]
}
Теперь результаты, которые я получаю, - это только те результаты, в которых слова совпадают с биографией, а это не то, что я хочу, я все еще хочу, чтобы результаты, которые имеют совпадения в тегах, были на вершине.
Поэтому мне было интересно, рассматривается ли мой оценочный профиль для повторного ранжирования или как мне заставить мои теги влиять на мой семантический поиск и давать мне результаты, подобные тем, которые я получаю при семантическом поиске.
1 ответ
Семантическое суммирование и ранжирование применяются только к 50 лучшим результатам, оцененным с помощью алгоритма оценки по умолчанию. Используя эти результаты в качестве корпуса документов, семантическое ранжирование переоценивает эти результаты на основе семантической силы совпадения. Поэтому любые профили оценки, используемые с использованием алгоритма оценки по умолчанию с простыми или полными типами запросов, переопределяются и неприменимы при использовании семантики, поскольку показатели reRankerscore используются в моделях семантического поиска. В настоящее время мы работаем над составлением скоринговых профилей для семантических поисковых запросов.
См. https://learn.microsoft.com/en-us/azure/search/semantic-search-overview#how-semantic-ranking-works .