使用 Rasa rules.yml 是最简单的指定回复内容的方式,即,添加一条匹配规则。
添加一个意图对应的回复,需要编辑三个文件。
以回复用户的夸奖为例:
nlu.yml
意图识别:
data/nlu.yml
- intent: praise
examples: |
- 你真聪明
- 你怎么这么聪明
- 你太智能了
- you are really smart
- you are so clever
domain.yml
编辑返回的内容模板。domain.yml 中添加:
version: "3.1"
intents:
- praise
responses:
utter_praise:
- text: "谢谢夸奖,毕竟没有人比我更懂摸鱼啊。ChatGPT 也不如我"
注意不要漏了 intents 里添加相应的意图,否则会在 shell 中看到警告信息:
io.py:98: UserWarning: Parsed an intent 'praise' which is not defined in the domain. Please make sure all intents are listed in the domain.
rules.yml
一条匹配规则,将意图与回复关联。 data/rules.yml
version: "3.1"
rules:
- rule: 面对别人的夸奖,要谦虚回复
steps:
- intent: praise
- action: utter_praise
这里的 rule 后面的描述,只是给自己看的注释。
训练
重新训练模型
rasa train
中文对话测试
rasa shell 中进行测试:
Your input -> 你真聪明
谢谢夸奖,毕竟没有人比我更懂摸鱼啊。ChatGPT 也不如我
Your input -> so clever
谢谢夸奖,毕竟没有人比我更懂摸鱼啊。ChatGPT 也不如我
参考
- Rules https://rasa.com/docs/rasa/rules/
- rule 与 story 该如何选择 https://rasa.com/docs/rasa/writing-stories/
查看合集
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式