aiqtoolkit 1.1.0rc2__py3-none-any.whl → 1.1.0rc4__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 aiqtoolkit might be problematic. Click here for more details.

@@ -23,6 +23,7 @@ import click
23
23
  import yaml
24
24
 
25
25
  from aiq.utils.data_models.schema_validator import validate_yaml
26
+ from aiq.utils.io.yaml_tools import yaml_load
26
27
 
27
28
  logger = logging.getLogger(__name__)
28
29
 
@@ -183,12 +184,9 @@ class LayeredConfig:
183
184
 
184
185
  def load_and_override_config(config_file: Path, overrides: tuple[tuple[str, str], ...]) -> dict[str, Any]:
185
186
  """Load config file and apply any overrides"""
186
- # First validate the original config file
187
- validate_yaml(None, None, config_file)
188
187
 
189
188
  # Load the base config
190
- with open(config_file, 'r', encoding='utf-8') as f:
191
- base_config = yaml.safe_load(f)
189
+ base_config = yaml_load(config_file)
192
190
 
193
191
  # Create layered config
194
192
  config = LayeredConfig(base_config)
aiq/memory/models.py CHANGED
@@ -37,39 +37,49 @@ class MemoryItem(BaseModel):
37
37
  memory : str or None
38
38
  Optional memory string. Helpful when returning a memory.
