# Rasa Training falls via HTTP api, Message unclear

**URL:** <https://forum.rasa.com/t/rasa-training-falls-via-http-api-message-unclear/36993>\
**Category:** Rasa Open Source\
**Created:** [November 13, 2020, 9:18pm UTC](https://forum.rasa.com/t/rasa-training-falls-via-http-api-message-unclear/36993 "2020-11-13T21:18:27Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![Martinbe1io](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.rasa.com/martinbe1io/32/11820_2.png) [@Martinbe1io](https://forum.rasa.com/u/Martinbe1io)\
**Post date:** [November 13, 2020, 9:18pm UTC](https://forum.rasa.com/t/rasa-training-falls-via-http-api-message-unclear/36993/1 "2020-11-13T21:18:28Z")

</div>

Hi, i‘m Stuck with the http api in Version 2 as the Training Starts but Aborts without a clear error Message. Direct Training with the command Line works, i filed a case at github, got a First response but since 2 weeks no Progress. Anyone here who can Help me?

> <https://github.com/RasaHQ/rasa/issues/7109>
>
> \*\*Rasa version\*\*:
> 
> Version: class InlineResponse200 
> 
> { version: 1.10.3 minimum…CompatibleVersion: 1.10.0 } 
> 
> \*\*Rasa SDK version\*\* (if used & relevant):
> 
> Generated JAVA Source with openapi spec here \[https://rasa.com/docs/rasa/spec/rasa.yml\](https://rasa.com/docs/rasa/spec/rasa.yml)
> 
> \*\*Rasa X version\*\* (if used & relevant): n/a
> 
> \*\*Python version\*\*: n/a - rasa helm charts for kubrerenetes
> 
> \*\*Operating system\*\* (windows, osx, ...): n/a - rasa helm charts for kubrerenetes
> 
> \*\*Issue\*\*:
> 
> Connection to Api is ok, when I try to train a model I get an error without clear notice what's wrong. Setting up
> 
> JSONTrainingRequest trainingRequest = new JSONTrainingRequest();
> trainingRequest.setNlu(cleanrasanlu);
> trainingRequest.setConfig(cleanrasaconfig);
> trainingRequest.setStories(cleanrasastories);
> trainingRequest.setDomain(cleanrasadomain);
> trainingRequest.saveToDefaultModelDirectory(true);
> trainingRequest.force(false);
> 
> ObjectMapper m = new ObjectMapper();
> log.info("start training: {}", m.writeValueAsString(trainingRequest));
> 
> ApiResponse\<File\> f = trainapi.trainModelWithHttpInfo(trainingRequest,true,false);
> List\<String\> filenames = f.getHeaders().get("filename");
> log.info("trainthread {} training result={}", getName(), filenames.get(0));
> 
> find the values within traingRequest Structure here
> 
> {"domain":"version: \\"2.0\\"\\n\\nintents:\\n - affirm\\n - deny\\n - greet\\n - thankyou\\n - goodbye\\n - search\_concerts\\n - search\_venues\\n - compare\_reviews\\n - bot\_challenge\\n - nlu\_fallback\\n - how\_to\_get\_started\\n\\n\\nsession\_config:\\n session\_expiration\_time: 60 # value in minutes\\n carry\_over\_slots\_to\_new\_session: true","config":"language: en\\n\\npipeline:\\n - name: \\"WhitespaceTokenizer\\"\\n - name: \\"RegexFeaturizer\\"\\n - name: \\"LexicalSyntacticFeaturizer\\"\\n - name: \\"CountVectorsFeaturizer\\"\\n - name: \\"CountVectorsFeaturizer\\"\\n analyzer: \\"char\_wb\\"\\n min\_ngram: 1\\n max\_ngram: 4\\n - name: \\"DIETClassifier\\"\\n epochs: 100\\n - name: FallbackClassifier\\n threshold: 0.4\\n ambiguity\_threshold: 0.1\\n - name: \\"EntitySynonymMapper\\"\\n\\npolicies:\\n - name: TEDPolicy\\n max\_history: 5\\n epochs: 200\\n batch\_size: 50\\n max\_training\_samples: 300\\n - name: MemoizationPolicy\\n - name: RulePolicy","nlu":"version: \\"2.0\\"\\nnlu:\\n - intent: greet\\n examples: |\\n - hi\\n - hello\\n - how are you\\n - good morning\\n - good evening\\n - hey\\n\\n - intent: goodbye\\n examples: |\\n - bye\\n - goodbye\\n - ciao\\n\\n - intent: thankyou\\n examples: |\\n - thanks\\n - thank you\\n - thanks friend\\n\\n - intent: search\_concerts\\n examples: |\\n - Find me some good concerts\\n - Show me concerts\\n - search concerts\\n\\n - intent: search\_venues\\n examples: |\\n - Find me some good venues\\n - Show me venues\\n - search venues\\n\\n - intent: compare\_reviews\\n examples: |\\n - compare reviews\\n - show me a comparison of the reviews\\n\\n - intent: how\_to\_get\_started\\n examples: |\\n - how do I get started\\n - what can I do\\n - start\\n\\n - intent: affirm\\n examples: |\\n - yes\\n - yeah\\n - yep\\n\\n - intent: deny\\n examples: |\\n - nope\\n - no\\n - absolutely not\\n ","stories":"#","force":false,"save\_to\_default\_model\_directory":true} 
> 
> \*\*Error (including full traceback)\*\*:
> 
> \<-- HTTP/1.1 500 Internal Server Error (93ms)
> Connection: keep-alive
> Keep-Alive: 5
> Content-Length: 221
> Content-Type: application/json
> OkHttp-Sent-Millis: 1603780528856
> OkHttp-Received-Millis: 1603780528948
> 
> {"version":"1.10.3","status":"failure","message":"An unexpected error occurred during training. Error: expected str, bytes or os.PathLike object, not NoneType","reason":"TrainingError","details":{},"help":null,"code":500}
> \<-- END HTTP (221-byte body)
> \<span class="error"\>\[2020-10-27 07:35:28,949\]\</span\>-\<span class="error"\>\[pool-22-thread-1\]\</span\> ERROR io.be1.circular.messageprocessing.MessageProcessorRasaNLU - trainthread RASANLU exception=io.be1.circular.messageprocessing.rasaclient.ApiException: Internal Server Error stack=io.be1.circular.messageprocessing.rasaclient.ApiException: Internal Server Error
> at io.be1.circular.my-app//io.be1.circular.messageprocessing.rasaclient.ApiClient.handleResponse(ApiClient.java:925)
> at io.be1.circular.my-app//io.be1.circular.messageprocessing.rasaclient.ApiClient.execute(ApiClient.java:841)
> at io.be1.circular.my-app//io.be1.circular.messageprocessing.rasaclient.api.ModelApi.trainModelWithHttpInfo(ModelApi.java:938)
> at io.be1.circular.my-app//io.be1.circular.messageprocessing.MessageProcessorRasaNLU.lambda$starttrainthread$0(MessageProcessorRasaNLU.java:320)
> at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
> at java.base/java.lang.Thread.run(Thread.java:832)
> 
> \<span class="error"\>\[2020-10-27 07:35:28,949\]\</span\>-\<span class="error"\>\[pool-22-thread-1\]\</span\> INFO io.be1.circular.messageprocessing.MessageProcessorRasaNLU - trainthread RASANLU stoped thread: pool-22-thread-1 duration=0sec
> \<-- HTTP/1.1 200 OK (42ms)
> 
> \*\*Command or request that led to error\*\*:
> 
> --\> POST \[http://rasa-x-1603718536-rasa-production.rasa.svc.cluster.local:5005/model/train?save\_to\_default\_model\_directory=true&force\_training=false&token=rasaToken\](http://rasa-x-1603718536-rasa-production.rasa.svc.cluster.local:5005/model/train?save\_to\_default\_model\_directory=true&force\_training=false&token=rasaToken) HTTP/1.1
> Content-Type: application/json; charset=utf-8
> Content-Length: 2046
> Accept: application/json
> User-Agent: Swagger-Codegen/1.0.0/java
> 
> {"domain":"version: \\"2.0\\"\\n\\nintents:\\n - affirm\\n - deny\\n - greet\\n - thankyou\\n - goodbye\\n - search\_concerts\\n - search\_venues\\n - compare\_reviews\\n - bot\_challenge\\n - nlu\_fallback\\n - how\_to\_get\_started\\n\\n\\nsession\_config:\\n session\_expiration\_time: 60 # value in minutes\\n carry\_over\_slots\_to\_new\_session: true","config":"language: en\\n\\npipeline:\\n - name: \\"WhitespaceTokenizer\\"\\n - name: \\"RegexFeaturizer\\"\\n - name: \\"LexicalSyntacticFeaturizer\\"\\n - name: \\"CountVectorsFeaturizer\\"\\n - name: \\"CountVectorsFeaturizer\\"\\n analyzer: \\"char\_wb\\"\\n min\_ngram: 1\\n max\_ngram: 4\\n - name: \\"DIETClassifier\\"\\n epochs: 100\\n - name: FallbackClassifier\\n threshold: 0.4\\n ambiguity\_threshold: 0.1\\n - name: \\"EntitySynonymMapper\\"\\n\\npolicies:\\n - name: TEDPolicy\\n max\_history: 5\\n epochs: 200\\n batch\_size: 50\\n max\_training\_samples: 300\\n - name: MemoizationPolicy\\n - name: RulePolicy","nlu":"version: \\"2.0\\"\\nnlu:\\n - intent: greet\\n examples: |\\n - hi\\n - hello\\n - how are you\\n - good morning\\n - good evening\\n - hey\\n\\n - intent: goodbye\\n examples: |\\n - bye\\n - goodbye\\n - ciao\\n\\n - intent: thankyou\\n examples: |\\n - thanks\\n - thank you\\n - thanks friend\\n\\n - intent: search\_concerts\\n examples: |\\n - Find me some good concerts\\n - Show me concerts\\n - search concerts\\n\\n - intent: search\_venues\\n examples: |\\n - Find me some good venues\\n - Show me venues\\n - search venues\\n\\n - intent: compare\_reviews\\n examples: |\\n - compare reviews\\n - show me a comparison of the reviews\\n\\n - intent: how\_to\_get\_started\\n examples: |\\n - how do I get started\\n - what can I do\\n - start\\n\\n - intent: affirm\\n examples: |\\n - yes\\n - yeah\\n - yep\\n\\n - intent: deny\\n examples: |\\n - nope\\n - no\\n - absolutely not\\n ","stories":"#","force":false,"save\_to\_default\_model\_directory":true} 
> 
> --\> END POST (2046-byte body)
> \<-- HTTP/1.1 200 OK (19ms)
> 
> \*\*Content of configuration file (config.yml)\*\* (if relevant):
> 
> \<pre\>language: en
> 
> pipeline:
> 
> \* name: "WhitespaceTokenizer"
> \* name: "RegexFeaturizer"
> \* name: "LexicalSyntacticFeaturizer"
> \* name: "CountVectorsFeaturizer"
> \* name: "CountVectorsFeaturizer"
> analyzer: "char\_wb"
> min\_ngram: 1
> max\_ngram: 4
> \* name: "DIETClassifier"
> epochs: 100
> \* name: FallbackClassifier
> threshold: 0.4
> ambiguity\_threshold: 0.1
> \* name: "EntitySynonymMapper"
> 
> policies:
> 
> \* name: TEDPolicy
> max\_history: 5
> epochs: 200
> batch\_size: 50
> max\_training\_samples: 300
> \* name: MemoizationPolicy
> \* name: RulePolicy\</pre\>
> 
> \*\*Content of domain file (domain.yml)\*\* (if relevant):
> 
> \<pre\>version: "2.0"
> 
> intents:
> 
> \* affirm
> \* deny
> \* greet
> \* thankyou
> \* goodbye
> \* search\_concerts
> \* search\_venues
> \* compare\_reviews
> \* bot\_challenge
> \* nlu\_fallback
> \* how\_to\_get\_started
> 
> session\_config:
> session\_expiration\_time: 60 # value in minutes
> carry\_over\_slots\_to\_new\_session: true\</pre\>

Thx Martin

---

_[View the full topic](https://forum.rasa.com/t/rasa-training-falls-via-http-api-message-unclear/36993)._
