Categorical slots are filled with wrong values

I have a problem with categorical slots. For example:

I define a slot:

slots:
  beabsichtigung:
    type: categorical
    values:
    - bauen
    - kaufen
    - sanieren

These possible value list is useless because the slot can be filled with other values too.

I say “Ich saniere” and the slot value will set to beabsichtigung=“saniere”. This value is not in list. It should be set to “sanieren”.

Can somone help me?

Can you share the output of the rasa --version command?

There’s something wrong here, please see this similar thread for more info about how categorical slots work.

  • Rasa Version : 2.1.2
  • Rasa SDK Version : 2.1.2
  • Rasa X Version : None
  • Python Version : 3.7.11
  • Operating System : Windows-10-10.0.19041-SP0

Please show me the relevant NLU examples for the beabsichtigung entity

@ChrisRahme

- ich möchte ein Haus [kaufen](beabsichtigung)
- eine Wohnung [bauen](beabsichtigung)
- ein Haus [erwerben](beabsichtigung:kaufen)
- ich möchte [sanieren](beabsichtigung)
- Badezimmer [sanieren](beabsichtigung)
- ich plane eine [Sanierung](beabsichtigung:sanieren) der Küche

I know that there isn’t an example for “saniere”, but my general problem is that this value can be set. If nlu wasn’t clever enough it should throw an error instead of setting wrong values, I thought.

Btw: If I switch to another pattern with three intents and three entities instead of three categroical slot values, rasa nlu is able to variate from “saniere” to “sanieren”-intent. But I need one slot because of a custom form.

1 Like

Following the thread since I experience the same problem.

In addition, i have another strange experience. Slot with type “bool” can be filled with plain text. It should only allow “True” or “False”.