validate_environment() — langchain Function Reference
Architecture documentation for the validate_environment() function in azure.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD b70a33fd_6a66_d899_a452_8d03cb201e73["validate_environment()"] bbcfcc59_f93e_19a3_d4e2_df1fc2f26082["AzureOpenAIEmbeddings"] b70a33fd_6a66_d899_a452_8d03cb201e73 -->|defined in| bbcfcc59_f93e_19a3_d4e2_df1fc2f26082 style b70a33fd_6a66_d899_a452_8d03cb201e73 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/openai/langchain_openai/embeddings/azure.py lines 163–226
def validate_environment(self) -> Self:
"""Validate that api key and python package exists in environment."""
# For backwards compatibility. Before openai v1, no distinction was made
# between azure_endpoint and base_url (openai_api_base).
openai_api_base = self.openai_api_base
if openai_api_base and self.validate_base_url:
# Only validate openai_api_base if azure_endpoint is not provided
if not self.azure_endpoint and "/openai" not in openai_api_base:
self.openai_api_base = cast(str, self.openai_api_base) + "/openai"
msg = (
"As of openai>=1.0.0, Azure endpoints should be specified via "
"the `azure_endpoint` param not `openai_api_base` "
"(or alias `base_url`). "
)
raise ValueError(msg)
if self.deployment:
msg = (
"As of openai>=1.0.0, if `deployment` (or alias "
"`azure_deployment`) is specified then "
"`openai_api_base` (or alias `base_url`) should not be. "
"Instead use `deployment` (or alias `azure_deployment`) "
"and `azure_endpoint`."
)
raise ValueError(msg)
client_params: dict = {
"api_version": self.openai_api_version,
"azure_endpoint": self.azure_endpoint,
"azure_deployment": self.deployment,
"api_key": (
self.openai_api_key.get_secret_value() if self.openai_api_key else None
),
"azure_ad_token": (
self.azure_ad_token.get_secret_value() if self.azure_ad_token else None
),
"azure_ad_token_provider": self.azure_ad_token_provider,
"organization": self.openai_organization,
"base_url": self.openai_api_base,
"timeout": self.request_timeout,
"max_retries": self.max_retries,
"default_headers": {
**(self.default_headers or {}),
"User-Agent": "langchain-partner-python-azure-openai",
},
"default_query": self.default_query,
}
if not self.client:
sync_specific: dict = {"http_client": self.http_client}
self.client = openai.AzureOpenAI(
**client_params, # type: ignore[arg-type]
**sync_specific,
).embeddings
if not self.async_client:
async_specific: dict = {"http_client": self.http_async_client}
if self.azure_ad_async_token_provider:
client_params["azure_ad_token_provider"] = (
self.azure_ad_async_token_provider
)
self.async_client = openai.AsyncAzureOpenAI(
**client_params, # type: ignore[arg-type]
**async_specific,
).embeddings
return self
Domain
Subdomains
Source
Frequently Asked Questions
What does validate_environment() do?
validate_environment() is a function in the langchain codebase, defined in libs/partners/openai/langchain_openai/embeddings/azure.py.
Where is validate_environment() defined?
validate_environment() is defined in libs/partners/openai/langchain_openai/embeddings/azure.py at line 163.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free