From 14e03a649cf1f4302406e8fe640b00a955242824 Mon Sep 17 00:00:00 2001 From: Ionut Mihalache <67947900+ionut-mihalache-uipath@users.noreply.github.com> Date: Sun, 24 May 2026 13:32:31 +0300 Subject: [PATCH] fix: update default api_version for openai --- CHANGELOG.md | 5 +++++ README.md | 4 ++-- packages/uipath_langchain_client/CHANGELOG.md | 6 ++++++ packages/uipath_langchain_client/pyproject.toml | 2 +- .../src/uipath_langchain_client/__version__.py | 2 +- .../clients/fireworks/chat_models.py | 2 +- .../uipath_langchain_client/clients/fireworks/embeddings.py | 2 +- .../uipath_langchain_client/clients/openai/chat_models.py | 4 ++-- .../uipath_langchain_client/clients/openai/embeddings.py | 4 ++-- src/uipath/llm_client/__version__.py | 2 +- src/uipath/llm_client/clients/openai/utils.py | 2 +- src/uipath/llm_client/settings/base.py | 2 +- tests/core/clients/openai/test_unit.py | 6 +++--- tests/core/features/test_api_config.py | 4 ++-- 14 files changed, 29 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index adacba2..99ff954 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to `uipath_llm_client` (core package) will be documented in this file. +## [1.12.2] - 2026-05-24 + +### Changed +- Bumped the default Azure OpenAI API version from `2025-03-01-preview` to `2025-04-01-preview` in the OpenAI passthrough handler's `base_api_config`. + ## [1.11.3] - 2026-05-21 ### Added diff --git a/README.md b/README.md index cab9356..be3a18b 100644 --- a/README.md +++ b/README.md @@ -729,7 +729,7 @@ config = UiPathAPIConfig( client_type="passthrough", vendor_type="openai", api_flavor="chat-completions", - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", ) ``` @@ -739,7 +739,7 @@ config = UiPathAPIConfig( | `client_type` | `"passthrough"` \| `"normalized"` \| `None` | `None` | `"passthrough"` uses vendor-native APIs; `"normalized"` uses UiPath's unified API | | `vendor_type` | `str \| None` | `None` | LLM vendor identifier: `"openai"`, `"vertexai"`, `"awsbedrock"`, `"anthropic"`, `"azure"` | | `api_flavor` | `str \| None` | `None` | Vendor-specific API flavor (e.g., `"chat-completions"`, `"responses"`, `"generate-content"`, `"converse"`, `"invoke"`, `"anthropic-claude"`) | -| `api_version` | `str \| None` | `None` | Vendor-specific API version (e.g., `"2025-03-01-preview"`, `"v1beta1"`) | +| `api_version` | `str \| None` | `None` | Vendor-specific API version (e.g., `"2025-04-01-preview"`, `"v1beta1"`) | | `freeze_base_url` | `bool` | `False` | Prevents httpx from modifying the base URL (required for some vendor SDKs) | ## Advanced Configuration diff --git a/packages/uipath_langchain_client/CHANGELOG.md b/packages/uipath_langchain_client/CHANGELOG.md index 77cc2bb..013c655 100644 --- a/packages/uipath_langchain_client/CHANGELOG.md +++ b/packages/uipath_langchain_client/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to `uipath_langchain_client` will be documented in this file. +## [1.12.2] - 2026-05-24 + +### Changed +- Bumped the default Azure OpenAI API version from `2025-03-01-preview` to `2025-04-01-preview` on `UiPathChatOpenAI`, `UiPathAzureChatOpenAI`, `UiPathOpenAIEmbeddings`, `UiPathAzureOpenAIEmbeddings`, `UiPathChatFireworks`, and `UiPathFireworksEmbeddings`. +- Bumped `uipath-llm-client` floor to `>=1.12.2` to pick up the matching API version default. + ## [1.12.1] - 2026-05-22 ### Changed diff --git a/packages/uipath_langchain_client/pyproject.toml b/packages/uipath_langchain_client/pyproject.toml index e2ad993..7ea7365 100644 --- a/packages/uipath_langchain_client/pyproject.toml +++ b/packages/uipath_langchain_client/pyproject.toml @@ -6,7 +6,7 @@ readme = "README.md" requires-python = ">=3.11" dependencies = [ "langchain>=1.2.15,<2.0.0", - "uipath-llm-client>=1.11.3,<2.0.0", + "uipath-llm-client>=1.12.2,<2.0.0", ] [project.optional-dependencies] diff --git a/packages/uipath_langchain_client/src/uipath_langchain_client/__version__.py b/packages/uipath_langchain_client/src/uipath_langchain_client/__version__.py index 0267bb6..6fa6f41 100644 --- a/packages/uipath_langchain_client/src/uipath_langchain_client/__version__.py +++ b/packages/uipath_langchain_client/src/uipath_langchain_client/__version__.py @@ -1,3 +1,3 @@ __title__ = "UiPath LangChain Client" __description__ = "A Python client for interacting with UiPath's LLM services via LangChain." -__version__ = "1.12.1" +__version__ = "1.12.2" diff --git a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/chat_models.py b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/chat_models.py index eb5e9c6..a731b65 100644 --- a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/chat_models.py +++ b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/chat_models.py @@ -27,7 +27,7 @@ class UiPathChatFireworks(UiPathBaseChatModel, ChatFireworks): # type: ignore[o routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, api_flavor=ApiFlavor.CHAT_COMPLETIONS, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", freeze_base_url=True, ) diff --git a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/embeddings.py b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/embeddings.py index 161b71d..cc1b300 100644 --- a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/embeddings.py +++ b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/fireworks/embeddings.py @@ -25,7 +25,7 @@ class UiPathFireworksEmbeddings(UiPathBaseEmbeddings, FireworksEmbeddings): api_type=ApiType.EMBEDDINGS, routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", freeze_base_url=True, ) diff --git a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/chat_models.py b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/chat_models.py index af0521b..5eb96c4 100644 --- a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/chat_models.py +++ b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/chat_models.py @@ -29,7 +29,7 @@ class UiPathChatOpenAI(UiPathBaseChatModel, ChatOpenAI): # type: ignore[overrid api_type=ApiType.COMPLETIONS, routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", freeze_base_url=False, ) api_flavor: ApiFlavor | str | None = None @@ -85,7 +85,7 @@ class UiPathAzureChatOpenAI(UiPathBaseChatModel, AzureChatOpenAI): # type: igno api_type=ApiType.COMPLETIONS, routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", freeze_base_url=False, ) api_flavor: ApiFlavor | str | None = None diff --git a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/embeddings.py b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/embeddings.py index 4e8b904..8281be3 100644 --- a/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/embeddings.py +++ b/packages/uipath_langchain_client/src/uipath_langchain_client/clients/openai/embeddings.py @@ -22,7 +22,7 @@ class UiPathOpenAIEmbeddings(UiPathBaseEmbeddings, OpenAIEmbeddings): routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, freeze_base_url=True, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", ) # Override fields to avoid errors when instantiating the class @@ -52,7 +52,7 @@ class UiPathAzureOpenAIEmbeddings(UiPathBaseEmbeddings, AzureOpenAIEmbeddings): routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, freeze_base_url=True, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", ) # Override fields to avoid errors when instantiating the class diff --git a/src/uipath/llm_client/__version__.py b/src/uipath/llm_client/__version__.py index 7dda16a..8d889b7 100644 --- a/src/uipath/llm_client/__version__.py +++ b/src/uipath/llm_client/__version__.py @@ -1,3 +1,3 @@ __title__ = "UiPath LLM Client" __description__ = "A Python client for interacting with UiPath's LLM services." -__version__ = "1.11.3" +__version__ = "1.12.2" diff --git a/src/uipath/llm_client/clients/openai/utils.py b/src/uipath/llm_client/clients/openai/utils.py index 198d293..70b5d7f 100644 --- a/src/uipath/llm_client/clients/openai/utils.py +++ b/src/uipath/llm_client/clients/openai/utils.py @@ -20,7 +20,7 @@ def __init__( self.base_api_config = UiPathAPIConfig( routing_mode=RoutingMode.PASSTHROUGH, vendor_type=VendorType.OPENAI, - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", freeze_base_url=False, ) diff --git a/src/uipath/llm_client/settings/base.py b/src/uipath/llm_client/settings/base.py index 2a2b8bf..050d871 100644 --- a/src/uipath/llm_client/settings/base.py +++ b/src/uipath/llm_client/settings/base.py @@ -28,7 +28,7 @@ class UiPathAPIConfig(BaseModel): vendor_type: The LLM vendor (e.g., VendorType.OPENAI, VendorType.VERTEXAI). Required when routing_mode is PASSTHROUGH. api_flavor: Vendor-specific API flavor (e.g., ApiFlavor.CHAT_COMPLETIONS). - api_version: Vendor-specific API version (e.g., "2025-03-01-preview"). + api_version: Vendor-specific API version (e.g., "2025-04-01-preview"). freeze_base_url: If True, prevents httpx from modifying the base URL. Used when the URL must remain exactly as configured. diff --git a/tests/core/clients/openai/test_unit.py b/tests/core/clients/openai/test_unit.py index a50cfe4..d0e8546 100644 --- a/tests/core/clients/openai/test_unit.py +++ b/tests/core/clients/openai/test_unit.py @@ -72,7 +72,7 @@ def test_base_api_config_defaults(self, handler): cfg = handler.base_api_config assert cfg.routing_mode == RoutingMode.PASSTHROUGH assert cfg.vendor_type == VendorType.OPENAI - assert cfg.api_version == "2025-03-01-preview" + assert cfg.api_version == "2025-04-01-preview" assert cfg.freeze_base_url is False assert cfg.api_type is None assert cfg.api_flavor is None @@ -101,7 +101,7 @@ def test_preserves_base_config_fields(self, handler): api_config: UiPathAPIConfig = call_args.kwargs["api_config"] assert api_config.routing_mode == RoutingMode.PASSTHROUGH assert api_config.vendor_type == VendorType.OPENAI - assert api_config.api_version == "2025-03-01-preview" + assert api_config.api_version == "2025-04-01-preview" def test_rewrites_url(self, handler): request = _make_request("/v1/chat/completions") @@ -120,7 +120,7 @@ def test_injects_api_version_header(self, handler): request = _make_request("/v1/chat/completions") handler.fix_url_and_headers(request) - assert request.headers.get("X-UiPath-LlmGateway-ApiVersion") == "2025-03-01-preview" + assert request.headers.get("X-UiPath-LlmGateway-ApiVersion") == "2025-04-01-preview" # ============================================================================ diff --git a/tests/core/features/test_api_config.py b/tests/core/features/test_api_config.py index cffe8ed..9454207 100644 --- a/tests/core/features/test_api_config.py +++ b/tests/core/features/test_api_config.py @@ -52,10 +52,10 @@ def test_api_flavor_and_version(self): routing_mode=RoutingMode.PASSTHROUGH, vendor_type="openai", api_flavor="chat-completions", - api_version="2025-03-01-preview", + api_version="2025-04-01-preview", ) assert config.api_flavor == "chat-completions" - assert config.api_version == "2025-03-01-preview" + assert config.api_version == "2025-04-01-preview" class TestEnumConstants: