Unable to train rasa nlu with ner_duckling pipeline

Hi i am using rasa nlu
Rasa NLU: 0.13.8
python version : 3.6

testing environment : venv on windows 10 and ubuntu 18

rasa nlu documentation does show how to use ner_duckling_http pipeline but no mention about ner_duckling.
when i go through the code ner_duckling pipeline still exists

1.is it deprecated?
2. ner_duckling pipeline is ommitted in rasa nlu documentation , will it be added back?

any way i traied using ner_duckling , it works super fine in windows. but not working under ubuntu.

NLU CONFIG YML:

	language: "en"

	pipeline:
	- name: "tokenizer_whitespace"
	- name: "ner_crf"
	- name: "ner_synonyms"
	- name: "intent_featurizer_count_vectors"
	- name: "intent_classifier_tensorflow_embedding"
	- name: "ner_duckling"
	  # dimensions to extract
	  dimensions: ["time", "number", "amount-of-money", "distance"]
	  # allows you to configure the locale, by default the language is
	  # used
	  locale: "en"
	  # if not set the default timezone of Duckling is going to be used
	  # needed to calculate dates from relative expressions like "tomorrow"
	  timezone: "Asia/Kolkata"
	path: ./models/nlu
	data: ./data/training_nlu.json

API for Training nlu:

    http://192.168.1.161:6001/train?project=freeText 

. Error encountered while training (log):

			(env12) mansoor-vm@mansoorvm-virtual-machine:~/Documents/chatbot_m2/rasa_nlu $ python3 -m rasa_nlu.server -c nlu_model_
			config.yml --path models -P 6001  --response_log logs --pre_load all --debug -v
			2018-12-13 13:45:30 INFO     rasa_nlu.data_router  - Logging requests to 'logs/rasa_nlu_log-20181213-134530-3246.log'.
			2018-12-13 13:45:31.920552: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
			2018-12-13 13:45:32 INFO     tensorflow  - Restoring parameters from /home/mansoor-vm/Documents/chatbot_m2/rasa_nlu/models/freeText/model_20181213-134253/intent_classifier_tensorflow_embedding.ckpt
			2018-12-13 13:45:32 INFO     __main__  - Started http server on port 6001
			2018-12-13 13:45:32+0530 [-] Log opened.
			2018-12-13 13:45:32+0530 [-] Site starting on 6001
			2018-12-13 13:45:32+0530 [-] Starting factory <twisted.web.server.Site object at 0x7f05f7175f28>
			2018-12-13 13:45:35+0530 [-] 2018-12-13 13:45:35 WARNING  rasa_nlu.data_router  - [Failure instance: Traceback (failure with no frames): <class 'rasa_nlu.train.TrainingException'>: <TrainingException instance at 0x7f05f71ac2e8 with str error:
			2018-12-13 13:45:35+0530 [-]  Traceback (most recent call last):
			2018-12-13 13:45:35+0530 [-]   File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/python/reflect.py", line 448, in safe_str
			2018-12-13 13:45:35+0530 [-]     return str(o)
			2018-12-13 13:45:35+0530 [-] TypeError: __str__ returned non-string (type int)
			2018-12-13 13:45:35+0530 [-] >
			2018-12-13 13:45:35+0530 [-] ]
			2018-12-13 13:45:35+0530 [-] Unhandled Error
					Traceback (most recent call last):
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/internet/defer.py", line 501, in errback
						self._startRunCallbacks(fail)
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/internet/defer.py", line 568, in _startRunCallbacks
						self._runCallbacks()
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks
						current.result = callback(current.result, *args, **kw)
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/internet/defer.py", line 1475, in gotResult
						_inlineCallbacks(r, g, status)
					--- <exception caught here> ---
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/internet/defer.py", line 1416, in _inlineCallbacks
						result = result.throwExceptionIntoGenerator(g)
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/twisted/python/failure.py", line 491, in throwExceptionIntoGenerator
						return g.throw(self.type, self.value, self.tb)
					  File "/home/mansoor-vm/Documents/chatbot_m2/env12/lib/python3.5/site-packages/rasa_nlu/server.py", line 373, in train
						returnValue(json_to_string({"error": "{}".format(e)}))
					builtins.TypeError: __str__ returned non-string (type int)

			2018-12-13 13:45:35+0530 [-] "192.168.1.84" - - [13/Dec/2018:08:15:35 +0000] "POST /train?project=freeText HTTP/1.1" 500 3887 "-" "PostmanRuntime/7.4.0"
			2018-12-13 13:46:35+0530 [-] Timing out client: IPv4Address(type='TCP', host='192.168.1.84', port=59115)

i need to use ner_duckling ,without ner_duckling in the pipeline there is no errors. how can i do this with ner_duckling in the pipeline.

Please help.

hey @manslogic first thing ner_duckling is deprecated but still if you want you can use or you can use the latest version : ner_duckling_http, if you want to use ner_duckling_http, you can follow this link :

else if you want to use ner_duckling you need to install it in python first,you can do so using

pip install duckling and then you use it in you nlu_config.yml file

:slight_smile:

Note : Make sure you had installed duckling in python

@JiteshGaikwad Thanks for the response.
OK I got it, ner_duckling old is deprecated

@JiteshGaikwad i did installed “pip install duckling” . I want to use that in “config.yml” file.

Could you please let me know how to use that?. My current environment doesn’t support docker.

“config.yml”

Configuration for Rasa NLU.

https://rasa.com/docs/rasa/nlu/components/

language: en

pipeline:

No configuration for the NLU pipeline was provided. The following default pipeline was used to train your model.

If you’d like to customize it, uncomment and adjust the pipeline.

See Tuning Your NLU Model for more information.

  • name: WhitespaceTokenizer

  • name: RegexFeaturizer

  • name: LexicalSyntacticFeaturizer

  • name: CountVectorsFeaturizer

  • name: CountVectorsFeaturizer

    analyzer: char_wb

    min_ngram: 1

    max_ngram: 4

  • name: DIETClassifier

    epochs: 100

  • name: EntitySynonymMapper

  • name: ResponseSelector

    epochs: 100

  • name: FallbackClassifier

    threshold: 0.3

    ambiguity_threshold: 0.1

Configuration for Rasa Core.

https://rasa.com/docs/rasa/core/policies/

policies:

# No configuration for policies was provided. The following default policies were used to train your model.

# If you’d like to customize them, uncomment and adjust the policies.

# See Policies for more information.

  • name: MemoizationPolicy

  • name: TEDPolicy

    max_history: 5

    epochs: 100

  • name: RulePolicy

  • name: AugmentedMemoizationPolicy