HuggingFace嵌入#

class langchain_community.embeddings.huggingface.HuggingFaceEmbeddings[source]#

基础类:BaseModel, Embeddings

自版本0.2.2起已弃用:请改用:class:`~langchain_huggingface.HuggingFaceEmbeddings`。在langchain-community==1.0之前不会移除。

HuggingFace 句子转换器嵌入模型。

要使用,您应该安装sentence_transformers python包。

示例

from langchain_community.embeddings import HuggingFaceEmbeddings

model_name = "sentence-transformers/all-mpnet-base-v2"
model_kwargs = {'device': 'cpu'}
encode_kwargs = {'normalize_embeddings': False}
hf = HuggingFaceEmbeddings(
    model_name=model_name,
    model_kwargs=model_kwargs,
    encode_kwargs=encode_kwargs
)

初始化 sentence_transformer。

param cache_folder: str | None = None#

存储模型的路径。 也可以通过SENTENCE_TRANSFORMERS_HOME环境变量设置。

param encode_kwargs: Dict[str, Any] [Optional]#

调用Sentence Transformer模型的encode方法时要传递的关键字参数,例如prompt_namepromptbatch_sizeprecisionnormalize_embeddings等。 另请参阅Sentence Transformer文档:https://sbert.net/docs/package_reference/SentenceTransformer.html#sentence_transformers.SentenceTransformer.encode

param model_kwargs: Dict[str, Any] [Optional]#

传递给Sentence Transformer模型的关键字参数,例如devicepromptsdefault_prompt_namerevisiontrust_remote_codetoken。另请参阅Sentence Transformer文档:https://sbert.net/docs/package_reference/SentenceTransformer.html#sentence_transformers.SentenceTransformer

param model_name: str = 'sentence-transformers/all-mpnet-base-v2'#

使用的模型名称。

param multi_process: bool = False#

在多个GPU上运行encode()。

param show_progress: bool = False#

是否显示进度条。

async aembed_documents(texts: list[str]) list[list[float]]#

异步嵌入搜索文档。

Parameters:

文本 (列表[字符串]) – 要嵌入的文本列表。

Returns:

嵌入列表。

Return type:

列表[列表[浮点数]]

async aembed_query(text: str) list[float]#

异步嵌入查询文本。

Parameters:

文本 (str) – 要嵌入的文本。

Returns:

嵌入。

Return type:

列表[浮点数]

embed_documents(texts: List[str]) List[List[float]][source]#

使用HuggingFace变压器模型计算文档嵌入。

Parameters:

文本 (列表[字符串]) – 要嵌入的文本列表。

Returns:

嵌入列表,每个文本对应一个。

Return type:

列表[列表[float]]

embed_query(text: str) List[float][source]#

使用HuggingFace变压器模型计算查询嵌入。

Parameters:

文本 (str) – 要嵌入的文本。

Returns:

文本的嵌入。

Return type:

列表[float]

使用 HuggingFaceEmbeddings 的示例