tom
tom

Reputation: 35

WatsonException: Error: unsupported text language, Code: 400

I am using natural language understanding api. text I am using 'hmmmm nawa ohh wen am I gona win ds tin' and it is giving error

WatsonException: Error: unsupported text language, Code: 400 

My code is :

response = natural_language_understanding.analyze(
    text='hmmmm nawa ohh wen am I gona win ds tin',
    features=[features.Sentiment(), features.Keywords(), features.Emotion(), features.Categories()])

how to pass these kind of text to NLU api. need help.

Upvotes: 3

Views: 2293

Answers (1)

Simon O'Doherty
Simon O'Doherty

Reputation: 9349

It's failing because before it attempts to determine features, it will try and guess what the language is. Setting the language will prevent this.

For example:

question = 'hmmmm nawa ohh wen am I gona win ds tin'

f = [
    features.Categories(),
    features.Concepts(),
    features.Emotion(),
    features.Entities(), 
    features.Relations(),
    features.SemanticRoles(),
    features.Sentiment()
]
r = nlu.analyze(text=question, features=f, language='en')

print(json.dumps(r, indent=2))

Outputs this:

{
  "sentiment": {
    "document": {
      "score": 0.0,
      "label": "neutral"
    }
  },
  "semantic_roles": [
    {
      "subject": {
        "text": "I"
      },
      "sentence": "hmmmm nawa ohh wen am I gona win ds tin",
      "object": {
        "text": "ds tin"
      },
      "action": {
        "verb": {
          "text": "win",
          "tense": "present"
        },
        "text": "win",
        "normalized": "win"
      }
    }
  ],
  "relations": [],
  "language": "en",
  "entities": [],
  "emotion": {
    "document": {
      "emotion": {
        "sadness": 0.193275,
        "joy": 0.309168,
        "fear": 0.167981,
        "disgust": 0.06316,
        "anger": 0.130959
      }
    }
  },
  "concepts": [],
  "categories": [
    {
      "score": 0.899547,
      "label": "/art and entertainment"
    },
    {
      "score": 0.365657,
      "label": "/hobbies and interests/reading"
    },
    {
      "score": 0.189432,
      "label": "/art and entertainment/movies and tv/movies"
    }
  ]
}

It's not proper English though, so I wouldn't expect the results to be good.

You can see the supported language features here:

https://www.ibm.com/watson/developercloud/doc/natural-language-understanding/index.html#supported-languages

Upvotes: 5

Related Questions