rasa.graph_components.validators.finetuning_validator
FinetuningValidator Objects
Component that checks whether fine-tuning is possible.
This is a component at the beginning of the graph which receives all training data
and raises an exception in case is_finetuning
is True
and finetuning is not
possible (e.g. because new labels were added).
In case we are doing a regular training (and not finetuning) this persists the
necessary information extracted from the training data to be able to validate when
initialized via load whether we can finetune.
Finetuning is possible if, compared to the initial training phase, it holds that
- the configuration (except for "epoch" keys) does not change
- the domain (except for e.g. "responses") does not change - or we're not finetuning the core part
- the intents, entities, entity groups, entity roles, and action names that appeared in the original NLU training data, appear in the NLU training data used for finetuning, and no new such items (i.e. intents, entities, entity groups, entity roles, or action names) have been added, compared to the original training data - or we're not finetuning the nlu part. Note that even though conditions 2. and 3. differ based on which part we finetune, condition 1. always covers both parts, i.e. NLU and Core.
get_default_config
Default config for ProjectProvider.
__init__
Instantiates a FineTuningValidator
.
Arguments:
model_storage
- Storage which graph components can use to persist and load themselves.resource
- Resource locator for this component which can be used to persist and load itself from themodel_storage
.execution_context
- Information about the current graph run.fingerprints
- a dictionary of fingerprints generated by aFineTuningValidator
validate
Validates whether we can finetune Core and NLU when finetuning is enabled.
Arguments:
importer
- a training data importer
Raises:
InvalidConfigException
if there is a conflict
Returns:
Training Data Importer.
create
Creates a new FineTuningValidator
(see parent class for full docstring).
persist
Persists this FineTuningValidator
.
load
Loads a FineTuningValidator
(see parent class for full docstring).