Changes between Version 26 and Version 27 of dialogmanager
- Timestamp:
- 01/04/24 14:48:53 (10 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
dialogmanager
v26 v27 48 48 It contains two main components: 49 49 1. The DialogSpecification which is the map of the possible dialogs (see below) 50 2. The current Parameters containing all processed information given by the user(see below)50 2. The current Parameters which are variables that can be used to build messages and do computations (see below) 51 51 52 Th is can be saved and later restored to pickup a dialog.52 The DialogState can be saved and later restored to resume up a dialog. 53 53 54 54 55 55 == Parameters 56 * The user's answers, current dialog state label, and other parameters relevant for the dialog are stored in a set of parameters. This is just a map with keys and values both strings. The keys are called the "variable name" and the values the "variable value". 57 * Distance between two parameters is the euclidean distance (sqrt of the sum of squares) of the difference between the two parameter values, on a per-key basis. Only values for which both parameters have the key are compared. For non-numeric values, the difference is usually 0 if the values are equal, or else 1. The exact definition differes per implementation. 56 'Parameters' is a map of key-value pairs. The keys are a simple name String, the value is a ParameterValue, with various subtypes like BooleanValue, StringValue, VectorValue, DoubleValue. 57 58 A Parameter can be used in various ways 59 * Contain the user's answers, 60 * Contain the current dialog state label, 61 * Contain input and output values of computations 62 63 The distance between two parameters (the set of key-values) is the euclidean distance (sqrt of the sum of squares) of the difference between the two parameter values, on a per-parameter basis. Only values for which both parameters have the same key are compared. For non-numeric values, the difference is usually 0 if the values are equal, or else 1. The exact definition differes per implementation. 58 64 * The parameter values are BoolValue ("bool"), DoubleValue ("num"), KeywordsValue ("keywords"), StringValue ("txt") and VectorValue ("vector"). Check the javadocs for more details. 59 * The Keywords parameters is useful if you want to do keyword matching. It contains a list of (case-insensitive) keywords. The distance to a list of words (eg another Keywords parameter or the words in a StringParameter) is the minimu distance of any of the words to any of the keywords. Here the Levenshtein distance is used to determine the distance between a word and a keyword.65 * KeywordsValue is useful if you want to do keyword matching. It contains a list of (case-insensitive) keywords. The distance to a list of words (eg another Keywords parameter or the words in a StringParameter) is the [https://en.wikipedia.org/wiki/Levenshtein_distance Levenshtein distance] of any of the words to any of the keywords. 60 66 * The parameter named "phase" is special, it refers to the name of the current phase. If this variable is changed, the dialog jumps to the phase with the given name. 61 67