langchain_community.embeddings.azure_openai.AzureOpenAIEmbeddings

class langchain_community.embeddings.azure_openai.AzureOpenAIEmbeddings[source]

Bases: OpenAIEmbeddings

弃用于版本 0.0.9: 请使用 langchain_openai.AzureOpenAIEmbeddings

Azure OpenAI 嵌入式 API。

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

如果输入数据无法解析成有效的模型,将引发 ValidationError。

param allowed_special: Union[Literal['all'], Set[str]] = {}
param azure_ad_token: Union[str, None] = None

您的 Azure Active Directory 令牌。

如果没有提供,将从环境变量 AZURE_OPENAI_AD_TOKEN 中自动推断。

更多信息:https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id.

param azure_ad_token_provider: Union[Callable[[], str], None] = None

返回 Azure Active Directory 令牌的函数。

将在每次请求时调用。

param azure_endpoint: Union[str, None] = None

您的 Azure 终端,包括资源。

如果未提供,将自动从环境变量 AZURE_OPENAI_ENDPOINT 中推断。

示例:https://example-resource.azure.openai.com/

param chunk_size: int = 1000

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

param default_headers: Union[Mapping[str, str], None] = None
param default_query: Union[Mapping[str, object], None] = None
param deployment: Optional[str] = None (alias 'azure_deployment')

模型部署。

如果给出,则将基本客户端 URL 设置为包含 /deployments/{azure_deployment}。注意:这意味着您将无法使用非部署端点。

参数 disallowed_special: Union[Literal['all'], Set[str], Sequence[str]] = 'all'
参数 embedding_ctx_length: int = 8191

每次嵌入的最大标记数。

参数 headers: Any = None
参数 http_client: Union[Any, None] = None

可选的httpx.Client。

参数 max_retries: int = 2

生成时最大的重试次数。

参数 model: str = 'text-embedding-ada-002'
参数 model_kwargs: Dict[str, Any] [Optional]

包含在“create”调用中有效但未明确指定的任何模型参数。

参数 openai_api_base: Optional[str] = None (别名 base_url)

API请求的基本URL路径,如果未使用代理或服务模拟器,请留空。

param openai_api_key: Union[str, None] = None (别名 'api_key')

如果未提供,则从环境变量AZURE_OPENAI_API_KEY中自动推断。

param openai_api_type: Optional[str] = None
param openai_api_version: Optional[str] = None (别名 'api_version')

如果未提供,则从环境变量OPENAI_API_VERSION中自动推断。

param openai_organization: Optional[str] = None (别名 'organization')

如果未提供,则从环境变量OPENAI_ORG_ID中自动推断。

param openai_proxy: Optional[str] = None
param request_timeout: Optional[Union[float, Tuple[float, float], Any] = None (别名 'timeout')

对OpenAI完成API请求的超时时间。可以是float、httpx.Timeout或None。

参数 retry_max_seconds: int = 20

重试之间等待的最大秒数

参数 retry_min_seconds: int = 4

重试之间等待的最小秒数

参数 show_progress_bar: bool = False

在嵌入时是否显示进度条

参数 skip_empty: bool = False

在嵌入时是否跳过空字符串或者抛出错误。默认不跳过。

参数 tiktoken_enabled: bool = True

对于非OpenAI嵌入API的实现,例如 text-generation-webui–extensions openai 扩展,将该值设置为False。

参数 tiktoken_model_name: Optional[str] = None

在调用此类时传递给tiktoken的模型名称。tiktoken用于统计文档中令牌的数量,以限制其不超过一定的限制。默认情况下,当设置为None时,此值将与嵌入模型名称相同。然而,在某些情况下,您可能希望使用此嵌入类与tiktoken不支持的模式名称。这可以包括使用Azure嵌入或在使用许多公开类似OpenAI API但使用不同模型的模型提供程序时。在这些情况下,为了避免在调用tiktoken时出错,您可以在此处指定要使用的方法名称。

参数 validate_base_url: bool = True
async aembed_documents(texts: List[str], chunk_size: Optional[int] = 0) List[List[float]]

异步调用 OpenAI 的嵌入端点以嵌入搜索文档。

参数
  • texts (List[str]) – 要嵌入的文本列表。

  • chunk_size (Optional[int]) – 嵌入的块大小。如果为 None,将使用类指定的块大小。

返回

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

返回类型

List[List[float]]

async aembed_query(text: str) List[float]

异步调用 OpenAI 的嵌入端点以嵌入查询文本。

参数

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

返回

文本的嵌入。

返回类型

List[float]

embed_documents(texts: List[str], chunk_size: Optional[int] = 0) List[List[float]]

调用 OpenAI 的嵌入端点以嵌入搜索文档。

参数
  • texts (List[str]) – 要嵌入的文本列表。

  • chunk_size (Optional[int]) – 嵌入的块大小。如果为 None,将使用类指定的块大小。

返回

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

返回类型

List[List[float]]

embed_query(text: str) List[float]

调用 OpenAI 的嵌入端点以嵌入查询文本。

参数

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

返回

文本的嵌入。

返回类型

List[float]

使用 AzureOpenAIEmbeddings 的示例