Как создать класс (не классификатор) с переменной в IBM Watson Visual Recognition с Python? - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь создать новый класс с API, как это показано в документации API https://cloud.ibm.com/apidocs/visual-recognition?code=python#update-a-classifier

Часть, которую Уотсон использует в качестве имени класса, является префиксом "_positive_examples". Мне нужно использовать содержимое переменной в качестве префикса, но это ключевое слово, и я не могу добавить туда какую-либо переменную (variableNotWorking в коде).

Я пытался отформатировать как строку, а также создать словарь на Python и ввести его там, но я всегда получаю сообщение об ошибке либо от Python, либо от Watson.

    positive = nuevaClase + '_positive_examples'
    visual_recognition = credencials()
    with open(aprDirFitxer1, 'rb') as nuevaClase:
            updated_model = visual_recognition.update_classifier(
                classifier_id=classifId,
                positive_examples={positive : nuevaClase}).get_result()

Ошибка от Уотсона, которую я всегда получаю:

watson_developer_cloud.watson_service.WatsonApiException: Error: Cannot execute learning task.  Did not find any files to process in the POST request body. , Code: 400 

1 Ответ

0 голосов
/ 21 апреля 2019

Я думаю, что ваша проблема может быть в том, что вы используете старую версию SDK, потому что имя версии изменилось в версии 3 на «ibm-watson».Вам необходимо установить новый пакет SDK с

pip install --upgrade ibm-watson

, а затем в своем коде Python импортировать из этого нового пакета:

from ibm_watson import VisualRecognitionV3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...