#azure-cognitive-search #azure-cognitive-services
Вопрос:
Я хочу посмотреть, возможно ли то, что я хочу сделать, и если да, то как?
Идея в том, что я храню кучу продуктов. Тогда для этих продуктов у меня есть продавцы. У продавцов есть предложения по товарам. Я хотел бы предложить покупателям некоторую информацию об истории предложений продавцов по этим товарам.
Итак, допустим, у меня есть поле complexType в моем индексе когнитивного поиска Azure под названием «Предложения продавцов». В этом поле будут данные, которые выглядят следующим образом:
{
"offers":[
{
"offerid":5,
"offerPrice":"15.00",
"offerDate":"9/23/2021"
},
{
"offerid":4,
"offerPrice":"12.50",
"offerDate":"8/10/2021"
},
{
"offerid":3,
"offerPrice":"13.50",
"offerDate":"7/15/2021"
},
{
"offerid":2,
"offerPrice":"10.00",
"offerDate":"6/01/2021"
},
{
"offerid":1,
"offerPrice":"12.50",
"offerDate":"5/23/2021"
}
]
}
В приведенных выше данных вы можете видеть, что 6/1/21 цена составляла всего 10,00 доллара, а в настоящее время цена составляет 15,00 доллара, возможно, продавец все равно примет 10 долларов (или 12 долларов).
Можно ли задать этот вопрос в рамках когнитивного поиска Azure? Т. е. покажите мне товары, у которых было предыдущее предложение, где цена была на 20% ниже текущего предложения.
Спасибо за любую помощь, я не смог найти никакой документации о том, как может быть написан такой сложный запрос.
Ответ №1:
Наиболее близким к тому, что вы ищете Смысловые ответы компонент из семантического поиска, который в основном добавляет когнитивные способности для поисковых запросов, а также дает ответы, исходя из запросов сформулированы как вопрос https://docs.microsoft.com/en-us/azure/search/semantic-answers#prerequisites я не знаю, если он достаточно умен, чтобы понять ваш вопрос, но я думаю, стоит дать ему попробовать, вы должны войти в систему для публичного просмотра первый https://docs.microsoft.com/en-us/azure/search/semantic-search-overview#availability-and-pricing
Комментарии:
1. Спасибо! Это выглядит очень потрясающе, но вы можете применить семантический поиск только к 50 лучшим результатам в наборе результатов. Т. е. вы не можете выполнить семантический запрос ко всему индексу. Интересно, смогу ли я сделать это с помощью фильтра lamda $….
2. Фильтры применяются до применения семантического поиска, так что да, вы можете сначала отфильтровать результаты.