Hugging Face
让我们加载 Hugging Face Embedding 类。
%pip install --upgrade --quiet langchain langchain-huggingface sentence_transformers
from langchain_huggingface.embeddings import HuggingFaceEmbeddings
API 参考:HuggingFaceEmbeddings
embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-mpnet-base-v2")
text = "This is a test document."
query_result = embeddings.embed_query(text)
query_result[:3]
[-0.04895168915390968, -0.03986193612217903, -0.021562768146395683]
doc_result = embeddings.embed_documents([text])
Hugging Face 推理提供者
我们还可以通过推理提供者访问嵌入模型,这使我们能够在可扩展的无服务器基础设施上使用开源模型。
首先,我们需要从Hugging Face获取一个只读 API 密钥。
from getpass import getpass
huggingfacehub_api_token = getpass()
现在我们可以使用HuggingFaceInferenceAPIEmbeddings
类,通过推理提供者运行开源嵌入模型。
from langchain_huggingface import HuggingFaceInferenceAPIEmbeddings
embeddings = HuggingFaceInferenceAPIEmbeddings(
api_key=huggingfacehub_api_token,
model_name="sentence-transformers/all-MiniLM-l6-v2",
)
query_result = embeddings.embed_query(text)
query_result[:3]
[-0.038338541984558105, 0.1234646737575531, -0.028642963618040085]
Hugging Face Hub
我们还可以通过 Hugging Face Hub 软件包在本地生成嵌入,这需要我们安装 huggingface_hub
!pip install huggingface_hub
from langchain_huggingface.embeddings import HuggingFaceEndpointEmbeddings
embeddings = HuggingFaceEndpointEmbeddings()
text = "This is a test document."
query_result = embeddings.embed_query(text)
query_result[:3]