unique_orchestrator 1.4.2__tar.gz → 1.5.0__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.
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/CHANGELOG.md +6 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/PKG-INFO +7 -1
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/pyproject.toml +1 -1
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/config.py +6 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/unique_ai_builder.py +34 -3
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/LICENSE +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/README.md +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/prompts/generic_reference_prompt.jinja2 +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/prompts/system_prompt.jinja2 +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/prompts/user_message_prompt.jinja2 +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/tests/test_unique_ai_reference_order.py +0 -0
- {unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/unique_ai.py +0 -0
|
@@ -5,6 +5,12 @@ 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.5.0] - 2025-10-16
|
|
9
|
+
- Make code interpreter configurable through spaces 2.0.
|
|
10
|
+
|
|
11
|
+
## [1.4.3] - 2025-10-16
|
|
12
|
+
- Fix issue with openai base url
|
|
13
|
+
|
|
8
14
|
## [1.4.2] - 2025-10-16
|
|
9
15
|
- Update debug info for better tool call tracking
|
|
10
16
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: unique_orchestrator
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5.0
|
|
4
4
|
Summary:
|
|
5
5
|
License: Proprietary
|
|
6
6
|
Author: Andreas Hauri
|
|
@@ -33,6 +33,12 @@ 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.5.0] - 2025-10-16
|
|
37
|
+
- Make code interpreter configurable through spaces 2.0.
|
|
38
|
+
|
|
39
|
+
## [1.4.3] - 2025-10-16
|
|
40
|
+
- Fix issue with openai base url
|
|
41
|
+
|
|
36
42
|
## [1.4.2] - 2025-10-16
|
|
37
43
|
- Update debug info for better tool call tracking
|
|
38
44
|
|
|
@@ -29,6 +29,9 @@ from unique_toolkit.agentic.tools.a2a import (
|
|
|
29
29
|
)
|
|
30
30
|
from unique_toolkit.agentic.tools.a2a.evaluation import SubAgentEvaluationServiceConfig
|
|
31
31
|
from unique_toolkit.agentic.tools.config import get_configuration_dict
|
|
32
|
+
from unique_toolkit.agentic.tools.openai_builtin.manager import (
|
|
33
|
+
OpenAICodeInterpreterConfig,
|
|
34
|
+
)
|
|
32
35
|
from unique_toolkit.agentic.tools.tool import ToolBuildConfig
|
|
33
36
|
from unique_toolkit.language_model.default_language_model import DEFAULT_GPT_4o
|
|
34
37
|
from unique_web_search.config import WebSearchConfig
|
|
@@ -255,6 +258,9 @@ class ResponsesApiConfig(BaseModel):
|
|
|
255
258
|
default="OPENAI_API_KEY",
|
|
256
259
|
description="[TEMPORARY] The environment variable that contains the API key for the direct Azure client.",
|
|
257
260
|
)
|
|
261
|
+
code_interpreter: (
|
|
262
|
+
Annotated[OpenAICodeInterpreterConfig, Field(title="Active")] | DeactivatedNone
|
|
263
|
+
) = Field(default=None, description="Config for openai code interpreter")
|
|
258
264
|
|
|
259
265
|
generated_files_scope_id: str = Field(
|
|
260
266
|
default="<SCOPE_ID_PLACEHOLDER>",
|
{unique_orchestrator-1.4.2 → unique_orchestrator-1.5.0}/unique_orchestrator/unique_ai_builder.py
RENAMED
|
@@ -52,6 +52,7 @@ from unique_toolkit.agentic.tools.a2a import (
|
|
|
52
52
|
)
|
|
53
53
|
from unique_toolkit.agentic.tools.config import ToolBuildConfig
|
|
54
54
|
from unique_toolkit.agentic.tools.mcp.manager import MCPManager
|
|
55
|
+
from unique_toolkit.agentic.tools.openai_builtin.base import OpenAIBuiltInToolName
|
|
55
56
|
from unique_toolkit.agentic.tools.tool_manager import (
|
|
56
57
|
OpenAIBuiltInToolManager,
|
|
57
58
|
ResponsesApiToolManager,
|
|
@@ -217,7 +218,18 @@ def _build_common(
|
|
|
217
218
|
)
|
|
218
219
|
|
|
219
220
|
|
|
220
|
-
def
|
|
221
|
+
def _prepare_base_url(url: str, use_v1: bool) -> str:
|
|
222
|
+
url = url.rstrip("/") + "/openai"
|
|
223
|
+
|
|
224
|
+
if use_v1:
|
|
225
|
+
url += "/v1"
|
|
226
|
+
|
|
227
|
+
return url
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
def _get_openai_client_from_env(
|
|
231
|
+
config: UniqueAIConfig, use_v1: bool = False
|
|
232
|
+
) -> AsyncOpenAI:
|
|
221
233
|
use_direct_azure_client = (
|
|
222
234
|
config.agent.experimental.responses_api_config.use_direct_azure_client
|
|
223
235
|
)
|
|
@@ -228,7 +240,7 @@ def _get_openai_client_from_env(config: UniqueAIConfig) -> AsyncOpenAI:
|
|
|
228
240
|
# TODO: (for testing only), remove when v1 endpoint is working
|
|
229
241
|
return AsyncOpenAI(
|
|
230
242
|
api_key=os.environ[api_key_env_var],
|
|
231
|
-
base_url=os.environ[api_base_env_var],
|
|
243
|
+
base_url=_prepare_base_url(os.environ[api_base_env_var], use_v1=use_v1),
|
|
232
244
|
)
|
|
233
245
|
else:
|
|
234
246
|
return get_async_openai_client().copy(
|
|
@@ -245,7 +257,26 @@ async def _build_responses(
|
|
|
245
257
|
common_components: _CommonComponents,
|
|
246
258
|
debug_info_manager: DebugInfoManager,
|
|
247
259
|
) -> UniqueAIResponsesApi:
|
|
248
|
-
client = _get_openai_client_from_env(config)
|
|
260
|
+
client = _get_openai_client_from_env(config, use_v1=True)
|
|
261
|
+
code_interpreter_config = (
|
|
262
|
+
config.agent.experimental.responses_api_config.code_interpreter
|
|
263
|
+
)
|
|
264
|
+
|
|
265
|
+
tool_names = [tool.name for tool in config.space.tools]
|
|
266
|
+
if (
|
|
267
|
+
code_interpreter_config is not None
|
|
268
|
+
and OpenAIBuiltInToolName.CODE_INTERPRETER not in tool_names
|
|
269
|
+
):
|
|
270
|
+
logger.info("Automatically adding code interpreter to the tools")
|
|
271
|
+
config = config.model_copy(deep=True)
|
|
272
|
+
config.space.tools.append(
|
|
273
|
+
ToolBuildConfig(
|
|
274
|
+
name=OpenAIBuiltInToolName.CODE_INTERPRETER,
|
|
275
|
+
configuration=code_interpreter_config,
|
|
276
|
+
)
|
|
277
|
+
)
|
|
278
|
+
common_components.tool_manager_config.tools = config.space.tools
|
|
279
|
+
|
|
249
280
|
builtin_tool_manager = OpenAIBuiltInToolManager(
|
|
250
281
|
uploaded_files=common_components.uploaded_documents,
|
|
251
282
|
chat_id=event.payload.chat_id,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|