39
39
  """
40
+ # yapf: disable
40
41
  model_config = ConfigDict(
41
- # Add an example for the schema
42
42
  json_schema_extra={
43
- "examples": [{
44
- "conversation": [
45
- {
46
- "role": "user",
47
- "content": "Hi, I'm Alex. I'm a vegetarian and I'm allergic to nuts.",
48
- },
49
- {
50
- "role": "assistant",
51
- "content": "Hello Alex! I've noted that you're a vegetarian and have a nut allergy.",
52
- },
53
- ],
54
- "user_id": "user_abc",
55
- "metadata": {
56
- "key_value_pairs": {
57
- "type": "technology", "relevance": "high"
43
+ "examples": [
44
+ {
45
+ "conversation": [
46
+ {
47
+ "role": "user",
48
+ "content": "Hi, I'm Alex. I'm a vegetarian and I'm allergic to nuts."
49
+ },
50
+ {
51
+ "role": "assistant",
52
+ "content": "Hello Alex! I've noted that you're a vegetarian and have a nut allergy."
53
+ }
54
+ ],
55
+ "user_id": "user_abc",
56
+ "tags": ["diet", "allergy"],
57
+ "metadata": {
58
+ "key_value_pairs": {
59
+ "type": "profile",
60
+ "relevance": "high"
61
+ }
58
62
  }
63
+ },
64
+ {
65
+ "memory": "User prefers expensive hotels and is vegan.",
66
+ "user_id": "user_abc",
67
+ "tags": ["hotel", "restaurant"]
59
68
  }
60
- }]
69
+ ]
61
70
  },
62
71
  # Allow population of models from arbitrary types (e.g., ORM objects)
63
72
  arbitrary_types_allowed=True,
64
73
  # Enable aliasing if needed
65
- populate_by_name=True)
66
-
67
- conversation: list[dict[str, str]] = Field(description="List of conversation messages. "
68
- "Each message must have a \"role\" "
69
- "key (user or assistant. It must "
70
- "als have a \"content\" key.")
74
+ populate_by_name=True
75
+ )
76
+ # yapf: enable
77
+ conversation: list[dict[str, str]] | None = Field(
78
+ description="List of conversation messages. Each message must have a \"role\" "
79
+ "key (user or assistant. It must also have a \"content\" key.",
80
+ default=None)
71
81
  tags: list[str] = Field(default_factory=list, description="List of tags applied to the item.")
72
- metadata: dict[str, typing.Any] = Field(description="Metadata about the memory item.")
82
+ metadata: dict[str, typing.Any] = Field(description="Metadata about the memory item.", default={})
73
83
  user_id: str = Field(description="The user's ID.")
74
84
  memory: str | None = Field(default=None)
75
85
 
aiq/meta/pypi.md CHANGED
@@ -23,23 +23,22 @@ AIQ Toolkit is a flexible library designed to seamlessly integrate your enterpri
23
23
 
24
24
  ## Key Features
25
25
 
26
- - [**Framework Agnostic:**](https://docs.nvidia.com/aiqtoolkit/latest/concepts/plugins.html) Works with any agentic framework, so you can use your current technology stack without replatforming.
27
- - [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/sharing-workflows-and-tools.html) Every agent, tool, or workflow can be combined and repurposed, allowing developers to leverage existing work in new scenarios.
28
- - [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/create-customize-workflows.html) Start with a pre-built agent, tool, or workflow, and customize it to your needs.
29
- - [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/profiler.html) Profile entire workflows down to the tool and agent level, track input/output tokens and timings, and identify bottlenecks.
30
- - [**Observability:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/observe-workflow-with-phoenix.html) Monitor and debug your workflows with any OpenTelemetry-compatible observability tool. (OpenTelemetry and Phoenix integration are optional and can be installed separately if needed.)
31
- - [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/evaluate.html) Validate and maintain accuracy of agentic workflows with built-in evaluation tools.
32
- - [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/using-aiqtoolkit-ui-and-server.html) Use the AIQ Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows.
33
- - [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/latest/components/mcp.html) Compatible with Model Context Protocol (MCP), allowing tools served by MCP Servers to be used as AIQ Toolkit functions.
26
+ - [**Framework Agnostic:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/extend/plugins.html) Works with any agentic framework, so you can use your current technology stack without replatforming.
27
+ - [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/extend/sharing-components.html) Every agent, tool, or workflow can be combined and repurposed, allowing developers to leverage existing work in new scenarios.
28
+ - [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/tutorials/index.html) Start with a pre-built agent, tool, or workflow, and customize it to your needs.
29
+ - [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/profiler.html) Profile entire workflows down to the tool and agent level, track input/output tokens and timings, and identify bottlenecks.
30
+ - [**Observability:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-phoenix.html) Monitor and debug your workflows with any OpenTelemetry-compatible observability tool, with examples using [Phoenix](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-phoenix.html) and [W&B Weave](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-weave.html).
31
+ - [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/evaluate.html) Validate and maintain accuracy of agentic workflows with built-in evaluation tools.
32
+ - [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/quick-start/launching-ui.html) Use the AIQ Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows.
33
+ - [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/mcp/mcp-client.html) Compatible with Model Context Protocol (MCP), allowing tools served by MCP Servers to be used as AIQ Toolkit functions.
34
34
 
35
35
  With AIQ Toolkit, you can move quickly, experiment freely, and ensure reliability across all your agent-driven projects.
36
36
 
37
37
  ## Links
38
- * [Documentation](https://docs.nvidia.com/aiqtoolkit/latest/index.html): Explore the full documentation for AIQ Toolkit.
39
- * [About AIQ Toolkit](https://docs.nvidia.com/aiqtoolkit/latest/intro/why-aiqtoolkit.html): Learn more about the benefits of using AIQ Toolkit.
38
+ * [Documentation](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/index.html): Explore the full documentation for AIQ Toolkit.
40
39
 
41
40
  ## First time user?
42
- If this is your first time using AIQ Toolkit, it is recommended to install the latest version from the [source repository](https://github.com/NVIDIA/AIQToolkit?tab=readme-ov-file#get-started) on GitHub. This package is intended for users who are familiar with AIQ Toolkit applications and need to add AIQ Toolkit as a dependency to their project.
41
+ If this is your first time using AIQ Toolkit, it is recommended to install the latest version from the [source repository](https://github.com/NVIDIA/AIQToolkit?tab=readme-ov-file#quick-start) on GitHub. This package is intended for users who are familiar with AIQ Toolkit applications and need to add AIQ Toolkit as a dependency to their project.
43
42
 
44
43
  ## Feedback
45
44
 
@@ -191,11 +191,6 @@ class AsyncOtelSpanListener:
191
191
 
192
192
  self._outstanding_spans.clear()
193
193
 
194
- if len(self._span_stack) > 0:
195
- logger.error(
196
- "Not all spans were closed. Ensure all start events have a corresponding end event. Remaining: %s",
197
- self._span_stack)
198
-
199
194
  self._span_stack.clear()
200
195
 
201
196
  # Clean up any lingering Weave calls if Weave is available and initialized
@@ -295,8 +290,6 @@ class AsyncOtelSpanListener:
295
290
  logger.warning("No subspan found for step %s", step.UUID)
296
291
  return
297
292
 
298
- self._span_stack.pop(step.UUID, None)
299
-
300
293
  # Optionally add more attributes from usage_info or data
301
294
  usage_info = step.payload.usage_info
302
295
  if usage_info:
@@ -27,6 +27,10 @@ app = Flask(__name__)
27
27
  @app.after_request
28
28
  def add_hsts_header(response):
29
29
  response.headers['Strict-Transport-Security'] = 'max-age=31536000; includeSubDomains'
30
+ response.headers['X-Content-Type-Options'] = 'nosniff'
31
+ response.headers['X-Frame-Options'] = 'SAMEORIGIN'
32
+ response.headers['X-XSS-Protection'] = '1; mode=block'
33
+
30
34
  return response
31
35
 
32
36
 
@@ -43,7 +43,6 @@ async def add_memory_tool(config: AddToolConfig, builder: Builder):
43
43
  """
