Rasa: 2.6.0 Release

Release date:
May 6, 2021
Previous version:
2.5.2 (released June 17, 2021)
Magnitude:
0 Diff Delta
Contributors:
0 total committers
Data confidence:
Commits:

Top Contributors in 2.6.0

Could not determine top contributors for this release.

Directory Browser for 2.6.0

We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.

Release Notes Published

Deprecations and Removals

  • #261: In forms, the keyword required_slots should always precede the definition of slot mappings and the lack of it is deprecated. Please see the [migration guide](migration-guide.mdx) for more information.
  • #8428: rasa.data.get_test_directory, rasa.data.get_core_nlu_directories, and rasa.shared.nlu.training_data.training_data.TrainingData::get_core_nlu_directories are deprecated and will be removed in Rasa Open Source 3.0.0.
  • #8498: Update the minimum compatible model version to "2.6.0". This means all models trained with an earlier version will have to be retrained.

Features

  • #8103: Feature enhancement enabling JWT authentication for the Socket.IO channel. Users can define jwt_key and jwt_method as parameters in their credentials file for authentication.
  • #8180: Allows a Rasa bot to be connected to a Twilio Voice channel. More details in the [Twilio Voice docs](connectors/twilio-voice.mdx)
  • #8532: Conditional response variations are supported in the domain.yml without requiring users to write custom actions code.

A condition can be a list of slot-value mapping constraints.

Improvements

  • #261: Added an optional ignored_intents parameter in forms.

    • To use it, add the ignored_intents parameter in your domain.yml file after the forms name and provide a list of intents to ignore. Please see [Forms](forms.mdx) for more information.
    • This can be used in case the user never wants to fill any slots of a form with the specified intent, e.g. chitchat.
  • #5786: Add function to carry max_history to featurizer

  • #7589: Improved the machine learning models' codebase by factoring out shared feature-processing logic into three custom layer classes:

    • ConcatenateSparseDenseFeatures combines multiple sparse and dense feature tensors into one.
    • RasaFeatureCombiningLayer additionally combines sequence-level and sentence-level features.
    • RasaSequenceLayer is used for attributes with sequence-level features; it additionally embeds the combined features with a transformer and facilitates masked language modeling.
  • #7685: Added the following usability improvements with respect to entities getting extracted multiple times:

    • Added warnings for competing entity extractors at training time and for overlapping entities at inference time
    • Improved docs to help users handle overlapping entity problems.
  • #7999: Replace weight_sparsity with connection_density in all transformer-based models and add guarantees about internal layers.

We rename DenseWithSparseWeights into RandomlyConnectedDense, and guarantee that even at density zero the output is dense and every input is connected to at least one output. The former weight_sparsity parameter of DIET, TED, and the ResponseSelector, is now roughly equivalent to 1 - connection_density, except at very low densities (high sparsities).

All layers and components that used to have a sparsity argument (Ffnn, TransformerRasaModel, MultiHeadAttention, TransformerEncoderLayer, TransformerEncoder) now have a density argument instead. - #8074: Rasa test now prints a warning if the test stories contain bot utterances that are not part of the domain. - #8263: Updated asyncio.Task.all_tasks to asyncio.all_tasks, with a fallback for python 3.6, which raises an AttributeError for asyncio.all_tasks. This removes the deprecation warning for the Task.all_tasks usage. - #8461: Change variable name from i to array_2D - #8560: Implement a new interface run_inference inside RasaModel which performs batch inferencing through tensorflow models.

rasa_predict inside RasaModel has been made a private method now by changing it to _rasa_predict.

Bugfixes

  • #7005: Fixed a bug for plotting trackers with non-ascii texts during interactive training by enforcing utf-8 encoding
  • #7589: Fix masked language modeling in DIET to only apply masking to token-level (sequence-level) features. Previously, masking was applied to both token-level and sentence-level features.
  • #8300: Make it possible to use null entities in stories.
  • #8333: Introduce a skip_validation flag in order to speed up reading YAML files that were already validated.
  • #8341: Fixed a bug in interactive training that lead to crashes for long Chinese, Japanese, or Korean user or bot utterances.