Есть ли способ воспользоваться функцией "прохождения" запроса WDS через API Java?

API-интерфейсы Java службы Watson Discovery позволяют потребителю указывать:

  • запрос
  • агрегирование
  • подсчитывать
  • фильтр
  • смещение
  • returnFields

с помощью com.ibm.watson.developer_cloud.discovery.v1.model.query.QueryRequest.Builder

Похоже, что (начиная с версии 3.8.0) невозможно установить passages=true хоть? Эта функция появится / запланирована?

2 ответа

Ответом здесь было то, что эта функция не поддерживалась до версии 4.0 клиента Java (выпущена в сентябре 2017 г.)

Функция доступна сейчас.

Вам нужно будет установить параметры запроса внутри звонка.

В документации, показывающей, что для этого нужно сделать. Вам нужно установить query_options внутри запроса query.Builder()

С помощью cURL вы установите:

curl -u "{username}":"{password}}" "https://gateway.watsonplatform.net/discovery/api/v1/environments/{environment_id}/collections/{collection_id}/query?version=2016-12-01&natural_language_query='collie'&passages=true"

С Java вам нужно установить что-то вроде:

Discovery discovery = new Discovery("2016-12-01");
discovery.setEndPoint("https://gateway.watsonplatform.net/discovery/api/v1");
discovery.setUsernameAndPassword("{username}", "{password}");
String environmentId = "{environment_id}";
String collectionId = "{collection_id}";
String queryOptions = { "passages": true };

QueryRequest.Builder queryBuilder = new QueryRequest.Builder(environmentId, collectionId, queryOptions);
queryBuilder.query("{field}:{value}");
QueryResponse queryResponse = discovery.query(queryBuilder.build()).execute();

Обс.: В документации сказано: query_options Определяет параметры запроса. В Java и Node укажите это как запрос string,

См. Таблицу параметров запроса для получения информации о содержимом строки или словаря. Смотрите официальную ссылку здесь.

Другие вопросы по тегам