44
44
  Function to add memory to a hosted memory platform.
45
45
  """
46
-
47
46
  from langchain_core.tools import ToolException
48
47
 
49
48
  # First, retrieve the memory client
@@ -52,16 +51,29 @@ async def add_memory_tool(config: AddToolConfig, builder: Builder):
52
51
  async def _arun(item: MemoryItem) -> str:
53
52
  """
54
53
  Asynchronous execution of addition of memories.
55
- """
56
54
 
55
+ Args:
56
+ item (MemoryItem): The memory item to add. Must include:
57
+ - conversation: List of dicts with "role" and "content" keys
58
+ - user_id: String identifier for the user
59
+ - metadata: Dict of metadata (can be empty)
60
+ - tags: Optional list of tags
61
+ - memory: Optional memory string
62
+
63
+ Note: If conversation is not provided, it will be created from the memory field
64
+ if available, otherwise an error will be raised.
65
+ """
57
66
  try:
67
+ # If conversation is not provided but memory is, create a conversation
68
+ if not item.conversation and item.memory:
69
+ item.conversation = [{"role": "user", "content": item.memory}]
70
+ elif not item.conversation:
71
+ raise ToolException("Either conversation or memory must be provided")
58
72
 
59
73
  await memory_editor.add_items([item])
60
-
61
74
  return "Memory added successfully. You can continue. Please respond to the user."
62
75
 
63
76
  except Exception as e:
64
-
65
77
  raise ToolException(f"Error adding memory: {e}") from e
66
78
 
67
79
  yield FunctionInfo.from_fn(_arun, description=config.description)
aiq/tool/register.py CHANGED
@@ -22,6 +22,7 @@ from . import document_search
22
22
  from . import github_tools
23
23
  from . import nvidia_rag
24
24
  from . import retriever
25
+ from . import server_tools
25
26
  from .code_execution import register
26
27
  from .github_tools import create_github_commit
27
28
  from .github_tools import create_github_issue
