MistralAIEmbeddings#
- class langchain_mistralai.embeddings.MistralAIEmbeddings[source]#
基础类:
BaseModel
,Embeddings
MistralAI嵌入模型集成。
- Setup:
安装
langchain_mistralai
并设置环境变量MISTRAL_API_KEY
。pip install -U langchain_mistralai export MISTRAL_API_KEY="your-api-key"
- Key init args — completion params:
- model: str
使用的MistralAI模型名称。
- Key init args — client params:
- api_key: Optional[SecretStr]
MistralAI API 的 API 密钥。如果未提供,将从环境变量 MISTRAL_API_KEY 中读取。
- max_retries: int
如果请求失败,重试的次数。
- timeout: int
在超时前等待响应的秒数。
- wait_time: int
在发生429错误时,重试请求前等待的秒数。
- max_concurrent_requests: int
向Mistral API发出的最大并发请求数。
请参阅参数部分中支持的初始化参数及其描述的完整列表。
- Instantiate:
from __module_name__ import MistralAIEmbeddings embed = MistralAIEmbeddings( model="mistral-embed", # 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 text:
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 async_client: AsyncClient = None#
- param client: Client = None#
- param endpoint: str = 'https://api.mistral.ai/v1/'#
- param max_concurrent_requests: int = 64#
- param max_retries: int = 5#
- param mistral_api_key: SecretStr [Optional] (alias 'api_key')#
- param model: str = 'mistral-embed'#
- param timeout: int = 120#
- param tokenizer: Tokenizer = None#
- param wait_time: int = 30#
- 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]
使用 MistralAIEmbeddings 的示例