From 31694d746a16bf1a19f9879e42abb19c21b4636f Mon Sep 17 00:00:00 2001 From: zijie0 Date: Sat, 6 May 2023 20:48:03 +0800 Subject: [PATCH 1/3] Do not overwrite openai.api_version. --- langchain/embeddings/openai.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/langchain/embeddings/openai.py b/langchain/embeddings/openai.py index 52fbf94b836dc3..40a62317253a3b 100644 --- a/langchain/embeddings/openai.py +++ b/langchain/embeddings/openai.py @@ -106,7 +106,7 @@ class OpenAIEmbeddings(BaseModel, Embeddings): client: Any #: :meta private: model: str = "text-embedding-ada-002" deployment: str = model # to support Azure OpenAI Service custom deployment names - openai_api_version: str = "2022-12-01" + openai_api_version: str = "" # to support Azure OpenAI Service custom endpoints openai_api_base: Optional[str] = None # to support Azure OpenAI Service custom endpoints From e14405288c4c42b419cbc68d9082d92c604e24e0 Mon Sep 17 00:00:00 2001 From: zijie0 Date: Sat, 6 May 2023 21:38:18 +0800 Subject: [PATCH 2/3] Update docs and examples. --- docs/modules/models/text_embedding/examples/azureopenai.ipynb | 3 ++- langchain/embeddings/openai.py | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/modules/models/text_embedding/examples/azureopenai.ipynb b/docs/modules/models/text_embedding/examples/azureopenai.ipynb index 435f2e06766ff4..0f09f1e969def9 100644 --- a/docs/modules/models/text_embedding/examples/azureopenai.ipynb +++ b/docs/modules/models/text_embedding/examples/azureopenai.ipynb @@ -22,7 +22,8 @@ "\n", "os.environ[\"OPENAI_API_TYPE\"] = \"azure\"\n", "os.environ[\"OPENAI_API_BASE\"] = \"https:// Date: Sun, 7 May 2023 13:44:59 +0800 Subject: [PATCH 3/3] Check openai_api_version only for Azure OpenAI embeddings. --- langchain/embeddings/openai.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/langchain/embeddings/openai.py b/langchain/embeddings/openai.py index a8a366612790ae..307ecd5921730b 100644 --- a/langchain/embeddings/openai.py +++ b/langchain/embeddings/openai.py @@ -144,11 +144,14 @@ def validate_environment(cls, values: Dict) -> Dict: "OPENAI_API_TYPE", default="", ) - openai_api_version = get_from_dict_or_env( - values, - "openai_api_version", - "OPENAI_API_VERSION", - ) + if openai_api_type in ("azure", "azure_ad", "azuread"): + openai_api_version = get_from_dict_or_env( + values, + "openai_api_version", + "OPENAI_API_VERSION", + ) + else: + openai_api_version = None openai_organization = get_from_dict_or_env( values, "openai_organization", @@ -163,6 +166,7 @@ def validate_environment(cls, values: Dict) -> Dict: openai.organization = openai_organization if openai_api_base: openai.api_base = openai_api_base + if openai_api_version: openai.api_version = openai_api_version if openai_api_type: openai.api_type = openai_api_type