@@ -0,0 +1,63 @@
1
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2
+ # SPDX-License-Identifier: Apache-2.0
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ from aiq.builder.builder import Builder
17
+ from aiq.builder.function_info import FunctionInfo
18
+ from aiq.cli.register_workflow import register_function
19
+ from aiq.data_models.function import FunctionBaseConfig
20
+
21
+
22
+ class RequestAttributesTool(FunctionBaseConfig, name="current_request_attributes"):
23
+ """
24
+ A simple tool that demonstrates how to retrieve user-defined request attributes from HTTP requests
25
+ within workflow tools. Please refer to the 'general' section of the configuration file located in the
26
+ 'examples/simple_calculator/configs/config-metadata.yml' directory to see how to define a custom route using a
27
+ YAML file and associate it with a corresponding function to acquire request attributes.
28
+ """
29
+ pass
30
+
31
+
32
+ @register_function(config_type=RequestAttributesTool)
33
+ async def current_request_attributes(config: RequestAttributesTool, builder: Builder):
34
+
35
+ from starlette.datastructures import Headers
36
+ from starlette.datastructures import QueryParams
37
+
38
+ async def _get_request_attributes(unused: str) -> str:
39
+
40
+ from aiq.builder.context import AIQContext
41
+ aiq_context = AIQContext.get()
42
+ method: str | None = aiq_context.metadata.method
43
+ url_path: str | None = aiq_context.metadata.url_path
44
+ url_scheme: str | None = aiq_context.metadata.url_scheme
45
+ headers: Headers | None = aiq_context.metadata.headers
46
+ query_params: QueryParams | None = aiq_context.metadata.query_params
47
+ path_params: dict[str, str] | None = aiq_context.metadata.path_params
48
+ client_host: str | None = aiq_context.metadata.client_host
49
+ client_port: int | None = aiq_context.metadata.client_port
50
+ cookies: dict[str, str] | None = aiq_context.metadata.cookies
51
+
52
+ return (f"Method: {method}, "
53
+ f"URL Path: {url_path}, "
54
+ f"URL Scheme: {url_scheme}, "
55
+ f"Headers: {dict(headers) if headers is not None else 'None'}, "
56
+ f"Query Params: {dict(query_params) if query_params is not None else 'None'}, "
57
+ f"Path Params: {path_params}, "
58
+ f"Client Host: {client_host}, "
59
+ f"Client Port: {client_port}, "
60
+ f"Cookies: {cookies}")
61
+
62
+ yield FunctionInfo.from_fn(_get_request_attributes,
63
+ description="Returns the acquired user defined request attriubutes.")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiqtoolkit
3
- Version: 1.1.0rc2
3
+ Version: 1.1.0rc4
4
4
  Summary: Agent Intelligence Toolkit (AIQ Toolkit)
5
5
  Author: NVIDIA Corporation
6
6
  Maintainer: NVIDIA Corporation
@@ -296,23 +296,22 @@ AIQ Toolkit is a flexible library designed to seamlessly integrate your enterpri
296
296
 
297
297
  ## Key Features
298
298
 
