AzureOpenAIEmbeddings¶
参考文档
本页面包含 AzureOpenAIEmbeddings 的参考文档。有关使用 AzureOpenAIEmbeddings 的概念指南、教程和示例,请参阅文档。
langchain_openai.embeddings.AzureOpenAIEmbeddings ¶
AzureOpenAI 嵌入模型集成。
设置
要访问 AzureOpenAI 嵌入模型,您需要创建一个 Azure 帐户,获取一个 API 密钥,并安装 langchain-openai 集成包。
您需要部署一个 Azure OpenAI 实例。您可以按照此指南在 Azure 门户上部署一个版本。
一旦您的实例运行,请确保您有实例的名称和密钥。您可以在 Azure 门户中实例的“密钥和终结点”部分找到密钥。
关键初始化参数 — completion params: model: 要使用的 AzureOpenAI 模型名称。dimensions: 嵌入的维度数量。仅当底层模型支持时才可指定。
有关支持的初始化参数及其描述的完整列表,请参见参数部分。
实例化
from langchain_openai import AzureOpenAIEmbeddings
embeddings = AzureOpenAIEmbeddings(
model="text-embedding-3-large"
# dimensions: int | None = None, # Can specify dimensions with new text-embedding-3 models
# azure_endpoint="https://<your-endpoint>.openai.azure.com/", If not provided, will read env variable AZURE_OPENAI_ENDPOINT
# api_key=... # Can provide an API key directly. If missing read env variable AZURE_OPENAI_API_KEY
# openai_api_version=..., # If not provided, will read env variable AZURE_OPENAI_API_VERSION
)
异步
| 方法 | 描述 |
|---|---|
embed_documents |
调用 OpenAI 的嵌入终结点以嵌入搜索文档。 |
embed_query |
调用 OpenAI 的嵌入终结点以嵌入查询文本。 |
aembed_documents |
异步调用 OpenAI 的嵌入终结点以嵌入搜索文档。 |
aembed_query |
异步调用 OpenAI 的嵌入终结点以嵌入查询文本。 |
build_extra |
根据传入的额外参数构建额外的关键字参数(kwargs)。 |
validate_environment |
验证 API 密钥和 Python 包是否存在于环境中。 |
dimensions class-attribute instance-attribute ¶
dimensions: int | None = None
生成的输出嵌入应具有的维度数。
仅在 text-embedding-3 及更高版本的模型中支持。
openai_api_base class-attribute instance-attribute ¶
openai_api_base: str | None = Field(
alias="base_url", default_factory=from_env("OPENAI_API_BASE", default=None)
)
API 请求的基础 URL 路径,如果不使用代理或服务模拟器,请留空。
embedding_ctx_length class-attribute instance-attribute ¶
embedding_ctx_length: int = 8191
一次嵌入的最大令牌数。
openai_organization class-attribute instance-attribute ¶
openai_organization: str | None = Field(
alias="organization",
default_factory=from_env(["OPENAI_ORG_ID", "OPENAI_ORGANIZATION"], default=None),
)
如果未提供,则从环境变量 `OPENAI_ORG_ID` 自动推断。
request_timeout class-attribute instance-attribute ¶
请求 OpenAI 完成 API 的超时时间。可以是浮点数、`httpx.Timeout` 或 None。
tiktoken_enabled class-attribute instance-attribute ¶
tiktoken_enabled: bool = True
对于嵌入 API 的非 OpenAI 实现,请将此设置为 False,例如 text-generation-webui 的 --extensions openai 扩展。
tiktoken_model_name class-attribute instance-attribute ¶
tiktoken_model_name: str | None = None
使用此类时传递给 tiktoken 的模型名称。Tiktoken 用于计算文档中的令牌数量,以将其限制在特定限制以下。默认情况下,当设置为 None 时,这将与嵌入模型名称相同。但是,在某些情况下,您可能希望将此 Embedding 类与 tiktoken 不支持的模型名称一起使用。这可能包括使用 Azure 嵌入时,或使用众多提供类似 OpenAI API 但具有不同模型的模型提供商之一时。在这些情况下,为了避免在调用 tiktoken 时出错,您可以在此处指定要使用的模型名称。
model_kwargs class-attribute instance-attribute ¶
保存任何未明确指定的、对 create 调用有效的模型参数。
http_client class-attribute instance-attribute ¶
http_client: Any | None = None
可选的 `httpx.Client`。仅用于同步调用。如果您希望为异步调用使用自定义客户端,则还必须指定 `http_async_client`。
http_async_client class-attribute instance-attribute ¶
http_async_client: Any | None = None
可选的 `httpx.AsyncClient`。仅用于异步调用。如果您希望为同步调用使用自定义客户端,则还必须指定 `http_client`。
check_embedding_ctx_length class-attribute instance-attribute ¶
check_embedding_ctx_length: bool = True
是否检查输入的令牌长度,并自动分割超过 embedding_ctx_length 的输入。
azure_endpoint class-attribute instance-attribute ¶
azure_endpoint: str | None = Field(
default_factory=from_env("AZURE_OPENAI_ENDPOINT", default=None)
)
您的 Azure 端点,包括资源。
如果未提供,则自动从环境变量 AZURE_OPENAI_ENDPOINT 推断。
示例:https://example-resource.azure.openai.com/
deployment class-attribute instance-attribute ¶
一个模型部署。
如果给定,则设置基础客户端 URL 以包含 /deployments/{azure_deployment}。
注意
这意味着您将无法使用非部署端点。
openai_api_key class-attribute instance-attribute ¶
openai_api_key: SecretStr | None = Field(
alias="api_key",
default_factory=secret_from_env(
["AZURE_OPENAI_API_KEY", "OPENAI_API_KEY"], default=None
),
)
如果未提供,则自动从环境变量 AZURE_OPENAI_API_KEY 推断。
openai_api_version class-attribute instance-attribute ¶
openai_api_version: str | None = Field(
default_factory=from_env("OPENAI_API_VERSION", default="2023-05-15"),
alias="api_version",
)
如果未提供,则从环境变量 `OPENAI_API_VERSION` 自动推断。
如果未设置环境变量 OPENAI_API_VERSION,则默认设置为 '2023-05-15'。
azure_ad_token class-attribute instance-attribute ¶
azure_ad_token_provider class-attribute instance-attribute ¶
一个返回 Azure Active Directory 令牌的函数。
将在每个同步请求中调用。对于异步请求,如果未提供 `azure_ad_async_token_provider`,则会调用此函数。
azure_ad_async_token_provider class-attribute instance-attribute ¶
一个返回 Azure Active Directory 令牌的函数。
将在每个异步请求中调用。