Merging Rasa Core and NLU repositories

Hey Rasas,

we made a significant change to how we structured the Rasa Stack code base: we merged the Rasa Core code into the NLU repository. But don’t worry: You can still use NLU and Core separately if you want to.

Many of you already noticed that, and there have been some questions. I wanted to take some time to explain the thinking behind this single repo approach and why we prefer it. The change is on master branch only and not released yet.

Why did we do the merge?

  • Future proof: The code merge will allow us to build end-to-end models or models that can take the context of conversations into account -> more and more challenges require this (e.g. co-reference resolution).
  • easier to maintain: there have been quite some code duplications between the repositories, this move will make it easier to maintain existing code and avoid compatibility issues between these tightly coupled parts.
  • optimise for the most common use case: creating an assistant where both are needed and simplifying that (e.g. providing an easy to use command line interface to bootstrap a bot).

What does it mean for me?

  • all issues should be opened on the https://github.com/rasahq/rasa repo
  • imports changed: new code should use import rasa.nlu and import rasa.core . To make the transition easier, we added placeholder packages for the old names and imports will still work.

What it does NOT mean?

  • You do not need to use Core and NLU together. We want to keep the flexibility and allow training of NLU or Core only models.
  • There will be no change to the license. All the code will stay under Apache 2.

I’d love to hear your thoughts and any questions you have.

Best Tom

10 Likes

Hey Tom,

This sounds great, I just have one note, the link provided: https://github.com/rasahq/rasa, is not working.

Thanks

You were to quick to try :wink: just renamed the repo, should work now.

1 Like

Works now, thanks :sweat_smile:

1 Like

This sounds great, but will it alter the Docker container setup where NLU runs in a separate container which is connected to another container running Core?

This is a very convenient way to deploy and scale chatbots.

4 Likes

I agree, I’ve really enjoyed working with the Docker container setup I have now, and am worried going to monorepo might change things drastically on Docker Hub.

1 Like

We currently intent to publish a single docker container (with some variations for the different nlu parts, e.g. spacy). You can still use this container to e.g. only run an nlu model and another instance of the same container to only run a core model. But longer term I’d recommend to run a single container with a combined model.

You are changing as well the packaging for pip, isn’t it? turning into that rasa is a metapackage that contains nlu and core. I look it as a good change that can avoid some headaches.

Hello, Rasas,

This step is a big one to the Rasa community. And thinking in our Brazilian community :brazil: We from LAPPIS (Software lab from UnB in Brazil) will make a Webinar tomorrow at 11:00 AM (GMT-3:00) to talk about this! The video will be in Brazilian Portuguese, but you can send any question, and we will answer it in Portuguese and English.

We know that Rasa stack is in pre-release step, but we will make a hands-on with examples about the new way to start the Rasa chatbot development :smiley:

I will place the live youtube link a few minutes before 11:00 AM here as a comment.

1 Like

@arthurTemporim hello sir,please send youtube link.

1 Like

Good news for all of us. I liked the idea of merging both the repo. Where i can get your latest roadmap of development.

Hello, Rasas,

Here is the youtube link, we will start in 15 minutes:

webinar - Rasa Stack

1 Like

hello @arthurTemporim unfortunately i have not seen that video sir , can you send me a full video link?i want to watch .Thanks in advance.

Hello, Nishet, the video link is the same: http://bit.ly/lappis-webinar-2, I will add English subtitle tomorrow. In the video I focused in the command rasa init and how awesome this feature is :smiley:

Thanks @arthurTemporim.sorry to say but video not open please send correct link .Thanks

For video link, click here YouTube

Link shared by @arthurTemporim will not work, as live session is ended. You can watch from above link.

Cheers !!

1 Like

Thanks @bikashkumars

Thank you @bikashkumars :smiley:

I added the subtitles directly in the youtube so you can select your language and youtube will translate it.

We had some connections issues, kind of things that happens in a live video, haha but in the video has a simple example on what the new Rasa will bring to us o/

Hello, do you have an idea of the single container date release? I’m currently starting a chatbot project based on rasa and I think it will be more simple to start with this configuration.

Sorry, it seems the image was released just today: Docker Hub

Yes we are preparing the different parts. We tagged a first alpha versions, but there are a couple more changes we want to make before we release this as a stable version.

1 Like