semantic_router.schema.UtteranceDiff#
- class semantic_router.schema.UtteranceDiff(*, diff: List[Utterance])#
Bases:
BaseModel
- __init__(**data: Any) None #
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
Methods
__init__
(**data)Create a new model by parsing and validating input data from keyword arguments.
construct
([_fields_set])Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
copy
(*[, include, exclude, update, deep])Duplicate a model, optionally choose which fields to include, exclude and change.
dict
(*[, include, exclude, by_alias, ...])Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
from_orm
(obj)from_utterances
(local_utterances, ...)get_sync_strategy
(sync_mode)Generates the optimal synchronization plan for local and remote instances.
get_tag
(diff_tag)Get all utterances with a given diff tag.
json
(*[, include, exclude, by_alias, ...])Generate a JSON representation of the model, include and exclude arguments as per dict().
parse_file
(path, *[, content_type, ...])parse_obj
(obj)parse_raw
(b, *[, content_type, encoding, ...])schema
([by_alias, ref_template])schema_json
(*[, by_alias, ref_template])to_utterance_str
([include_metadata])Outputs the utterance diff as a list of diff strings.
update_forward_refs
(**localns)Try to update ForwardRefs on fields based on this Model, globalns and localns.
validate
(value)Attributes
diff
- classmethod construct(_fields_set: SetStr | None = None, **values: Any) Model #
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
- copy(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, update: DictStrAny | None = None, deep: bool = False) Model #
Duplicate a model, optionally choose which fields to include, exclude and change.
- Parameters:
include – fields to include in new model
exclude – fields to exclude from new model, as with values this takes precedence over include
update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data
deep – set to True to make a deep copy of the model
- Returns:
new model instance
- dict(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, by_alias: bool = False, skip_defaults: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny #
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
- get_sync_strategy(sync_mode: str) dict #
Generates the optimal synchronization plan for local and remote instances.
- Parameters:
sync_mode (str) – The mode to sync the routes with the remote index.
- Returns:
A dictionary describing the synchronization strategy.
- Return type:
dict
- get_tag(diff_tag: str) List[Utterance] #
Get all utterances with a given diff tag.
- Parameters:
diff_tag – The diff tag to filter by. Must be one of “+”, “-”, or
“ “. :type diff_tag: str :return: A list of Utterance objects. :rtype: List[Utterance]
- json(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, by_alias: bool = False, skip_defaults: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Callable[[Any], Any] | None = None, models_as_dict: bool = True, **dumps_kwargs: Any) str #
Generate a JSON representation of the model, include and exclude arguments as per dict().
encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().
- to_utterance_str(include_metadata: bool = False) List[str] #
Outputs the utterance diff as a list of diff strings. Returns a list of strings showing what is different in the remote when compared to the local. For example:
- [” route1: utterance1”,
“ route1: utterance2”, “- route2: utterance3”, “- route2: utterance4”]
Tells us that the remote is missing “route2: utterance3” and “route2: utterance4”, which do exist locally. If we see:
- [” route1: utterance1”,
“ route1: utterance2”, “+ route2: utterance3”, “+ route2: utterance4”]
This diff tells us that the remote has “route2: utterance3” and “route2: utterance4”, which do not exist locally.
- classmethod update_forward_refs(**localns: Any) None #
Try to update ForwardRefs on fields based on this Model, globalns and localns.