class_docstr: Interface for any policy prediction ensemble.
  
  Given a list of predictions from policies, which include some meta data about the
  policies themselves, an "ensemble" decides what the final prediction should be, in
  the following way:
  1. If the previously predicted action was rejected, then the ensemble sets the
     probability for this action to 0.0 (in all given predictions).
  2. It combines the information from the single predictions, which include some
     meta data about the policies (e.g. priority), into a final prediction.
  3. If the sequence of events given at the time of prediction ends with a user
     utterance, then the ensemble adds a special event to the event-list included in
     the final prediction that indicates whether the final prediction was made based
     on the actual text of that user utterance.
  
  Observe that policies predict "mandatory" as well as "optional"
  events. The ensemble decides which of the optional events should
  be passed on.
docstr: Derives a single prediction from predictions given as kwargs.
  
  Args:
      tracker: dialogue state tracker holding the state of the conversation,
        which may influence the combination of predictions as well
      domain: the common domain
      **kwargs: arbitrary keyword arguments. All policy predictions passed as
        kwargs will be combined.
  
  Returns:
      a single prediction
docstr_tok: ["Derives","a","single","prediction","from","predictions","given","as","kwargs",".","Args",":","tracker",":","dialogue","state","tracker","holding","the","state","of","the","conversation",",","which","may","influence","the","combination","of","predictions","as","well","domain",":","the","common","domain","*","*","kwargs",":","arbitrary","keyword","arguments",".","All","policy","predictions","passed","as","kwargs","will","be","combined",".","Returns",":","a","single","prediction"]
code: def combine_predictions_from_kwargs(
      self, tracker: DialogueStateTracker, domain: Domain, **kwargs: Any
  ) -> PolicyPrediction:
      """Derives a single prediction from predictions given as kwargs.
  
      Args:
          tracker: dialogue state tracker holding the state of the conversation,
            which may influence the combination of predictions as well
          domain: the common domain
          **kwargs: arbitrary keyword arguments. All policy predictions passed as
            kwargs will be combined.
  
      Returns:
          a single prediction
      """
      predictions = [
          value
          for value in kwargs.values()
          if isinstance(value, PolicyPrediction)
      ]
      return self.combine_predictions(
          predictions=predictions, tracker=tracker, domain=domain
      )
  
imports: from __future__ import annotations
  from abc import abstractmethod, ABC
  from typing import Optional, Text, List, Dict, Any
  import logging
  from rasa.engine.graph import GraphComponent
  from rasa.engine.storage.storage import ModelStorage
  from rasa.engine.storage.resource import Resource
  from rasa.engine.runner.interface import ExecutionContext
  from rasa.core.policies.policy import PolicyPrediction
  from rasa.shared.exceptions import RasaException, InvalidConfigException
  from rasa.shared.core.constants import ACTION_LISTEN_NAME
  from rasa.shared.core.domain import Domain
  from rasa.shared.core.events import ActionExecutionRejected, ActionExecuted, DefinePrevUserUtteredFeaturization
  from rasa.shared.core.trackers import DialogueStateTracker
label_desc: Use image node_id 1 for calling the PolicyPredictionEnsemble obj's underlying member method code with example usage: obj.combine_predictions_from_kwargs(tracker, domain) and returns: self