unique_toolkit 0.8.20__py3-none-any.whl → 0.8.22__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- unique_toolkit/language_model/functions.py +4 -0
- unique_toolkit/language_model/infos.py +67 -0
- unique_toolkit/language_model/service.py +3 -0
- {unique_toolkit-0.8.20.dist-info → unique_toolkit-0.8.22.dist-info}/METADATA +11 -1
- {unique_toolkit-0.8.20.dist-info → unique_toolkit-0.8.22.dist-info}/RECORD +7 -7
- {unique_toolkit-0.8.20.dist-info → unique_toolkit-0.8.22.dist-info}/LICENSE +0 -0
- {unique_toolkit-0.8.20.dist-info → unique_toolkit-0.8.22.dist-info}/WHEEL +0 -0
|
@@ -94,6 +94,7 @@ def complete(
|
|
|
94
94
|
|
|
95
95
|
async def complete_async(
|
|
96
96
|
company_id: str,
|
|
97
|
+
user_id: str,
|
|
97
98
|
messages: LanguageModelMessages | list[ChatCompletionMessageParam],
|
|
98
99
|
model_name: LanguageModelName | str,
|
|
99
100
|
temperature: float = DEFAULT_COMPLETE_TEMPERATURE,
|
|
@@ -142,6 +143,7 @@ async def complete_async(
|
|
|
142
143
|
try:
|
|
143
144
|
response = await unique_sdk.ChatCompletion.create_async(
|
|
144
145
|
company_id=company_id,
|
|
146
|
+
user_id=user_id,
|
|
145
147
|
model=model,
|
|
146
148
|
messages=cast(
|
|
147
149
|
"list[unique_sdk.Integrated.ChatCompletionRequestMessage]",
|
|
@@ -419,6 +421,7 @@ def complete_with_references(
|
|
|
419
421
|
|
|
420
422
|
async def complete_with_references_async(
|
|
421
423
|
company_id: str,
|
|
424
|
+
user_id: str,
|
|
422
425
|
messages: LanguageModelMessages,
|
|
423
426
|
model_name: LanguageModelName | str,
|
|
424
427
|
content_chunks: list[ContentChunk] | None = None,
|
|
@@ -432,6 +435,7 @@ async def complete_with_references_async(
|
|
|
432
435
|
# Use toolkit language model functions for chat completion
|
|
433
436
|
response = await complete_async(
|
|
434
437
|
company_id=company_id,
|
|
438
|
+
user_id=user_id,
|
|
435
439
|
model_name=model_name,
|
|
436
440
|
messages=messages,
|
|
437
441
|
temperature=temperature,
|
|
@@ -48,6 +48,10 @@ class LanguageModelName(StrEnum):
|
|
|
48
48
|
LITELLM_OPENAI_GPT_5_MINI = "litellm:openai-gpt-5-mini"
|
|
49
49
|
LITELLM_OPENAI_GPT_5_NANO = "litellm:openai-gpt-5-nano"
|
|
50
50
|
LITELLM_OPENAI_GPT_5_CHAT = "litellm:openai-gpt-5-chat"
|
|
51
|
+
LITELLM_DEEPSEEK_R1 = "litellm:deepseek-r1"
|
|
52
|
+
LITELLM_DEEPSEEK_V3 = "litellm:deepseek-v3-1"
|
|
53
|
+
LITELLM_QWEN_3 = "litellm:qwen-3-235B-A22B"
|
|
54
|
+
LITELLM_QWEN_3_THINKING = "litellm:qwen-3-235B-A22B-thinking"
|
|
51
55
|
|
|
52
56
|
|
|
53
57
|
class EncoderName(StrEnum):
|
|
@@ -875,6 +879,69 @@ class LanguageModelInfo(BaseModel):
|
|
|
875
879
|
deprecated_at=date(2026, 8, 7),
|
|
876
880
|
retirement_at=date(2026, 8, 7),
|
|
877
881
|
)
|
|
882
|
+
case LanguageModelName.LITELLM_DEEPSEEK_R1:
|
|
883
|
+
return cls(
|
|
884
|
+
name=model_name,
|
|
885
|
+
provider=LanguageModelProvider.LITELLM,
|
|
886
|
+
version="deepseek-r1",
|
|
887
|
+
capabilities=[
|
|
888
|
+
ModelCapabilities.FUNCTION_CALLING,
|
|
889
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
890
|
+
ModelCapabilities.STREAMING,
|
|
891
|
+
ModelCapabilities.REASONING,
|
|
892
|
+
],
|
|
893
|
+
token_limits=LanguageModelTokenLimits(
|
|
894
|
+
token_limit_input=64_000, token_limit_output=4_000
|
|
895
|
+
),
|
|
896
|
+
published_at=date(2025, 1, 25),
|
|
897
|
+
)
|
|
898
|
+
case LanguageModelName.LITELLM_DEEPSEEK_V3:
|
|
899
|
+
return cls(
|
|
900
|
+
name=model_name,
|
|
901
|
+
provider=LanguageModelProvider.LITELLM,
|
|
902
|
+
version="deepseek-v3-1",
|
|
903
|
+
capabilities=[
|
|
904
|
+
ModelCapabilities.FUNCTION_CALLING,
|
|
905
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
906
|
+
ModelCapabilities.REASONING,
|
|
907
|
+
],
|
|
908
|
+
token_limits=LanguageModelTokenLimits(
|
|
909
|
+
token_limit_input=128_000, token_limit_output=4_000
|
|
910
|
+
),
|
|
911
|
+
published_at=date(2025, 8, 1),
|
|
912
|
+
)
|
|
913
|
+
case LanguageModelName.LITELLM_QWEN_3:
|
|
914
|
+
return cls(
|
|
915
|
+
name=model_name,
|
|
916
|
+
provider=LanguageModelProvider.LITELLM,
|
|
917
|
+
version="qwen-3",
|
|
918
|
+
capabilities=[
|
|
919
|
+
ModelCapabilities.FUNCTION_CALLING,
|
|
920
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
921
|
+
ModelCapabilities.STREAMING,
|
|
922
|
+
ModelCapabilities.REASONING,
|
|
923
|
+
],
|
|
924
|
+
published_at=date(2025, 4, 29),
|
|
925
|
+
token_limits=LanguageModelTokenLimits(
|
|
926
|
+
token_limit_input=256_000, token_limit_output=32_768
|
|
927
|
+
),
|
|
928
|
+
)
|
|
929
|
+
case LanguageModelName.LITELLM_QWEN_3_THINKING:
|
|
930
|
+
return cls(
|
|
931
|
+
name=model_name,
|
|
932
|
+
provider=LanguageModelProvider.LITELLM,
|
|
933
|
+
version="qwen-3-thinking",
|
|
934
|
+
capabilities=[
|
|
935
|
+
ModelCapabilities.FUNCTION_CALLING,
|
|
936
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
937
|
+
ModelCapabilities.STREAMING,
|
|
938
|
+
ModelCapabilities.REASONING,
|
|
939
|
+
],
|
|
940
|
+
token_limits=LanguageModelTokenLimits(
|
|
941
|
+
token_limit_input=256_000, token_limit_output=32_768
|
|
942
|
+
),
|
|
943
|
+
published_at=date(2025, 7, 25),
|
|
944
|
+
)
|
|
878
945
|
|
|
879
946
|
case _:
|
|
880
947
|
if isinstance(model_name, LanguageModelName):
|
|
@@ -261,6 +261,7 @@ class LanguageModelService:
|
|
|
261
261
|
|
|
262
262
|
return await complete_async(
|
|
263
263
|
company_id=self._company_id,
|
|
264
|
+
user_id=self._user_id,
|
|
264
265
|
messages=messages,
|
|
265
266
|
model_name=model_name,
|
|
266
267
|
temperature=temperature,
|
|
@@ -276,6 +277,7 @@ class LanguageModelService:
|
|
|
276
277
|
async def complete_async_util(
|
|
277
278
|
cls,
|
|
278
279
|
company_id: str,
|
|
280
|
+
user_id: str,
|
|
279
281
|
messages: LanguageModelMessages,
|
|
280
282
|
model_name: LanguageModelName | str,
|
|
281
283
|
temperature: float = DEFAULT_COMPLETE_TEMPERATURE,
|
|
@@ -291,6 +293,7 @@ class LanguageModelService:
|
|
|
291
293
|
|
|
292
294
|
return await complete_async(
|
|
293
295
|
company_id=company_id,
|
|
296
|
+
user_id=user_id,
|
|
294
297
|
messages=messages,
|
|
295
298
|
model_name=model_name,
|
|
296
299
|
temperature=temperature,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: unique_toolkit
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.22
|
|
4
4
|
Summary:
|
|
5
5
|
License: Proprietary
|
|
6
6
|
Author: Martin Fadler
|
|
@@ -114,9 +114,19 @@ All notable changes to this project will be documented in this file.
|
|
|
114
114
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
115
115
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
116
116
|
|
|
117
|
+
|
|
118
|
+
## [0.8.22] - 2025-08-25
|
|
119
|
+
- Add DeepSeek-R1, DeepSeek-V3.1, Qwen3-235B-A22B and Qwen3-235B-A22B-Thinking-2507 to supported model list
|
|
120
|
+
|
|
121
|
+
## [0.8.21] - 2025-08-26
|
|
122
|
+
- Fixed old (not used) function "create_async" in language_model.functions : The function always returns "Unauthorized" --> Added "user_id" argument to fix this.
|
|
123
|
+
|
|
117
124
|
## [0.8.20] - 2025-08-24
|
|
118
125
|
- Fixed forced-tool-calls
|
|
119
126
|
|
|
127
|
+
## [0.8.20] - 2025-08-05
|
|
128
|
+
- Bump SDK version to support the latest features.
|
|
129
|
+
|
|
120
130
|
## [0.8.19] - 2025-08-24
|
|
121
131
|
- Enforce usage of ruff using pipeline
|
|
122
132
|
|
|
@@ -77,12 +77,12 @@ unique_toolkit/history_manager/utils.py,sha256=iu4LsYOElx8HlZjcx3ZC75I-TmEYBiEP9
|
|
|
77
77
|
unique_toolkit/language_model/__init__.py,sha256=lRQyLlbwHbNFf4-0foBU13UGb09lwEeodbVsfsSgaCk,1971
|
|
78
78
|
unique_toolkit/language_model/builder.py,sha256=4OKfwJfj3TrgO1ezc_ewIue6W7BCQ2ZYQXUckWVPPTA,3369
|
|
79
79
|
unique_toolkit/language_model/constants.py,sha256=B-topqW0r83dkC_25DeQfnPk3n53qzIHUCBS7YJ0-1U,119
|
|
80
|
-
unique_toolkit/language_model/functions.py,sha256
|
|
81
|
-
unique_toolkit/language_model/infos.py,sha256=
|
|
80
|
+
unique_toolkit/language_model/functions.py,sha256=ByKA9AZVMxuGP0P52bEDk5Z6N7R45cXaCuBiHb7NZWc,16755
|
|
81
|
+
unique_toolkit/language_model/infos.py,sha256=2roY4jqVd5p11Cavc4JLqh8uqpynOKjs2_eb5OJhqkk,48810
|
|
82
82
|
unique_toolkit/language_model/prompt.py,sha256=JSawaLjQg3VR-E2fK8engFyJnNdk21zaO8pPIodzN4Q,3991
|
|
83
83
|
unique_toolkit/language_model/reference.py,sha256=nkX2VFz-IrUz8yqyc3G5jUMNwrNpxITBrMEKkbqqYoI,8583
|
|
84
84
|
unique_toolkit/language_model/schemas.py,sha256=EOgy-p1GRcS46Sq0qEsN8MfOMl-KCcvEd9aCmqm9d08,16497
|
|
85
|
-
unique_toolkit/language_model/service.py,sha256=
|
|
85
|
+
unique_toolkit/language_model/service.py,sha256=UOYYYO2xaN35mSc6d_lmkCrn9Iyj_ypm6rqvsONLAXY,11762
|
|
86
86
|
unique_toolkit/language_model/utils.py,sha256=bPQ4l6_YO71w-zaIPanUUmtbXC1_hCvLK0tAFc3VCRc,1902
|
|
87
87
|
unique_toolkit/postprocessor/postprocessor_manager.py,sha256=yf34VMwZfwGjmDbVeMJ5JN3ET4N68V39EF9kiWVUa_Y,4213
|
|
88
88
|
unique_toolkit/protocols/support.py,sha256=V15WEIFKVMyF1QCnR8vIi4GrJy4dfTCB6d6JlqPZ58o,2341
|
|
@@ -107,7 +107,7 @@ unique_toolkit/tools/utils/execution/execution.py,sha256=vjG2Y6awsGNtlvyQAGCTthQ
|
|
|
107
107
|
unique_toolkit/tools/utils/source_handling/schema.py,sha256=vzAyf6ZWNexjMO0OrnB8y2glGkvAilmGGQXd6zcDaKw,870
|
|
108
108
|
unique_toolkit/tools/utils/source_handling/source_formatting.py,sha256=C7uayNbdkNVJdEARA5CENnHtNY1SU6etlaqbgHNyxaQ,9152
|
|
109
109
|
unique_toolkit/tools/utils/source_handling/tests/test_source_formatting.py,sha256=oM5ZxEgzROrnX1229KViCAFjRxl9wCTzWZoinYSHleM,6979
|
|
110
|
-
unique_toolkit-0.8.
|
|
111
|
-
unique_toolkit-0.8.
|
|
112
|
-
unique_toolkit-0.8.
|
|
113
|
-
unique_toolkit-0.8.
|
|
110
|
+
unique_toolkit-0.8.22.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
|
|
111
|
+
unique_toolkit-0.8.22.dist-info/METADATA,sha256=yFz8RDjtGih0zLFKHQNfgyWM1P0W1URIBGu2EjK3ZWc,28453
|
|
112
|
+
unique_toolkit-0.8.22.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
113
|
+
unique_toolkit-0.8.22.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|