TogetherEmbeddings#

class langchain_together.embeddings.TogetherEmbeddings[source]#

基础类:BaseModel, Embeddings

Together嵌入模型集成。

Setup:

安装 langchain_together 并设置环境变量 TOGETHER_API_KEY

pip install -U langchain_together
export TOGETHER_API_KEY="your-api-key"
Key init args — completion params:
model: str

使用的Together模型名称。

Key init args — client params:

api_key: Optional[SecretStr]

请参阅参数部分中支持的初始化参数及其描述的完整列表。

Instantiate:
from __module_name__ import TogetherEmbeddings

embed = TogetherEmbeddings(
    model="togethercomputer/m2-bert-80M-8k-retrieval",
    # api_key="...",
    # other params...
)
Embed single text:
input_text = "The meaning of life is 42"
vector = embed.embed_query(input_text)
print(vector[:3])
[-0.024603435769677162, -0.007543657906353474, 0.0039630369283258915]
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.024603435769677162, -0.007543657906353474, 0.0039630369283258915]
Async:
 vector = await embed.aembed_query(input_text)
print(vector[:3])

 # multiple:
 # await embed.aembed_documents(input_texts)
[-0.009100092574954033, 0.005071679595857859, -0.0029193938244134188]

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

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

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

param allowed_special: Literal['all'] | Set[str] = {}#

尚未支持。

param chunk_size: int = 1000#

每批嵌入的最大文本数量。

尚未支持。

param default_headers: Mapping[str, str] | None = None#
param default_query: Mapping[str, object] | None = None#
param dimensions: int | None = None#

生成的输出嵌入应具有的维度数。

尚未支持。

param disallowed_special: Literal['all'] | Set[str] | Sequence[str] = 'all'#

尚未支持。

param embedding_ctx_length: int = 4096#

一次嵌入的最大令牌数。

尚未支持。

param http_async_client: Any | None = None#

可选的httpx.AsyncClient。仅用于异步调用。如果您希望为同步调用使用自定义客户端,则还必须指定http_client。

param http_client: Any | None = None#

可选的httpx.Client。仅用于同步调用。如果您希望为异步调用使用自定义客户端,则还必须指定http_async_client。

param max_retries: int = 2#

生成时的最大重试次数。

param model: str = 'togethercomputer/m2-bert-80M-8k-retrieval'#

使用的嵌入模型名称。 例如,可以使用‘togethercomputer/m2-bert-80M-8k-retrieval’。

param model_kwargs: Dict[str, Any] [Optional]#

保存任何适用于create调用但未明确指定的模型参数。

param request_timeout: float | Tuple[float, float] | Any | None = None (alias 'timeout')#

请求Together嵌入API的超时时间。可以是浮点数、httpx.Timeout或None。

param show_progress_bar: bool = False#

是否在嵌入时显示进度条。

尚未支持。

param skip_empty: bool = False#

在嵌入时是否跳过空字符串或引发错误。默认情况下不跳过。

尚未支持。

param together_api_base: str [Optional] (alias 'base_url')#

使用的端点URL。

param together_api_key: SecretStr | None [Optional] (alias 'api_key')#

Together AI API 密钥。

如果未提供,则自动从环境变量 TOGETHER_API_KEY 中读取。

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

使用段落模型异步嵌入文档文本列表。

Parameters:

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

Returns:

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

Return type:

列表[列表[float]]

async aembed_query(text: str) List[float][source]#

使用查询模型异步嵌入查询文本。

Parameters:

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

Returns:

文本的嵌入。

Return type:

列表[float]

embed_documents(texts: List[str]) List[List[float]][来源]#

使用段落模型嵌入文档文本列表。

Parameters:

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

Returns:

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

Return type:

列表[列表[float]]

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

使用查询模型嵌入查询文本。

Parameters:

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

Returns:

文本的嵌入。

Return type:

列表[float]

使用 TogetherEmbeddings 的示例