Поделиться через


Использование ранжирования для отображения результатов поиска сущностей

Предупреждение

30 октября 2020 г. API Поиск Bing перенесены из служб ИИ Azure в Поиск Bing Services. Эта документация приводится только для справки. Обновленную информацию см. в документации по API Поиска Bing. Инструкции по созданию ресурсов Azure для Поиска Bing приведены в статье Создание ресурса для Поиска Bing с помощью Azure Marketplace.

Каждый ответ поиска сущностей содержит объект RankingResponse, который описывает требуемый формат отображения результатов поиска API для поиска сущностей Bing. Ответ ранжирования объединяет результаты в содержимое для заголовка, основного поля и боковой панели. Результат для заголовка считается самым важным или самым значимым, и его необходимо отображать первым. Если вы не используете для отображения результатов стандартный формат основного поля и боковой панели, нужно по меньшей мере обеспечить более высокую заметность для содержимого основного поля.

В каждой группе есть массив Items, который определяет порядок отображения содержимого. Каждый элемент предоставляет два метода для идентификации результатов.

Поле Описание
answerType и resultIndex Поле answerType идентифицирует тип ответа (Entity или Place), а поле resultIndex идентифицирует результат в этом ответе (например, обнаруженную сущность). Индекс начинается с 0.
value Поле value содержит идентификатор, который обозначает некоторый ответ или результат в этом ответе. Идентификатор может встречаться только в ответе или только в результате.

Процесс использования answerType и resultIndex включает два шага. Сначала с помощью answerType можно найти ответ, который содержит результаты для отображения. Затем с помощью resultIndex можно определить порядок результатов в этом ответе и создать отображаемые результаты. (answerType Значение является именем поля в объекте SearchResponse.) Если предполагается отображать все результаты ответа, элемент ранжирования не включает в себя поле resultIndex.

Использование идентификатора требует согласования между идентификатором ранжирования и идентификатором определенного ответа или результата. Если объект ответа содержит поле id, при отображении объедините все результаты из этого ответа. Например, если объект Entities содержит поле id, отобразите вместе все содержащиеся в нем статьи. Если объект Entities не содержит поле id, тогда поле id должно включаться во все объекты, и ответ ранжирования будет описывать порядок их расположения по результатам Places.

Пример ответа ранжирования

Ниже приведен пример элемента RankingResponse.

{
  "_type": "SearchResponse",
  "queryContext": {
    "originalQuery": "Jimi Hendrix"
  },
  "entities": { ... },
  "rankingResponse": {
    "sidebar": {
      "items": [
        {
          "answerType": "Entities",
          "resultIndex": 0,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#Entities.0"
          }
        },
        {
          "answerType": "Entities",
          "resultIndex": 1,
          "value": {
            "id": "https://www.bingapis.com/api/v7/#Entities.1"
          }
        }
      ]
    }
  }
}

Боковая панель с учетом ответа ранжирования отображает две сущности из результатов, имеющие отношение к Джимми Хендриксу.

Дальнейшие действия