FastEmbedEmbeddings#

class langchain_community.embeddings.fastembed.FastEmbedEmbeddings[source]#

基础类:BaseModel, Embeddings

Qdrant 快速嵌入模型。

FastEmbed 是一个轻量级、快速的 Python 库,专为嵌入生成而构建。 查看更多文档: * qdrant/fastembed * https://qdrant.github.io/fastembed/

要使用此类,您必须安装 fastembed Python 包。

pip install fastembed .. rubric:: 示例

从langchain_community.embeddings导入FastEmbedEmbeddings fastembed = FastEmbedEmbeddings()

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

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

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

param batch_size: int = 256#

编码的批量大小。较高的值将使用更多内存,但速度更快。默认值为256。

param cache_dir: str | None = None#

缓存目录的路径。 默认为父目录中的local_cache

param doc_embed_type: Literal['default', 'passage'] = 'default'#

用于文档的嵌入类型 可用的选项有:“default”和“passage”

param max_length: int = 512#

最大令牌数。默认为512。对于大于512的值,行为未知。

param model: Any = None#
param model_name: str = 'BAAI/bge-small-en-v1.5'#

使用的FastEmbedding模型名称 默认为“BAAI/bge-small-en-v1.5” 支持的模型列表请访问 https://qdrant.github.io/fastembed/examples/Supported_Models/

param parallel: int | None = None#

如果 >1,则使用并行编码,建议用于大型数据集的编码。 如果 0,则使用所有可用的核心。 如果 None,则不使用数据并行处理,使用默认的onnxruntime线程。 默认值为 None

param threads: int | None = None#

单个onnxruntime会话可以使用的线程数。 默认为None

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

使用FastEmbed为文档生成嵌入。

Parameters:

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

Returns:

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

Return type:

列表[列表[float]]

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

使用FastEmbed生成查询嵌入。

Parameters:

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

Returns:

文本的嵌入。

Return type:

列表[float]

classmethod validate_environment(values: Dict) Dict[source]#

验证 FastEmbed 是否已安装。

Parameters:

(字典)

Return type:

字典

使用 FastEmbedEmbeddings 的示例