文本嵌入推理
Hugging Face 文本嵌入推理 (TEI) 是一个用于部署和服务开源 文本嵌入和序列分类模型的工具包。
TEI
支持对最流行模型的高性能提取, 包括FlagEmbedding
、Ember
、GTE
和E5
。
要在 langchain 中使用它,首先安装 huggingface-hub
。
%pip install --upgrade huggingface-hub
然后使用 TEI 暴露一个嵌入模型。例如,使用 Docker,您可以按如下方式服务 BAAI/bge-large-en-v1.5
:
model=BAAI/bge-large-en-v1.5
revision=refs/pr/5
volume=$PWD/data # 与 Docker 容器共享一个卷,以避免每次运行时下载权重
docker run --gpus all -p 8080:80 -v $volume:/data --pull always ghcr.io/huggingface/text-embeddings-inference:0.6 --model-id $model --revision $revision
最后,实例化客户端并嵌入您的文本。
from langchain_huggingface.embeddings import HuggingFaceEndpointEmbeddings
embeddings = HuggingFaceEndpointEmbeddings(model="http://localhost:8080")
text = "什么是深度学习?"
query_result = embeddings.embed_query(text)
query_result[:3]
[0.018113142, 0.00302585, -0.049911194]
doc_result = embeddings.embed_documents([text])
doc_result[0][:3]
[0.018113142, 0.00302585, -0.049911194]