本是搞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 -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環境\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項目
每天進步一點點,點滴記錄,積少成多。
以此做個記錄,
如有不足之處還望多多留言指教!