确定性假嵌入#

class langchain_core.embeddings.fake.DeterministicFakeEmbedding[source]#

基础类: Embeddings, BaseModel

用于单元测试目的的确定性假嵌入模型。

此嵌入模型通过从正态分布中采样来创建嵌入,采样的种子基于文本的哈希值。

不要在测试之外使用此模型,因为它不是一个真正的嵌入模型。

Instantiate:
from langchain_core.embeddings import DeterministicFakeEmbedding
embed = DeterministicFakeEmbedding(size=100)
Embed single text:
input_text = "The meaning of life is 42"
vector = embed.embed_query(input_text)
print(vector[:3])
[-0.700234640213188, -0.581266257710429, -1.1328482266445354]
Embed multiple texts:
input_texts = ["Document 1...", "Document 2..."]
vectors = embed.embed_documents(input_texts)
print(len(vectors))
# The first 3 coordinates for the first vector
print(vectors[0][:3])
2
[-0.5670477847544458, -0.31403828652395727, -0.5840547508955257]

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

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

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

param size: int [Required]#

嵌入向量的大小。

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

嵌入搜索文档。

Parameters:

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

Returns:

嵌入列表。

Return type:

列表[列表[浮点数]]

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

嵌入查询文本。

Parameters:

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

Returns:

嵌入。

Return type:

列表[浮点数]

使用 DeterministicFakeEmbedding 的示例