unique_orchestrator 1.6.0__py3-none-any.whl → 1.7.0__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.
Potentially problematic release.
This version of unique_orchestrator might be problematic. Click here for more details.
- unique_orchestrator/config.py +7 -0
- unique_orchestrator/unique_ai_builder.py +17 -23
- {unique_orchestrator-1.6.0.dist-info → unique_orchestrator-1.7.0.dist-info}/METADATA +8 -1
- {unique_orchestrator-1.6.0.dist-info → unique_orchestrator-1.7.0.dist-info}/RECORD +6 -6
- {unique_orchestrator-1.6.0.dist-info → unique_orchestrator-1.7.0.dist-info}/LICENSE +0 -0
- {unique_orchestrator-1.6.0.dist-info → unique_orchestrator-1.7.0.dist-info}/WHEEL +0 -0
unique_orchestrator/config.py
CHANGED
|
@@ -33,6 +33,9 @@ from unique_toolkit.agentic.tools.openai_builtin.manager import (
|
|
|
33
33
|
OpenAICodeInterpreterConfig,
|
|
34
34
|
)
|
|
35
35
|
from unique_toolkit.agentic.tools.tool import ToolBuildConfig
|
|
36
|
+
from unique_toolkit.agentic.tools.tool_progress_reporter import (
|
|
37
|
+
ToolProgressReporterConfig,
|
|
38
|
+
)
|
|
36
39
|
from unique_toolkit.language_model.default_language_model import DEFAULT_GPT_4o
|
|
37
40
|
from unique_web_search.config import WebSearchConfig
|
|
38
41
|
from unique_web_search.service import WebSearchTool
|
|
@@ -191,6 +194,10 @@ class UniqueAIServices(BaseModel):
|
|
|
191
194
|
|
|
192
195
|
uploaded_content_config: UploadedContentConfig = UploadedContentConfig()
|
|
193
196
|
|
|
197
|
+
tool_progress_reporter_config: ToolProgressReporterConfig = (
|
|
198
|
+
ToolProgressReporterConfig()
|
|
199
|
+
)
|
|
200
|
+
|
|
194
201
|
|
|
195
202
|
class InputTokenDistributionConfig(BaseModel):
|
|
196
203
|
model_config = get_configuration_dict(frozen=True)
|
|
@@ -31,7 +31,6 @@ from unique_toolkit.agentic.history_manager.history_manager import (
|
|
|
31
31
|
HistoryManagerConfig,
|
|
32
32
|
)
|
|
33
33
|
from unique_toolkit.agentic.postprocessor.postprocessor_manager import (
|
|
34
|
-
Postprocessor,
|
|
35
34
|
PostprocessorManager,
|
|
36
35
|
)
|
|
37
36
|
from unique_toolkit.agentic.reference_manager.reference_manager import ReferenceManager
|
|
@@ -107,13 +106,13 @@ class _CommonComponents(NamedTuple):
|
|
|
107
106
|
reference_manager: ReferenceManager
|
|
108
107
|
history_manager: HistoryManager
|
|
109
108
|
evaluation_manager: EvaluationManager
|
|
109
|
+
postprocessor_manager: PostprocessorManager
|
|
110
110
|
# Tool Manager Components
|
|
111
111
|
tool_progress_reporter: ToolProgressReporter
|
|
112
112
|
tool_manager_config: ToolManagerConfig
|
|
113
113
|
mcp_manager: MCPManager
|
|
114
114
|
a2a_manager: A2AManager
|
|
115
115
|
mcp_servers: list[McpServer]
|
|
116
|
-
postprocessors: list[Postprocessor]
|
|
117
116
|
|
|
118
117
|
|
|
119
118
|
def _build_common(
|
|
@@ -127,7 +126,10 @@ def _build_common(
|
|
|
127
126
|
|
|
128
127
|
uploaded_documents = content_service.get_documents_uploaded_to_chat()
|
|
129
128
|
|
|
130
|
-
tool_progress_reporter = ToolProgressReporter(
|
|
129
|
+
tool_progress_reporter = ToolProgressReporter(
|
|
130
|
+
chat_service=chat_service,
|
|
131
|
+
config=config.agent.services.tool_progress_reporter_config,
|
|
132
|
+
)
|
|
131
133
|
thinking_manager_config = ThinkingManagerConfig(
|
|
132
134
|
thinking_steps_display=config.agent.experimental.thinking_steps_display
|
|
133
135
|
)
|
|
@@ -141,9 +143,7 @@ def _build_common(
|
|
|
141
143
|
reference_manager = ReferenceManager()
|
|
142
144
|
|
|
143
145
|
history_manager_config = HistoryManagerConfig(
|
|
144
|
-
experimental_features=history_manager_module.ExperimentalFeatures(
|
|
145
|
-
full_sources_serialize_dump=False,
|
|
146
|
-
),
|
|
146
|
+
experimental_features=history_manager_module.ExperimentalFeatures(),
|
|
147
147
|
percent_of_max_tokens_for_history=config.agent.input_token_distribution.percent_for_history,
|
|
148
148
|
language_model=config.space.language_model,
|
|
149
149
|
uploaded_content_config=config.agent.services.uploaded_content_config,
|
|
@@ -180,10 +180,13 @@ def _build_common(
|
|
|
180
180
|
max_tool_calls=config.agent.experimental.loop_configuration.max_tool_calls_per_iteration,
|
|
181
181
|
)
|
|
182
182
|
|
|
183
|
-
|
|
183
|
+
postprocessor_manager = PostprocessorManager(
|
|
184
|
+
logger=logger,
|
|
185
|
+
chat_service=chat_service,
|
|
186
|
+
)
|
|
184
187
|
|
|
185
|
-
if config.agent.services.stock_ticker_config:
|
|
186
|
-
|
|
188
|
+
if config.agent.services.stock_ticker_config is not None:
|
|
189
|
+
postprocessor_manager.add_postprocessor(
|
|
187
190
|
StockTickerPostprocessor(
|
|
188
191
|
config=config.agent.services.stock_ticker_config,
|
|
189
192
|
event=event,
|
|
@@ -194,7 +197,8 @@ def _build_common(
|
|
|
194
197
|
config.agent.services.follow_up_questions_config
|
|
195
198
|
and config.agent.services.follow_up_questions_config.number_of_questions > 0
|
|
196
199
|
):
|
|
197
|
-
|
|
200
|
+
# Should run last to make sure the follow up questions are displayed last.
|
|
201
|
+
postprocessor_manager.set_last_postprocessor(
|
|
198
202
|
FollowUpPostprocessor(
|
|
199
203
|
logger=logger,
|
|
200
204
|
config=config.agent.services.follow_up_questions_config,
|
|
@@ -217,7 +221,7 @@ def _build_common(
|
|
|
217
221
|
a2a_manager=a2a_manager,
|
|
218
222
|
tool_manager_config=tool_manager_config,
|
|
219
223
|
mcp_servers=event.payload.mcp_servers,
|
|
220
|
-
|
|
224
|
+
postprocessor_manager=postprocessor_manager,
|
|
221
225
|
)
|
|
222
226
|
|
|
223
227
|
|
|
@@ -299,12 +303,7 @@ async def _build_responses(
|
|
|
299
303
|
builtin_tool_manager=builtin_tool_manager,
|
|
300
304
|
)
|
|
301
305
|
|
|
302
|
-
postprocessor_manager =
|
|
303
|
-
logger=logger,
|
|
304
|
-
chat_service=common_components.chat_service,
|
|
305
|
-
)
|
|
306
|
-
for postprocessor in common_components.postprocessors:
|
|
307
|
-
postprocessor_manager.add_postprocessor(postprocessor)
|
|
306
|
+
postprocessor_manager = common_components.postprocessor_manager
|
|
308
307
|
|
|
309
308
|
if (
|
|
310
309
|
config.agent.experimental.responses_api_config.code_interpreter_display_config
|
|
@@ -410,12 +409,7 @@ def _build_completions(
|
|
|
410
409
|
if not TOOL_CHOICES and UPLOADED_DOCUMENTS:
|
|
411
410
|
tool_manager.add_forced_tool(UploadedSearchTool.name)
|
|
412
411
|
|
|
413
|
-
postprocessor_manager =
|
|
414
|
-
logger=logger,
|
|
415
|
-
chat_service=common_components.chat_service,
|
|
416
|
-
)
|
|
417
|
-
for postprocessor in common_components.postprocessors:
|
|
418
|
-
postprocessor_manager.add_postprocessor(postprocessor)
|
|
412
|
+
postprocessor_manager = common_components.postprocessor_manager
|
|
419
413
|
|
|
420
414
|
_add_sub_agents_postprocessor(
|
|
421
415
|
postprocessor_manager=postprocessor_manager,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: unique_orchestrator
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.7.0
|
|
4
4
|
Summary:
|
|
5
5
|
License: Proprietary
|
|
6
6
|
Author: Andreas Hauri
|
|
@@ -33,6 +33,13 @@ All notable changes to this project will be documented in this file.
|
|
|
33
33
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
34
34
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
35
35
|
|
|
36
|
+
## [1.7.0] - 2025-10-30
|
|
37
|
+
- Add option to customize the display of tool progress statuses.
|
|
38
|
+
- Make follow-questions postprocessor run last to make sure the follow up questions are displayed last.
|
|
39
|
+
|
|
40
|
+
## [1.6.1] - 2025-10-28
|
|
41
|
+
- Removing unused experimental config `full_sources_serialize_dump` in `history_manager`
|
|
42
|
+
|
|
36
43
|
## [1.6.0] - 2025-10-27
|
|
37
44
|
- Add temporary config option `sleep_time_before_update` to avoid rendering issues with sub agent responses`
|
|
38
45
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
unique_orchestrator/config.py,sha256=
|
|
1
|
+
unique_orchestrator/config.py,sha256=NNBPNiLWZN0pFemOtUSxVbEcCEFoUbmu1p8i-hbxlRY,11797
|
|
2
2
|
unique_orchestrator/prompts/generic_reference_prompt.jinja2,sha256=fYPaiE-N1gSoOqu85OeEBa_ttAim8grOhHuOHJjSHNU,2663
|
|
3
3
|
unique_orchestrator/prompts/system_prompt.jinja2,sha256=YXFdx3PG2p4TKfjEpz7guIw2GaKoY-4zRMEzXaKhHXE,7213
|
|
4
4
|
unique_orchestrator/prompts/user_message_prompt.jinja2,sha256=BQokpBh3H2J-rFk8i-PRph3jy4T1gAJPPb1mxxRWNuM,878
|
|
5
5
|
unique_orchestrator/tests/test_unique_ai_reference_order.py,sha256=8mZeVP1k8neH4qrFW3oa3zwIdaq2c7R1VvurC7kjBU8,4445
|
|
6
6
|
unique_orchestrator/unique_ai.py,sha256=OO-85-Qvw5tf5A227_ur34p3qn8RKnU4EPJ21x7jdQE,19324
|
|
7
|
-
unique_orchestrator/unique_ai_builder.py,sha256=
|
|
8
|
-
unique_orchestrator-1.
|
|
9
|
-
unique_orchestrator-1.
|
|
10
|
-
unique_orchestrator-1.
|
|
11
|
-
unique_orchestrator-1.
|
|
7
|
+
unique_orchestrator/unique_ai_builder.py,sha256=p7cXCdXN36_CAgTiq-YXuPlaTjWI2D-QTwMSe0S7Chg,17877
|
|
8
|
+
unique_orchestrator-1.7.0.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
|
|
9
|
+
unique_orchestrator-1.7.0.dist-info/METADATA,sha256=bZx2lv3lGnGuH5bSz-tFudCURZ_0519DBTeUxyKhGn4,3678
|
|
10
|
+
unique_orchestrator-1.7.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
11
|
+
unique_orchestrator-1.7.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|