python - 如何在 RASA 中恢复或重新开始暂停的对话
问题描述
在我的聊天机器人中,我通过返回ConversationPaused()
暂停对话来暂停对话,以便真正的代理可以处理。但是我怎样才能恢复暂停的对话呢?
这就是我所做的
from rasa_core.events import ConversationPaused
class ActionTalkToAgent(Action):
def name(self):
return "action_talk_to_agent"
def run(self, dispatcher, tracker, domain):
if tracker.get_slot("lang") == "bn":
dispatcher.utter_template("utter_restart_bot_bn", tracker)
else:
dispatcher.utter_template("utter_restart_bot_en", tracker)
return [ConversationPaused()]
解决方案
使用以下类并在机器人的域文件中包含以下操作。
class ActionRestarted(Action):
""" This is for restarting the chat"""
def name(self):
return "action_chat_restart"
def run(self, dispatcher, tracker, domain):
return [Restarted()]
推荐阅读
- amazon-web-services - AWS boto3:UnknownServiceError:未知服务:'apigatewaymanagementapi'
- python - Python:按升序对列表进行排序并将其拆分
- java - 通过具有枚举和字符串类型创建字典
- javascript - MEAN 堆栈应用程序在从 localhost 以外的其他设备访问时不加载图像
- c++ - 在同一赋值语句中将多个字符串文字转换为 const char*
- prolog - 将整数列表拆分为序言中的子列表列表
- asp.net - ASP.NET Core 如何覆盖无效值消息
- spring-boot - 使用 Spring Boot 安排任务
- vue.js - VueJS 全局更改组件槽的内容
- arrays - Angular 7和将两个数组推入一个数组的数组给出了未定义的错误