美文网首页
bert初步使用

bert初步使用

作者: 佛系小懒 | 来源:发表于2020-02-26 21:33 被阅读0次

    环境构建

    pip install bert-serving-server

    pip install bert-serving-client

    及其依赖,如tensorflow>=1.10

    源码地址:github链接

    预训练模型:chinese_L-12_H-768_A-12.zip

    如果想省事,可直接通过docker方式构建,具体示例代码如下:

    Dockerfile(cpu)

    FROM tensorflow/tensorflow:1.12.0-py3

    RUN pip install bert-serving-server

    COPY ./ /app

    WORKDIR /app

    ENTRYPOINT ["/app/entrypoint.sh"]

    CMD []

    服务端启动命令样例

    bert-serving-start -num_worker=4 -model_dir /data/tools/chinese_L-12_H-768_A-12 -max_seq_len=20

    服务端可配置参数

    -cpu:指定GPU/CPU计算,默认为false,即使用GPU进行计算;

    -num_worker:支持设置工作线程数,最好设置为对应的cpu或gpu核数

    -model_dir:指定预训练模型的路径,通常将预训练好的BERT模型下载下来放到该目录,该项是必须指定的

    -tuned_model_dir:指定微调模型路径,通常将微调好的BERT模型生成到该目录

    -ckpt_name:指定checkpoint文件,默认文件名为bert_model.ckpt,常与预训练模型在同一目录

    -config_name:指定配置文件,默认文件名为bert_config.json,常与预训练模型在同一目录

    -graph_tmp_dir:指定临时的graph文件,默认是/tmp/XXXXXX

    -max_seq_len:指定最大序列长度,使用None来动态加载(mini)batch做为最大序列长度,默认取值25,实际在我的机器上面设置20即可,否则服务启动的时候会卡住

    -max_batch_size:指定每个worker能够处理的最大序列数,默认256

    -priority_batch_size:指定高优先级处理的batch大小,默认值16

    -port:指定客户端向服务端push数据的端口号,默认5555

    -port_out:指定服务端向客户端发布结果的的端口号,默认5556

    -http_port:指定服务端接受http请求的端口号,无默认值

    -pooling_strategy:指定池化-采样策略,默认取值REDUCE_MEAN,取值限制在:NONE, REDUCE_MEAN, REDUCE_MAX, REDUCE_MEAN_MAX, CLS_TOKEN, FIRST_TOKEN, SEP_TOKEN, LAST_TOKEN ,为了获取sequence中的每个token应该将其置为NONE

    -pooling_layer:指定池化-采样层,默认取值[-2], -1表示最后一层, -2 倒数第二层, [-1, -2] 表示连接最后两层的结果

    -xla:指定XLA compiler 进行graph的优化,默认取值false

    客户端可配置参数

    -ip:指定bert服务端的ip,默认是localhost

    -port:指定客户端向服务端push数据的端口号,默认5555,需与服务端配置一致

    -port_out:指定服务端向客户端发布结果的端口号,默认5556,需与服务端配置一致

    -output_fmt:指定 sentence编码格式,默认ndarray,也可使用list

    -show_server_config:指定是否在开始连接的时候显示服务端配置

    -check_version:指定是否要求服务端与客户端版本保持一致性,默认取值false

    -identity:指定multi-casting模式下客户端的uuid以对多个客户端进行区分,默认取值None

    相关文章

      网友评论

          本文标题:bert初步使用

          本文链接:https://www.haomeiwen.com/subject/qctgchtx.html