kgsearch.entities.search - какой формат должен принимать параметр ids?

Документов для [Knowledge Graph API][1] очень мало; они упоминают, что я могу использовать «идентификаторы» для поиска определенного списка объектов вместо использования запроса. У меня есть несколько идентификаторов объектов, которые были указаны API естественного языка как "упомянутые объекты" в документах, например:

кг: / г / 11c58ncq2b

Когда я предоставляю один из них в качестве параметра строки запроса «ids», я получаю краткое 400:

«code»: 400, «message»: «Запрос содержит недопустимый аргумент.», «status»: «INVALID_ARGUMENT»

Тот же результат, если я попытаюсь использовать пустую строку «11c58ncq2b» или другие варианты.

Кто-нибудь знает, какой формат здесь ожидается?


person Tony Spataro    schedule 13.02.2018    source источник


Ответы (1)


Оказывается, ответ состоит из двух частей: простой и сложной.

Простое: хотя это нигде не задокументировано, удаление схемы URL kg: из идентификаторов объектов, возвращаемых API естественного языка, превращает их в идентификаторы, которые API kgsearch может найти. Таким образом, поиск ID /g/11c58ncq2b ответит 200, тогда как kg:/g/11c58ncq2b ответит 400,

Сложность: кажется, что эти идентификаторы сущностей несовместимы между версиями API. Таким образом, идентификаторы объектов, возвращаемые v1beta API естественного языка, часто не дают никаких результатов, когда я ищу v1 API KG. После изучения формата параметра ids мои поиски по-прежнему возвращали в основном пустые результаты. Как только я перешел на постоянное использование v1 всех API, мои поиски начали приносить полезные результаты.

person Tony Spataro    schedule 20.02.2018