unique_orchestrator 1.1.0__tar.gz → 1.1.1__tar.gz

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.

@@ -5,6 +5,9 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.1.1] - 2025-10-03
9
+ - Adapt orchestrator to toolkit 1.8.0.
10
+
8
11
  ## [1.1.0] - 2025-09-29
9
12
  - Add ability to display sub agent's answers in main agent.
10
13
  - Add ability to consolidate sub agent's assessment's in main agent.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: unique_orchestrator
3
- Version: 1.1.0
3
+ Version: 1.1.1
4
4
  Summary:
5
5
  License: Proprietary
6
6
  Author: Andreas Hauri
@@ -19,7 +19,7 @@ Requires-Dist: unique-follow-up-questions (>=1.0.0,<2.0.0)
19
19
  Requires-Dist: unique-internal-search (>=1.0.0,<2.0.0)
20
20
  Requires-Dist: unique-sdk (>=0.10.24,<0.11.0)
21
21
  Requires-Dist: unique-stock-ticker (>=1.0.0,<2.0.0)
22
- Requires-Dist: unique-toolkit (>=1.4.0,<2.0.0)
22
+ Requires-Dist: unique-toolkit (>=1.8.0,<2.0.0)
23
23
  Requires-Dist: unique-web-search (>=1.0.0,<2.0.0)
24
24
  Description-Content-Type: text/markdown
25
25
 
@@ -33,6 +33,9 @@ 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.1.1] - 2025-10-03
37
+ - Adapt orchestrator to toolkit 1.8.0.
38
+
36
39
  ## [1.1.0] - 2025-09-29
37
40
  - Add ability to display sub agent's answers in main agent.
38
41
  - Add ability to consolidate sub agent's assessment's in main agent.
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "unique_orchestrator"
3
- version = "1.1.0"
3
+ version = "1.1.1"
4
4
  description = ""
5
5
  authors = ["Andreas Hauri <andreas.hauri@unique.ai>"]
6
6
  readme = ["README.md", "CHANGELOG.md"]
@@ -15,7 +15,7 @@ python-dotenv = "^1.0.1"
15
15
  pytest = "^8.4.1"
16
16
  unique-sdk = "^0.10.24"
17
17
 
18
- unique-toolkit = "^1.4.0"
18
+ unique-toolkit = "^1.8.0"
19
19
  unique-stock-ticker = "^1.0.0"
20
20
  unique-follow-up-questions = "^1.0.0"
21
21
  unique-internal-search = "^1.0.0"
@@ -22,7 +22,7 @@ from unique_toolkit.agentic.evaluation.schemas import EvaluationMetricName
22
22
  from unique_toolkit.agentic.history_manager.history_manager import (
23
23
  UploadedContentConfig,
24
24
  )
25
- from unique_toolkit.agentic.tools.a2a.evaluation import SubAgentEvaluationConfig
25
+ from unique_toolkit.agentic.tools.a2a.evaluation import SubAgentEvaluationServiceConfig
26
26
  from unique_toolkit.agentic.tools.config import get_configuration_dict
27
27
  from unique_toolkit.agentic.tools.tool import ToolBuildConfig
28
28
  from unique_web_search.config import WebSearchConfig
@@ -117,7 +117,9 @@ class EvaluationConfig(BaseModel):
117
117
  model_config = get_configuration_dict()
118
118
  max_review_steps: int = 3
119
119
  hallucination_config: HallucinationConfig = HallucinationConfig()
120
- sub_agents_config: SubAgentEvaluationConfig = SubAgentEvaluationConfig()
120
+ sub_agents_config: SubAgentEvaluationServiceConfig | None = (
121
+ SubAgentEvaluationServiceConfig()
122
+ )
121
123
 
122
124
 
123
125
  # ------------------------------------------------------------
@@ -35,9 +35,10 @@ from unique_toolkit.agentic.thinking_manager.thinking_manager import (
35
35
  ThinkingManager,
36
36
  ThinkingManagerConfig,
37
37
  )
38
- from unique_toolkit.agentic.tools.a2a.evaluation import SubAgentsEvaluation
39
- from unique_toolkit.agentic.tools.a2a.manager import A2AManager
40
- from unique_toolkit.agentic.tools.a2a.postprocessing import (
38
+ from unique_toolkit.agentic.tools.a2a import (
39
+ A2AManager,
40
+ ExtendedSubAgentToolConfig,
41
+ SubAgentEvaluationService,
41
42
  SubAgentResponsesPostprocessor,
42
43
  )
43
44
  from unique_toolkit.agentic.tools.config import ToolBuildConfig
@@ -166,25 +167,33 @@ def build_unique_ai(
166
167
  )
167
168
 
168
169
  if len(tool_manager.sub_agents) > 0:
169
- postprocessor_manager.add_postprocessor(
170
- SubAgentResponsesPostprocessor(
171
- user_id=event.user_id,
172
- agent_chat_id=event.payload.chat_id,
173
- company_id=event.company_id,
174
- sub_agent_tools=tool_manager.sub_agents,
175
- )
170
+ sub_agent_responses_postprocessor = SubAgentResponsesPostprocessor(
171
+ user_id=event.user_id,
172
+ main_agent_chat_id=event.payload.chat_id,
173
+ company_id=event.company_id,
176
174
  )
177
- if config.agent.services.evaluation_config is not None:
178
- logger.info("Adding sub agents evaluation")
179
- evaluation_manager.add_evaluation(
180
- SubAgentsEvaluation(
181
- config.agent.services.evaluation_config.sub_agents_config,
182
- tool_manager.sub_agents,
183
- LanguageModelService.from_event(event),
184
- )
175
+ postprocessor_manager.add_postprocessor(sub_agent_responses_postprocessor)
176
+
177
+ sub_agent_evaluation = None
178
+ if (
179
+ config.agent.services.evaluation_config is not None
180
+ and config.agent.services.evaluation_config.sub_agents_config is not None
181
+ ):
182
+ sub_agent_evaluation = SubAgentEvaluationService(
183
+ config=config.agent.services.evaluation_config.sub_agents_config,
184
+ language_model_service=LanguageModelService.from_event(event),
185
185
  )
186
- else:
187
- logger.warning("No evaluation config found for sub agents")
186
+ evaluation_manager.add_evaluation(sub_agent_evaluation)
187
+
188
+ for tool in tool_manager.sub_agents:
189
+ assert isinstance(tool.config, ExtendedSubAgentToolConfig)
190
+ sub_agent_responses_postprocessor.register_sub_agent_tool(
191
+ tool, tool.config.response_display_config
192
+ )
193
+ if sub_agent_evaluation is not None:
194
+ sub_agent_evaluation.register_sub_agent_tool(
195
+ tool, tool.config.evaluation_config
196
+ )
188
197
 
189
198
  return UniqueAI(
190
199
  event=event,