Rasa Open Source 2.0 is out now! - Announcements / Important Updates - Rasa Community Forum

Rasa Open Source 2.0 is out now!

Announcements Important Updates

You have selected 0 posts.

select all

cancel selecting

5.6k views 23 likes 9 links 22 users

20](https://forum.rasa.com/u/petasis "petasis")

14](https://forum.rasa.com/u/akelad "akelad")

5](https://forum.rasa.com/u/noman "noman")

5](https://forum.rasa.com/u/depicus "depicus")

5](https://forum.rasa.com/u/tswordsmith "tswordsmith")

read 11 min

Top replies

Oct 2020

74 / 74

Oct 2020

Oct 2020

post by Emma on Oct 7, 2020

EmmaEmma Wightman Community Manager

6

Oct 2020

Hey @community

Rasa Open Source 2.0 is centered on simplicity, especially unifying key concepts and reducing the learning curve for newcomers—while still expanding what advanced Rasa users can create. We’d like to thank each of you who have greatly helped us by testing and providing your feedback on the alpha versions, we appreciate your support in achieving this milestone and helping us shape the future direction of Rasa Open Source.

Heading link What’s new?

The release includes YAML formatting for training data, the new RulePolicy and rule snippets, and a new feature to suggest a pipeline configuration. Plus, we’ve done a major documentation update!

In addition, Rasa Open Source 2.0 will be fully compatible with the upcoming Rasa X release: 0.33.0. You will be able to upgrade to Rasa X 0.33.0 to get support for YAML training data and the ability to view, create, and edit rule snippets. It also includes complete support for retrieval intents, which now appear alongside regular intents in the UI, and you can view, add, and edit multimedia responses.

Read more in our blog:

Check out the details in our changelog:


Heading link Need to migrate from 1.10 to 2.0? Here’s a guide:


Heading link Get an in-depth look at everything in 2.0!

On Wednesday, October 14, our team will present a 90-minute deep dive into the major release!

Timezones: 8am - 9:30am PDT/5pm - 6:30pm CEST/8:30pm - 10pm IST


Heading link We very much look forward to your feedback!

5.6k views 23 likes 9 links 22 users

20](https://forum.rasa.com/u/petasis "petasis")

14](https://forum.rasa.com/u/akelad "akelad")

5](https://forum.rasa.com/u/noman "noman")

5](https://forum.rasa.com/u/depicus "depicus")

5](https://forum.rasa.com/u/tswordsmith "tswordsmith")

read 11 min

Top replies

post by mann2107 on Oct 9, 2020

mann2107Manish KumarRasa Certified Developer

Oct 2020

Wow… Congratulations @community. Will explore asap

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Emma Well, frustrating. My working forms in 2.0.rc3 & 2.0rc4 stopped working. After 9 days (!) of migration, and I am again at zero. Are you sure the documentation is correct?

Rasa 2.0 returned back to FormValidationAction and validate_cuisine()? I tired to follow what is written here: Forms

While testing, rasa NEVER asked the form validation function, and in the action logs I only see:

2020-10-09 13:56:58 DEBUG    rasa_sdk.executor  - Received request to run 'validate_flight_departure_form'
2020-10-09 13:56:58 DEBUG    rasa_sdk.executor  - Finished running 'validate_flight_departure_form'
2020-10-09 13:56:58 DEBUG    rasa_sdk.executor  - Received request to run 'action_ask_sl_frm_flight_departure_info_city'

Form validation starts, from the user text (I am flying to Berlin), the validate_sl_frm_flight_departure_info_city is never called (to validate Berlin), and you end up asking for a city.

Also, are you sure you can have two actions by the same name? Like here: Forms The programmer should define another action, again with name “validate_restaurant_form”, for custom slot filling?

post by Ghostvv on Oct 9, 2020

GhostvvVladimir Vlasov

Oct 2020

@petasis what do you mean by “rasa NEVER asked the form validation function”? in your logs, it says Received request to run 'validate_flight_departure_form' so validation action was run

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Ghostvv Yes, I see it in my logs, but what was run?

I have modified my validation form to be (according to today’s docs):


class ValidateFlightDepartureForm(FormValidationAction):
    def name(self):
        return "validate_flight_departure_form"

@staticmethod
    def required_slots(tracker):
        return ["sl_frm_flight_departure_info_city",\
                "sl_frm_flight_departure_info_time"]

def validate_sl_frm_flight_departure_info_city(
        self,
        value: Any,
        dispatcher: CollectingDispatcher,
        tracker: Tracker,
        domain: DomainDict,
    ) -> Dict[Text, Any]:
            """Validate city value."""
        logger.debug(f"Validating city value: {value}")
        .....

But the “Validating city value:” is not in my logs. The validation method was never called. I am unaware what gets validated.

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

And the fact that the form then asks for a city, suggests that something happened (an error?) that is not shown.

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Ghostvv I suppose it is stil due to this (unsolved) bug that tracker.slots_to_validate() returns an empty list when the entities are defined in the user text.

The user asks: “I want to go to Berlin”. The entity “city” is identified, and the slot city is filled (it has the same value as the slot). The form slot must be filled from city:

forms:
  flight_departure_form:
    sl_frm_flight_departure_info_city:
    - type: from_entity
      entity: city
      intent:
        - flight_departure_info
        - inform

I modified validate() in forms.py in rasa-sdk to:


class FormValidationAction(Action, ABC):
    """An action that validates if every extracted slot is valid."""

async def validate(
        self,
        dispatcher: "CollectingDispatcher",
        tracker: "Tracker",
        domain: "DomainDict",
    ) -> List[EventType]:
        """Validate slots by calling a validation function for each slot.

Args:
            dispatcher: the dispatcher which is used to
                send messages back to the user.
            tracker: the conversation tracker for the current user.
            domain: the bot's domain.
        Returns:
            `SlotSet` events for every validated slot.
        """
        print("Slots to validate:", flush=True)
        slots: Dict[Text, Any] = tracker.slots_to_validate()
        print("Slots to validate:", slots, flush=True)

And the log is:


2020-10-09 15:05:28 DEBUG    rasa_sdk.executor  - Received request to run 'validate_flight_departure_form'
Slots to validate:
Slots to validate: {}
2020-10-09 15:05:28 DEBUG    rasa_sdk.executor  - Finished running 'validate_flight_departure_form'

So, tracker.slots_to_validate() returns nothing.

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

It was called “tracker.form_slots_to_validate()” in 2.0.0rc4

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Ghostvv In rasa 2.0 it is impossible to bypass this bug. I tried to bring my “run()” from 2.0rc4 as "validate() in my FormValidationAction in rasa 2.0, but the form slots are not filled any more (as was done in 2.0rc2/3/4).

So, the only slots that are not None are {'city': Berlin', 'language': 'el'}, so there is absolutely no way to deduce that sl_frm_flight_departure_info_city must be validated.

I think it is urgent that tracker.slots_to_validate() is fixed. User texts that trigger a form and contain also slot values in the text, do not work at all.

post by bayesianwannabe on Oct 9, 2020

bayesianwannabeJulio

Oct 2020

That’s nice! Congratulations!

Using the forms with the new syntax seems really nice.

Will the JSON format for NLU data still be a compatible format in Rasa 2.0?

post by Tobias_Wochinger on Oct 9, 2020

Tobias_Wochinger

Oct 2020

@petasis Could you please also print tracker.events and share the output? Sorry for the pain . Thanks for trying out the new forms and giving us this important feedback!

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Tobias_Wochinger Here it is:


2020-10-09 15:45:58 DEBUG    rasa_sdk.executor  - Received request to run 'validate_flight_departure_form'
[{'event': 'action', 'timestamp': 1602247557.9156418, 'name': 'action_session_start', 'policy': None, 'confidence': None}, {'event': 'session_started', 'timestamp': 1602247557.9156487}, {'event': 'action', 'timestamp': 1602247557.915664, 'name': 'action_listen', 'policy': None, 'confidence': None}, {'event': 'user', 'timestamp': 1602247558.7827165, 'text': 'Πάω Βερολίνο', 'parse_data': {'intent': {'id': -3941216509075261043, 'name': 'flight_departure_info', 'confidence': 0.8201098442077637}, 'entities': [{'start': 0, 'end': 12, 'value': 'el', 'entity': 'language', 'extractor': 'LanguageDetection', 'confidence': 0.8, 'processors': []}, {'entity': 'flying', 'start': 0, 'end': 3, 'confidence_entity': 0.9909201860427856, 'value': 'Πάω', 'extractor': 'DIETClassifier'}, {'entity': 'city', 'start': 4, 'end': 12, 'confidence_entity': 0.9995670914649963, 'role': 'destination', 'confidence_role': 0.9381487369537354, 'value': 'Βερολίνο', 'extractor': 'DIETClassifier'}], 'text': 'Πάω Βερολίνο', 'message_id': '87c00f56503c44e3bf86d65316592e5d', 'metadata': {}, 'intent_ranking': [{'id': -3941216509075261043, 'name': 'flight_departure_info', 'confidence': 0.8201098442077637}, {'id': 2664044872589260126, 'name': 'search_weather', 'confidence': 0.12625588476657867}, {'id': 7125258340380963357, 'name': 'inform', 'confidence': 0.044472575187683105}, {'id': -39451462298262712, 'name': 'flight_arrival_info', 'confidence': 0.003252280643209815}, {'id': -5768927727766554198, 'name': 'thank_you', 'confidence': 0.0018673756858333945}, {'id': -8692670432125223958, 'name': 'search_encyclopedia', 'confidence': 0.0017559383995831013}, {'id': 6588513445203812823, 'name': 'deny', 'confidence': 0.0009740469977259636}, {'id': -7785233749859444664, 'name': 'affirm', 'confidence': 0.0006402599974535406}, {'id': 7070374288436930481, 'name': 'chitchat_el', 'confidence': 0.0005440535605885088}, {'id': 6954701023244427238, 'name': 'chitchat_en', 'confidence': 0.00012771673209499568}], 'response_selector': {'all_retrieval_intents': ['chitchat_el', 'chitchat_en', 'thank_you', 'insult'], 'default': {'response': {'id': -5457300344229815958, 'response_templates': [{'text': 'Δεν νομίζω να αρέσει σε κανέναν ο πόλεμος.'}], 'confidence': 0.18031364679336548, 'intent_response_key': 'chitchat_el/trivia0el012', 'template_name': 'utter_chitchat_el/trivia0el012'}, 'ranking': [{'id': -5457300344229815958, 'confidence': 0.18031364679336548, 'intent_response_key': 'chitchat_el/trivia0el012'}, {'id': 7748575985266962142, 'confidence': 0.1385030597448349, 'intent_response_key': 'chitchat_el/AI0el0artificial0el0intelligence0el043'}, {'id': -7816006097834037261, 'confidence': 0.10925857722759247, 'intent_response_key': 'chitchat_el/AI0el0artificial0el0intelligence0el056'}, {'id': -3888007851385573483, 'confidence': 0.09588941931724548, 'intent_response_key': 'chitchat_el/AI0el0artificial0el0intelligence0el057'}, {'id': 8478890575344912681, 'confidence': 0.09179303795099258, 'intent_response_key': 'chitchat_el/trivia0el010'}, {'id': -6018272054094680420, 'confidence': 0.08424077183008194, 'intent_response_key': 'chitchat_el/trivia0el08'}, {'id': -4798333830252020586, 'confidence': 0.07688944041728973, 'intent_response_key': 'chitchat_el/AI0el0artificial0el0intelligence0el026'}, {'id': 6799014478740034578, 'confidence': 0.0765918642282486, 'intent_response_key': 'chitchat_el/AI0el0artificial0el0intelligence0el059'}, {'id': 6827961708562525567, 'confidence': 0.07622824609279633, 'intent_response_key': 'chitchat_el/pepper0el013'}, {'id': -5419568955056479616, 'confidence': 0.07029189169406891, 'intent_response_key': 'chitchat_el/philosophy0el04'}]}}}, 'input_channel': 'cmdline', 'message_id': '87c00f56503c44e3bf86d65316592e5d', 'metadata': {}}, {'event': 'slot', 'timestamp': 1602247558.7827384, 'name': 'city', 'value': 'Βερολίνο'}, {'event': 'slot', 'timestamp': 1602247558.782742, 'name': 'language', 'value': 'el'}, {'event': 'action', 'timestamp': 1602247558.7963033, 'name': 'flight_departure_form', 'policy': None, 'confidence': None}]
2020-10-09 15:45:58 DEBUG    rasa_sdk.executor  - Finished running 'validate_flight_departure_form'

post by petasis on Oct 9, 2020

petasisGeorge

Oct 2020

@Tobias_Wochinger A first observation is that in all rasa versions (including 2.00rc) before 2.0, the form slots that should be filled according to the domain file, were filled before a form validation was requested. In rasa 2.0, the form slots are empty. And when validation is asked from the action server, now the slot filling has to somehow happen in the actions server. Was this change on purpose?

post by tatianaf on Oct 9, 2020

tatianafTatiana

Oct 2020

The documentation for writing forms has 2 different formats in the examples:

Im assuming the second link is the correct one but please correct the first one to match the second…

post by tatianaf on Oct 9, 2020

tatianafTatiana

Oct 2020

Has Rasa X been updated to work with Rasa 2.0? I don’t see a new tag in docker hub: Docker Hub

post by tswordsmith on Oct 11, 2020

tswordsmithTariq SegalRasa Certified Developer

Oct 2020

The ‘download project’ button in the Rasa Playground does not work. Tried on Chrome ond Edge (both chromium) but the button is not recognised as a button.

post by tswordsmith on Oct 11, 2020

Oct 2020

Executing ‘rasa train’ in Rasa 2.0 only uses the CPU for processing and does not take advantage of the GPU hardware available. I’ve been using a GPU with previous versions so I know it was previously finding this hardware. How do I get Rasa to recognise the GPU? As a test I removed the tensorflow package and then reinstalled the tensorflow-gpu package to try and force Rasa to use the only option available but still received the following error:

rasa train Traceback (most recent call last): File “c:\users\t\anaconda3\envs\aenv\lib\runpy.py”, line 194, in _run_module_as_main return run_code(code, main_globals, None, File “c:\users\t\anaconda3\envs\aenv\lib\runpy.py”, line 87, in run_code exec(code, run_globals) File "C:\Users\t\anaconda3\envs\aenv\Scripts\rasa.exe_main.py", line 7, in File "c:\users\t\anaconda3\envs\aenv\lib\site-packages\rasa_main.py", line 104, in main set_log_level(log_level) File “c:\users\t\anaconda3\envs\aenv\lib\site-packages\rasa\utils\common.py”, line 66, in set_log_level update_tensorflow_log_level() File “c:\users\t\anaconda3\envs\aenv\lib\site-packages\rasa\utils\common.py”, line 108, in update_tensorflow_log_level import tensorflow as tf ModuleNotFoundError: No module named ‘tensorflow’

post by petasis on Oct 12, 2020

petasisGeorge

Oct 2020

In my setup, rasa 2.0 uses the GPU for training. Is tensorflow installed?

post by petasis on Oct 12, 2020

petasisGeorge

petasis](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Is a fix expected for the forms problems? (like today?)

post by tswordsmith on Oct 12, 2020

petasis](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

I am not sure what is happening. Conda list doesn’t show tensorflow but does show tensorflow-gpu but when I run > rasa train CPU usage goes up to 80% and the GPU usage stays at 0%.

tabulate 0.8.7 pypi_0 pypi tensorboard 2.3.0 pypi_0 pypi tensorboard-plugin-wit 1.7.0 pypi_0 pypi tensorflow-addons 0.11.2 pypi_0 pypi tensorflow-estimator 2.3.0 pypi_0 pypi tensorflow-gpu 2.3.1 pypi_0 pypi tensorflow-gpu-estimator 2.3.0 pypi_0 pypi tensorflow-hub 0.9.0 pypi_0 pypi tensorflow-probability 0.11.1 pypi_0 pypi termcolor 1.1.0 pypi_0 pypi

\ image227×542 14.6 KB](https://europe1.discourse-cdn.com/flex013/uploads/rasa/original/2X/c/c58dea266c9e915ac5d0a63be263bc6a9f85b485.png "image")

post by petasis on Oct 12, 2020

petasisGeorge

Oct 2020

If you run python, and type import tensorflow and print(tensorflow), what is happening?

post by tswordsmith on Oct 12, 2020

Oct 2020

(auraenv) c:\devp\aura>python Python 3.8.5 (default, Sep 3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32 Type “help”, “copyright”, “credits” or “license” for more information.

import tensorflow 2020-10-12 19:58:45.876092: W tensorflow/stream_executor/platform/default/dso_loader.cc:59] Could not load dynamic library ‘cudart64_101.dll’; dlerror: cudart64_101.dll not found 2020-10-12 19:58:45.876252: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.

so tensorflow is not installed atm but the GPU is not being used.

print (tensorflow) <module ‘tensorflow’ from ‘C:\Users\tariq\anaconda3\envs\auraenv\lib\site-packages\tensorflow\ **init**.py’>

post by petasis on Oct 12, 2020

petasisGeorge

Oct 2020

I understand that tensorflow is installed, but you have a driver problem, and it cannot load the needed dlls, so it uses CPU only. You have to resolve this issue before you can use the GPU.

post by akelad on Oct 12, 2020

akeladAkela Drissner Leader

tatianaf](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

which part is different? they look mostly identical to me, not sure if i’m missing something

post by akelad on Oct 12, 2020

akeladAkela Drissner Leader

petasis](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

we’re looking into it and will let you know when there’s a fix, might not be today though

post by petasis on Oct 12, 2020

petasisGeorge

Oct 2020

@akelad If there is a patch, I would still like to try it.

post by Tobias_Wochinger on Oct 12, 2020

Tobias_Wochinger

Oct 2020

@petasis

@Tobias_Wochinger Here it is:

The event order is for some reason wrong. The flight_departure_form should come before the slot events. I just tried this out myself and the order is definitely correct. How does your domain look like and which versions of Rasa Open Source and the Rasa SDK are you using?

the form slots that should be filled according to the domain file, were filled before a form validation was requested. In rasa 2.0, the form slots are empty. And when validation is asked from the action server, now the slot filling has to somehow happen in the actions server.

The slots should still be filled based on the slot mappings before the request is sent to the SDK. The SDK can 1) validate the extracted slots 2) Add new slot events (e.g. for custom slot mappings)

post by petasis on Oct 12, 2020

petasisGeorge

Oct 2020

I am using rasa/sdk 2.0. In rasa 2.0.0rc4 I had a workarround. In rasa 2.0 I don’t know what to do. The domain is included in the archive.

When you mention the “The flight_departure_form should come before the slot events”, in which file you are referring to? Can you send me a “corrected” story? (I generated the stories with rasa interactive).


rasa --version
Rasa Version     : 2.0.0
Rasa SDK Version : 2.0.0
Rasa X Version   : None
Python Version   : 3.8.5 (default, Aug 12 2020, 00:00:00)
Operating System : Linux-5.8.12-200.fc32.x86_64-x86_64-with-glibc2.2.5
Python Path      : /usr/bin/python3

Regarding running the form, no, no form slots are filled before calling the form activation/validation.

post by Tobias_Wochinger on Oct 12, 2020

Tobias_Wochinger

Oct 2020

That part should be done within Rasa Open Source so you don’t require a story for that.

The domain is included in the archive.

Sorry, but where can I find this archive?

post by Tobias_Wochinger on Oct 12, 2020

Tobias_Wochinger

tatianaf](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Has Rasa X been updated to work with Rasa 2.0? I don’t see a new tag in docker hub: Docker Hub

Hi @tatianaf, thanks for asking! We’ll release a compatible version end of this week / early next week

post by petasis on Oct 12, 2020

petasisGeorge

Tobias_Wochinger](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

I have created a small example, uploaded here: Rasa 2.0: How to resolve conflicting rules?

post by tswordsmith on Oct 13, 2020

petasis](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Some observations from the upgrade to Rasa 2.0.

Rasa 2.0 installs tensorflow 2.3.1. which has specific environment requirements before it can utilize a GPU. Requirements listed here:

For reference my working environment is:

It is possible to make TF work with other version combinations but this will require a recompile of the toolkit.

post by petasis on Oct 14, 2020

petasisGeorge

Oct 2020

When a new version with working forms will be released? It was been a week since the release of 2.0.

post by noman on Oct 14, 2020

nomanNoman Saleem Enthusiast

Oct 2020

Facing almost the same problem . Slots gets extracted but does not get validated using validate_<slot_name> function.

post by noman on Oct 14, 2020

nomanNoman Saleem Enthusiast

1

Oct 2020

@petasis are you able to validate the slot filled when asked explicitly rather than in the trigger message? if yes can you share how did you do that. Thanks

post by petasis on Oct 14, 2020

petasisGeorge

noman](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Yes, I know It makes rasa 2.0 unusable, doesn’t it? It is surprising that it got released in the first place, and that a week without a fix has passed.

post by noman on Oct 14, 2020

nomanNoman Saleem Enthusiast

Oct 2020

Yes totally agree, Form is an important feature. Also i was checking their implementation. required_slots and validate functions are still there then why are they providing a new interface. I was overriding validate before, without any issue . I am also stucked

post by petasis on Oct 14, 2020

petasisGeorge

noman](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Yes, I think this is working. The problem is when the value to fill the slot is in the trigger message. I haven’t done anything special, I just followed the docs here:

(If you had your actions working according to 2.0.0rc4, you need to change them again).

post by akelad on Oct 14, 2020

akeladAkela Drissner Leader

noman](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

@noman you’re right that those functions still exist (they just read from different sources now), the idea behind moving e.g. the required_slots definition to the domain is to make it simpler to define a form - i.e. less code. And aside from that moving the logic of the FormAction to Rasa Open Source, means that creating action servers in different languages is a lot easier. You can also hear more about this in our 2.0 webinar today

post by noman on Oct 14, 2020

nomanNoman Saleem Enthusiast

Oct 2020

@akelad so can we override validate even now? if yes, then why i should not override it? because current guidelines here Forms does not validate filled slots having logs

`2020-10-14 17:06:20 DEBUG rasa.core.processor - Logged UserUtterance - tracker now has 297 events. 2020-10-14 17:06:20 DEBUG rasa.core.policies.rule_policy - Predicted loop ‘order_form’. 2020-10-14 17:06:20 DEBUG rasa.core.policies.ensemble - Predicted next action using policy_0_RulePolicy 2020-10-14 17:06:20 DEBUG rasa.core.processor - Predicted next action ‘order_form’ with confidence 1.00. 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Validating user input ‘UserUttered(text: lays, intent: {‘id’: 3152659454284902011, ‘name’: ‘inform’, ‘confidence’: 0.999991774559021}, entities: [{‘entity’: ‘snack’, ‘start’: 0, ‘end’: 4, ‘confidence_entity’: 0.8661425709724426, ‘value’: ‘lays’, ‘extractor’: ‘DIETClassifier’}])’. 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Trying to extract requested slot ‘snack’ … 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Got mapping ‘{‘type’: ‘from_entity’, ‘entity’: ‘snack’}’ 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Successfully extracted ‘lays’ for requested slot ‘snack’ 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Validating extracted slots: {‘snack’: ‘lays’} 2020-10-14 17:06:20 DEBUG rasa.core.actions.action - Calling action endpoint to run action ‘validate_order_form’. 2020-10-14 17:06:20 DEBUG rasa.core.actions.forms - Request next slot ‘size’

and My custom action: from typing import Dict, Text, List

from rasa_sdk import Tracker from rasa_sdk.events import EventType from rasa_sdk.executor import CollectingDispatcher from rasa_sdk import Action from rasa_sdk.events import SlotSet from typing import Text, List, Any, Dict from rasa_sdk import Tracker, FormValidationAction from rasa_sdk.types import DomainDict from rasa.shared.core.domain import Domain

class ActionSwitchFAQ(Action): def name(self) -> Text: return “action_switch_faq”


def run(
    self, dispatcher: CollectingDispatcher, tracker: Tracker, domain: Dict
) -> List[EventType]:
    return [SlotSet("detailed_faq", not tracker.get_slot("detailed_faq"))]

class ValidateOrderForm(FormValidationAction, Action): def name(self) -> Text: “”“Unique identifier of the form”""


return "validate_order_form"

def run(
    self, dispatcher: CollectingDispatcher, tracker: Tracker, domain: Dict
) -> List[EventType]:
    # dispatcher.utter_message("validate_some_slot")
    return []

def validate_snack(
    self,
    slot_value: Any,
    dispatcher: CollectingDispatcher,
    tracker: Tracker,
    domain: DomainDict,
) -> Dict[Text, Any]:
    """Validate cuisine value."""

print("Slot Value=", slot_value)
    if slot_value == "fries":
        print("validation succeeded")
        return {"snack": slot_value}
    else:
        print("validation failed")
        # user will be asked for the slot again
        return {"snack": None}

def validate_size(
    self,
    slot_value: Any,
    dispatcher: CollectingDispatcher,
    tracker: Tracker,
    domain: DomainDict,
) -> Dict[Text, Any]:
    """Validate cuisine value."""

print("Slot Value=", slot_value)
    if slot_value == "large":
        print("validation succeeded")
        return {"size": slot_value}
    else:
        print("validation failed")
        # user will be asked for the slot again
        return {"size": None}

`

post by akelad on Oct 14, 2020

akeladAkela Drissner Leader

Oct 2020

@noman do you mind creating a new forum post and tagging me in it? would be easier to separate out various issues we’re trying to figure out

post by noman on Oct 14, 2020

nomanNoman Saleem Enthusiast

Oct 2020

sure that would be great

post by petasis on Oct 14, 2020

petasisGeorge

akelad](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Any news for a fix for the forms problem to not filling/validating slots from the utterance triggering the form?

post by 123 on Oct 14, 2020

123meiwei zhang

Oct 2020

hi, how to control or select entity extracted by multi entity extractor? I am using RegexExtracor, CRFextractor, DIETextractor to extract my entity, as a result, the tracker will keep these three extracting results as a list, so how to control the tracker just keep only one result?

post by petasis on Oct 14, 2020

petasisGeorge

Oct 2020

This is another difficult issue. Is these slots are for a form, you can write an action to validate the slot. The validation function will get the list of values, and you can select one of them. What I did (for my case) was to remove duplicates, and from the remaining values get the one with most characters.

If you not in a form, you can write a custom action, or a custom component.

post by akelad on Oct 14, 2020

akeladAkela Drissner Leader

Oct 2020

@123 could you open a new post so we can address that issue separately?

@petasis could you a post for the issue you were originally talking about with all the details you shared already? this thread has a bunch of different discussions going on, and it’s gotten a little difficult to keep track of the issue/the data you’ve shared. Same goes for the second issue you just mentioned. Feel free to tag myself and/or Tobias

post by armanjindal on Oct 15, 2020

armanjindalAdvanced Rasa Certified Developer

Oct 2020

Super excited there is now RasaX support! Will the Deep Dive Webinar be made available for those who missed it? Cheers.

post by poojadeshmukh on Oct 15, 2020

poojadeshmukhPoojaRasa Certified Developer

Oct 2020

I am using Rasa 2.0. My action server is up and running, my endpoint is uptodate with action_endpoint URL, but there is no response from bot where we have action defined in story. There is no error, but it just listens and expects input from user. Is there any different way I need to handle custom actions in 2.0? this works good in 1.10 for me.

post by mbukovy on Oct 15, 2020

mbukovy

1

Oct 2020

I can’t get API /model/train endpoint working on Rasa 2.0. Even if I copy your example from Rasa Open Source Documentation I’m keep getting 500


{
    "version": "2.0.0",
    "status": "failure",
    "message": "Ran training, but it finished without a trained model.",
    "reason": "TrainingError",
    "details": {},
    "help": null,
    "code": 500
}

and this is in terminal


No training data given. Please provide stories and NLU data in order to train a Rasa model using the '--data' argument.
2020-10-15 09:40:20 ERROR    rasa.server  - Ran training, but it finished without a trained model.

I use rasa run --enable-api.

Edit: Here it is @akelad Rasa 2.0 - API /model/train doesn't work

post by akelad on Oct 15, 2020

akeladAkela Drissner Leader

armanjindal](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Yep, will be uploaded to Youtube soon!

post by akelad on Oct 15, 2020

akeladAkela Drissner Leader

poojadeshmukh](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Could you create a new post for your issue with the commands you ran etc? will be easier to solve there than in this thread with lots of different posts

post by akelad on Oct 15, 2020

akeladAkela Drissner Leader

mbukovy](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Same to you, would be great if you can create a new forum post. Incl. the API call you made please

post by poojadeshmukh on Oct 16, 2020

akelad](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

Thanks. But this has been resolved. In 2.0, NLU is yaml, I was defining entities like like 1.X and that was causing issue. Removing this resolved the issue.

post by pitoulambert on Oct 18, 2020

pitoulambert Enthusiast

Oct 2020

I am stuck at rasa 2.0 regarding the form validation. Could you please send me an example or a link of a project in which it is working, so that I could see the domain and actions file. Thanks in advance

post by akelad on Oct 19, 2020

akeladAkela Drissner Leader

Oct 2020

here’s an example: https://github.com/RasaHQ/financial-demo/blob/rasa-2-0/actions/actions.py#L249

If you have any more questions, would be great if you can open a new forum post with all the details of the issue you’re having, and we’ll get back to you there

post by pitoulambert on Oct 19, 2020

pitoulambert Enthusiast

Oct 2020

Thanks , will do it

post by martinavalogia on Oct 20, 2020

martinavalogiaS.MARTINA VALOGIA Enthusiast

Oct 2020

I am getting this issue while trying to install Rasa 2.0.0 in Windows version 10.How can this be resolved ,any insights please With Python version 3.7.7 on Windows 10 got the below issue

Therefore I have reinstalled Python 3.6 to resolve the tensor flow issue ,now facing this

any suggestions on how to resolve this

Setting up Rasa 2.0 on a windows 10 setup using Python 3.6

Thanks in advance

post by skbushula on Oct 21, 2020

skbushula

petasis](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

This is nice,

I have a form where a cellphone number is validated and it does work when a user type letters it throws that ValueError in the actions tab but i want to give a user a message like “wrong input a number is expected”

post by akelad on Oct 21, 2020

akeladAkela Drissner Leader

Oct 2020

Hey @skbushula could you open a new post on the forum so we can help figure out whats going on? (easier to keep separate threads for all these issues)

post by dev on Oct 23, 2020

devJesse

Oct 2020

Hi!

I believe there is something amiss with the two stage fallback policy: it clears all slots when rewinding.

When the fallback is triggered, and the user correctly rephrases their input to something the bot recognises, the two stage fallback is supposed to revert the last interaction to prevent confusion when making the next prediction. It also clears all slots however.

I believe this is a bug, and it makes the two stage fallback unusable for my application. I hope this can be resolved quickly, because the fallback is a critical part of the project I am working on.

Thank you

post by akelad on Oct 23, 2020

akeladAkela Drissner Leader

Oct 2020

Hey @dev could you create a new forum post for this please? Including some details on the rules you have for the two stage fallback policy, and a debug log of when this happens would also be great.

post by gaushh on Oct 23, 2020

gaushhGaurav Sharma Enthusiast

Oct 2020

Hey @akelad, any update on Rasa X 0.33 ?

post by dev on Oct 23, 2020

devJesse

akelad](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

@akelad, thank you for getting back

I’ve create a new topic here with an example Github repo to reproduce the issue here. Thanks again!

post by amardeep on Oct 28, 2020

amardeepAmar Deep SinghAdvanced Rasa Certified Developer

martinavalogia](https://forum.rasa.com/t/rasa-open-source-2-0-is-out-now/35577/75 "Load parent post")

Oct 2020

I faced similar issues and i had to switch from 32 bit Python to 64 bit. Please verify your Python version , seems few packages are available in 64 bit only.

post by martinavalogia on Oct 28, 2020

martinavalogiaS.MARTINA VALOGIA Enthusiast

Oct 2020

Hi Amar, Thanks for the info.I tried setting up using conda and it worked

Thanks

post by depicus on Oct 30, 2020

depicusBrian

Oct 2020

Would have been nice to get a heads up about the changes on the update page as I’ve just upgraded and now everything gone to shit.

post by akelad on Oct 30, 2020

akeladAkela Drissner Leader

Oct 2020

@depicus could you clarify what went wrong?

post by depicus on Oct 30, 2020

depicusBrian

Oct 2020

Still trying to work out but using RASA X it now won’t train so having to build a RASA version on my laptop so I can see what the error is, so far half way through and no errors so far. Docker logs show a lot of 404 errors to http://rasa-x:5002/api/projects/default/models/tags/production?token=K1voLlDg0BdYQEK and still wading through the rest - some permissions errors for config but not found anything obvious yet.

post by depicus on Oct 30, 2020

depicusBrian

Oct 2020

Ok managed to train on the laptop but uploading the model to the server and if you ask a question it never replies !!! Going to be a long day today

p.s. this was a fresh install so no legacy except the old GitHub code.

back to the old version I think…

post by akelad on Oct 30, 2020

akeladAkela Drissner Leader

Oct 2020

Right - this is an upgrade from 0.32 to 0.33 right? Could you zip up your logs and share them so we can try to resolve the issue? And is this using docker-compose or kubernetes?

post by depicus on Oct 30, 2020

depicusBrian

Oct 2020

Yes it was 0.32 to 0.33 rasa.zip (21.7 KB)

Sadly I’ve toasted the server to rebuild with 0.32 as it’s quicker than debugging so this is the only log I had downloaded

post by akelad on Oct 30, 2020

akeladAkela Drissner Leader

Oct 2020

Ok I can see one issue in there to do with story parsing - does your repo contain training data in the old markdown format? we discovered a bug that if a file contains 3 hashtags or more, it fails to load the data. This will be fixed in a patch. And I think the bot not responding is something we’re investigating at the moment. Hopefully you can try again when a new patch is out

post by depicus on Oct 30, 2020

depicusBrian

Oct 2020

Yes old format because I didn’t know about the new one and it’s not front and centre on the upgrade info. Trained ok on the laptop so I’ll put into test next week when I have more time

post by satishavhad on Oct 30, 2020

satishavhad

Oct 2020

I am getting below error while converting the NLU and stories data from 1.x to 2.0 format using commands “rasa data convert nlu” and “rasa data convert core”. Hoe to resolve it?

Traceback (most recent call last): File “C:\Users\avhadsa\Anaconda3\lib\runpy.py”, line 194, in run_module_as_main return run_code(code, main_globals, None, File “C:\Users\avhadsa\Anaconda3\lib\runpy.py”, line 87, in run_code exec(code, run_globals) File "C:\Users\avhadsa\Documents\GitHub\Conversational_Intelligence\venv\Scripts\rasa.exe_main.py", line 5, in File "c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa_init.py", line 9, in from rasa.train import train File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa\train.py”, line 13, in from rasa.nlu.model import Interpreter File "c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa\nlu_init.py", line 5, in from rasa.nlu.test import run_evaluation as test File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa\nlu\test.py”, line 22, in import rasa.utils.plotting as plot_utils File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa\utils\plotting.py”, line 42, in fix_matplotlib_backend() File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\rasa\utils\plotting.py”, line 19, in fix_matplotlib_backend if matplotlib.get_backend() == “TkAgg”: File "c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib_init.py", line 1188, in get_backend return rcParams[‘backend’] File "c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib_init.py", line 702, in getitem from matplotlib import pyplot as plt File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\pyplot.py”, line 2336, in switch_backend(rcParams[“backend”]) File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib_ init_.py”, line 703, in getitem plt.switch_backend(rcsetup._auto_backend_sentinel) File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\pyplot.py”, line 256, in switch_backend switch_backend(candidate) File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\pyplot.py”, line 276, in switch_backend class backend_mod(matplotlib.backend_bases. Backend): File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\pyplot.py”, line 277, in backend_mod locals().update(vars(importlib.import_module(backend_name))) File "C:\Users\avhadsa\Anaconda3\lib\importlib_init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\backend_qt5agg.py”, line 11, in from .backend_qt5 import ( File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\backend_qt5.py”, line 16, in import matplotlib.backends.qt_editor.figureoptions as figureoptions File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\qt_editor\figureoptions.py”, line 11, in from matplotlib.backends.qt_compat import QtGui File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\qt_compat.py”, line 170, in _setup() File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\qt_compat.py”, line 130, in _setup_pyqt4 _setup_pyqt4_internal(api=2) File “c:\users\avhadsa\documents\github\conversational_intelligence\venv\lib\site-packages\matplotlib\backends\qt_compat.py”, line 113, in _setup_pyqt4_internal sip.setapi(_sip_api, api) AttributeError: module ‘sip’ has no attribute ‘setapi’

Reply

Related topics

Topic Replies Views Activity
What’s Ahead in Rasa Open Source 2.0 [Alpha Feedback Thread]
Important Updates
65 5.7k Oct 2020
Rasa 2.0, how are forms working?
Getting Started with Rasa
9 419 Oct 2020
Rasa 2.0 Forms does not validate extracted slots and asks the next slot
Rasa Open Source
16 3.1k Oct 2020
Rasa 2 Form example won’t work
Rasa Open Source
4 960 Jan 2021
Rasa forms issue
Getting Started with Rasa
1 166 Sep 2021

Topic list, column headers with buttons are sortable.

Loading complete

We collect and process your personal information for the following purposes: Visitor Statistics, Browsing Behavior. Learn more...

OKDecline