量化双编码器嵌入#

class langchain_community.embeddings.optimum_intel.QuantizedBiEncoderEmbeddings[source]#

基础类:BaseModel, Embeddings

量化的双向编码器嵌入模型。

请确保您已安装optimum-intel和ipex。

Input:

model_name: str = 模型名称。 max_seq_len: int = 用于标记化的最大序列长度。(默认 512) pooling_strategy: str =

“mean” 或 “cls”,最终层的池化策略。(默认值为“mean”)

query_instruction: Optional[str] =

在嵌入之前添加到查询的指令。(默认值为 None)

document_instruction: Optional[str] =

在嵌入之前添加到每个文档的指令。(默认值为 None)

padding: Optional[bool] =

是否在分词过程中添加填充。(默认 True)

model_kwargs: Optional[Dict] =

在初始化期间添加到模型的参数。(默认 {})

encode_kwargs: Optional[Dict] =

在嵌入前向传递期间添加的参数。(默认 {})

示例:

从langchain_community.embeddings导入QuantizedBiEncoderEmbeddings

model_name = “Intel/bge-small-en-v1.5-rag-int8-static” encode_kwargs = {‘normalize_embeddings’: True} hf = QuantizedBiEncoderEmbeddings(

model_name, encode_kwargs=encode_kwargs, query_instruction="表示这句话用于搜索相关段落:"

)

通过解析和验证来自关键字参数的输入数据来创建一个新模型。

如果输入数据无法验证以形成有效模型,则引发 [ValidationError][pydantic_core.ValidationError]。

self 被显式地设为仅位置参数,以允许 self 作为字段名称。

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]#

使用优化嵌入模型嵌入文本文档列表。

Input:

texts: List[str] = 要嵌入的文本文档列表。

Output:

List[List[float]] = 每个文本文档的嵌入。

Parameters:

文本 (列表[字符串])

Return type:

列表[列表[float]]

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

嵌入查询文本。

Parameters:

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

Returns:

嵌入。

Return type:

列表[float]

load_model() None[source]#
Return type:

使用 QuantizedBiEncoderEmbeddings 的示例