Skip to content

Commit 743a480

Browse files
authored
rename normalized clients (#20)
1 parent 4983b74 commit 743a480

11 files changed

Lines changed: 56 additions & 57 deletions

File tree

.env.example

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,9 @@ LLMGW_ACCESS_TOKEN=""
5454
LLMGW_CLIENT_ID=""
5555
LLMGW_CLIENT_SECRET=""
5656

57-
# Optional tracking and tracing
57+
# Optional for tracking and BYOM
5858
LLMGW_SEMANTIC_USER_ID=""
59+
5960
LLMGW_ACTION_ID=""
60-
LLMGW_ADDITIONAL_HEADERS=""
61+
LLMGW_OPERATION_CODE=""
62+
LlMGW_ADDITIONAL_HEADERS=""

packages/uipath_langchain_client/CHANGELOG.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
All notable changes to `uipath_langchain_client` will be documented in this file.
44

5+
## [1.1.2] - 2026-02-12
6+
7+
### Refactor
8+
- Rename normalized client for better comaptibility with other packages
9+
510
## [1.1.1] - 2026-02-11
611

712
### Fixes
@@ -135,15 +140,15 @@ All notable changes to `uipath_langchain_client` will be documented in this file
135140
- `UiPathChatBedrock` - AWS Bedrock models
136141
- `UiPathChatBedrockConverse` - AWS Bedrock Converse API
137142
- `UiPathAzureAIChatCompletionsModel` - Azure AI models (non-OpenAI)
138-
- `UiPathNormalizedChatModel` - Provider-agnostic normalized API
143+
- `UiPathChat` - Provider-agnostic normalized API
139144

140145
### Embeddings Classes
141146
- `UiPathOpenAIEmbeddings` - OpenAI embeddings via direct API
142147
- `UiPathAzureOpenAIEmbeddings` - OpenAI embeddings via Azure
143148
- `UiPathGoogleGenerativeAIEmbeddings` - Google embeddings
144149
- `UiPathBedrockEmbeddings` - AWS Bedrock embeddings
145150
- `UiPathAzureAIEmbeddingsModel` - Azure AI embeddings
146-
- `UiPathNormalizedEmbeddings` - Provider-agnostic normalized API
151+
- `UiPathEmbeddings` - Provider-agnostic normalized API
147152

148153
### Features
149154
- Support for BYO (Bring Your Own) model connections

packages/uipath_langchain_client/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ For more control, instantiate provider-specific classes directly:
5656
from uipath_langchain_client.openai.chat_models import UiPathAzureChatOpenAI
5757
from uipath_langchain_client.google.chat_models import UiPathChatGoogleGenerativeAI
5858
from uipath_langchain_client.anthropic.chat_models import UiPathChatAnthropic
59-
from uipath_langchain_client.normalized.chat_models import UiPathNormalizedChatModel
59+
from uipath_langchain_client.normalized.chat_models import UiPathChat
6060
from uipath_langchain_client.settings import get_default_client_settings
6161

6262
settings = get_default_client_settings()
@@ -75,7 +75,7 @@ claude_chat = UiPathChatAnthropic(
7575
)
7676

7777
# Normalized (provider-agnostic)
78-
normalized_chat = UiPathNormalizedChatModel(model="gpt-4o-2024-11-20", settings=settings)
78+
normalized_chat = UiPathChat(model="gpt-4o-2024-11-20", settings=settings)
7979
```
8080

8181
## Available Client Types
@@ -99,8 +99,8 @@ Uses UiPath's normalized API for a consistent interface across all providers.
9999

100100
| Class | Description |
101101
|-------|-------------|
102-
| `UiPathNormalizedChatModel` | Provider-agnostic chat completions |
103-
| `UiPathNormalizedEmbeddings` | Provider-agnostic embeddings |
102+
| `UiPathChat` | Provider-agnostic chat completions |
103+
| `UiPathEmbeddings` | Provider-agnostic embeddings |
104104

105105
## Features
106106

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
__title__ = "UiPath LangChain Client"
22
__description__ = "A Python client for interacting with UiPath's LLM services via LangChain."
3-
__version__ = "1.1.1"
3+
__version__ = "1.1.2"
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from uipath_langchain_client.clients.normalized.chat_models import UiPathNormalizedChatModel
2-
from uipath_langchain_client.clients.normalized.embeddings import UiPathNormalizedEmbeddings
1+
from uipath_langchain_client.clients.normalized.chat_models import UiPathChat
2+
from uipath_langchain_client.clients.normalized.embeddings import UiPathEmbeddings
33

4-
__all__ = ["UiPathNormalizedChatModel", "UiPathNormalizedEmbeddings"]
4+
__all__ = ["UiPathChat", "UiPathEmbeddings"]

packages/uipath_langchain_client/src/uipath_langchain_client/clients/normalized/chat_models.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@
1212
- Extended thinking/reasoning parameters for supported models
1313
1414
Example:
15-
>>> from uipath_langchain_client.normalized.chat_models import UiPathNormalizedChatModel
15+
>>> from uipath_langchain_client.normalized.chat_models import UiPathChat
1616
>>> from uipath_langchain_client.settings import get_default_client_settings
1717
>>>
1818
>>> settings = get_default_client_settings()
19-
>>> chat = UiPathNormalizedChatModel(
19+
>>> chat = UiPathChat(
2020
... model="gpt-4o-2024-11-20",
2121
... settings=settings,
2222
... )
@@ -60,7 +60,7 @@
6060
from uipath_langchain_client.settings import UiPathAPIConfig
6161

6262

63-
class UiPathNormalizedChatModel(UiPathBaseLLMClient, BaseChatModel):
63+
class UiPathChat(UiPathBaseLLMClient, BaseChatModel):
6464
"""LangChain chat model using UiPath's normalized (provider-agnostic) API.
6565
6666
This model provides a consistent interface across all LLM providers supported
@@ -86,7 +86,7 @@ class UiPathNormalizedChatModel(UiPathBaseLLMClient, BaseChatModel):
8686
include_thoughts: Whether to include thinking in Gemini responses.
8787
8888
Example:
89-
>>> chat = UiPathNormalizedChatModel(
89+
>>> chat = UiPathChat(
9090
... model="gpt-4o-2024-11-20",
9191
... settings=settings,
9292
... temperature=0.7,

packages/uipath_langchain_client/src/uipath_langchain_client/clients/normalized/embeddings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from uipath_langchain_client.settings import UiPathAPIConfig
44

55

6-
class UiPathNormalizedEmbeddings(UiPathBaseLLMClient, Embeddings):
6+
class UiPathEmbeddings(UiPathBaseLLMClient, Embeddings):
77
"""LangChain embeddings using the UiPath's normalized embeddings API.
88
99
Provides a consistent interface for generating text embeddings across all

packages/uipath_langchain_client/src/uipath_langchain_client/factory.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,10 @@ def get_chat_model(
9696

9797
if client_type == "normalized":
9898
from uipath_langchain_client.clients.normalized.chat_models import (
99-
UiPathNormalizedChatModel,
99+
UiPathChat,
100100
)
101101

102-
return UiPathNormalizedChatModel(
102+
return UiPathChat(
103103
model=model_name,
104104
settings=client_settings,
105105
byo_connection_id=byo_connection_id,
@@ -239,10 +239,10 @@ def get_embedding_model(
239239

240240
if client_type == "normalized":
241241
from uipath_langchain_client.clients.normalized.embeddings import (
242-
UiPathNormalizedEmbeddings,
242+
UiPathEmbeddings,
243243
)
244244

245-
return UiPathNormalizedEmbeddings(
245+
return UiPathEmbeddings(
246246
model=model_name,
247247
settings=client_settings,
248248
byo_connection_id=byo_connection_id,

tests/langchain/conftest.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from uipath_langchain_client.clients.bedrock.embeddings import UiPathBedrockEmbeddings
1313
from uipath_langchain_client.clients.google.chat_models import UiPathChatGoogleGenerativeAI
1414
from uipath_langchain_client.clients.google.embeddings import UiPathGoogleGenerativeAIEmbeddings
15-
from uipath_langchain_client.clients.normalized.chat_models import UiPathNormalizedChatModel
15+
from uipath_langchain_client.clients.normalized.chat_models import UiPathChat
1616
from uipath_langchain_client.clients.openai.chat_models import (
1717
UiPathAzureChatOpenAI,
1818
UiPathChatOpenAI,
@@ -28,7 +28,7 @@
2828
GPT_MODELS_NON_REASONING_CONFIGS = [
2929
{"model_class": UiPathAzureChatOpenAI},
3030
{"model_class": UiPathAzureChatOpenAI, "model_kwargs": {"use_responses_api": True}},
31-
# {"model_class": UiPathNormalizedChatModel},
31+
# {"model_class": UiPathChat},
3232
]
3333

3434
GPT_MODELS_WITH_REASONING_CONFIGS = [
@@ -43,7 +43,7 @@
4343
"verbosity": "low",
4444
},
4545
},
46-
# {"model_class": UiPathNormalizedChatModel, "model_kwargs": {"reasoning_effort": "low"}},
46+
# {"model_class": UiPathChat, "model_kwargs": {"reasoning_effort": "low"}},
4747
]
4848

4949
GEMINI_2_5_CONFIGS = [
@@ -56,7 +56,7 @@
5656
"model_kwargs": {"thinking_budget": 128, "include_thoughts": True},
5757
},
5858
# {
59-
# "model_class": UiPathNormalizedChatModel,
59+
# "model_class": UiPathChat,
6060
# "model_kwargs": {"thinking_budget": 128, "include_thoughts": True},
6161
# },
6262
]
@@ -71,7 +71,7 @@
7171
"model_kwargs": {"thinking_level": "low", "include_thoughts": True},
7272
},
7373
# {
74-
# "model_class": UiPathNormalizedChatModel,
74+
# "model_class": UiPathChat,
7575
# "model_kwargs": {"thinking_level": "low", "include_thoughts": True},
7676
# },
7777
]
@@ -101,7 +101,7 @@
101101
"thinking": {"type": "enabled", "budget_tokens": 1024},
102102
},
103103
},
104-
# {"model_class": UiPathNormalizedChatModel},
104+
# {"model_class": UiPathChat},
105105
]
106106

107107
CLAUDE_MODELS_AWSBEDROCK_CONFIGS = [
@@ -139,7 +139,7 @@
139139
"thinking": {"type": "enabled", "budget_tokens": 1024},
140140
},
141141
},
142-
# {"model_class": UiPathNormalizedChatModel},
142+
# {"model_class": UiPathChat},
143143
]
144144

145145
COMPLETIONS_MODELS_WITH_CONFIGS = {
@@ -164,7 +164,7 @@
164164

165165

166166
COMPLETION_CLIENTS_CLASSES = [
167-
UiPathNormalizedChatModel,
167+
UiPathChat,
168168
UiPathChatOpenAI,
169169
UiPathAzureChatOpenAI,
170170
# UiPathAzureAIChatCompletionsModel,
@@ -175,7 +175,7 @@
175175
# UiPathChatBedrockConverse,
176176
]
177177
EMBEDDINGS_CLIENTS_CLASSES = [
178-
# UiPathNormalizedEmbeddings,
178+
# UiPathEmbeddings,
179179
UiPathOpenAIEmbeddings,
180180
UiPathAzureOpenAIEmbeddings,
181181
# UiPathAzureAIEmbeddingsModel,
@@ -214,11 +214,11 @@ def completions_config(
214214
EMBEDDINGS_MODELS_WITH_CONFIGS = {
215215
"text-embedding-3-large": [
216216
{"model_class": UiPathAzureOpenAIEmbeddings},
217-
# {"model_class": UiPathNormalizedEmbeddings},
217+
# {"model_class": UiPathEmbeddings},
218218
],
219219
"gemini-embedding-001": [
220220
{"model_class": UiPathGoogleGenerativeAIEmbeddings},
221-
# {"model_class": UiPathNormalizedEmbeddings},
221+
# {"model_class": UiPathEmbeddings},
222222
],
223223
}
224224

tests/langchain/langchain_smoke_test.py

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -222,16 +222,12 @@ def test_normalized_client_imports():
222222
print("Testing Normalized client imports...")
223223

224224
from uipath_langchain_client.clients.normalized import (
225-
UiPathNormalizedChatModel,
226-
UiPathNormalizedEmbeddings,
225+
UiPathChat,
226+
UiPathEmbeddings,
227227
)
228228

229-
assert isinstance(UiPathNormalizedChatModel, type), (
230-
"UiPathNormalizedChatModel should be a class"
231-
)
232-
assert isinstance(UiPathNormalizedEmbeddings, type), (
233-
"UiPathNormalizedEmbeddings should be a class"
234-
)
229+
assert isinstance(UiPathChat, type), "UiPathChat should be a class"
230+
assert isinstance(UiPathEmbeddings, type), "UiPathEmbeddings should be a class"
235231

236232
print(" Normalized client imports OK")
237233

@@ -411,21 +407,19 @@ def test_inheritance_normalized():
411407
from langchain_core.language_models.chat_models import BaseChatModel
412408
from uipath_langchain_client.base_client import UiPathBaseLLMClient
413409
from uipath_langchain_client.clients.normalized import (
414-
UiPathNormalizedChatModel,
415-
UiPathNormalizedEmbeddings,
410+
UiPathChat,
411+
UiPathEmbeddings,
416412
)
417413

418-
assert issubclass(UiPathNormalizedChatModel, BaseChatModel), (
419-
"UiPathNormalizedChatModel should inherit from BaseChatModel"
420-
)
421-
assert issubclass(UiPathNormalizedChatModel, UiPathBaseLLMClient), (
422-
"UiPathNormalizedChatModel should inherit from UiPathBaseLLMClient"
414+
assert issubclass(UiPathChat, BaseChatModel), "UiPathChat should inherit from BaseChatModel"
415+
assert issubclass(UiPathChat, UiPathBaseLLMClient), (
416+
"UiPathChat should inherit from UiPathBaseLLMClient"
423417
)
424-
assert issubclass(UiPathNormalizedEmbeddings, Embeddings), (
425-
"UiPathNormalizedEmbeddings should inherit from Embeddings"
418+
assert issubclass(UiPathEmbeddings, Embeddings), (
419+
"UiPathEmbeddings should inherit from Embeddings"
426420
)
427-
assert issubclass(UiPathNormalizedEmbeddings, UiPathBaseLLMClient), (
428-
"UiPathNormalizedEmbeddings should inherit from UiPathBaseLLMClient"
421+
assert issubclass(UiPathEmbeddings, UiPathBaseLLMClient), (
422+
"UiPathEmbeddings should inherit from UiPathBaseLLMClient"
429423
)
430424

431425
print(" Normalized inheritance OK")

0 commit comments

Comments
 (0)