命令行模式下的 Rasa 日志

Logs for Rasa in command-line mode

我想记录来自 Rasa 机器人的对话(尤其是意图)。当 Rasa NLU 运行 作为 http 服务器时,有一个完美的功能,但在命令行模式下 运行ning 时,我似乎找不到任何类似的东西。有没有办法做到这一点 ?如果没有,是否有办法实现?

命令行模式到底是什么意思?如果你启动服务器:

python -m rasa_nlu.server --path projects --response_log logs

应启用日志记录。这假定版本 0.12.3

在 Rasa Core architecture 中,一个名为 Tracker 的 class 包含当前对话的历史记录。 我想您可以通过调用其 as_dialogue method.

来实现您的日志

查看 docs,此序列化的输出似乎与服务器生成的日志中的项目完全一样:

{  
  "py/object":"rasa_core.conversation.Dialogue",
  "events":[
    {
      "py/object": "rasa_core.events.UserUttered",
      "entities": [],
      "intent": {
        "name": "greet",
        "confidence": 1.0
      },
      "text": "/greet"
    },
    {
      "py/object": "rasa_core.events.ActionExecuted",
      "action_name": "utter_greet",
      "unpredictable": false
    }
  ],
  "name":"hello_world"
}