AlephAlpha对称语义嵌入#

class langchain_community.embeddings.aleph_alpha.AlephAlphaSymmetricSemanticEmbedding[source]#

基础:AlephAlphaAsymmetricSemanticEmbedding

Aleph Alpha语义嵌入的对称版本。

主要区别在于这里,文档和查询都嵌入了SemanticRepresentation.Symmetric .. rubric:: 示例

from aleph_alpha import AlephAlphaSymmetricSemanticEmbedding

embeddings = AlephAlphaAsymmetricSemanticEmbedding(
    normalize=True, compress_to_size=128
)
text = "This is a test text"

doc_result = embeddings.embed_documents([text])
query_result = embeddings.embed_query(text)

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

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

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

param aleph_alpha_api_key: str | None = None#

Aleph Alpha API 的 API 密钥。

param compress_to_size: int | None = None#

返回的嵌入应该是原始的5120维向量,还是应该压缩为128维。

param contextual_control_threshold: int | None = None#

注意力控制参数仅适用于在请求中明确设置的令牌。

param control_log_additive: bool = True#

通过将log(control_factor)添加到注意力分数上,对提示项应用控制。

param host: str = 'https://api.aleph-alpha.com'#

API主机的主机名。 默认的是“https://api.aleph-alpha.com”)

param hosting: str | None = None#

确定请求可以在哪些数据中心处理。 您可以将参数设置为“aleph-alpha”或省略它(默认为None)。 不设置此值或将其设置为None,使我们能够在自己的数据中心和其他提供商托管的服务器上处理您的请求时具有最大的灵活性。 选择此选项以获得最大的可用性。 将其设置为“aleph-alpha”使我们只能在我们的数据中心处理请求。 选择此选项以获得最大的数据隐私。

param model: str = 'luminous-base'#

使用的模型名称。

param nice: bool = False#

将此设置为True,将向API发出信号,表明您打算通过将您的请求优先级降低到并发请求之下来对其他用户友好。

param normalize: bool = False#

返回的嵌入是否应该被归一化

param request_timeout_seconds: int = 305#

客户端超时时间,将设置为requests库的API调用中的HTTP请求。服务器将在300秒后关闭所有请求,并返回内部服务器错误。

param total_retries: int = 8#

在请求因某些可重试状态码失败时进行的重试次数。如果最后一次重试失败,则会引发相应的异常。请注意,在重试之间会应用指数退避,从第一次重试后的0.5秒开始,每次重试后加倍。因此,在默认的8次重试设置下,重试之间总共增加了63.5秒的等待时间。

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

调用Aleph Alpha的文档端点。

Parameters:

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

Returns:

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

Return type:

列表[列表[float]]

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

调用Aleph Alpha的非对称查询嵌入端点 :param text: 要嵌入的文本。

Returns:

文本的嵌入。

Parameters:

文本 (str)

Return type:

列表[float]

使用 AlephAlphaSymmetricSemanticEmbedding 的示例