Skip to content

Releases: RasaHQ/rasa

1.10.18

26 Nov 16:04
1785b81
Compare
Choose a tag to compare

Bugfixes

  • #7340: Fixed an issues with the DynamoDB TrackerStore creating a new table entry/object for each TrackerStore update. The column session_date has been deprecated and should be removed manually in existing DynamoDB tables.

2.0.7

25 Nov 11:28
ae5a9b8
Compare
Choose a tag to compare

Bugfixes

  • #5974: ActionRestart will now trigger ActionSessionStart as a followup action.

  • #7317: Fixed Rasa Open Source not being able to fetch models from certain URLs.

    This addresses an issue introduced in 2.0.3 where rasa-production could not use the models from rasa-x in Rasa X server mode.

  • #7316: SingleStateFeaturizer checks whether it was trained with RegexInterpreter as
    NLU interpreter. If that is the case, RegexInterpreter is used during prediction.

2.1.1

24 Nov 11:10
742bfc8
Compare
Choose a tag to compare

Bugfixes

  • #7338: Sender ID is correctly set when copying the tracker and sending it to the action server (instead of sending the default value). This fixes a problem where the action server would only retrieve trackers with a sender_id default.

2.1.0

17 Nov 15:38
384b078
Compare
Choose a tag to compare

Deprecations and Removals

  • #7136: The Policy interface was changed to return a PolicyPrediction object when
    predict_action_probabilities is called. Returning a list of probabilities directly
    is deprecated and support for this will be removed in Rasa Open Source 3.0.

    You can adapt your custom policy by wrapping your probabilities in a PolicyPrediction
    object:

    from rasa.core.policies.policy import Policy, PolicyPrediction
    # ... other imports
    
    def predict_action_probabilities(
            self,
            tracker: DialogueStateTracker,
            domain: Domain,
            interpreter: NaturalLanguageInterpreter,
            **kwargs: Any,
        ) -> PolicyPrediction:
        probabilities = ... # an action prediction of your policy
        return PolicyPrediction(probabilities, "policy_name", policy_priority=self.priority)

    The same change was applied to the PolicyEnsemble interface. Instead of returning
    a tuple of action probabilities and policy name, it is now returning a
    PolicyPrediction object. Support for the old PolicyEnsemble interface will be
    removed in Rasa Open Source 3.0.

    :::caution
    This change is model-breaking. Please retrain your models.

    :::

  • #7263: The Pika Event Broker no longer supports
    the environment variables RABBITMQ_SSL_CA_FILE and RABBITMQ_SSL_KEY_PASSWORD.
    You can alternatively specify RABBITMQ_SSL_CA_FILE in the RabbitMQ connection URL as
    described in the
    RabbitMQ documentation.

    event_broker:
     type: pika
     url: "amqps://user:password@host?cacertfile=path_to_ca_cert&password=private_key_password"
     queues:
     - my_queue
    
    

    Support for RABBITMQ_SSL_KEY_PASSWORD was removed entirely.

    The method Event Broker.close was changed to be asynchronous.
    Support for synchronous implementations will be removed in Rasa Open Source 2.2.0.
    To adapt your implementation add the async keyword:

    from rasa.core.brokers.broker import EventBroker
    
    class MyEventBroker(EventBroker):
    
        async def close(self) -> None:
            # clean up event broker resources

Features

  • #7136: Policies can now return obligatory and optional events as part of their
    prediction. Obligatory events are always applied to the current conversation tracker.
    Optional events are only applied to the conversation tracker in case the policy wins.

