開源智慧聊天機器人rasa以及前端rasa-ui開發部署記錄
本是搞java開發的,因工作需要開始研究這款由python開發的開源智慧聊天機器人軟體工程,相關資料會留有相關連結大家自己去檢視,這裡只是對本人在開發過程中遇到的一些問題進行記錄,希望對您的開發會有些幫助,先來看幾張效果圖吧
參考資料:
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 -mrasa 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環境\Lib\site-packages\rasa\server.py 的1487行和1491行
如果您的訓練資料中有自定義表單 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專案
每天進步一點點,點滴記錄,積少成多。
以此做個記錄,
如有不足之處還望多多留言指教!