Linux下bert-as-service 环境搭建
python版本大于等于3.5
tensorflow版本大于等于1.10.0
bert-as-service
1. Anaconda3安装
从官网下载Anaconda3 linux版本
安装anaconda3
bash Anaconda3-5.2.0-Linux-x86_64.sh
创建虚拟环境,取名叫python36,方便多版本python管理
conda create -n python36 python=3.6
激活环境
source activate python36
2. tensorflow安装
这里安装tensorflow-cpu-1.11.0版本
pip install tensorflow==1.11.0
验证tensorflow是否安装成功,敲入下面一行python代码后,输出tensorflow版本,则证明tensorflow安装成功
import tensorflow as tf
print(tf.__version__)
3. 安装bert-as-server
bert-as-server分为两部分,服务端和客户端,这两部分可以分开装,也可以装在同一台服务器上,安装很简单
pip install bert-serving-server
pip install bert-serving-client
安装完成之后,下载bert的预训练语言模型,我主要处理中文,因此下载中文版本的预训练语言模型
下载完成后上载到linux服务器,放在创建的tmp文件夹下,并解压
unzip ./tmp/chinese_L-12_H-768_A-12
启动服务
bert-serving-start -model_dir ./tmp/chinese_L-12_H-768_A-12 -num_worker=1 -max_seq_len=10 &
-model_dir是预训练语言模型的路径 -num_worker是线程数 -max_seq_len是字符串的最大长度,低于这个长度的字符串会自动补0,高于这个长度会自动截取
4. 简单测试
from bert_serving.client import BertClient
bc=BertClient()
bc.encode(['This is an apple.'])
注意 :encode的输入格式为list.