python setup.py develop 安装,必须使用 python 3.6 版本,3.7 版本也不行。
安装好后,直接运行 python -m deeppavlov interact deeppavlov/configs/go_bot/gobot_dstc2.json -d 会有问题,有依赖的库还没有安装,比如 tensorflow, fasttext 等。所以必须先 python -m deeppavlov install gobot_dstc2 才行。
相关的库不要自己安装,因为版本不一样会出错。比如我自己安装了 fasttext 0.8.2 和 0.8.3 这两个版本都试过,代码里面 import fastText 都会报错,手动改成了 import fasttext 之后还是会报 Exception: fastText: Cannot load /Users/chenxiaoyu/code/nlp/DeepPavlov/download/embeddings/wiki.en.bin due to C++ extension failed to allocate the memory。刚开始我以为是因为内存不够,释放出了10多G的内存还是没解决,最后发现还是因为 fasttext 版本的原因导致的。
刚开始一定要设置一下 DP_CACHE_DIR 环境变量,用来保存下载的文件,否则每次运行都要重新下载,尤其是 wiki.en.bin 文件特别大。
2018年7月20日星期五
2018年7月19日星期四
homebrew 安装不同版本的 python
安装
brew update
brew install pyenv
配置
在 .zshrc 或 .bash_profile 文件最后写入:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if which pyenv > /dev/null;
then eval "$(pyenv init -)";
fi
查看可安装的版本
pyenv install --list
安装python版本
pyenv install 3.6.3
查看当前已安装的python版本
pyenv versions
设置python版本
# 对所有的Shell全局有效,会把版本号写入到~/.pyenv/version文件中
pyenv global 3.6.3
也可以写成 pyenv global system 3.6.3
# 只对当前目录有效,会在当前目录创建.python-version文件
pyenv local 3.6.3
# 只在当前会话有效,等同于设置PYENV_VERSION环境变量
pyenv shell 3.6.3
优先级:PYENV_VERSION > local > global
$ pyenv rehash # 创建垫片路径(为所有已安装的可执行文件创建 shims,如:~/.pyenv/versions/*/bin/*,因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令)
重置版本设置
只有 pyenv shell 和 pyenv local 命令有--unset参数
pyenv shell --unset
pyenv local --unset
虚拟环境
个人觉得virtualenv就够了, 用不到pyenv-virtualenv
pyenv-virtualenv 安装
brew update
brew install pyenv-virtualenv
pyenv-virtualenv 配置
在 .zshrc 或 .bash_profile 文件最后写入:
# pyenv-virtualenv
if which pyenv-virtualenv-init > /dev/null;
then eval "$(pyenv virtualenv-init -)";
fi
创建虚拟环境
$ pyenv virtualenv 2.7.10 env-2.7.10
若不指定python 版本,会默认使用当前环境python版本。环境的真实目录位于 ~/.pyenv/versions 下
列出当前虚拟环境
pyenv virtualenvs
pyenv activate env-name # 激活虚拟环境
pyenv deactivate #退出虚拟环境,回到系统环境
删除虚拟环境
pyenv uninstall my-virtual-env
rm -rf ~/.pyenv/versions/env-name # 或者删除其真实目录
问题解决
mac安装有可能会出现 zipimport.ZipImportError: can't decompress data; zlib not available 的问题,解决方法:CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 3.x.x
参考:http://einverne.github.io/post/2017/04/pyenv.html
https://github.com/eteplus/blog/issues/4
brew update
brew install pyenv
配置
在 .zshrc 或 .bash_profile 文件最后写入:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if which pyenv > /dev/null;
then eval "$(pyenv init -)";
fi
查看可安装的版本
pyenv install --list
安装python版本
pyenv install 3.6.3
查看当前已安装的python版本
pyenv versions
设置python版本
# 对所有的Shell全局有效,会把版本号写入到~/.pyenv/version文件中
pyenv global 3.6.3
也可以写成 pyenv global system 3.6.3
# 只对当前目录有效,会在当前目录创建.python-version文件
pyenv local 3.6.3
# 只在当前会话有效,等同于设置PYENV_VERSION环境变量
pyenv shell 3.6.3
优先级:PYENV_VERSION > local > global
$ pyenv rehash # 创建垫片路径(为所有已安装的可执行文件创建 shims,如:~/.pyenv/versions/*/bin/*,因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令)
重置版本设置
只有 pyenv shell 和 pyenv local 命令有--unset参数
pyenv shell --unset
pyenv local --unset
虚拟环境
个人觉得virtualenv就够了, 用不到pyenv-virtualenv
pyenv-virtualenv 安装
brew update
brew install pyenv-virtualenv
pyenv-virtualenv 配置
在 .zshrc 或 .bash_profile 文件最后写入:
# pyenv-virtualenv
if which pyenv-virtualenv-init > /dev/null;
then eval "$(pyenv virtualenv-init -)";
fi
创建虚拟环境
$ pyenv virtualenv 2.7.10 env-2.7.10
若不指定python 版本,会默认使用当前环境python版本。环境的真实目录位于 ~/.pyenv/versions 下
列出当前虚拟环境
pyenv virtualenvs
pyenv activate env-name # 激活虚拟环境
pyenv deactivate #退出虚拟环境,回到系统环境
删除虚拟环境
pyenv uninstall my-virtual-env
rm -rf ~/.pyenv/versions/env-name # 或者删除其真实目录
问题解决
mac安装有可能会出现 zipimport.ZipImportError: can't decompress data; zlib not available 的问题,解决方法:CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 3.x.x
参考:http://einverne.github.io/post/2017/04/pyenv.html
https://github.com/eteplus/blog/issues/4
2018年7月2日星期一
mac中查看端口占用
参考 https://tonydeng.github.io/2016/07/07/use-lsof-to-replace-netstat/
sudo lsof -nP -iTCP -sTCP:LISTEN
sudo lsof -nP -iTCP -sTCP:LISTEN
mac修改bash前缀
sudo chmod +w /etc/bashrc
sudo vim /etc/bashrc:
修改PS1='[\u@\h \W]\$ '
sudo chmod -w /etc/bashrc
订阅:
博文 (Atom)