notice

This is unreleased documentation for Rasa Documentation Main/Unreleased version.
For the latest released documentation, see the latest version (3.x).

Version: Main/Unreleased

NLU-Only Server

You can run an NLU-only server and use the HTTP API to connect to it.

Connecting to an NLU server

You can connect a Rasa NLU-only server to a separately running Rasa dialogue management only server by adding the connection details to the dialogue management server's endpoint configuration file:

endpoints.yml
nlu:
url: "http://<your nlu host>:<your nlu port>"
token: <token> # [optional]
token_name: <name of the token> # [optional] (default: token)

The token and token_name refer to optional authentication parameters.

The dialogue management server should serve a model that does not include an NLU model. To obtain a dialogue management only model, train a model with rasa train core or use rasa train but exclude all NLU data.

When the dialogue management server receives a message, it will send a request to http://<your nlu host>:<your nlu port>/model/parse and use the parsing information returned.

endpoint configuration

The endpoint configuration for the dialogue management server will include an nlu endpoint that refers to your NLU only server. Therefore you should use a separate endpoint configuration file for the NLU server, excluding the nlu endpoint.

If you are implementing a custom NLU server (i.e. not Rasa NLU), your server should provide a /model/parse endpoint that responds to requests in the same format as a Rasa NLU server does.