question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Changing duckling url shouldn't require a model retrain

See original GitHub issue

Rasa version: Rasa core 0.14.0 Rasa nlu 0.14.4 Python version: 3.6.8 Operating system (windows, osx, …): osx Issue: rasa nlu model creation takes the duckling URL from the config.yml file and puts it into the metadata.json file of the trained model. we use docker-compose for local testing and k8s for cloud test/prod. docker and k8s use different way to network between containers; docker uses named containers eg duckling and k8s uses localhost. So we need different duckling url in local vs cloud testing. we’ve separated the URL’s in environment files but the Rasa training puts the URL into the metadata.json file of the model. This means that the model has to be retrained between local (docker-compose) and cloud (k8s-docker) testing. It makes more sense to have the URL outside of the model in a config file that can be controlled with environment and build processes so that the trained model can be copied rather than retrained (for no reason other than URL change due to environment). eg. for docker-compose “url”: “http://duckling:8000”, for k8s “url”: “http://localhost:8000”,

Content of configuration file (config.yml):

for docker-compose:

pipeline:
# other stuff
  - name: ner_duckling_http
    url: http://duckling:8000

for cloud k8s:
pipeline:
# other stuff
  - name: ner_duckling_http
    url: http://localhost:8000

Content of domain file (domain.yml) (if used & relevant):

not relevant

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:22 (11 by maintainers)

github_iconTop GitHub Comments

3reactions
c12kcommented, Jan 27, 2020

We have to change the duckling url regularly because dev and prod environments are different. So frequency of needing to change this is daily. for docker-compose “url”: “http://duckling:8000”, for k8s “url”: “http://localhost:8000

2reactions
wochingecommented, Jan 27, 2020

Because

  • it’s messy in the code
  • it’s only a tiny tiny advancement if we don’t retrain in case the duckling url is changed (how often are you changing your duckling url?)

So basically the relation between benefit and effort is very bad.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Does the Duckling-URL become a hard-coded part of the ...
I ask because a change to the URL with a subsequent call to “rasa train” results in a new model, whereas a call...
Read more >
To retrain, or not to retrain? Let's get analytical about ML ...
To stay up to date, the models should re-learn the patterns. They need to look at the most recent data that better reflects...
Read more >
Rasa NLU: reloading a model after retraining it - Stack Overflow
Im trying to write a script that collects . md files, combines them and retrains an existing model. If I use the Web...
Read more >
Why deep-learning AIs are so easy to fool - Nature
Artificial-intelligence researchers are trying to fix the flaws of neural networks.
Read more >
How to Build a Chatbot Using Rasa: Use Case of an AI Driving ...
Be careful: rasa interactive will retrain your models every time you launch it if the data has changed! Using rasa interactive to write...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found