版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fjssharpsword/article/details/89412470
开源库:
https://github.com/hanxiao/bert-as-service
步骤:
1、安装:
pip3 install bert-serving-server --user
pip3 install bert-serving-client --user
2、下载预训练的BERT模型并解压:
https://github.com/google-research/bert#fine-tuning-with-bert
3、启动BERT服务:
bert-serving-start -model_dir chinese_L-12_H-768_A-12/ -num_worker=4
4、客户端连接并编码
from bert_serving.client import BertClient
bc = BertClient()
bc.encode([' 如图,a、b、c分别是数轴上A、B、C所对应的实数,试化简', '数轴上A、B、C所对应的实数', '对应的实数,试化简'])
array([[ 0.70045555, -0.11363703, 0.32841885, ..., 0.20670913,
0.13546458, -0.45262682],
[ 0.16193429, 0.11843788, 0.10739081, ..., 0.13567644,
0.11603869, -0.48345447],
[-0.48280704, 0.36337918, 0.06998342, ..., 0.02198538,
-0.12259369, -0.19807996]], dtype=float32)
5、基于BERT模型将不定长句子映射到定长向量。具体参数参考开源库的API介绍。