为 Rasa nlu 返回 Null 的意图
Intent returning Null for Rasa nlu
我目前 运行 遇到一个问题,如果用户输入一个没有在 nlu 文件中训练过的单词,nlu 将 return 这个:
"intent": {
"name": null,
"confidence": 0.0
}
在其他场景下,效果很好!有没有办法捕获这些错误并让 rasa return 成为默认错误消息?请告诉我。谢谢!
不清楚您如何使用此 nlu 响应。
- 如果您在 rasa_core 中使用它,您可以在自定义操作 Class 中预先捕获和处理任何此类意图。
例如
def run(self, dispatcher, tracker, domain):
intent = tracker.latest_message.intent["name"]
- 如果你想在 rasa_nlu 级别自己进行,请转到 rasa_nlu 安装目录(通常它在 "Python install folder"\Lib\site-packages\rasa_nlu\ 并进行以下更改model.py
def default_output_attributes():
return {"intent": {"name": None, "confidence": 0.0}, "entities": []}
至
def default_output_attributes():
return {"intent": {"name": "YOUR_CUSTOM_NAME", "confidence": 0.0}, "entities": []}
但请谨慎使用第二个。升级 rasa_nlu python 软件包时可能需要小心。
我目前 运行 遇到一个问题,如果用户输入一个没有在 nlu 文件中训练过的单词,nlu 将 return 这个:
"intent": {
"name": null,
"confidence": 0.0
}
在其他场景下,效果很好!有没有办法捕获这些错误并让 rasa return 成为默认错误消息?请告诉我。谢谢!
不清楚您如何使用此 nlu 响应。
- 如果您在 rasa_core 中使用它,您可以在自定义操作 Class 中预先捕获和处理任何此类意图。 例如
def run(self, dispatcher, tracker, domain):
intent = tracker.latest_message.intent["name"]
- 如果你想在 rasa_nlu 级别自己进行,请转到 rasa_nlu 安装目录(通常它在 "Python install folder"\Lib\site-packages\rasa_nlu\ 并进行以下更改model.py
def default_output_attributes():
return {"intent": {"name": None, "confidence": 0.0}, "entities": []}
至
def default_output_attributes():
return {"intent": {"name": "YOUR_CUSTOM_NAME", "confidence": 0.0}, "entities": []}
但请谨慎使用第二个。升级 rasa_nlu python 软件包时可能需要小心。