complexType: Запрос на основе анализа данных в

#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. Фильтры применяются до применения семантического поиска, так что да, вы можете сначала отфильтровать результаты.