langchain_community.embeddings.huggingface.HuggingFaceInstructEmbeddings

class langchain_community.embeddings.huggingface.HuggingFaceInstructEmbeddings[源代码]

基类: BaseModelEmbeddings

封装 sentence_transformers 嵌入模型。

要使用,您应该已安装 sentence_transformersInstructorEmbedding Python 包。

示例

from langchain_community.embeddings import HuggingFaceInstructEmbeddings

model_name = "hkunlp/instructor-large"
model_kwargs = {'device': 'cpu'}
encode_kwargs = {'normalize_embeddings': True}
hf = HuggingFaceInstructEmbeddings(
    model_name=model_name,
    model_kwargs=model_kwargs,
    encode_kwargs=encode_kwargs
)

初始化 sentence_transformer。

param cache_folder: Optional[str] = None

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

param embed_instruction: str = ' Represent the document for retrieval:'

用于嵌入文档的指令。

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

调用模型的 encode 方法时传递的键值参数。

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

传递给模型的键值参数。

param model_name: str = 'hkunlp/instructor-large'

要使用的模型名称。

参数 查询指令: str = '表示用于检索支持文档的问题:'

用于嵌入查询的指令。

参数 show_progress :bool = False

是否显示进度条。

async aembed_documents(texts: List[str]) List[List[float]]

异步嵌入文档搜索。

参数

texts (列表str– 要嵌入的文本列表。

返回

嵌入列表。

返回类型

列表[列表[float]]

async aembed_query(text: str) List[float]

异步嵌入文本。

参数

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

返回

嵌入。

返回类型

列表[float]

embed_documents(texts: List[str]) List[List[float]][源代码]

使用HuggingFace指令模型计算文档嵌入。

参数

texts (列表str– 要嵌入的文本列表。

返回

每个文本的嵌入列表。

返回类型

列表[列表[float]]

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

使用HuggingFace指令模型计算查询嵌入。

参数

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

返回

文本的嵌入。

返回类型

列表[float]

使用HuggingFaceInstructEmbeddings的示例