netease-youdao / BCEmbedding

Netease Youdao's open-source embedding and reranker models for RAG products.
Apache License 2.0
1.35k stars 90 forks source link

rerank模型部署和应用疑问 #9

Open Huyueeer opened 7 months ago

Huyueeer commented 7 months ago

embedding模型我可以理解使用SentenceTransformer的方式部署在服务器,使用API访问,rerank模型放在本地应用中可行吗?需要GPU资源吗?对这部分有点疑问

shenlei1020 commented 7 months ago

关于部署: 1、embedding和reranker模型都可以在服务器部署,然后用户端访问算法服务api。 2、如果图简单省事,可以用BCEmbedding来推理,因为提前写好了很多处理逻辑,直接使用就行,效率和sentence-transformers和transformers应该不会有太大区别。如果要想做高性能服务,建议使用faster-transformer,tensorrt或onnx-runtime等框架。 3、embedding和reranker两个尽量都用gpu,cpu也能跑(device='cpu'),但cpu会比较慢。

Huyueeer commented 7 months ago

感谢您的回复,了解了

slieer commented 6 months ago

关于部署: 1、embedding和reranker模型都可以在服务器部署,然后用户端访问算法服务api。 2、如果图简单省事,可以用BCEmbedding来推理,因为提前写好了很多处理逻辑,直接使用就行,效率和sentence-transformers和transformers应该不会有太大区别。如果要想做高性能服务,建议使用faster-transformer,tensorrt或onnx-runtime等框架。 3、embedding和reranker两个尽量都用gpu,cpu也能跑(device='cpu'),但cpu会比较慢。

要多大GPU显存才可以? 8G可以吗? 笔记本显卡可以跑起来吗

zhaoyib commented 5 months ago

关于部署: 1、embedding和reranker模型都可以在服务器部署,然后用户端访问算法服务api。 2、如果图简单省事,可以用BCEmbedding来推理,因为提前写好了很多处理逻辑,直接使用就行,效率和sentence-transformers和transformers应该不会有太大区别。如果要想做高性能服务,建议使用faster-transformer,tensorrt或onnx-runtime等框架。 3、embedding和reranker两个尽量都用gpu,cpu也能跑(device='cpu'),但cpu会比较慢。

要多大GPU显存才可以? 8G可以吗? 笔记本显卡可以跑起来吗

我在本地运行的时候Embedding模型,batch_size = 512的情况下占用大约6Gb显存。Reranker我没有做过本地实验,不是很清楚,但是技术报告中说它有一个cross-encoder结构,处理文本间信息,我感觉可能占用显存会更大一点。