unique_toolkit 1.43.9__py3-none-any.whl → 1.43.11__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/agentic/loop_runner/__init__.py +2 -0
- unique_toolkit/agentic/loop_runner/runners/__init__.py +2 -0
- unique_toolkit/agentic/loop_runner/runners/qwen/__init__.py +2 -0
- unique_toolkit/agentic/loop_runner/runners/qwen/qwen_runner.py +4 -1
- unique_toolkit/language_model/infos.py +6 -2
- {unique_toolkit-1.43.9.dist-info → unique_toolkit-1.43.11.dist-info}/METADATA +7 -2
- {unique_toolkit-1.43.9.dist-info → unique_toolkit-1.43.11.dist-info}/RECORD +9 -9
- {unique_toolkit-1.43.9.dist-info → unique_toolkit-1.43.11.dist-info}/LICENSE +0 -0
- {unique_toolkit-1.43.9.dist-info → unique_toolkit-1.43.11.dist-info}/WHEEL +0 -0
|
@@ -12,6 +12,7 @@ from unique_toolkit.agentic.loop_runner.middleware import (
|
|
|
12
12
|
from unique_toolkit.agentic.loop_runner.runners import (
|
|
13
13
|
QWEN_FORCED_TOOL_CALL_INSTRUCTION,
|
|
14
14
|
QWEN_LAST_ITERATION_INSTRUCTION,
|
|
15
|
+
QWEN_MAX_LOOP_ITERATIONS,
|
|
15
16
|
BasicLoopIterationRunner,
|
|
16
17
|
BasicLoopIterationRunnerConfig,
|
|
17
18
|
QwenLoopIterationRunner,
|
|
@@ -32,4 +33,5 @@ __all__ = [
|
|
|
32
33
|
"handle_normal_iteration",
|
|
33
34
|
"QWEN_FORCED_TOOL_CALL_INSTRUCTION",
|
|
34
35
|
"QWEN_LAST_ITERATION_INSTRUCTION",
|
|
36
|
+
"QWEN_MAX_LOOP_ITERATIONS",
|
|
35
37
|
]
|
|
@@ -5,6 +5,7 @@ from unique_toolkit.agentic.loop_runner.runners.basic import (
|
|
|
5
5
|
from unique_toolkit.agentic.loop_runner.runners.qwen import (
|
|
6
6
|
QWEN_FORCED_TOOL_CALL_INSTRUCTION,
|
|
7
7
|
QWEN_LAST_ITERATION_INSTRUCTION,
|
|
8
|
+
QWEN_MAX_LOOP_ITERATIONS,
|
|
8
9
|
QwenLoopIterationRunner,
|
|
9
10
|
is_qwen_model,
|
|
10
11
|
)
|
|
@@ -15,5 +16,6 @@ __all__ = [
|
|
|
15
16
|
"QwenLoopIterationRunner",
|
|
16
17
|
"QWEN_FORCED_TOOL_CALL_INSTRUCTION",
|
|
17
18
|
"QWEN_LAST_ITERATION_INSTRUCTION",
|
|
19
|
+
"QWEN_MAX_LOOP_ITERATIONS",
|
|
18
20
|
"is_qwen_model",
|
|
19
21
|
]
|
|
@@ -4,6 +4,7 @@ from unique_toolkit.agentic.loop_runner.runners.qwen.helpers import (
|
|
|
4
4
|
from unique_toolkit.agentic.loop_runner.runners.qwen.qwen_runner import (
|
|
5
5
|
QWEN_FORCED_TOOL_CALL_INSTRUCTION,
|
|
6
6
|
QWEN_LAST_ITERATION_INSTRUCTION,
|
|
7
|
+
QWEN_MAX_LOOP_ITERATIONS,
|
|
7
8
|
QwenLoopIterationRunner,
|
|
8
9
|
)
|
|
9
10
|
|
|
@@ -12,4 +13,5 @@ __all__ = [
|
|
|
12
13
|
"is_qwen_model",
|
|
13
14
|
"QWEN_FORCED_TOOL_CALL_INSTRUCTION",
|
|
14
15
|
"QWEN_LAST_ITERATION_INSTRUCTION",
|
|
16
|
+
"QWEN_MAX_LOOP_ITERATIONS",
|
|
15
17
|
]
|
|
@@ -18,13 +18,16 @@ from unique_toolkit.chat.service import ChatService, LanguageModelStreamResponse
|
|
|
18
18
|
|
|
19
19
|
_LOGGER = logging.getLogger(__name__)
|
|
20
20
|
|
|
21
|
+
QWEN_MAX_LOOP_ITERATIONS = 3
|
|
22
|
+
|
|
21
23
|
QWEN_FORCED_TOOL_CALL_INSTRUCTION = (
|
|
22
24
|
"**Tool Call Instruction:** \nYou MUST call the tool {TOOL_NAME}. "
|
|
23
25
|
"You must start the response with <tool_call>. "
|
|
24
26
|
"Do NOT provide natural language explanations, summaries, or any text outside the <tool_call> block."
|
|
25
27
|
)
|
|
26
28
|
|
|
27
|
-
QWEN_LAST_ITERATION_INSTRUCTION = "The maximum number of loop iteration have been reached. Not further tool calls are allowed.
|
|
29
|
+
QWEN_LAST_ITERATION_INSTRUCTION = """The maximum number of loop iteration have been reached. Not further tool calls are allowed.
|
|
30
|
+
Based on the found information, an answer should be generated"""
|
|
28
31
|
|
|
29
32
|
|
|
30
33
|
class QwenLoopIterationRunner(LoopIterationRunner):
|
|
@@ -701,6 +701,7 @@ class LanguageModelInfo(BaseModel):
|
|
|
701
701
|
ModelCapabilities.CHAT_COMPLETIONS_API,
|
|
702
702
|
ModelCapabilities.FUNCTION_CALLING,
|
|
703
703
|
ModelCapabilities.PARALLEL_FUNCTION_CALLING,
|
|
704
|
+
ModelCapabilities.RESPONSES_API,
|
|
704
705
|
ModelCapabilities.STREAMING,
|
|
705
706
|
ModelCapabilities.VISION,
|
|
706
707
|
],
|
|
@@ -718,10 +719,11 @@ class LanguageModelInfo(BaseModel):
|
|
|
718
719
|
encoder_name=EncoderName.O200K_BASE,
|
|
719
720
|
capabilities=[
|
|
720
721
|
ModelCapabilities.CHAT_COMPLETIONS_API,
|
|
721
|
-
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
722
722
|
ModelCapabilities.FUNCTION_CALLING,
|
|
723
723
|
ModelCapabilities.PARALLEL_FUNCTION_CALLING,
|
|
724
|
+
ModelCapabilities.RESPONSES_API,
|
|
724
725
|
ModelCapabilities.STREAMING,
|
|
726
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
725
727
|
ModelCapabilities.VISION,
|
|
726
728
|
],
|
|
727
729
|
provider=LanguageModelProvider.AZURE,
|
|
@@ -738,10 +740,11 @@ class LanguageModelInfo(BaseModel):
|
|
|
738
740
|
encoder_name=EncoderName.O200K_BASE,
|
|
739
741
|
capabilities=[
|
|
740
742
|
ModelCapabilities.CHAT_COMPLETIONS_API,
|
|
741
|
-
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
742
743
|
ModelCapabilities.FUNCTION_CALLING,
|
|
743
744
|
ModelCapabilities.PARALLEL_FUNCTION_CALLING,
|
|
745
|
+
ModelCapabilities.RESPONSES_API,
|
|
744
746
|
ModelCapabilities.STREAMING,
|
|
747
|
+
ModelCapabilities.STRUCTURED_OUTPUT,
|
|
745
748
|
ModelCapabilities.VISION,
|
|
746
749
|
],
|
|
747
750
|
provider=LanguageModelProvider.AZURE,
|
|
@@ -759,6 +762,7 @@ class LanguageModelInfo(BaseModel):
|
|
|
759
762
|
ModelCapabilities.CHAT_COMPLETIONS_API,
|
|
760
763
|
ModelCapabilities.FUNCTION_CALLING,
|
|
761
764
|
ModelCapabilities.PARALLEL_FUNCTION_CALLING,
|
|
765
|
+
ModelCapabilities.RESPONSES_API,
|
|
762
766
|
ModelCapabilities.STREAMING,
|
|
763
767
|
ModelCapabilities.VISION,
|
|
764
768
|
],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: unique_toolkit
|
|
3
|
-
Version: 1.43.
|
|
3
|
+
Version: 1.43.11
|
|
4
4
|
Summary:
|
|
5
5
|
License: Proprietary
|
|
6
6
|
Author: Cedric Klinkert
|
|
@@ -125,8 +125,13 @@ All notable changes to this project will be documented in this file.
|
|
|
125
125
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
126
126
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
127
127
|
|
|
128
|
+
## [1.43.11] - 2026-01-23
|
|
129
|
+
- Add `RESPONSES_API` Capablity to some models that were missing it
|
|
130
|
+
|
|
131
|
+
## [1.43.10] - 2026-01-21
|
|
132
|
+
- Lowering the max iterations of the main agents and hard blocking Qwen3 from using too many agent rounds
|
|
133
|
+
|
|
128
134
|
## [1.43.9] - 2026-01-20
|
|
129
|
-
### Fixed
|
|
130
135
|
- Fix system message role conversion in responses API mode (was incorrectly set to "user", now correctly set to "system")
|
|
131
136
|
|
|
132
137
|
## [1.43.8] - 2026-01-16
|
|
@@ -90,7 +90,7 @@ unique_toolkit/agentic/history_manager/history_construction_with_contents.py,sha
|
|
|
90
90
|
unique_toolkit/agentic/history_manager/history_manager.py,sha256=7V7_173XkAjc8otBACF0G3dbqRs34FSlURbBPrE95Wk,9537
|
|
91
91
|
unique_toolkit/agentic/history_manager/loop_token_reducer.py,sha256=3c-uonDovtanEJUpAO4zlA4-n9MS_Ws_V0Yb6G7hPM0,20172
|
|
92
92
|
unique_toolkit/agentic/history_manager/utils.py,sha256=VIn_UmcR3jHtpux0qp5lQQzczgAm8XYSeQiPo87jC3A,3143
|
|
93
|
-
unique_toolkit/agentic/loop_runner/__init__.py,sha256=
|
|
93
|
+
unique_toolkit/agentic/loop_runner/__init__.py,sha256=26SAJn737LLmc3RoT6PPoPIeI80nlNWobHK6-Vz8HeI,1099
|
|
94
94
|
unique_toolkit/agentic/loop_runner/_iteration_handler_utils.py,sha256=czwTbMMmikppRjAA2wpx-UZGub8KrpSoWfojklr-5sE,3261
|
|
95
95
|
unique_toolkit/agentic/loop_runner/_stream_handler_utils.py,sha256=FTGc5y8wkDnwnRVSYEdandgKz-FiySOsrTFFMadwP6E,1706
|
|
96
96
|
unique_toolkit/agentic/loop_runner/base.py,sha256=3g4PalzV00o8kcRwHds2c2rtxW4idD7_7vS2Z7GkMvQ,1370
|
|
@@ -98,11 +98,11 @@ unique_toolkit/agentic/loop_runner/middleware/__init__.py,sha256=5yhFZ14_C1qAt-M
|
|
|
98
98
|
unique_toolkit/agentic/loop_runner/middleware/planning/__init__.py,sha256=Y9MlihNA8suNREixW98RF45bj0EMtD_tQuDrO2MEML4,304
|
|
99
99
|
unique_toolkit/agentic/loop_runner/middleware/planning/planning.py,sha256=s6SAP3BCCExgwnyRj_bZTaWgTOiNVju5qcJA0WFUUoE,3216
|
|
100
100
|
unique_toolkit/agentic/loop_runner/middleware/planning/schema.py,sha256=76C36CWCLfDAYYqtaQlhXsmkWM1fCqf8j-l5afQREKA,2869
|
|
101
|
-
unique_toolkit/agentic/loop_runner/runners/__init__.py,sha256=
|
|
101
|
+
unique_toolkit/agentic/loop_runner/runners/__init__.py,sha256=JLBzWjOvTScIVHafeoqG1ZS3syLrYPBDzIfBuJFOw8s,598
|
|
102
102
|
unique_toolkit/agentic/loop_runner/runners/basic.py,sha256=PKg7AXp5_2OJpJX8b7_5u0jBKffX5mg8X6DFk98sSwA,1535
|
|
103
|
-
unique_toolkit/agentic/loop_runner/runners/qwen/__init__.py,sha256=
|
|
103
|
+
unique_toolkit/agentic/loop_runner/runners/qwen/__init__.py,sha256=RRT2Q_eeEjtAMsPJC7sYHSlY8clGYXRtQPQhA3HkHF0,481
|
|
104
104
|
unique_toolkit/agentic/loop_runner/runners/qwen/helpers.py,sha256=JBnxeYKu8HiUq3VHjnb8XdHCe1c3cJ3OwagckF4UvnU,1763
|
|
105
|
-
unique_toolkit/agentic/loop_runner/runners/qwen/qwen_runner.py,sha256=
|
|
105
|
+
unique_toolkit/agentic/loop_runner/runners/qwen/qwen_runner.py,sha256=Qz_kwUUjLDUPBGM0hRVZSwVLYJ1fX5V646oU8AObIUw,4954
|
|
106
106
|
unique_toolkit/agentic/message_log_manager/__init__.py,sha256=3-KY_sGkPbNoSnrzwPY0FQIJNnsz4NHXvocXgGRUeuE,169
|
|
107
107
|
unique_toolkit/agentic/message_log_manager/service.py,sha256=DeixRsgmyDdWsL-4e12flB9d-Uy7s0X52upPIbTn6vA,5895
|
|
108
108
|
unique_toolkit/agentic/postprocessor/postprocessor_manager.py,sha256=CoKzVFeLIr1eRP3ZLnmUJ8KNsFLyvK5iuvUilbcGAm0,7662
|
|
@@ -224,7 +224,7 @@ unique_toolkit/language_model/builder.py,sha256=4OKfwJfj3TrgO1ezc_ewIue6W7BCQ2ZY
|
|
|
224
224
|
unique_toolkit/language_model/constants.py,sha256=B-topqW0r83dkC_25DeQfnPk3n53qzIHUCBS7YJ0-1U,119
|
|
225
225
|
unique_toolkit/language_model/default_language_model.py,sha256=-_DBsJhLCsFdaU4ynAkyW0jYIl2lhrPybZm1K-GgVJs,125
|
|
226
226
|
unique_toolkit/language_model/functions.py,sha256=PTBm2BBkuqISVHoyUqMIGHGXT-RMSAfz0F_Ylo2esQ8,18246
|
|
227
|
-
unique_toolkit/language_model/infos.py,sha256=
|
|
227
|
+
unique_toolkit/language_model/infos.py,sha256=x9VBgdyqHuZCe0qxCiJTBQx7xynvgWMTAFfBiqS-K4c,89961
|
|
228
228
|
unique_toolkit/language_model/prompt.py,sha256=JSawaLjQg3VR-E2fK8engFyJnNdk21zaO8pPIodzN4Q,3991
|
|
229
229
|
unique_toolkit/language_model/reference.py,sha256=nkX2VFz-IrUz8yqyc3G5jUMNwrNpxITBrMEKkbqqYoI,8583
|
|
230
230
|
unique_toolkit/language_model/schemas.py,sha256=WCHB_9GGkJwB3OCSwUJznz6FPo3gEL2MXUOEtYKxAFg,23996
|
|
@@ -242,7 +242,7 @@ unique_toolkit/short_term_memory/service.py,sha256=5PeVBu1ZCAfyDb2HLVvlmqSbyzBBu
|
|
|
242
242
|
unique_toolkit/smart_rules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
243
243
|
unique_toolkit/smart_rules/compile.py,sha256=Ozhh70qCn2yOzRWr9d8WmJeTo7AQurwd3tStgBMPFLA,1246
|
|
244
244
|
unique_toolkit/test_utilities/events.py,sha256=_mwV2bs5iLjxS1ynDCjaIq-gjjKhXYCK-iy3dRfvO3g,6410
|
|
245
|
-
unique_toolkit-1.43.
|
|
246
|
-
unique_toolkit-1.43.
|
|
247
|
-
unique_toolkit-1.43.
|
|
248
|
-
unique_toolkit-1.43.
|
|
245
|
+
unique_toolkit-1.43.11.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
|
|
246
|
+
unique_toolkit-1.43.11.dist-info/METADATA,sha256=PROyDnl3op-5xx5BR_dqNW-FOt0JRqE5Ddhdx1XTBGA,48588
|
|
247
|
+
unique_toolkit-1.43.11.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
248
|
+
unique_toolkit-1.43.11.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|