アナリスト 2019-08-22 15:35 采纳率: 0%
浏览 205

用rasa训练dialogue报错ruamel.yaml.constructor.ConstructorError

最近学习基于rasa的聊天机器人,下载github项目(https://github.com/zqhZY/_rasa_chatbot) ,在执行python bot.py train-dialogue时,报错如下
图片说明

相关的代码为

图片说明

根据报错可能是domain的yml文件的格式问题,但是我跟其他项目的该文件进行了对比,没有明显区别,yml文件如下

图片说明

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-11 13:27
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    从错误信息中我们可以看到,你正在使用Rasa框架来构建一个对话系统,并试图将一个包含特定数据结构(例如模板和事件)的配置文件加载到你的系统中。然而,在尝试加载这个配置文件时遇到了一个问题。

    首先,你需要确保你提供的mobile_domain.yml文件中的语法正确无误。其次,你需要检查你的Python脚本中的__init__.pysetup.py文件,这些文件通常用于初始化并运行你的程序。如果你的文件结构与上述示例不同,那么可能的原因在于你的mobile_domain.yml文件缺少了某些关键元素或者你的Python脚本无法识别这种文件类型。

    关于报错信息ruamel.yaml.constructor.ConstructorError,这通常是由于解析器未能找到合适的构造函数来匹配指定的标签而导致的。在你的例子中,错误是在尝试加载名为template的标签时发生的。ruamel.yaml库是一个解析器,它通过解析YAML文档来创建对象。

    解决此问题的最佳方法是仔细检查你的mobile_domain.yml文件,确保其符合Rasa框架的要求。此外,你可以尝试提供更详细的错误消息,以便更好地理解问题所在。

    为了进一步帮助你解决问题,建议你:

    1. 确保你的mobile_domain.yml文件包含了正确的标签定义。
    2. 如果可能的话,将你的脚本放在一个单独的文件中,以更容易地查看和修改。
    3. 调整你的Python脚本来使其能够识别和解析mobile_domain.yml文件。
    4. 检查你的__init__.pysetup.py文件,看看是否添加了适当的注释或导入语句来处理你的mobile_domain.yml文件。

    如果以上步骤都不能解决问题,你可以考虑联系Rasa社区或开发者论坛寻求更多帮助。他们可能会有更具体的解决方案或者资源可以帮助你解决这个问题。

    评论

报告相同问题?