代码之家  ›  专栏  ›  技术社区  ›  Antonblue16

AttributeError:“NoneType”对象在rasa上没有属性“get”。com和tensorflow后端

  •  1
  • Antonblue16  · 技术社区  · 7 年前

    我在和拉萨学习聊天机器人。com、apixu、api。松弛的但当时想要训练数据,甚至出现这样的错误。 你能帮我解决这个问题吗?

    顺便说一下,我使用的是蟒蛇3,python 3.6。


    C: \程序文件\Anaconda3>python train\u init。py公司

    C: \程序文件\Anaconda3\lib\site packages\h5py\uu init\uuuuu。py:34:FutureWarning:将issubdtype的第二个参数从 float np.floating 已弃用。将来,它将被视为 np.float64 == np.dtype(float).type .

    来自_conv import register\u converters as \u register\u converters导入寄存器\u转换器

    使用TensorFlow后端。

    回溯(最近一次呼叫最后一次): 文件“train\u init.py”,第17行,in 代理=代理('weather\u domain.yml',策略=[MemorizationPolicy(),KerasPolicy()])

    文件“C:\Program Files\Anaconda3\lib\site packages\rasa\u core\agent.py”,第42行,in 初始化

    self.domain = self._create_domain(domain)
    

    文件“C:\Program Files\Anaconda3\lib\site packages\rasa\u core\agent.py”,第237行,位于\u create\u域中

    return TemplateDomain.load(domain)
    

    文件“C:\Program Files\Anaconda3\lib\site packages\rasa\u core\domain.py”,第435行,已加载

    slots = cls.collect_slots(data.get("slots", {}))
    

    collect\u插槽中的文件“C:\Program Files\Anaconda3\lib\site packages\rasa\u core\domain.py”,第479行

    slot_class = Slot.resolve_by_type(slot_dict[slot_name].get("type"))
    

    AttributeError:“NoneType”对象没有属性“get”

    1 回复  |  直到 7 年前
        1
  •  0
  •   Alex    7 年前

    在你的情况下 slot_dict[slot_name] None . 确保它不是 没有一个 但是一些物体。 下面是以简化的方式反映场景中发生的相同错误:

    >>> d = {'key': None}
    >>> d['key'].get('type')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: 'NoneType' object has no attribute 'get'