google-adk 1.1.0__py3-none-any.whl → 1.1.1__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.
- google/adk/tools/bigquery/__init__.py +11 -1
- google/adk/tools/bigquery/bigquery_credentials.py +2 -1
- google/adk/tools/bigquery/bigquery_toolset.py +86 -0
- google/adk/tools/bigquery/client.py +33 -0
- google/adk/tools/bigquery/metadata_tool.py +249 -0
- google/adk/tools/bigquery/query_tool.py +76 -0
- google/adk/version.py +1 -1
- {google_adk-1.1.0.dist-info → google_adk-1.1.1.dist-info}/METADATA +1 -1
- {google_adk-1.1.0.dist-info → google_adk-1.1.1.dist-info}/RECORD +12 -8
- {google_adk-1.1.0.dist-info → google_adk-1.1.1.dist-info}/WHEEL +0 -0
- {google_adk-1.1.0.dist-info → google_adk-1.1.1.dist-info}/entry_points.txt +0 -0
- {google_adk-1.1.0.dist-info → google_adk-1.1.1.dist-info}/licenses/LICENSE +0 -0
@@ -12,7 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
|
-
"""BigQuery Tools
|
15
|
+
"""BigQuery Tools (Experimental).
|
16
16
|
|
17
17
|
BigQuery Tools under this module are hand crafted and customized while the tools
|
18
18
|
under google.adk.tools.google_api_tool are auto generated based on API
|
@@ -26,3 +26,13 @@ definition. The rationales to have customized tool are:
|
|
26
26
|
4. We want to provide extra access guardrails in those tools. For example,
|
27
27
|
execute_sql can't arbitrarily mutate existing data.
|
28
28
|
"""
|
29
|
+
|
30
|
+
from .bigquery_credentials import BigQueryCredentialsConfig
|
31
|
+
from .bigquery_tool import BigQueryTool
|
32
|
+
from .bigquery_toolset import BigQueryToolset
|
33
|
+
|
34
|
+
__all__ = [
|
35
|
+
"BigQueryTool",
|
36
|
+
"BigQueryToolset",
|
37
|
+
"BigQueryCredentialsConfig",
|
38
|
+
]
|
@@ -14,6 +14,7 @@
|
|
14
14
|
|
15
15
|
from __future__ import annotations
|
16
16
|
|
17
|
+
import json
|
17
18
|
from typing import List
|
18
19
|
from typing import Optional
|
19
20
|
|
@@ -121,7 +122,7 @@ class BigQueryCredentialsManager:
|
|
121
122
|
creds_json = tool_context.state.get(BIGQUERY_TOKEN_CACHE_KEY, None)
|
122
123
|
creds = (
|
123
124
|
Credentials.from_authorized_user_info(
|
124
|
-
creds_json, self.credentials_config.scopes
|
125
|
+
json.loads(creds_json), self.credentials_config.scopes
|
125
126
|
)
|
126
127
|
if creds_json
|
127
128
|
else None
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# Copyright 2025 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
|
17
|
+
from typing import List
|
18
|
+
from typing import Optional
|
19
|
+
from typing import Union
|
20
|
+
|
21
|
+
from google.adk.agents.readonly_context import ReadonlyContext
|
22
|
+
from typing_extensions import override
|
23
|
+
|
24
|
+
from . import metadata_tool
|
25
|
+
from . import query_tool
|
26
|
+
from ...tools.base_tool import BaseTool
|
27
|
+
from ...tools.base_toolset import BaseToolset
|
28
|
+
from ...tools.base_toolset import ToolPredicate
|
29
|
+
from .bigquery_credentials import BigQueryCredentialsConfig
|
30
|
+
from .bigquery_tool import BigQueryTool
|
31
|
+
|
32
|
+
|
33
|
+
class BigQueryToolset(BaseToolset):
|
34
|
+
"""BigQuery Toolset contains tools for interacting with BigQuery data and metadata."""
|
35
|
+
|
36
|
+
def __init__(
|
37
|
+
self,
|
38
|
+
*,
|
39
|
+
tool_filter: Optional[Union[ToolPredicate, List[str]]] = None,
|
40
|
+
credentials_config: Optional[BigQueryCredentialsConfig] = None,
|
41
|
+
):
|
42
|
+
self._credentials_config = credentials_config
|
43
|
+
self.tool_filter = tool_filter
|
44
|
+
|
45
|
+
def _is_tool_selected(
|
46
|
+
self, tool: BaseTool, readonly_context: ReadonlyContext
|
47
|
+
) -> bool:
|
48
|
+
if self.tool_filter is None:
|
49
|
+
return True
|
50
|
+
|
51
|
+
if isinstance(self.tool_filter, ToolPredicate):
|
52
|
+
return self.tool_filter(tool, readonly_context)
|
53
|
+
|
54
|
+
if isinstance(self.tool_filter, list):
|
55
|
+
return tool.name in self.tool_filter
|
56
|
+
|
57
|
+
return False
|
58
|
+
|
59
|
+
@override
|
60
|
+
async def get_tools(
|
61
|
+
self, readonly_context: Optional[ReadonlyContext] = None
|
62
|
+
) -> List[BaseTool]:
|
63
|
+
"""Get tools from the toolset."""
|
64
|
+
all_tools = [
|
65
|
+
BigQueryTool(
|
66
|
+
func=func,
|
67
|
+
credentials=self._credentials_config,
|
68
|
+
)
|
69
|
+
for func in [
|
70
|
+
metadata_tool.get_dataset_info,
|
71
|
+
metadata_tool.get_table_info,
|
72
|
+
metadata_tool.list_dataset_ids,
|
73
|
+
metadata_tool.list_table_ids,
|
74
|
+
query_tool.execute_sql,
|
75
|
+
]
|
76
|
+
]
|
77
|
+
|
78
|
+
return [
|
79
|
+
tool
|
80
|
+
for tool in all_tools
|
81
|
+
if self._is_tool_selected(tool, readonly_context)
|
82
|
+
]
|
83
|
+
|
84
|
+
@override
|
85
|
+
async def close(self):
|
86
|
+
pass
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Copyright 2025 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
from __future__ import annotations
|
16
|
+
|
17
|
+
import google.api_core.client_info
|
18
|
+
from google.cloud import bigquery
|
19
|
+
from google.oauth2.credentials import Credentials
|
20
|
+
|
21
|
+
USER_AGENT = "adk-bigquery-tool"
|
22
|
+
|
23
|
+
|
24
|
+
def get_bigquery_client(*, credentials: Credentials) -> bigquery.Client:
|
25
|
+
"""Get a BigQuery client."""
|
26
|
+
|
27
|
+
client_info = google.api_core.client_info.ClientInfo(user_agent=USER_AGENT)
|
28
|
+
|
29
|
+
bigquery_client = bigquery.Client(
|
30
|
+
credentials=credentials, client_info=client_info
|
31
|
+
)
|
32
|
+
|
33
|
+
return bigquery_client
|
@@ -0,0 +1,249 @@
|
|
1
|
+
# Copyright 2025 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
from google.cloud import bigquery
|
16
|
+
from google.oauth2.credentials import Credentials
|
17
|
+
|
18
|
+
from ...tools.bigquery import client
|
19
|
+
|
20
|
+
|
21
|
+
def list_dataset_ids(project_id: str, credentials: Credentials) -> list[str]:
|
22
|
+
"""List BigQuery dataset ids in a Google Cloud project.
|
23
|
+
|
24
|
+
Args:
|
25
|
+
project_id (str): The Google Cloud project id.
|
26
|
+
credentials (Credentials): The credentials to use for the request.
|
27
|
+
|
28
|
+
Returns:
|
29
|
+
list[str]: List of the BigQuery dataset ids present in the project.
|
30
|
+
|
31
|
+
Examples:
|
32
|
+
>>> list_dataset_ids("bigquery-public-data")
|
33
|
+
['america_health_rankings',
|
34
|
+
'american_community_survey',
|
35
|
+
'aml_ai_input_dataset',
|
36
|
+
'austin_311',
|
37
|
+
'austin_bikeshare',
|
38
|
+
'austin_crime',
|
39
|
+
'austin_incidents',
|
40
|
+
'austin_waste',
|
41
|
+
'baseball',
|
42
|
+
'bbc_news']
|
43
|
+
"""
|
44
|
+
try:
|
45
|
+
bq_client = client.get_bigquery_client(credentials=credentials)
|
46
|
+
|
47
|
+
datasets = []
|
48
|
+
for dataset in bq_client.list_datasets(project_id):
|
49
|
+
datasets.append(dataset.dataset_id)
|
50
|
+
return datasets
|
51
|
+
except Exception as ex:
|
52
|
+
return {
|
53
|
+
"status": "ERROR",
|
54
|
+
"error_details": str(ex),
|
55
|
+
}
|
56
|
+
|
57
|
+
|
58
|
+
def get_dataset_info(
|
59
|
+
project_id: str, dataset_id: str, credentials: Credentials
|
60
|
+
) -> dict:
|
61
|
+
"""Get metadata information about a BigQuery dataset.
|
62
|
+
|
63
|
+
Args:
|
64
|
+
project_id (str): The Google Cloud project id containing the dataset.
|
65
|
+
dataset_id (str): The BigQuery dataset id.
|
66
|
+
credentials (Credentials): The credentials to use for the request.
|
67
|
+
|
68
|
+
Returns:
|
69
|
+
dict: Dictionary representing the properties of the dataset.
|
70
|
+
|
71
|
+
Examples:
|
72
|
+
>>> get_dataset_info("bigquery-public-data", "penguins")
|
73
|
+
{
|
74
|
+
"kind": "bigquery#dataset",
|
75
|
+
"etag": "PNC5907iQbzeVcAru/2L3A==",
|
76
|
+
"id": "bigquery-public-data:ml_datasets",
|
77
|
+
"selfLink":
|
78
|
+
"https://bigquery.googleapis.com/bigquery/v2/projects/bigquery-public-data/datasets/ml_datasets",
|
79
|
+
"datasetReference": {
|
80
|
+
"datasetId": "ml_datasets",
|
81
|
+
"projectId": "bigquery-public-data"
|
82
|
+
},
|
83
|
+
"access": [
|
84
|
+
{
|
85
|
+
"role": "OWNER",
|
86
|
+
"groupByEmail": "cloud-datasets-eng@google.com"
|
87
|
+
},
|
88
|
+
{
|
89
|
+
"role": "READER",
|
90
|
+
"iamMember": "allUsers"
|
91
|
+
},
|
92
|
+
{
|
93
|
+
"role": "READER",
|
94
|
+
"groupByEmail": "bqml-eng@google.com"
|
95
|
+
}
|
96
|
+
],
|
97
|
+
"creationTime": "1553208775542",
|
98
|
+
"lastModifiedTime": "1686338918114",
|
99
|
+
"location": "US",
|
100
|
+
"type": "DEFAULT",
|
101
|
+
"maxTimeTravelHours": "168"
|
102
|
+
}
|
103
|
+
"""
|
104
|
+
try:
|
105
|
+
bq_client = client.get_bigquery_client(credentials=credentials)
|
106
|
+
dataset = bq_client.get_dataset(
|
107
|
+
bigquery.DatasetReference(project_id, dataset_id)
|
108
|
+
)
|
109
|
+
return dataset.to_api_repr()
|
110
|
+
except Exception as ex:
|
111
|
+
return {
|
112
|
+
"status": "ERROR",
|
113
|
+
"error_details": str(ex),
|
114
|
+
}
|
115
|
+
|
116
|
+
|
117
|
+
def list_table_ids(
|
118
|
+
project_id: str, dataset_id: str, credentials: Credentials
|
119
|
+
) -> list[str]:
|
120
|
+
"""List table ids in a BigQuery dataset.
|
121
|
+
|
122
|
+
Args:
|
123
|
+
project_id (str): The Google Cloud project id containing the dataset.
|
124
|
+
dataset_id (str): The BigQuery dataset id.
|
125
|
+
credentials (Credentials): The credentials to use for the request.
|
126
|
+
|
127
|
+
Returns:
|
128
|
+
list[str]: List of the tables ids present in the dataset.
|
129
|
+
|
130
|
+
Examples:
|
131
|
+
>>> list_table_ids("bigquery-public-data", "ml_datasets")
|
132
|
+
['census_adult_income',
|
133
|
+
'credit_card_default',
|
134
|
+
'holidays_and_events_for_forecasting',
|
135
|
+
'iris',
|
136
|
+
'penguins',
|
137
|
+
'ulb_fraud_detection']
|
138
|
+
"""
|
139
|
+
try:
|
140
|
+
bq_client = client.get_bigquery_client(credentials=credentials)
|
141
|
+
|
142
|
+
tables = []
|
143
|
+
for table in bq_client.list_tables(
|
144
|
+
bigquery.DatasetReference(project_id, dataset_id)
|
145
|
+
):
|
146
|
+
tables.append(table.table_id)
|
147
|
+
return tables
|
148
|
+
except Exception as ex:
|
149
|
+
return {
|
150
|
+
"status": "ERROR",
|
151
|
+
"error_details": str(ex),
|
152
|
+
}
|
153
|
+
|
154
|
+
|
155
|
+
def get_table_info(
|
156
|
+
project_id: str, dataset_id: str, table_id: str, credentials: Credentials
|
157
|
+
) -> dict:
|
158
|
+
"""Get metadata information about a BigQuery table.
|
159
|
+
|
160
|
+
Args:
|
161
|
+
project_id (str): The Google Cloud project id containing the dataset.
|
162
|
+
dataset_id (str): The BigQuery dataset id containing the table.
|
163
|
+
table_id (str): The BigQuery table id.
|
164
|
+
credentials (Credentials): The credentials to use for the request.
|
165
|
+
|
166
|
+
Returns:
|
167
|
+
dict: Dictionary representing the properties of the table.
|
168
|
+
|
169
|
+
Examples:
|
170
|
+
>>> get_table_info("bigquery-public-data", "ml_datasets", "penguins")
|
171
|
+
{
|
172
|
+
"kind": "bigquery#table",
|
173
|
+
"etag": "X0ZkRohSGoYvWemRYEgOHA==",
|
174
|
+
"id": "bigquery-public-data:ml_datasets.penguins",
|
175
|
+
"selfLink":
|
176
|
+
"https://bigquery.googleapis.com/bigquery/v2/projects/bigquery-public-data/datasets/ml_datasets/tables/penguins",
|
177
|
+
"tableReference": {
|
178
|
+
"projectId": "bigquery-public-data",
|
179
|
+
"datasetId": "ml_datasets",
|
180
|
+
"tableId": "penguins"
|
181
|
+
},
|
182
|
+
"schema": {
|
183
|
+
"fields": [
|
184
|
+
{
|
185
|
+
"name": "species",
|
186
|
+
"type": "STRING",
|
187
|
+
"mode": "REQUIRED"
|
188
|
+
},
|
189
|
+
{
|
190
|
+
"name": "island",
|
191
|
+
"type": "STRING",
|
192
|
+
"mode": "NULLABLE"
|
193
|
+
},
|
194
|
+
{
|
195
|
+
"name": "culmen_length_mm",
|
196
|
+
"type": "FLOAT",
|
197
|
+
"mode": "NULLABLE"
|
198
|
+
},
|
199
|
+
{
|
200
|
+
"name": "culmen_depth_mm",
|
201
|
+
"type": "FLOAT",
|
202
|
+
"mode": "NULLABLE"
|
203
|
+
},
|
204
|
+
{
|
205
|
+
"name": "flipper_length_mm",
|
206
|
+
"type": "FLOAT",
|
207
|
+
"mode": "NULLABLE"
|
208
|
+
},
|
209
|
+
{
|
210
|
+
"name": "body_mass_g",
|
211
|
+
"type": "FLOAT",
|
212
|
+
"mode": "NULLABLE"
|
213
|
+
},
|
214
|
+
{
|
215
|
+
"name": "sex",
|
216
|
+
"type": "STRING",
|
217
|
+
"mode": "NULLABLE"
|
218
|
+
}
|
219
|
+
]
|
220
|
+
},
|
221
|
+
"numBytes": "28947",
|
222
|
+
"numLongTermBytes": "28947",
|
223
|
+
"numRows": "344",
|
224
|
+
"creationTime": "1619804743188",
|
225
|
+
"lastModifiedTime": "1634584675234",
|
226
|
+
"type": "TABLE",
|
227
|
+
"location": "US",
|
228
|
+
"numTimeTravelPhysicalBytes": "0",
|
229
|
+
"numTotalLogicalBytes": "28947",
|
230
|
+
"numActiveLogicalBytes": "0",
|
231
|
+
"numLongTermLogicalBytes": "28947",
|
232
|
+
"numTotalPhysicalBytes": "5350",
|
233
|
+
"numActivePhysicalBytes": "0",
|
234
|
+
"numLongTermPhysicalBytes": "5350",
|
235
|
+
"numCurrentPhysicalBytes": "5350"
|
236
|
+
}
|
237
|
+
"""
|
238
|
+
try:
|
239
|
+
bq_client = client.get_bigquery_client(credentials=credentials)
|
240
|
+
return bq_client.get_table(
|
241
|
+
bigquery.TableReference(
|
242
|
+
bigquery.DatasetReference(project_id, dataset_id), table_id
|
243
|
+
)
|
244
|
+
).to_api_repr()
|
245
|
+
except Exception as ex:
|
246
|
+
return {
|
247
|
+
"status": "ERROR",
|
248
|
+
"error_details": str(ex),
|
249
|
+
}
|
@@ -0,0 +1,76 @@
|
|
1
|
+
# Copyright 2025 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
from google.oauth2.credentials import Credentials
|
16
|
+
|
17
|
+
from ...tools.bigquery import client
|
18
|
+
|
19
|
+
MAX_DOWNLOADED_QUERY_RESULT_ROWS = 50
|
20
|
+
|
21
|
+
|
22
|
+
def execute_sql(project_id: str, query: str, credentials: Credentials) -> dict:
|
23
|
+
"""Run a BigQuery SQL query in the project and return the result.
|
24
|
+
|
25
|
+
Args:
|
26
|
+
project_id (str): The GCP project id in which the query should be
|
27
|
+
executed.
|
28
|
+
query (str): The BigQuery SQL query to be executed.
|
29
|
+
credentials (Credentials): The credentials to use for the request.
|
30
|
+
|
31
|
+
Returns:
|
32
|
+
dict: Dictionary representing the result of the query.
|
33
|
+
If the result contains the key "result_is_likely_truncated" with
|
34
|
+
value True, it means that there may be additional rows matching the
|
35
|
+
query not returned in the result.
|
36
|
+
|
37
|
+
Examples:
|
38
|
+
>>> execute_sql("bigframes-dev",
|
39
|
+
... "SELECT island, COUNT(*) AS population "
|
40
|
+
... "FROM bigquery-public-data.ml_datasets.penguins GROUP BY island")
|
41
|
+
{
|
42
|
+
"rows": [
|
43
|
+
{
|
44
|
+
"island": "Dream",
|
45
|
+
"population": 124
|
46
|
+
},
|
47
|
+
{
|
48
|
+
"island": "Biscoe",
|
49
|
+
"population": 168
|
50
|
+
},
|
51
|
+
{
|
52
|
+
"island": "Torgersen",
|
53
|
+
"population": 52
|
54
|
+
}
|
55
|
+
]
|
56
|
+
}
|
57
|
+
"""
|
58
|
+
|
59
|
+
try:
|
60
|
+
bq_client = client.get_bigquery_client(credentials=credentials)
|
61
|
+
row_iterator = bq_client.query_and_wait(
|
62
|
+
query, project=project_id, max_results=MAX_DOWNLOADED_QUERY_RESULT_ROWS
|
63
|
+
)
|
64
|
+
rows = [{key: val for key, val in row.items()} for row in row_iterator]
|
65
|
+
result = {"rows": rows}
|
66
|
+
if (
|
67
|
+
MAX_DOWNLOADED_QUERY_RESULT_ROWS is not None
|
68
|
+
and len(rows) == MAX_DOWNLOADED_QUERY_RESULT_ROWS
|
69
|
+
):
|
70
|
+
result["result_is_likely_truncated"] = True
|
71
|
+
return result
|
72
|
+
except Exception as ex:
|
73
|
+
return {
|
74
|
+
"status": "ERROR",
|
75
|
+
"error_details": str(ex),
|
76
|
+
}
|
google/adk/version.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
google/adk/__init__.py,sha256=sSPQK3r0tW8ahl-k8SXkZvMcbiTbGICCtrw6KkFucyg,726
|
2
2
|
google/adk/runners.py,sha256=GXlJjARTSZgYsu6W5MhrZgMZZqit-elqK5qdpLs8rU0,18177
|
3
3
|
google/adk/telemetry.py,sha256=vR3mXZd3E4k-QpHcRnQ92ng0nDOr1sVEF_Fe6f33E0w,6446
|
4
|
-
google/adk/version.py,sha256
|
4
|
+
google/adk/version.py,sha256=-t-FxnOMrGz1DfJCH0__Oi1hRHmkdgR1V28ZJjCYjfA,621
|
5
5
|
google/adk/agents/__init__.py,sha256=WsCiBlvI-ISWrcntboo_sULvVJNwLNxXCe42UGPLKdY,1041
|
6
6
|
google/adk/agents/active_streaming_tool.py,sha256=vFuh_PkdF5EyyneBBJ7Al8ojeTIR3OtsxLjckr9DbXE,1194
|
7
7
|
google/adk/agents/base_agent.py,sha256=3OBJWLnRsnWuBPA2zLYo-6Yhs1bFDJGKHoa8_RPgndg,12271
|
@@ -157,9 +157,13 @@ google/adk/tools/application_integration_tool/application_integration_toolset.py
|
|
157
157
|
google/adk/tools/application_integration_tool/integration_connector_tool.py,sha256=gKK4nZho3_ZDjmc7MssWA_tbQpNM_ug3SkZjv20Yv1w,7552
|
158
158
|
google/adk/tools/application_integration_tool/clients/connections_client.py,sha256=xE6XlHRw3ILWLBY1ruv37CEzmrLZ77iiu3hf3v6CrD4,31108
|
159
159
|
google/adk/tools/application_integration_tool/clients/integration_client.py,sha256=hLM8n97hsmvgYBtmF_KMYwr_mnlhfPvsDXzE2cI5SqE,10654
|
160
|
-
google/adk/tools/bigquery/__init__.py,sha256=
|
161
|
-
google/adk/tools/bigquery/bigquery_credentials.py,sha256=
|
160
|
+
google/adk/tools/bigquery/__init__.py,sha256=tkXX7IoTzXgZjv82fjqa0_TTufxijiIr6nPsaqH1o5Y,1446
|
161
|
+
google/adk/tools/bigquery/bigquery_credentials.py,sha256=3XvDdd9FB6aLrcUo2Zec42da-eS1hOg0fSkXy1mBfak,7584
|
162
162
|
google/adk/tools/bigquery/bigquery_tool.py,sha256=PaGfJFz-LLkNxtFEbfHdu9x0ANeIQMKH6zk0sfKzDao,3713
|
163
|
+
google/adk/tools/bigquery/bigquery_toolset.py,sha256=R3ujJDQbEthoiqK6OtfquR6Z3tWGtBz8_Lt2m67qidg,2534
|
164
|
+
google/adk/tools/bigquery/client.py,sha256=N2ge1EdHIh8qwTXioOkwLTc48Q2bNAlC9MQz_cUCQBQ,1072
|
165
|
+
google/adk/tools/bigquery/metadata_tool.py,sha256=ORDJ9LyzkqkriuCLaoeuS60rjIEn5NSwdl4A3NNm-eo,7669
|
166
|
+
google/adk/tools/bigquery/query_tool.py,sha256=0AVFSE_zP-7j1FMQ0mSxMZEJZV6Kl3eCdX22no3_MsI,2496
|
163
167
|
google/adk/tools/google_api_tool/__init__.py,sha256=a_Bco5SyTQ89yb1t6Bs6NQrTsJgV22mn1quRNygVZXw,1385
|
164
168
|
google/adk/tools/google_api_tool/google_api_tool.py,sha256=vDA7YnDZCl8-ucBvIzXS-uJWX1m2KY_csTz5M3nw_Ys,2029
|
165
169
|
google/adk/tools/google_api_tool/google_api_toolset.py,sha256=M27lSCXOka4yHGGH50UVJvoEvZbWT-QBVaR1tW018tY,3773
|
@@ -193,8 +197,8 @@ google/adk/tools/retrieval/llama_index_retrieval.py,sha256=r9HUQXqygxizX0OXz7pJA
|
|
193
197
|
google/adk/tools/retrieval/vertex_ai_rag_retrieval.py,sha256=aDsQPeScrYoHdLg0Yq7_haT1CJbHDxCPGRyhCy1ET-o,3356
|
194
198
|
google/adk/utils/__init__.py,sha256=Q9FlRO2IfSE9yEaiAYzWkOMBJPCaNYqh4ihcp0t0BQs,574
|
195
199
|
google/adk/utils/instructions_utils.py,sha256=al9Z-P8qOrbxNju8cqkeH7qRg0oQH7hfmvTG-0oSAQk,3996
|
196
|
-
google_adk-1.1.
|
197
|
-
google_adk-1.1.
|
198
|
-
google_adk-1.1.
|
199
|
-
google_adk-1.1.
|
200
|
-
google_adk-1.1.
|
200
|
+
google_adk-1.1.1.dist-info/entry_points.txt,sha256=zL9CU-6V2yQ2oc5lrcyj55ROHrpiIePsvQJ4H6SL-zI,43
|
201
|
+
google_adk-1.1.1.dist-info/licenses/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
|
202
|
+
google_adk-1.1.1.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
203
|
+
google_adk-1.1.1.dist-info/METADATA,sha256=oW3Hd8aDRt4NmL-9FCrCCtO2eePDpB9F0m_GIP90ciM,9529
|
204
|
+
google_adk-1.1.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|