Improvements

  • #4341: Changed Agent.load method to support pathlib paths.

  • #5715: If you are using the feature Entity Roles and Groups, you should now also list the roles and groups
    in your domain file if you want roles and groups to influence your conversations. For example:

    entities:
      - city:
          roles:
            - from
            - to
      - name
      - topping:
          groups:
            - 1
            - 2
      - size:
          groups:
            - 1
            - 2
    

    Entity roles and groups can now influence dialogue predictions. For more information see the section
    Entity Roles and Groups influencing dialogue predictions.

  • #6285: Predictions of the FallbackClassifier are
    ignored when
    evaluating the NLU model
    Note that the FallbackClassifier predictions still apply to
    test stories.

  • #6474: Adapt the training data reader and emulator for wit.ai to their latest format.
    Update the instructions in the
    migrate from wit.ai documentation
    to run Rasa Open Source in wit.ai emulation mode.

  • #6498: Adding configurable prefixes to Redis Tracker and Lock Stores so that a single Redis instance (and logical DB) can support multiple conversation trackers and locks.
    By default, conversations will be prefixed with tracker:... and all locks prefixed with lock:.... Additionally, you can add an alphanumeric-only prefix: value in endpoints.yml such that keys in redis will take the form value:tracker:... and value:lock:... respectively.

  • #6571: Log the model's relative path when using CLI commands.

  • #6852: Adds the option to configure whether extracted entities should be split by comma (",") or not. The default behaviour is True - i.e. split any list of extracted entities by comma. This makes sense for a list of ingredients in a recipie, for example "avocado, tofu, cauliflower", however doesn't make sense for an address such as "Schönhauser Allee 175, 10119 Berlin, Germany".

    In the latter case, add a new option to your config, e.g. if you are using the DIETClassifier this becomes:

    ...
    - name: DIETClassifier
      split_entities_by_comma: False
    ...

    in which case, none of the extracted entities will be split by comma. To switch it on/off for specific entity types you can use:

    ...
    - name: DIETClassifier
      split_entities_by_comma: 
        address: True
        ingredient: False
    ...

    where both address and ingredient are two entity types.

    This feature is also available for CRFEntityExtractor.

  • #6860: Fetching test stories from the HTTP API endpoint
    GET /conversations/<conversation_id>/story no longer triggers an update
    of the
    conversation session.

    Added a new boolean query parameter all_sessions (default: false) to the
    HTTP API endpoint for fetching test stories
    (GET /conversations/<conversation_id>/story).

    When setting ?all_sessions=true, the endpoint returns test stories for all
    conversation sessions for conversation_id.
    When setting ?all_sessions=all_sessions, or when omitting the all_sessions
    parameter, a single test story is returned for conversation_id. In cases where
    multiple conversation sessions exist, only the last story is returned.

    Specifying the retrieve_events_from_previous_conversation_sessions
    kwarg for the Tracker Store class is deprecated and will be
    removed in Rasa Open Source 3.0. Please use the retrieve_full_tracker() method
    instead.

  • #6865: Improve the rasa data convert nlg command and introduce the rasa data convert responses command
    to simplify the migration from pre-2.0 response selector format to the new format.

  • #6966: Added warning for when an option is provided for a component that is not listed as a key in the defaults for that component.

  • #6977: Forms no longer reject their execution before a potential custom
    action for validating / extracting slots was executed.
    Forms continue to reject in two cases automatically:

    • A slot was requested to be filled, but no slot mapping applied to the latest user
      message and there was no custom action for potentially extracting other slots.
    • A slot was requested to be filled, but the custom action for validating / extracting
      slots didn't return any slot event.

    Additionally you can also reject the form execution manually by returning a
    ActionExecutionRejected event within your custom action for validating / extracting
    slots.

  • #7027: Remove dependency between ConveRTTokenizer and ConveRTFeaturizer. The ConveRTTokenizer is now deprecated, and the
    ConveRTFeaturizer can be used with any other Tokenizer.

    Remove dependency between HFTransformersNLP, LanguageModelTokenizer, and LanguageModelFeaturizer. Both
    HFTransformersNLP and LanguageModelTokenizer are now deprecated. LanguageModelFeaturizer implements the behavior
    of the stack and can be used with any other Tokenizer.

  • #7061: Gray out "Download" button in Rasa Playground when the project is not yet ready to be downloaded.

  • #7068: Slot mappings for Forms in the domain are now optional. If you do not
    provide any slot mappings as part of the domain, you need to provide
    custom slot mappings through a custom action.
    A form without slot mappings is specified as follows:

    forms:
      my_form:
        # no mappings
    

    The action for forms can now be overridden by defining a custom action
    with the same name as the form. This can be used to keep using the deprecated
    Rasa Open Source FormAction which is implemented within the Rasa SDK. Note that it is
    not recommended to override the form action for anything else than using the
    deprecated Rasa SDK FormAction.

  • #7102: Changed the default model weights loaded for HFTransformersNLP component.

    Use a language agnostic sentence embedding model
    as the default model. These model weights should help improve performance on
    intent classification and res...

Read more

Merge pull request #7264 from RasaHQ/prepare-release-1.10.17

12 Nov 16:32
08dd961
Compare
Choose a tag to compare

Bugfixes

  • #7219: Prevent the message handling process in PikaEventBroker from being terminated.

2.0.6

10 Nov 19:20
9690842
Compare
Choose a tag to compare

Bugfixes

  • #6629: Fixed a bug that occurred when setting multiple Sanic workers in combination with a custom Lock Store. Previously, if the number was set higher than 1 and you were using a custom lock store, it would reject because of a strict check to use a Redis Lock Store.
  • #7176: Fixed a bug in the TwoStageFallback action which
    reverted too many events after the user successfully rephrased.

2.0.5

10 Nov 13:44
e1d479a
Compare
Choose a tag to compare

Bugfixes

  • #7200: Fix a bug because of which only one retrieval intent was present in all_retrieval_intent key of the output of ResponseSelector even if there were multiple retrieval intents present in the training data.

2.0.4

08 Nov 19:07
2eddc68
Compare
Choose a tag to compare

Bugfixes

  • #7140: Fixed error when starting Rasa X locally without a proper git setup.
  • #7186: Properly validate incoming webhook requests for the Slack connector to be authentic.

2.0.3

29 Oct 22:13
fb8a521
Compare
Choose a tag to compare

Bugfixes

  • #7089: Fix ConveRTTokenizer failing because of wrong model URL by making the model_url parameter of ConveRTTokenizer mandatory.

    Since the ConveRT model was taken offline, we can no longer use
    the earlier public URL of the model. Additionally, since the licence for the model is unknown,
    we cannot host it ourselves. Users can still use the component by setting model_url to a community/self-hosted
    model URL or path to a local directory containing model files. For example:

    pipeline:
        - name: ConveRTTokenizer
          model_url: <remote/local path to model>
  • #7108: Update example formbot to use FormValidationAction for slot validation

2.0.2

22 Oct 16:45
Compare
Choose a tag to compare

Bugfixes

  • #6691: Fix description of previous event in output of rasa data validate stories
  • #7053: Fixed command line coloring for windows command lines running an encoding other than utf-8.

Miscellaneous internal changes