本是搞java开发的,因工作需要开始研究这款由python开发的开源智能聊天机器人软件工程,相关资料会留有相关链接大家自己去查看,这里只是对本人在开发过程中遇到的一些问题进行记录,希望对您的开发会有些帮助,先来看几张效果图吧

开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客

开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客 开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客

开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客  开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客

参考资料:

python的安装、管理以及离线迁移可参考 记录使用conda创建、管理及迁移python环境以及在windows中以后台服务方式启动python项目

Rasa介绍与安装使用可参考  Rasa中文聊天机器人开发指南(1):入门篇   系列  英文原版文档可参考 Rasa Open Source

rasa-ui可参考  Rasa UI是Rasa框架的前端   涉及到的知识点有 nodejs+angular+express+sqlite3等

由于是国外程序员开发的所以这个UI是全英文的 github,而且版本比较老了,功能不是很全面,因工作需要做了简单调整和翻译(因英文能力有限,有不足之处还望多多指教),并上传了gitee,中文翻译版请下载 zh-master 分支,原版请下载 master 分支。

python和rasa的安装与调制参考资料介绍的很详细了,按步骤来不会出什么问题,这里主要介绍记录UI的问题

首先要想使用UI能够访问rasa的接口需在启动rasa时添加参数  –enable-api 完整例句:

rasa run –enable-api –port 5005 -m models/ –endpoints configs/endpoints.yml –credentials configs/credentials.yml –debug

python -m rasa run –enable-api –port 5005 -m models/ –endpoints configs/endpoints.yml –credentials configs/credentials.yml –debug

–debug  为调试模式启动,正式环境请将此参数删除

后台永久启动:

linux:  nohup   例句  > ./out.log &

windows: 参考 python启动后台程序_Windows下后台运行Python程序

原版UI训练数据 nlu和stories文件时 .md 文件,中文版的我做了修改为 .yml 文件,这里就需要调整一下rasa源码,调整的源码文件地址为

当前启动rasa的python环境Libsite-packagesasaserver.py  的1487行和1491行

开源智能聊天机器人rasa以及前端rasa-ui开发部署记录-风君雪科技博客

如果您的训练数据中有自定义表单 FormAction 而且槽值是通过配置文件的方式,请下载中文版,原版并无form的相关配置,修改涉及的相关文件有

server/db/forms.js   slots.js   

server/routes/index.js   

web/src/app/services/api.js   

components/responses/response.html   response.js  add_form.html  add_form.js

关于部署如果您是docker部署可忽略以下内容

之前开放类似的前端都是vue使用build打包部署,此项目经查阅资料并为找到合适的打包工具,如有知道的朋友望指教一二,这里直接使用nodejs的相关命令进行永久后台启动

windows中:

使用的时forever 

在package.json的scripts中添加  “forever”: “forever start -o _out.log -e _err.log server/server.js”  然后在命令行使用  npm run forever

也可以直接在命令行使用  forever start -o _out.log -e _err.log server/server.js 进行启动,但是在package.json中定义的自定义配置 “config”: {} 就无法被加载导致项目虽然启动能访问了,但是无法登录,大家不妨可以试一下

linux中:

nohup npm start > ./out.log &

其他相关资料  npm后台启动    npm安装依赖的位置设置  使用pm2来部署nodejs项目

每天进步一点点,点滴记录,积少成多。

以此做个记录,

如有不足之处还望多多留言指教!