HuggingFace嵌入#
- class langchain_huggingface.embeddings.huggingface.HuggingFaceEmbeddings[source]#
基础类:
BaseModel
,Embeddings
HuggingFace 句子嵌入模型。
要使用,您应该安装
sentence_transformers
python包。示例
from langchain_huggingface 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]#
调用encode方法时传递给Sentence Transformer模型文档的关键字参数,例如prompt_name、prompt、batch_size、precision、normalize_embeddings等。另请参阅Sentence Transformer文档:https://sbert.net/docs/package_reference/SentenceTransformer.html#sentence_transformers.SentenceTransformer.encode
- param model_kwargs: Dict[str, Any] [Optional]#
传递给Sentence Transformer模型的关键字参数,例如device、prompts、default_prompt_name、revision、trust_remote_code或token。另请参阅Sentence Transformer文档:https://sbert.net/docs/package_reference/SentenceTransformer.html#sentence_transformers.SentenceTransformer
- param model_name: str = 'sentence-transformers/all-mpnet-base-v2' (alias 'model')#
使用的模型名称。
- param multi_process: bool = False#
在多个GPU上运行encode()。
- param query_encode_kwargs: Dict[str, Any] [Optional]#
调用encode方法时传递的关键字参数,用于Sentence Transformer模型的查询,例如prompt_name、prompt、batch_size、precision、normalize_embeddings等。另请参阅Sentence Transformer文档:https://sbert.net/docs/package_reference/SentenceTransformer.html#sentence_transformers.SentenceTransformer.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:
列表[浮点数]
使用 HuggingFaceEmbeddings 的示例