rasa 入门

**前言:没有比官网文档更好的资料了。**看这里https://rasa.com/docs/rasa/

rasa 安装

pip install -U rasa  
pip show rasa  

注:我是用的 rasa 版本为 Version: 2.8.1

初始化项目

1、 在工作文件夹中执行

# 创建默认的初始化项目,加“--no-prompt”就避免了中间的问题提示
rasa init --no-prompt  

该命令会在工作文件夹中创建一系列的文件,关键文件如下:

  • config.yml : Rasa NLU 和 Rasa Core 的配置文件
  • credentials.yml : 定义和其他服务连接的一些细节,例如rasa api接口
  • data/nlu.yml : Rasa NLU 的训练数据
  • data/stories.yml : Rasa stories 数据
  • data/rule.yml : Rasa 规则数据
  • endpoints.yml : 和外部消息服务对接的配置
  • models/.tar.gz : 初始训练的模型数据

以上文件都打开看一下,基本能明白是啥意思。

2、 训练模型
如果添加了 NLU 或者 Core 数据,或者修改了domain和配置文件,需要重新训练模型:

rasa train  

3、 对话应用

rasa shell  

可能因训练数据的问题,bot 表现的挺傻的,呵呵~

定制简单的中文对话

1、 建立工作目录
创建一个新的工作文件夹,如 “rasa-zh-1”。
在文件夹中直接用 rasa init --no-prompt 进行初始化

2、 修改其中的关键内容

  • domain.yml: 其中定义了意图和响应,将其修改为你需要的
  • data/nul.yml: 其中意图的识别方式,每个意图都有些 “examples”
  • data/stories.yml: 其中定义了多个情节(即对话剧本),为每个意图对应上了响应,用于机器学习训练方式
  • data/rules.yml: 其中定于了基于规则的流程控制,只要满足规则,每次走的都是确定性分支

影响RASA会话流程的有2个配置,一个是Story,一个就是Rules!
其中 config.yml 开头的语言配置 language: en 也应该修改,不过好像不该也行。

根据需要将上面说的四个文件修改修改 …

3、训练并跑跑试试

rasa train
rasa shell

rasa简单对话示例