一名卑微的研究生记录开始接触bert:昨天终于在修好了的服务器上给我们课题组的小伙伴开启了访问权限,今天开始搭建bert的基本环境了,为我接下来的研究方向(知识图谱)拉开序幕。

本机:win10 + putty (访问服务器)

实验室服务器:linux  GTX1080,以及驱动和cuda的配置信息如下图

bert需要什么gpu bert模型需要什么电脑配置_服务器

一、安装anaconda

1、下载安装包:wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh

wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh

注意:我最开始是安装的2020最新版本,但是安装界面一直卡在unpacking payload ... ...,看了网上其他人的解决方案就是安装旧版本,果然可行。

2、安装:sudo bash Anaconda3-2019.07-Linux-x86_64.sh

sudo bash Anaconda3-2019.07-Linux-x86_64.sh

【详情参考:】

下图为anaconda默认(base)的python3..7环境(因为我下载的是3.7版本的anaconda):

bert需要什么gpu bert模型需要什么电脑配置_python_02

退出命令:source deactivate 环境名称

进入命令:source activate 环境名称

退出anaconda环境,进入linux自带的版本为python2.7,如下图:

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_03

利用anaconda管理环境,两个python不会冲突,每次只要在你需要的环境下操作就行。

二、搭建python + tensorflow-gpu

搭建环境为:python3.5 + tensorflow-gpu1.10

因为bert官网要求python>=3.5 && tensorflow-gpu>=1.10

1、创建一个环境名为python35,python版本为3.5

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_04

2、安装tensorflow-gpu

(1)查看可安装的版本:

conda search tensorflow-gpu

bert需要什么gpu bert模型需要什么电脑配置_python_05

(2)选择安装的版本:conda install tensorflow-gpu=1.10

conda install tensorflow-gpu=1.10

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_06

(3)安装完成后如下图。接着可以输入 conda list 查看已经安装的内容

bert需要什么gpu bert模型需要什么电脑配置_服务器_07

(4)测试tensorflow是否成功安装   输入:

python

import tensorflow as tf

tf.__version__

最后可以看到成功输出版本信息则成功了。

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_08

三、搭建bert服务

1、安装bert服务端和客户端

在基于上述的环境中安装,即:

pip install bert-serving-server  
pip install bert-serving-client

bert需要什么gpu bert模型需要什么电脑配置_知识图谱_09

bert需要什么gpu bert模型需要什么电脑配置_python_10

2、下载预训练的模型(我下载的是中文bert模型)

https://github.com/google-research/bert/

下载后解压

bert需要什么gpu bert模型需要什么电脑配置_知识图谱_11

到此,bert需要的环境已经搭建好,接下来就是测试是否可用。

四、bert简单测试

1、启动bert服务器

bert-serving-start -model_dir /home/lcm/chinese_L-12_H-768_A-12 -num_worker=2

bert-serving-start -model_dir /home/lcm/chinese_L-12_H-768_A-12 -num_worker=2

蓝色字体是根据自己情况变化的,第一处是我刚解压的预训练模型的绝对路径,第二处是指定进程数,不能超过GPU数量。

bert需要什么gpu bert模型需要什么电脑配置_服务器_12

执行后出现下图的 all set, ready to serve request ! 表明成功开启bert服务器,之后运行代码跑模型的时候,这个窗口要保持开启。

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_13

2、运行代码

另开终端窗口,进入python35环境,运行几行代码测试,如下  

source activate python35

python

import tensorflow as tf

from bert_serving.client import BertClient

bc = BertClient()

vec = bc.encode(['最近 一直在忙,都没出去旅游'])

print(vec)

运行结果可以得到句向量:

bert需要什么gpu bert模型需要什么电脑配置_tensorflow_14

 

连续两天配环境,到此算是有了一个雏形。加油,卑微的我们一定可以的!