HuggingFaceInstructEmbeddings#

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

基础类:BaseModel, Embeddings

围绕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: str | None = 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'#

使用的模型名称。

param query_instruction: str = 'Represent the question for retrieving supporting documents: '#

用于嵌入查询的说明。

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]][来源]#

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

Parameters:

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

Returns:

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

Return type:

列表[列表[float]]

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

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

Parameters:

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

Returns:

文本的嵌入。

Return type:

列表[float]

使用 HuggingFaceInstructEmbeddings 的示例