最近,在使用尝试使用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