langchain_community.embeddings.itrex.QuantizedBgeEmbeddings

class langchain_community.embeddings.itrex.QuantizedBgeEmbeddings[source]

继承自: BaseModel, Embeddings

利用 Itrex 运行时释放压缩 NLP 模型的性能。

请确保您已安装 intel-extension-for-transformers。

输入

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

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

onnx_file_name: Optional[str] =

由 itrex 导出的 onnx 优化模型的文件名。(默认 "int8-model.onnx")

示例

from langchain_community.embeddings import QuantizedBgeEmbeddings

model_name = "Intel/bge-small-en-v1.5-sts-int8-static-inc"
encode_kwargs = {'normalize_embeddings': True}
hf = QuantizedBgeEmbeddings(
    model_name,
    encode_kwargs=encode_kwargs,
    query_instruction="Represent this sentence for searching relevant passages: "
)

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

如果输入数据无法解析成有效的模型,将引发 ValidationError。

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

异步嵌入搜索文档。

参数

texts (List[str]) – 要嵌入的文本列表。

返回

嵌入列表。

返回类型

List[List[float]]

async aembed_query(text: str) List[float]

异步嵌入查询文本。

参数

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

返回

嵌入。

返回类型

List[float]

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

使用优化嵌入器模型将文本文档列表进行嵌入。

输入

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

输出

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

参数

texts (List[str]) –

返回类型

List[List[float]]

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

嵌入查询文本。

参数

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

返回

嵌入。

返回类型

List[float]

load_model() None[source]
返回类型

None

QuantizedBgeEmbeddings 的使用示例