BERT 生产优化

数据挖掘 nlp 伯特 变压器 语义相似性
2022-03-11 00:33:43

我正在使用 BERT 将文本转换为 768 暗向量,它是多语言的:

from sentence_transformers import SentenceTransformer
model = SentenceTransformer('paraphrase-multilingual-mpnet-base-v2') 

现在我想将模型投入生产,但嵌入时间太多,我想减少和优化模型以减少嵌入时间有哪些库可以让我这样做?

1个回答

您可以从使用 torchscript 开始,它可能需要更改您的整个代码,并切换到转换器(通过加载模型的主干和最后一层)所以基本上您可以从 GIL 解释器中退出,因为它不支持多线程。通过使用 torchscript,您可以在 c++ env 中运行您的模型,还有 onnx,我相信它可以提高性能。

如果您的用例不是实时的并且您使用的是 API,则可以使用 rabbitmq 之类的队列机制