299
- - [**Framework Agnostic:**](https://docs.nvidia.com/aiqtoolkit/latest/concepts/plugins.html) Works with any agentic framework, so you can use your current technology stack without replatforming.
300
- - [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/sharing-workflows-and-tools.html) Every agent, tool, or workflow can be combined and repurposed, allowing developers to leverage existing work in new scenarios.
301
- - [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/create-customize-workflows.html) Start with a pre-built agent, tool, or workflow, and customize it to your needs.
302
- - [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/profiler.html) Profile entire workflows down to the tool and agent level, track input/output tokens and timings, and identify bottlenecks.
303
- - [**Observability:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/observe-workflow-with-phoenix.html) Monitor and debug your workflows with any OpenTelemetry-compatible observability tool. (OpenTelemetry and Phoenix integration are optional and can be installed separately if needed.)
304
- - [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/evaluate.html) Validate and maintain accuracy of agentic workflows with built-in evaluation tools.
305
- - [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/latest/guides/using-aiqtoolkit-ui-and-server.html) Use the AIQ Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows.
306
- - [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/latest/components/mcp.html) Compatible with Model Context Protocol (MCP), allowing tools served by MCP Servers to be used as AIQ Toolkit functions.
299
+ - [**Framework Agnostic:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/extend/plugins.html) Works with any agentic framework, so you can use your current technology stack without replatforming.
300
+ - [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/extend/sharing-components.html) Every agent, tool, or workflow can be combined and repurposed, allowing developers to leverage existing work in new scenarios.
301
+ - [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/tutorials/index.html) Start with a pre-built agent, tool, or workflow, and customize it to your needs.
302
+ - [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/profiler.html) Profile entire workflows down to the tool and agent level, track input/output tokens and timings, and identify bottlenecks.
303
+ - [**Observability:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-phoenix.html) Monitor and debug your workflows with any OpenTelemetry-compatible observability tool, with examples using [Phoenix](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-phoenix.html) and [W&B Weave](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/observe/observe-workflow-with-weave.html).
304
+ - [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/evaluate.html) Validate and maintain accuracy of agentic workflows with built-in evaluation tools.
305
+ - [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/quick-start/launching-ui.html) Use the AIQ Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows.
306
+ - [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/workflows/mcp/mcp-client.html) Compatible with Model Context Protocol (MCP), allowing tools served by MCP Servers to be used as AIQ Toolkit functions.
307
307
 
308
308
  With AIQ Toolkit, you can move quickly, experiment freely, and ensure reliability across all your agent-driven projects.
309
309
 
310
310
  ## Links
311
- * [Documentation](https://docs.nvidia.com/aiqtoolkit/latest/index.html): Explore the full documentation for AIQ Toolkit.
312
- * [About AIQ Toolkit](https://docs.nvidia.com/aiqtoolkit/latest/intro/why-aiqtoolkit.html): Learn more about the benefits of using AIQ Toolkit.
311
+ * [Documentation](https://docs.nvidia.com/aiqtoolkit/v1.1.0-rc4/index.html): Explore the full documentation for AIQ Toolkit.
313
312
 
314
313
  ## First time user?
315
- If this is your first time using AIQ Toolkit, it is recommended to install the latest version from the [source repository](https://github.com/NVIDIA/AIQToolkit?tab=readme-ov-file#get-started) on GitHub. This package is intended for users who are familiar with AIQ Toolkit applications and need to add AIQ Toolkit as a dependency to their project.
314
+ If this is your first time using AIQ Toolkit, it is recommended to install the latest version from the [source repository](https://github.com/NVIDIA/AIQToolkit?tab=readme-ov-file#quick-start) on GitHub. This package is intended for users who are familiar with AIQ Toolkit applications and need to add AIQ Toolkit as a dependency to their project.
316
315
 
317
316
  ## Feedback
318
317
 
@@ -40,7 +40,7 @@ aiq/cli/main.py,sha256=yVTX5-5-21OOfG8qAdcK3M1fCQUxdr3G37Mb5OldPQc,1772
40
40
  aiq/cli/register_workflow.py,sha256=KJgSMQxjOyidLFd8RXE4hWsUD5zXU4L-OGzuG4HIkG0,18277
41
41
  aiq/cli/type_registry.py,sha256=1Cos4g-fFLMNfYq4GtJRfLImVZVTPlPRXK85A76h3ew,40206
42
42
  aiq/cli/cli_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
- aiq/cli/cli_utils/config_override.py,sha256=STgJRFC-rO0rCYPGT5NNlMcUENWuCpv01lWaFukVlaA,9017
43
+ aiq/cli/cli_utils/config_override.py,sha256=WuX9ki1W0Z6jTqjm553U_owWFxbVzjbKRWGJINFPCvI,8919
44
44
  aiq/cli/cli_utils/validation.py,sha256=GlKpoi3HfE5HELjmz5wk8ezGbb5iZeY0zmA3uxmCrBU,1302
45
45
  aiq/cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
46
  aiq/cli/commands/evaluate.py,sha256=_pqAuvrNKBf0DvGpZFO28vAKBWp6izMpaLbAVnP57_4,4783
@@ -169,11 +169,11 @@ aiq/llm/utils/env_config_value.py,sha256=SBpppIRszDXNcEEG2L6kVojY7LH_EpHfK7bu92T
169
169
  aiq/llm/utils/error.py,sha256=gFFDG_v_3hBZVWpcD7HWkno-NBHDjXae7qDGnfiCNwA,820
170
170
  aiq/memory/__init__.py,sha256=sNqiLatqyTNSBUKKgmInOvCmebkuDHRTErZaeOaE8C8,844
171
171
  aiq/memory/interfaces.py,sha256=lyj1TGr3Fhibul8Y64Emj-BUEqDotmmFoVCEMqTujUA,5531
172
- aiq/memory/models.py,sha256=4TZW2VSroLx0Ea11F_33_Rmx1diAk1jFpz-45jyPpnc,4026
172
+ aiq/memory/models.py,sha256=c5dA7nKHQ4AS1_ptQZcfC_oXO495-ehocnf_qXTE6c8,4319
173
173
  aiq/meta/module_to_distro.json,sha256=1XV7edobFrdDKvsSoynfodXg_hczUWpDrQzGkW9qqEs,28
174
- aiq/meta/pypi.md,sha256=pLZaYl3LQrSOUBET9EW_kT5WQuAU9yYgNnsjOrLZ05c,4392
174
+ aiq/meta/pypi.md,sha256=v6otYWO_DnyDxnx1BELPIxWEc4ejeC67HKX66r3lrtA,4417
175
175
  aiq/observability/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
- aiq/observability/async_otel_listener.py,sha256=i8TdBpy9SrnwOx1uoplGiuBzAwkN9exck6MHn-F3Ysc,17873
176
+ aiq/observability/async_otel_listener.py,sha256=bEml7HVVdS8JfMPH7L0d-PRsZpwlYCo-TIxT6abVhFc,17611
177
177
  aiq/observability/register.py,sha256=ZDQOaSuy9igc7nAKG7XWP2u6JanC2T8yufMWItNpPJI,4245
178
178
  aiq/plugins/.namespace,sha256=Gace0pOC3ETEJf-TBVuNw0TQV6J_KtOPpEiSzMH-odo,215
179
179
  aiq/profiler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -255,15 +255,16 @@ aiq/tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
255
255
  aiq/tool/datetime_tools.py,sha256=6yvTO4cCaxko7-wK6fdCXUwNJFwxuEllfR5S57uo02k,1664
256
256
  aiq/tool/document_search.py,sha256=w3D3r5ZBS2jYmVAZZ7lC7xCoi25bA1RePoFjjlV1Zog,6793
257
257
  aiq/tool/nvidia_rag.py,sha256=9mS3igONo1RywxXNj_ITh2-qD91x1R0f7uhOWMZQX3o,4178
258
- aiq/tool/register.py,sha256=l3_cjRYA2bTHlJG_PEpmcGKCruNDC7bqHH2H2PqbUTU,1434
258
+ aiq/tool/register.py,sha256=l9TbCf9T7IXvvXCidzjYPDygBx_E5as5okN2kIZtieE,1461
259
259
  aiq/tool/retriever.py,sha256=DnuU4khpJkd4epDBGQsowDOqDBKFiLQrnyKXgU6IRW8,3724
260
+ aiq/tool/server_tools.py,sha256=e_HCYleB64KqAzT7HZ-i__mZ3QsNXEZzBTGtDOYMLvw,3063
260
261
  aiq/tool/code_execution/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
261
262
  aiq/tool/code_execution/code_sandbox.py,sha256=ha0IVHmWsEp0U5A0XywG6hp42pFdj5esM19CRS94_30,5986
262
263
  aiq/tool/code_execution/register.py,sha256=H-4eZwu6f5jANEBnyONcDdeBrivkHjw-aZU-V7CLMRs,3143
263
264
  aiq/tool/code_execution/utils.py,sha256=__W-T1kaphFKYSc2AydQW8lCdvD7zAccarvs7XVFTtI,4194
264
265
  aiq/tool/code_execution/local_sandbox/Dockerfile.sandbox,sha256=CYqZ5jbBwk3ge8pg87aLjhzWERauScwya5naYq0vb5o,2316
265
266
  aiq/tool/code_execution/local_sandbox/__init__.py,sha256=k25Kqr_PrH4s0YCfzVzC9vaBAiu8yI428C4HX-qUcqA,615
266
- aiq/tool/code_execution/local_sandbox/local_sandbox_server.py,sha256=vSPeeybT4jX1dTlgW-LwuYxpKCgtTs869tXjSTDn2MI,2812
267
+ aiq/tool/code_execution/local_sandbox/local_sandbox_server.py,sha256=dLxw1Hx-2CwZXllNV8I2Sk0y1F-gVeznp4WVB4Ve_qY,2986
267
268
  aiq/tool/code_execution/local_sandbox/sandbox.requirements.txt,sha256=bVUX2CPX-Yxne1hi25fYmd1_m1il5dPsGSuRMjSYKyE,26
268
269
  aiq/tool/code_execution/local_sandbox/start_local_sandbox.sh,sha256=aduC0mhws1cAW47VRxEpoXtztgsSFk29LCQYy0uq9e8,956
269
270
  aiq/tool/github_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -278,7 +279,7 @@ aiq/tool/mcp/__init__.py,sha256=GUJrgGtpvyMUCjUBvR3faAdv-tZzbU9W-izgx9aMEQg,680
278
279
  aiq/tool/mcp/mcp_client.py,sha256=5TaYbYqvfswBzO9al8Ir89KZ3FhxJtzkJPHLBO_iNWY,7469
279
280
  aiq/tool/mcp/mcp_tool.py,sha256=9RaAYTFvNJLkA1nlnxzZFd8gM4uYj4y0l6qt9BxDXpQ,3043
280
281
  aiq/tool/memory_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
281
- aiq/tool/memory_tools/add_memory_tool.py,sha256=nOWKW896ghreWnHTx3GVFkYqqC3dfZroNbehuDVASKk,2491
282
+ aiq/tool/memory_tools/add_memory_tool.py,sha256=9EjB3DpYhxwasz7o3O8Rq__Ys5986fciv44ahC6mVCo,3349
282
283
  aiq/tool/memory_tools/delete_memory_tool.py,sha256=wdB_I8y-1D1OpNtBi6ZOg36vvNkbaxp-yvdqFMc2Suk,2532
283
284
  aiq/tool/memory_tools/get_memory_tool.py,sha256=-i0Bt5xYeapbbd2wtAgPc0pOv0Dx4jK1-yyHG7YCeQ0,2749
284
285
  aiq/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -306,10 +307,10 @@ aiq/utils/reactive/base/observer_base.py,sha256=UAlyAY_ky4q2t0P81RVFo2Bs_R7z5Nde
306
307
  aiq/utils/reactive/base/subject_base.py,sha256=Ed-AC6P7cT3qkW1EXjzbd5M9WpVoeN_9KCe3OM3FLU4,2521
307
308
  aiq/utils/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
308
309
  aiq/utils/settings/global_settings.py,sha256=U9TCLdoZsKq5qOVGjREipGVv9e-FlStzqy5zv82_VYk,7454
309
- aiqtoolkit-1.1.0rc2.dist-info/licenses/LICENSE-3rd-party.txt,sha256=8o7aySJa9CBvFshPcsRdJbczzdNyDGJ8b0J67WRUQ2k,183936
310
- aiqtoolkit-1.1.0rc2.dist-info/licenses/LICENSE.md,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
311
- aiqtoolkit-1.1.0rc2.dist-info/METADATA,sha256=K7cu558y6_mxK5lUhD7PdHte-yDX3Y1qDjbuRgCqwrQ,20132
312
- aiqtoolkit-1.1.0rc2.dist-info/WHEEL,sha256=0CuiUZ_p9E4cD6NyLD6UG80LBXYyiSYZOKDm5lp32xk,91
313
- aiqtoolkit-1.1.0rc2.dist-info/entry_points.txt,sha256=gRlPfR5g21t328WNEQ4CcEz80S1sJNS8A7rMDYnzl4A,452
314
- aiqtoolkit-1.1.0rc2.dist-info/top_level.txt,sha256=fo7AzYcNhZ_tRWrhGumtxwnxMew4xrT1iwouDy_f0Kc,4
315
- aiqtoolkit-1.1.0rc2.dist-info/RECORD,,
310
+ aiqtoolkit-1.1.0rc4.dist-info/licenses/LICENSE-3rd-party.txt,sha256=8o7aySJa9CBvFshPcsRdJbczzdNyDGJ8b0J67WRUQ2k,183936
311
+ aiqtoolkit-1.1.0rc4.dist-info/licenses/LICENSE.md,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
312
+ aiqtoolkit-1.1.0rc4.dist-info/METADATA,sha256=SM8LTlvNhx3mozhPNdsGm-Sub6eVJfZI2dqzYlXokyk,20157
313
+ aiqtoolkit-1.1.0rc4.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
314
+ aiqtoolkit-1.1.0rc4.dist-info/entry_points.txt,sha256=gRlPfR5g21t328WNEQ4CcEz80S1sJNS8A7rMDYnzl4A,452
315
+ aiqtoolkit-1.1.0rc4.dist-info/top_level.txt,sha256=fo7AzYcNhZ_tRWrhGumtxwnxMew4xrT1iwouDy_f0Kc,4
316
+ aiqtoolkit-1.1.0rc4.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.3.1)
2
+ Generator: setuptools (80.4.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5