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.
- aiq/cli/cli_utils/config_override.py +2 -4
- aiq/memory/models.py +34 -24
- aiq/meta/pypi.md +10 -11
- aiq/observability/async_otel_listener.py +0 -7
- aiq/tool/code_execution/local_sandbox/local_sandbox_server.py +4 -0
- aiq/tool/memory_tools/add_memory_tool.py +16 -4
- aiq/tool/register.py +1 -0
- aiq/tool/server_tools.py +63 -0
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/METADATA +11 -12
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/RECORD +15 -14
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/WHEEL +1 -1
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/entry_points.txt +0 -0
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/licenses/LICENSE-3rd-party.txt +0 -0
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/licenses/LICENSE.md +0 -0
- {aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/top_level.txt +0 -0
|
@@ -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
|
-
|
|
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
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"
|
|
57
|
-
|
|
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
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
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/
|
|
27
|
-
- [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/
|
|
28
|
-
- [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/
|
|
29
|
-
- [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/
|
|
30
|
-
- [**Observability:**](https://docs.nvidia.com/aiqtoolkit/
|
|
31
|
-
- [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/
|
|
32
|
-
- [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/
|
|
33
|
-
- [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/
|
|
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/
|
|
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#
|
|
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
|
aiq/tool/server_tools.py
ADDED
|
@@ -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.
|
|
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/
|
|
300
|
-
- [**Reusability:**](https://docs.nvidia.com/aiqtoolkit/
|
|
301
|
-
- [**Rapid Development:**](https://docs.nvidia.com/aiqtoolkit/
|
|
302
|
-
- [**Profiling:**](https://docs.nvidia.com/aiqtoolkit/
|
|
303
|
-
- [**Observability:**](https://docs.nvidia.com/aiqtoolkit/
|
|
304
|
-
- [**Evaluation System:**](https://docs.nvidia.com/aiqtoolkit/
|
|
305
|
-
- [**User Interface:**](https://docs.nvidia.com/aiqtoolkit/
|
|
306
|
-
- [**MCP Compatibility**](https://docs.nvidia.com/aiqtoolkit/
|
|
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/
|
|
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#
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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.
|
|
310
|
-
aiqtoolkit-1.1.
|
|
311
|
-
aiqtoolkit-1.1.
|
|
312
|
-
aiqtoolkit-1.1.
|
|
313
|
-
aiqtoolkit-1.1.
|
|
314
|
-
aiqtoolkit-1.1.
|
|
315
|
-
aiqtoolkit-1.1.
|
|
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,,
|
|
File without changes
|
{aiqtoolkit-1.1.0rc2.dist-info → aiqtoolkit-1.1.0rc4.dist-info}/licenses/LICENSE-3rd-party.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|