日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

前言

這幾天一直在研究linux環境下安裝配置rasa框架,順便整理一下安裝步驟,以后可以查看。

 

建議:本文適合收藏,里面每個步驟都是實際開發中遇到的,這里不涉及Rasa聊天機器人框架的源碼,因為源碼在網上獲取非常方便。這里只是單純介紹部署的步驟,以及如何解決一些遇到的問題。

本文不建議直接拿來用,因為網上有很多介紹關于rasa機器人的部署,特別是對于windows環境下的部署,已經有很多成熟的部署步驟。但是對于linux部署,小編是一直找不到合適的部署方法。

于是,小編通過不斷嘗試,不斷總結,才有了本文。所以,大家可以先在windows下部署,如果成功了,想移植到linux環境下,可以回頭來看看這篇文章,相信對你有很大的幫助。

如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

環境: centos7、 Python 3.6.2
目標: 安裝flask+uwsgi+Rasa1.10.2+MITIE+tensorflow2.0+supervisor服務

 

linux虛擬環境安裝

 

備注: 沒有安裝pyenv, 可以在linux下安裝pyenv。 pyenv 類似于windows下的Anaconda,主要用于python的版本管理。

 

  1. 查看pyenv托管了哪些python版本
 $ pyenv versions
如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

 

  1. 使用pyenv安裝python環境(已經安裝好的可以跳過)
 $ pyenv install -v 3.6.2

 

  1. 安裝時報錯ModuleNotFoundError: No module named '_ctypes'的解決辦法
yum install libffi-devel 

 

項目配置

 

  1. 從git上拉下項目( git-url 替換成實際的git地址)
git clone -b master git-url

 

  1. 進入代碼根目錄,新建虛擬環境
# 當前目錄 
$cd chatBotRasa
如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

 

  1. 創建虛擬環境
# 當前python環境切換到3.6.2
$ pyenv global 3.6.2


# 在當前項目根目錄下新建虛擬環境目錄
$ virtualenv venv_rasa_362


# 切回之前的python環境(保證原始環境不變, 假設原始環境是python 3.6.0)
$ pyenv global 3.6.0

 

  1. 在項目的根目錄下新建幾個目錄
$ mkdir log
$ mkdir logs
$ mkdir models

 

  1. 對應的模型放到指定目錄下
total_word_feature_extractor_zh.dat  # 放到 data 目錄下
20200615-225841.tar.gz  # 放到models下(不同版本rasa對應不同版本的模型,否則要重新訓練)

 

【安裝虛擬環境的rasa相關python包】

 

  1. 進入虛擬環境
$ source venv_rasa_362/bin/activate

 

  1. 退出虛擬環境
$ deactivate

 

  1. 安裝rasa==1.10.2 , 安裝失敗,多安裝幾次就可以了
$ pip --default-timeout=1000 install rasa==1.10.2

 

  1. 安裝項目其他的包
$ pip install -r requirements.txt
如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

 

  1. 安裝MITIE (第一步容易安裝失敗,多安裝幾次就可以了)
$ pip install git+https://github.com/mit-nlp/MITIE.git
$ pip install rasa[mitie]

 

  1. 安裝uwsgi
$ pip install uwsgi

 

uwsgi 配置文件, 一般放在代碼根目錄下,例如:
/opt/algorithm/chatBotRasa/chatBotRasa_config.ini

 

如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

【啟動rasa的兩個服務】

 

(以腳本的形式,均需要在虛擬環境下進行。 一般更改模型的話,主線程App.py 不用重啟,只要重啟一下兩個服務即可。運行腳本命令: $ sh xxxx.sh)

 

  1. 開啟第一個服務 start_one_rasa.sh
nohup python -m rasa run --port 5005 --endpoints configs/endpoints.yml --credentials configs/credentials.yml --debug > ./log/start_one_rasa.log  2>&1 &

 

  1. 查看第一個服務 check_one_rasa.sh
# 查看端口對應的線程
netstat -tunlp|grep 5005

 

  1. 關閉第一個服務 kill_one_rasa.sh
fuser -k -n tcp 5005
  1. 開啟第二個服務 start_two_rasa.sh
nohup python -m rasa run actions --port 5055 --actions actions --debug > ./log/start_two_rasa.log  2>&1 &

 

  1. 查看第二個服務 check_two_rasa.sh
# 查看端口對應的線程
netstat -tunlp|grep 5055

 

  1. 關閉第二個服務 kill_two_rasa.sh
fuser -k -n tcp 5055

【在線訓練模型】

 

  1. 進入虛擬環境,進入項目根目錄
# 模型訓練: 該命令會同時訓練NLU和Core模型
# 前提是安裝好MITIE模塊
$ python -m rasa train --config configs/config.yml --domain configs/domain.yml --data data/

【配置supervisor】

 

  1. 安裝配置supervisor (非虛擬環境)

 

安裝supervisor(一般是提前安裝好了):

yum install supervisor

 

增加配置文件, 例如命名為:
chatBotRasa_supervisor.ini

保存在
/etc/supervisord.d/chatBotRasa_supervisor.ini

 

注意事項:

(1) 如果網站所在的目錄為chatBotRasa, 則建議ini文件命名為:
chatBotRasa_supervisor.ini

(2) 如果有多一個網站,目錄為charts, 則可以新建多個文件: charts_supervisor.ini

(3) 多個xxx_supervisor.ini 文件,Supervisor 會同時允許加載多個配置

 

如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

 

  1. 啟動停止supervisord (只有單個服務時適用, 或者首次啟動)

(1) 啟動supervisord: supervisord -c /etc/supervisord.conf

(2) 停止 supervisord(需要多次停止才能生效):supervisorctl shutdown

(3) 重啟服務(里面的配置也會更新):supervisorctl reload

 

  1. 啟動停止指定supervisord

(1) 查看所有子進程的狀態:

$ supervisorctl status
如何將Rasa聊天機器人框架部署到linux,簡明教程(適合收藏)

 

 

(2) 關閉開啟指定子進程:

$ supervisorctl restart chat_bot_rasa    # 重啟
$ supervisorctl stop chat_bot_rasa       # 停止
$ supervisorctl start chat_bot_rasa      # 啟動

(3) 關閉、開啟所有的子進程

$  supervisorctl stop all
$  supervisorctl start all

 

  1. 管理相關進程

(1) 查看相關進程: netstat -ntlp | grep 9108

(2) kill某個端口: fuser -k -n tcp 9108

【項目在線調試】

 

1. 進入虛擬目錄: source my_venv/bin/activate

2. 啟動項目: uwsgi dataSys_config.ini

3. 調試結束后,記得刪除 項目下log目錄下的日志(supervisord的調試日志)否則項目不能正常啟動

 

結語

 

學習python,不需要一杯奶茶錢,只需要你點個關注。如果覺得小編的文章對你有幫助,記得點個贊,順便幫我分享出去。有什么不明白的地方,歡迎在下方評論,或私信小編。最后,感謝大家的閱讀,祝大家生活愉快。

 

 

分享到:
標簽:機器人
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定