Использование ранжирования для отображения результатов поиска сущностей
Предупреждение
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"
}
}
]
}
}
}
Боковая панель с учетом ответа ранжирования отображает две сущности из результатов, имеющие отношение к Джимми Хендриксу.