Node - #trigger#
- For Xmind ChatTree, the first line of the node content must be "#trigger#", and then there is no need for other lines of content, such as:
#trigger# - For Python ChatTree, the first parameter of chattree.create_node() must be "#trigger#", and the second parameter dict is empty, such as:
trigger_node = chattree.create_node("#trigger#", {}) - The "#rigger#" node can only be followed by a number of "#user_intent#" nodes. The "intent" attribute of these "#user_intent#" nodes represents a trigger (or subtopic). The subtopic is allowed to be triggered at any time during the dialogue process, that is, on any "#single_turn_interact#" or "#mult_turn_interact#" node in the dialogue, if the user's input words hit the meaning of a subsequent user intent after "#trigger#" node, it will immediately jump to the successor node of the "user_intent" node to start execution. After the execution is completed, it will return to the node just jumped (one exception is that if the value of a "#single_turn_interact#" node previously executed at this time is cleared, the "#single_turn_interact#" node with the cleared value will be executed first, and then executed to the "#single_turn_interact#" or "#multi_turn_interact#" of the user intent that just hit "#trigger#" node, it will jump to the successor node of the hit user intent node behind the "#trigger#" node and start execution)
- When calling a sub ChatTree, the "#trigger#" node of both the sub ChatTree and the parent ChatTree may be triggered.
- Each time before entering the process of a triggered sub-topic, the InfoItems of the "#single_turn_interact#" node inside it (except for the InfoItems the user has just entered) will be cleared.
- In addition to the "#start#" node, this node is the only other root node (node that can have no parent node); there can also be no "#trigger#" node
- The "TMC_book_flights" ChatTree example in "ChatTree Examples" contains this node