Как указать входной файл для NLU Watson с помощью команды curl? - PullRequest
0 голосов
/ 01 октября 2019

У меня есть текстовый файл, который я хочу передать в службу Watson Natural Language Understanding с помощью команды curl и хотел бы узнать, как указать это в данных, которые я передаю службе. Я заставил его работать, используя URL, но хочу использовать другой источник. В приведенном ниже примере я хочу заменить «Я люблю яблоки! Я не люблю апельсины». с именем файла. Спасибо.

curl -X POST -u "apikey:{apikey}" \
"{url}/v1/analyze?version=2019-07-12" \
--request POST \
--header "Content-Type: application/json" \
--data '{
  "text": "I love apples! I do not like oranges.",
  "features": {
    "sentiment": {
      "targets": [
        "apples",
        "oranges",
        "broccoli"
      ]
    },
    "keywords": {
      "emotion": true
    }
  }
}'

1 Ответ

0 голосов
/ 02 октября 2019

Вы можете предоставить параметры --data в виде файла .json для включения текста, но другие параметры запроса также должны быть включены.

Из документации API - https://cloud.ibm.com/apidocs/natural-language-understanding#analyze-text

 curl -X POST -u "apikey":"{apikey}" -H "Content-Type: application/json" -d @parameters.json "https://gateway.watsonplatform.net/natural-language-understanding/api/v1/analyze?version=2019-07-12"

где parameters.json выглядит примерно так:

 {
   "text": "IBM is an American multinational technology company headquartered in Armonk, New York, United States, with operations in over 170 countries.",
   "features": {
     "entities": {
       "emotion": true,
       "sentiment": true,
       "limit": 2
     },
     "keywords": {
       "emotion": true,
       "sentiment": true,
       "limit": 2
     }
   }
 }
...