最近,在使用嘗試使用rasa 創建一個簡單的robot demo ,但是遇到了很多坑,當時因爲習慣了16.04 LTS,所以依舊使用了這個版本,也遇到了很多問題。如果可以替換版本的話,建議使用Ubuntu18.04,那個版本的python3是3.6的,可以避免出現很多問題。如果不能替換Ubuntu版本的話,可以使用參考這個教程。
替換鏡像源
將鏡像源進行替換,不然後面下載鏡像的時候會很慢。(tensorflow 幾百兆 誰下誰知道 =_=!)。下之前記得備份原鏡像。
# 備份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.copy
# 修改
sudo gedit /etc/apt/sources.list
然後將下面的內容覆蓋原鏡像文件。
# 默認註釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消註釋
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# 預發佈軟件源,不建議啓用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
更新鏡像
sudo apt-get update
sudo apt-get upgrade
將python3.5 升級到 python3.6
因爲後面某一步要求python的最低版本是3.6,(我不記得是那一步了),所以需要進行升級。這裏要注意第三步,否則會因爲ssl問題報錯。
# 1.wget獲取安裝包:
wget http://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
# 2.解壓安裝包:
tar -xvzf Python-3.6.2.tgz
# 3.檢查安裝平臺屬性,系統是否有編譯時所需要額庫,以及庫的版本是否滿足編譯需要
./configure --with-ssl
# 4.編譯源碼
make
# 5.成功編譯之後,安裝
sudo make install
安裝_bz2模塊
這裏需要先安裝_bz2模塊,參考連接
1)下載該文件https://pan.baidu.com/s/19EuNjLWIGPxc1R5C2ntUwg 提取碼:q9ki
2)將下載後的文件放到python3.6文件夾裏…/python36/lib/python3.6/lib-dynload/目錄下;
這裏可以使用find / -name lib-dynload 命令查看各自的文件位置。
使用"chmod +x _bz2.cpython-36m-x86_64-linux-gnu.so"增加該文件的可執行權限
安裝RASA
這裏參考官網的教程。
# 1. 安裝pip3
sudo apt-get install python3-pip
# 2. 安裝 rasa
pip install rasa
#在當前文件夾下創建一個venv, 用於存放虛擬環境。
python3 -m venv --system-site-packages ./venv
# Activate the virtual environment:
source ./venv/bin/activate
#更新一下pip,不然可能導致相關依賴的版本不對。比如TensorFlow版本報錯
$ pip install -U pip
#To install Rasa Open Source:
$ pip install rasa
創建項目
# 創建文件夾
mkdir demo
cd demo
# 加上 --no-prompt創建默認項目
# 這裏,Ubuntu16.04 LTS 可能會報缺少 _bz2
# 導致 Module for policy ‘MemoizationPolicy’ could not be loaded不能加載的問題
rasa init --no-prompt
# 訓練
rasa train
# 開啓對話
rasa shell