一、简介
环境:
项目地址:https://github.com/crownpku/Rasa_NLU_Chi
中文简介(作者):http://www.crownpku.com/2017/07/27/%E7%94%A8Rasa_NLU%E6%9E%84%E5%BB%BA%E8%87%AA%E5%B7%B1%E7%9A%84%E4%B8%AD%E6%96%87NLU%E7%B3%BB%E7%BB%9F.html
依赖:jieba,sklearn,mitie,
按照README.md步骤进行:
1、下载项目:
git clone https://github.com/crownpku/rasa_nlu_chi.git
2、MITIE模型训练,
训练太慢,太耗时,可使用作者训练好的模型,模型地址:
链接:https://pan.baidu.com/s/1kNENvlHLYWZIddmtWJ7Pdg 密码:p4vx
模型(323957KB):total_word_feature_extractor_zh.dat
将模型放在data文件夹下:
data\total_word_feature_extractor_zh.dat
3、构建尽可能多的示例数据来做意图识别和实体识别的训练数据:
这里使用作者的,当然可以扩充数据,格式是json
位置:data/examples/rasa/demo-rasa_zh.json
4、PIPELINE
中文有两种:
我们使用第二种:MITIE+Jieba+sklearn
Rasa NLU的工作流程。。。
jieba自定义词典。。。
5、训练Rasa NLU的模型
cd到当前文件夹,执行如下命令
python -m rasa_nlu.train -c sample_configs/config_jieba_mitie_sklearn.yml --data data/examples/rasa/demo-rasa_zh.json --path models
6、搭建本地rasa_nlu后台服务
python -m rasa_nlu.server -c sample_configs/config_jieba_mitie_sklearn.yml --path models
7、打开新终端,使用curl命令获取结果
curl -XPOST localhost:5000/parse -d '{"q":"我发烧了该吃什么药?", "project": "rasa_nlu_test", "model": "model_20190115-110659"}' | python -mjson.tool
过程简要概述:
(1)、配置三个依赖jieba,sklearn,mitie,配置mitie是一个坑
(2)、下载工程文件,下载训练好的mitie模型,将模型放在data文件夹下
(3)、训练Rasa NLU模型(PIPELINE:MITIE+Jieba+sklearn)
(4)、搭建后台服务
(5)、curl命令测试结果,这又是一个坑,
主要操作在3、4、5部分
二、那些坑儿
1、安装MITIE依赖
win10下安装MITIE:https://blog.csdn.net/liu765023051/article/details/83107254
这篇文章讲述十分详细,先安装VS,后边的boost需要VS的环境;再安装cmake,配置环境变量;然后安装boostm,而且测试成功,最后安装NITIE,使用pip install git+https://github.com/mit-nlp/MITIE.git命令,眼看要成功了,走到最后了,最后显示
Running setup.py install for mitie... error ,多次尝试仍是这样,
报的错也百思不得其解:
所以只得放弃这种方法。
然后看到这个链接:https://blog.csdn.net/ld326/article/details/80965689
使用方法与上述一样,不过版本较低,bin目录都没有,但给出了mitie的发行版链接:
mitie发行版本:https://github.com/mit-nlp/MITIE/releases/
下载当前最新版本V0.6,(实质上应该是0.5?)然后使用发行版本安装岂不美滋滋,
方法:在发行版本工程目录下按shift右键,选择powershell,然后使用python setup.py install命令即可,
然后使用conda list 命令,就可以看见mitie包已经安装好了
mitie依赖安装简要概述:
使用mitie发行版本安装mitie依赖,
发行版本地址:https://github.com/mit-nlp/MITIE/releases/
参考:python自定义包的发布与安装: https://blog.csdn.net/qq_33523482/article/details/80941084
2、curl命令获取结果
启动rasa_nlu后台服务后,我们使用curl命令测试结果,即使配置好curl.exe,使用命令怎么都不对,无奈,只得改用它法,我们使用postman,
Postman 4.1.2 下载地址: http://files.cnblogs.com/files/mafly/postman-4.1.2.rar
安装方法:https://www.cnblogs.com/wxinyu/p/7691465.html
启动后台,可以获取端口,如下:
获取端口后,就可以使用postman了,如下图:
结果如下:
检测模型加载情况:http://localhost:5000/status
Rasa 提供的所有端点这里有完整的介绍:https://nlu.rasa.com/http.html
三、参考综述:
1、项目地址:https://github.com/crownpku/Rasa_NLU_Chi
2、项目介绍(作者):http://www.crownpku.com/2017/07/27/%E7%94%A8Rasa_NLU%E6%9E%84%E5%BB%BA%E8%87%AA%E5%B7%B1%E7%9A%84%E4%B8%AD%E6%96%87NLU%E7%B3%BB%E7%BB%9F.html
3、MITIE模型地址:链接:https://pan.baidu.com/s/1kNENvlHLYWZIddmtWJ7Pdg 密码:p4vx
4、mitie发行版本:https://github.com/mit-nlp/MITIE/releases/
4.1、python自定义包的发布与安装: https://blog.csdn.net/qq_33523482/article/details/80941084
5、Postman 4.1.2 下载地址: http://files.cnblogs.com/files/mafly/postman-4.1.2.rar
5.1、Postman安装方法:https://www.cnblogs.com/wxinyu/p/7691465.html
6、NLU安装入门(包含postman使用方法):https://www.xunjin.me/index.php/2018/06/24/rasa-nlu-installation/
7、在线标注工具:https://rasahq.github.io/rasa-nlu-trainer/