寒笑S

导航

自然语言处理-rasa机器人的初体验(三)

我们已经体验过了rasa机器人,并且了解了NLP的基本原理,下一步,我们对机器人做出一些修改创造一个只属于我们自己的机器人。

再次打开 rasa shell  问问这个机器人,Whats your name ?

它没有回答???它竟然敢不回答我??

 

 那么我们接下来就给它起个名字。

1 首先在nlu.yml里面加上如下关于ask_name意图的example配置,添加如下内容

- intent: ask_name
  examples: |
    - what is your name
    - tell me your name
    - what others call you
    - what should I call you

备注: nlu.yml文件的作用:配置意图以及触发该意图的文本

2 然后在stories.yml下面构建story,添加如下内容

- story: happy name path
  steps:
  - intent: greet
  - action: utter_greet
  - intent: ask_name
  - action: utter_name

备注: stories.yml 的作用:
stories.yml通过story这种类型作为训练数据来训练助手的对话管理模型。 此外story还可以可用于训练能够推广到看不见的对话路径的模型。

3 在nlu.yml中的每一个intent都需要在domain.yml里面的intents中声明

intents:
  - ask_name

备注: domain.yml 的作用

domain.yml定义了助手在其中运行的范围。 此外指定了机器人助手应该知道的意图,实体,位置,响应,形式和动作。 并且它还定义了对话会话的配置。

4 此外相应的action:utter_name ,需要在domain.yml中responses下面中定义该action对应的response。添加的内容如下:

responses:
  utter_name:
  - text: "my name is Simple_peter"

5 接下来直接运行以下命令

rasa train && rasa shell
模型训练需要一段时间哦!另外,要注意格式,空行和空格(血与泪的教训)

 

 哇哦!它知道告诉我它的名字啦。

 

posted on 2021-04-23 11:39  寒笑S  阅读(224)  评论(0编辑  收藏  举报