Я создал пользовательское действие, которое запускается с резервным намерением по умолчанию, сбрасывает слоты и перезапускает поток.Тем не менее, это не работает, как ожидалось.Ни слоты не сбрасываются, ни поток не перезапускается.Бот работает ненормально после аварийного намерения.
Файл действий:
from __future__ import absolute_import
from __future__ import division
from __future__ import unicode_literals
from rasa_core.domain import Domain
from rasa_core.trackers import EventVerbosity
import json
import requests
from requests.exceptions import ConnectionError
import logging
logger = logging.getLogger(__name__)
import datefinder
import datetime
from rasa_core_sdk import Action
from rasa_core_sdk.events import SlotSet
from rasa_core_sdk.events import UserUtteranceReverted
from rasa_core_sdk.events import AllSlotsReset
from rasa_core_sdk.events import Restarted
class ActionRestarted(Action):
def name(self):
return 'action_restarted'
def run(self, dispatcher, tracker, domain):
return[Restarted()]
class ActionSlotReset(Action):
def name(self):
return 'action_slot_reset'
def run(self, dispatcher, tracker, domain):
return[AllSlotsReset()]
Файл истории:
Откат
- utter_unclear
- action_slot_reset
- action_restarted
Версии программного обеспечения Python-3.6 rasa-core- 0.14.4 rasa-nlu- 0.15.0
Я хочу, чтобы ActionRestarted и ActionSlotReset работали после достижения намерения по умолчанию, сбрасывали слоты и перезапускали диалог.