This is unreleased documentation for Rasa Open Source Documentation Master/Unreleased version.
For the latest released documentation, see the latest version (2.8.x).

Version: Master/Unreleased


UnexpecTEDIntentPolicy Objects

class UnexpecTEDIntentPolicy(TEDPolicy)

UnexpecTEDIntentPolicy has the same model architecture as TEDPolicy.

The difference is at a task level. Instead of predicting the next probable action, this policy predicts whether the last predicted intent is a likely intent according to the training stories and conversation context.


def __init__(featurizer: Optional[TrackerFeaturizer] = None, priority: int = UNLIKELY_INTENT_POLICY_PRIORITY, max_history: Optional[int] = None, model: Optional[RasaModel] = None, fake_features: Optional[Dict[Text, List["Features"]]] = None, entity_tag_specs: Optional[List[EntityTagSpec]] = None, should_finetune: bool = False, label_quantiles: Optional[Dict[int, List[float]]] = None, **kwargs: Any, ,) -> None

Declares instance variables with default values.


def model_class() -> Type["IntentTED"]

Gets the class of the model architecture to be used by the policy.


Required class.


def compute_label_quantiles_post_training(model_data: RasaModelData, label_ids: np.ndarray) -> None

Computes quantile scores for prediction of action_unlikely_intent.

Multiple quantiles are computed for each label so that an appropriate threshold can be picked at inference time according to the tolerance value specified.


  • model_data - Data used for training the model.
  • label_ids - Numerical IDs of labels for each data point used during training.


def run_training(model_data: RasaModelData, label_ids: Optional[np.ndarray] = None) -> None

Feeds the featurized training data to the model.


  • model_data - Featurized training data.
  • label_ids - Label ids corresponding to the data points in model_data.


RasaCoreException if label_ids is None as it's needed for running post training procedures.


def predict_action_probabilities(tracker: DialogueStateTracker, domain: Domain, interpreter: NaturalLanguageInterpreter, **kwargs: Any, ,) -> PolicyPrediction

Predicts the next action the bot should take after seeing the tracker.


  • tracker - Tracker containing past conversation events.
  • domain - Domain of the assistant.
  • interpreter - Interpreter which may be used by the policies to create additional features.


The policy's prediction (e.g. the probabilities for the actions).


def persist_model_utilities(model_path: Path) -> None

Persists model's utility attributes like model weights, etc.


  • model_path - Path where model is to be persisted

IntentTED Objects

class IntentTED(TED)

Follows TED's model architecture from

However, it has been re-purposed to predict multiple labels (intents) instead of a single label (action).


def dot_product_loss_layer() -> tf.keras.layers.Layer

Returns the dot-product loss layer to use.

Multiple intents can be valid simultaneously, so IntentTED uses the MultiLabelDotProductLoss.


The loss layer that is used by _prepare_dot_product_loss.


def run_bulk_inference(model_data: RasaModelData) -> Dict[Text, np.ndarray]

Computes model's predictions for input data.


  • model_data - Data to be passed as input


Predictions for the input data.