google-adk 1.4.2__py3-none-any.whl → 1.5.0__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/a2a/converters/request_converter.py +90 -0
- google/adk/a2a/converters/utils.py +37 -0
- google/adk/agents/llm_agent.py +5 -3
- google/adk/artifacts/gcs_artifact_service.py +3 -2
- google/adk/auth/auth_tool.py +2 -2
- google/adk/auth/credential_service/session_state_credential_service.py +83 -0
- google/adk/cli/cli_deploy.py +9 -2
- google/adk/cli/cli_tools_click.py +110 -52
- google/adk/cli/fast_api.py +26 -2
- google/adk/cli/utils/evals.py +53 -0
- google/adk/evaluation/final_response_match_v1.py +110 -0
- google/adk/evaluation/gcs_eval_sets_manager.py +8 -5
- google/adk/evaluation/response_evaluator.py +12 -1
- google/adk/events/event.py +5 -5
- google/adk/flows/llm_flows/contents.py +49 -4
- google/adk/flows/llm_flows/functions.py +32 -0
- google/adk/memory/__init__.py +3 -1
- google/adk/memory/vertex_ai_memory_bank_service.py +150 -0
- google/adk/models/lite_llm.py +9 -1
- google/adk/runners.py +10 -0
- google/adk/sessions/vertex_ai_session_service.py +53 -18
- google/adk/telemetry.py +10 -0
- google/adk/version.py +1 -1
- {google_adk-1.4.2.dist-info → google_adk-1.5.0.dist-info}/METADATA +6 -5
- {google_adk-1.4.2.dist-info → google_adk-1.5.0.dist-info}/RECORD +28 -24
- {google_adk-1.4.2.dist-info → google_adk-1.5.0.dist-info}/WHEEL +0 -0
- {google_adk-1.4.2.dist-info → google_adk-1.5.0.dist-info}/entry_points.txt +0 -0
- {google_adk-1.4.2.dist-info → google_adk-1.5.0.dist-info}/licenses/LICENSE +0 -0
google/adk/runners.py
CHANGED
@@ -36,6 +36,7 @@ from .artifacts.in_memory_artifact_service import InMemoryArtifactService
|
|
36
36
|
from .auth.credential_service.base_credential_service import BaseCredentialService
|
37
37
|
from .code_executors.built_in_code_executor import BuiltInCodeExecutor
|
38
38
|
from .events.event import Event
|
39
|
+
from .flows.llm_flows.functions import find_matching_function_call
|
39
40
|
from .memory.base_memory_service import BaseMemoryService
|
40
41
|
from .memory.in_memory_memory_service import InMemoryMemoryService
|
41
42
|
from .platform.thread import create_thread
|
@@ -337,6 +338,8 @@ class Runner:
|
|
337
338
|
"""Finds the agent to run to continue the session.
|
338
339
|
|
339
340
|
A qualified agent must be either of:
|
341
|
+
- The agent that returned a function call and the last user message is a
|
342
|
+
function response to this function call.
|
340
343
|
- The root agent;
|
341
344
|
- An LlmAgent who replied last and is capable to transfer to any other agent
|
342
345
|
in the agent hierarchy.
|
@@ -348,6 +351,13 @@ class Runner:
|
|
348
351
|
Returns:
|
349
352
|
The agent of the last message in the session or the root agent.
|
350
353
|
"""
|
354
|
+
# If the last event is a function response, should send this response to
|
355
|
+
# the agent that returned the corressponding function call regardless the
|
356
|
+
# type of the agent. e.g. a remote a2a agent may surface a credential
|
357
|
+
# request as a special long running function tool call.
|
358
|
+
event = find_matching_function_call(session.events)
|
359
|
+
if event and event.author:
|
360
|
+
return root_agent.find_agent(event.author)
|
351
361
|
for event in filter(lambda e: e.author != 'user', reversed(session.events)):
|
352
362
|
if event.author == root_agent.name:
|
353
363
|
# Found root agent.
|
@@ -16,6 +16,7 @@ from __future__ import annotations
|
|
16
16
|
import asyncio
|
17
17
|
import json
|
18
18
|
import logging
|
19
|
+
import os
|
19
20
|
import re
|
20
21
|
from typing import Any
|
21
22
|
from typing import Dict
|
@@ -23,6 +24,7 @@ from typing import Optional
|
|
23
24
|
import urllib.parse
|
24
25
|
|
25
26
|
from dateutil import parser
|
27
|
+
from google.genai.errors import ClientError
|
26
28
|
from typing_extensions import override
|
27
29
|
|
28
30
|
from google import genai
|
@@ -95,25 +97,46 @@ class VertexAiSessionService(BaseSessionService):
|
|
95
97
|
operation_id = api_response['name'].split('/')[-1]
|
96
98
|
|
97
99
|
max_retry_attempt = 5
|
98
|
-
lro_response = None
|
99
|
-
while max_retry_attempt >= 0:
|
100
|
-
lro_response = await api_client.async_request(
|
101
|
-
http_method='GET',
|
102
|
-
path=f'operations/{operation_id}',
|
103
|
-
request_dict={},
|
104
|
-
)
|
105
|
-
lro_response = _convert_api_response(lro_response)
|
106
100
|
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
101
|
+
if _is_vertex_express_mode(self._project, self._location):
|
102
|
+
# Express mode doesn't support LRO, so we need to poll
|
103
|
+
# the session resource.
|
104
|
+
# TODO: remove this once LRO polling is supported in Express mode.
|
105
|
+
for i in range(max_retry_attempt):
|
106
|
+
try:
|
107
|
+
await api_client.async_request(
|
108
|
+
http_method='GET',
|
109
|
+
path=(
|
110
|
+
f'reasoningEngines/{reasoning_engine_id}/sessions/{session_id}'
|
111
|
+
),
|
112
|
+
request_dict={},
|
113
|
+
)
|
114
|
+
break
|
115
|
+
except ClientError as e:
|
116
|
+
logger.info('Polling for session %s: %s', session_id, e)
|
117
|
+
# Add slight exponential backoff to avoid excessive polling.
|
118
|
+
await asyncio.sleep(1 + 0.5 * i)
|
119
|
+
else:
|
120
|
+
raise TimeoutError('Session creation failed.')
|
121
|
+
else:
|
122
|
+
lro_response = None
|
123
|
+
for _ in range(max_retry_attempt):
|
124
|
+
lro_response = await api_client.async_request(
|
125
|
+
http_method='GET',
|
126
|
+
path=f'operations/{operation_id}',
|
127
|
+
request_dict={},
|
128
|
+
)
|
129
|
+
lro_response = _convert_api_response(lro_response)
|
130
|
+
|
131
|
+
if lro_response.get('done', None):
|
132
|
+
break
|
133
|
+
|
134
|
+
await asyncio.sleep(1)
|
135
|
+
|
136
|
+
if lro_response is None or not lro_response.get('done', None):
|
137
|
+
raise TimeoutError(
|
138
|
+
f'Timeout waiting for operation {operation_id} to complete.'
|
139
|
+
)
|
117
140
|
|
118
141
|
# Get session resource
|
119
142
|
get_session_api_response = await api_client.async_request(
|
@@ -312,6 +335,18 @@ class VertexAiSessionService(BaseSessionService):
|
|
312
335
|
return client._api_client
|
313
336
|
|
314
337
|
|
338
|
+
def _is_vertex_express_mode(
|
339
|
+
project: Optional[str], location: Optional[str]
|
340
|
+
) -> bool:
|
341
|
+
"""Check if Vertex AI and API key are both enabled replacing project and location, meaning the user is using the Vertex Express Mode."""
|
342
|
+
return (
|
343
|
+
os.environ.get('GOOGLE_GENAI_USE_VERTEXAI', '0').lower() in ['true', '1']
|
344
|
+
and os.environ.get('GOOGLE_API_KEY', None) is not None
|
345
|
+
and project is None
|
346
|
+
and location is None
|
347
|
+
)
|
348
|
+
|
349
|
+
|
315
350
|
def _convert_api_response(api_response):
|
316
351
|
"""Converts the API response to a JSON object based on the type."""
|
317
352
|
if hasattr(api_response, 'body'):
|
google/adk/telemetry.py
CHANGED
@@ -195,6 +195,16 @@ def trace_call_llm(
|
|
195
195
|
llm_response_json,
|
196
196
|
)
|
197
197
|
|
198
|
+
if llm_response.usage_metadata is not None:
|
199
|
+
span.set_attribute(
|
200
|
+
'gen_ai.usage.input_tokens',
|
201
|
+
llm_response.usage_metadata.prompt_token_count,
|
202
|
+
)
|
203
|
+
span.set_attribute(
|
204
|
+
'gen_ai.usage.output_tokens',
|
205
|
+
llm_response.usage_metadata.total_token_count,
|
206
|
+
)
|
207
|
+
|
198
208
|
|
199
209
|
def trace_send_data(
|
200
210
|
invocation_context: InvocationContext,
|
google/adk/version.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: google-adk
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.5.0
|
4
4
|
Summary: Agent Development Kit
|
5
5
|
Author-email: Google LLC <googleapis-packages@google.com>
|
6
6
|
Requires-Python: >=3.9
|
@@ -19,6 +19,7 @@ Classifier: Operating System :: OS Independent
|
|
19
19
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
20
20
|
Classifier: License :: OSI Approved :: Apache Software License
|
21
21
|
License-File: LICENSE
|
22
|
+
Requires-Dist: PyYAML>=6.0.2
|
22
23
|
Requires-Dist: anyio>=4.9.0;python_version>='3.10'
|
23
24
|
Requires-Dist: authlib>=1.5.1
|
24
25
|
Requires-Dist: click>=8.1.8
|
@@ -28,7 +29,7 @@ Requires-Dist: google-cloud-aiplatform[agent-engines]>=1.95.1
|
|
28
29
|
Requires-Dist: google-cloud-secret-manager>=2.22.0
|
29
30
|
Requires-Dist: google-cloud-speech>=2.30.0
|
30
31
|
Requires-Dist: google-cloud-storage>=2.18.0, <3.0.0
|
31
|
-
Requires-Dist: google-genai>=1.
|
32
|
+
Requires-Dist: google-genai>=1.21.1
|
32
33
|
Requires-Dist: graphviz>=0.20.2
|
33
34
|
Requires-Dist: mcp>=1.8.0;python_version>='3.10'
|
34
35
|
Requires-Dist: opentelemetry-api>=1.31.0
|
@@ -37,7 +38,6 @@ Requires-Dist: opentelemetry-sdk>=1.31.0
|
|
37
38
|
Requires-Dist: pydantic>=2.0, <3.0.0
|
38
39
|
Requires-Dist: python-dateutil>=2.9.0.post0
|
39
40
|
Requires-Dist: python-dotenv>=1.0.0
|
40
|
-
Requires-Dist: PyYAML>=6.0.2
|
41
41
|
Requires-Dist: requests>=2.32.4
|
42
42
|
Requires-Dist: sqlalchemy>=2.0
|
43
43
|
Requires-Dist: starlette>=0.46.2
|
@@ -48,9 +48,9 @@ Requires-Dist: websockets>=15.0.1
|
|
48
48
|
Requires-Dist: a2a-sdk>=0.2.7 ; extra == "a2a" and (python_version>='3.10')
|
49
49
|
Requires-Dist: flit>=3.10.0 ; extra == "dev"
|
50
50
|
Requires-Dist: isort>=6.0.0 ; extra == "dev"
|
51
|
+
Requires-Dist: mypy>=1.15.0 ; extra == "dev"
|
51
52
|
Requires-Dist: pyink>=24.10.0 ; extra == "dev"
|
52
53
|
Requires-Dist: pylint>=2.6.0 ; extra == "dev"
|
53
|
-
Requires-Dist: mypy>=1.15.0 ; extra == "dev"
|
54
54
|
Requires-Dist: autodoc_pydantic ; extra == "docs"
|
55
55
|
Requires-Dist: furo ; extra == "docs"
|
56
56
|
Requires-Dist: myst-parser ; extra == "docs"
|
@@ -60,6 +60,7 @@ Requires-Dist: sphinx-rtd-theme ; extra == "docs"
|
|
60
60
|
Requires-Dist: google-cloud-aiplatform[evaluation]>=1.87.0 ; extra == "eval"
|
61
61
|
Requires-Dist: pandas>=2.2.3 ; extra == "eval"
|
62
62
|
Requires-Dist: tabulate>=0.9.0 ; extra == "eval"
|
63
|
+
Requires-Dist: rouge-score>=0.1.2 ; extra == "eval"
|
63
64
|
Requires-Dist: anthropic>=0.43.0 ; extra == "extensions"
|
64
65
|
Requires-Dist: beautifulsoup4>=3.2.2 ; extra == "extensions"
|
65
66
|
Requires-Dist: crewai[tools] ; extra == "extensions" and (python_version>='3.10')
|
@@ -226,7 +227,7 @@ adk eval \
|
|
226
227
|
## 🤝 Contributing
|
227
228
|
|
228
229
|
We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our
|
229
|
-
- [General contribution guideline and flow](https://google.github.io/adk-docs/contributing-guide
|
230
|
+
- [General contribution guideline and flow](https://google.github.io/adk-docs/contributing-guide/).
|
230
231
|
- Then if you want to contribute code, please read [Code Contributing Guidelines](./CONTRIBUTING.md) to get started.
|
231
232
|
|
232
233
|
## 📄 License
|
@@ -1,13 +1,14 @@
|
|
1
1
|
google/adk/__init__.py,sha256=sSPQK3r0tW8ahl-k8SXkZvMcbiTbGICCtrw6KkFucyg,726
|
2
2
|
google/adk/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
-
google/adk/runners.py,sha256=
|
4
|
-
google/adk/telemetry.py,sha256=
|
5
|
-
google/adk/version.py,sha256=
|
3
|
+
google/adk/runners.py,sha256=L2Ayx5JfTfhXyM4Beldw48tLZc5UlNciglCGQ_sDnHk,19174
|
4
|
+
google/adk/telemetry.py,sha256=6E6qf1tSk3J-BE2fTzJTaidiDsgsqTLyIn_8tlDJ34U,8934
|
5
|
+
google/adk/version.py,sha256=43TwDogDc_l0V9dFd_lIeA7YUbAJpoqLP99eomhpZ2M,626
|
6
6
|
google/adk/a2a/__init__.py,sha256=Q9FlRO2IfSE9yEaiAYzWkOMBJPCaNYqh4ihcp0t0BQs,574
|
7
7
|
google/adk/a2a/converters/__init__.py,sha256=Q9FlRO2IfSE9yEaiAYzWkOMBJPCaNYqh4ihcp0t0BQs,574
|
8
8
|
google/adk/a2a/converters/event_converter.py,sha256=8n6_j7mkxCZlDMPhEfzG6THCCA0qSqV3PN0s3C-AT60,11183
|
9
9
|
google/adk/a2a/converters/part_converter.py,sha256=JAkL6x7zPhKvLNDSSacpdQl2v0YwzVZS804--q1yi3U,5374
|
10
|
-
google/adk/a2a/converters/
|
10
|
+
google/adk/a2a/converters/request_converter.py,sha256=k5Bw5P05EwIFMg7TAKXiZyDFTCEC9dSgkBXhyJP0Vn4,2758
|
11
|
+
google/adk/a2a/converters/utils.py,sha256=cpnIrjc14Y8skFEuSKueiy-juYe4dy0-6gVv1nRuJOE,2049
|
11
12
|
google/adk/agents/__init__.py,sha256=WsCiBlvI-ISWrcntboo_sULvVJNwLNxXCe42UGPLKdY,1041
|
12
13
|
google/adk/agents/active_streaming_tool.py,sha256=vFuh_PkdF5EyyneBBJ7Al8ojeTIR3OtsxLjckr9DbXE,1194
|
13
14
|
google/adk/agents/base_agent.py,sha256=fCwAcR12IVVx8qXWGVf773zOmQEKnXDPwmoYYQwUfR4,12168
|
@@ -15,7 +16,7 @@ google/adk/agents/callback_context.py,sha256=BVDcgrJEWEPEf9ZzWFyhUFcZJ2ECm8XFStg
|
|
15
16
|
google/adk/agents/invocation_context.py,sha256=ytnZvN869zSLqC1eKXVwv_NDuyQ3Z2EV4tlbJ-0r2Ls,6345
|
16
17
|
google/adk/agents/langgraph_agent.py,sha256=1MI-jsLRncMy4mpjSsGU5FL6zbK-k4FxiupnujgYVNE,4287
|
17
18
|
google/adk/agents/live_request_queue.py,sha256=AudgMP6VfGjNgH7VeQamKJ6Yo2n5eIlikcscoOqprNU,2109
|
18
|
-
google/adk/agents/llm_agent.py,sha256=
|
19
|
+
google/adk/agents/llm_agent.py,sha256=voivWnvgJ_j09QqDcXaaa-wNxMkbOMj_kHJwceXupmM,16718
|
19
20
|
google/adk/agents/loop_agent.py,sha256=BRGCwSopdOX_x7oUTnUe7udS9GpV0zOn5vXf1USsCf0,1935
|
20
21
|
google/adk/agents/parallel_agent.py,sha256=Wv-ODUKQp_FABo7Cbhcc8-woqgiD5B649OigAMD6DNo,3525
|
21
22
|
google/adk/agents/readonly_context.py,sha256=MyRXiSTT8kFheq7VYQjXow6mwYpdZim4PgI2iKT-XIo,1659
|
@@ -24,19 +25,20 @@ google/adk/agents/sequential_agent.py,sha256=g_9mR4cMHiLwqtztclAUdnjCm0-u4nVpTpG
|
|
24
25
|
google/adk/agents/transcription_entry.py,sha256=HL8j2xvtdrcP4_uxy55ASCmLFrc8KchvV2eoGnwZnqc,1178
|
25
26
|
google/adk/artifacts/__init__.py,sha256=D5DYoVYR0tOd2E_KwRu0Cp7yvV25KGuIQmQeCRDyK-k,846
|
26
27
|
google/adk/artifacts/base_artifact_service.py,sha256=H-t5nckLTfr330utj8vxjH45z81h_h_c9EZzd3A76dY,3452
|
27
|
-
google/adk/artifacts/gcs_artifact_service.py,sha256
|
28
|
+
google/adk/artifacts/gcs_artifact_service.py,sha256=W0uKqb3cRHSvnxRbiDQc2vfdBkr-3ihizWs37eRuSVw,5633
|
28
29
|
google/adk/artifacts/in_memory_artifact_service.py,sha256=Iw34Ja89JwGgd3sulbxxk5pVMqzEZJCt4F2m15MC37U,4059
|
29
30
|
google/adk/auth/__init__.py,sha256=GoFe0aZGdp0ExNE4rXNn1RuXLaB64j7Z-2C5e2Hsh8c,908
|
30
31
|
google/adk/auth/auth_credential.py,sha256=F1cMHe_gda5N6RXlyB0IYLLos-Jz-WcNFkIm9SjSiGQ,7012
|
31
32
|
google/adk/auth/auth_handler.py,sha256=aUJrY8fzPvSZwi1rtB_N7fHuHt6DE-H8D8HnkDUCyZQ,6828
|
32
33
|
google/adk/auth/auth_preprocessor.py,sha256=RleOG5I7L1EWVRdX_bC1WtKnt0FDKAcXSSh1RexJqtE,4309
|
33
34
|
google/adk/auth/auth_schemes.py,sha256=dxx9bxjOWoae1fSVxbpaVTwa0I4v76_QJJFEX--1ueA,2260
|
34
|
-
google/adk/auth/auth_tool.py,sha256=
|
35
|
+
google/adk/auth/auth_tool.py,sha256=m9m_ecoBLjsNpEf34s3hmv5PpWXZbpc4yaV7NgVSOoA,3694
|
35
36
|
google/adk/auth/credential_manager.py,sha256=G5iqpStGHl4wZxkeqNDNljrEt1L_XNSfNVM9mmOqUhg,9503
|
36
37
|
google/adk/auth/oauth2_credential_util.py,sha256=gIb1OUGA4NZRnIeLLk29T_Q9J8ibTxe7-357UhCW3FY,3340
|
37
38
|
google/adk/auth/credential_service/__init__.py,sha256=Q9FlRO2IfSE9yEaiAYzWkOMBJPCaNYqh4ihcp0t0BQs,574
|
38
39
|
google/adk/auth/credential_service/base_credential_service.py,sha256=4SK1UW9NiLNLrc_grpG3xyIPXySGpl0DIv9bTm-onWE,2325
|
39
40
|
google/adk/auth/credential_service/in_memory_credential_service.py,sha256=xXG-3_uq3CU1Eilp8NGBhje0X77ROlAT5BKyJmLLyHg,2161
|
41
|
+
google/adk/auth/credential_service/session_state_credential_service.py,sha256=NlOv6Z7A2_7MRLfmnYlBqyZFXvw_H3m_Tk98Ey36k6s,2615
|
40
42
|
google/adk/auth/exchanger/__init__.py,sha256=RHCK_Zg7hXzBKvz2Vrwvbx_cMXWittidIZToszaL3Nc,720
|
41
43
|
google/adk/auth/exchanger/base_credential_exchanger.py,sha256=Uqzs_NhEDmuH5n0U_ES5fHlMSagyYEc5JKu-5GdOC_A,1644
|
42
44
|
google/adk/auth/exchanger/credential_exchanger_registry.py,sha256=Nsk9BMmhFbZsXQwPckm8elXfbk6iIRSrvegR6DpcONo,1855
|
@@ -50,10 +52,10 @@ google/adk/cli/__main__.py,sha256=gN8rRWlkh_3gLI-oYByxrKpCW9BIfDwrr0YuyisxmHo,64
|
|
50
52
|
google/adk/cli/agent_graph.py,sha256=Kj5_a4UE1QXmqdRv4i4LI4hKHOrLkBS22Q759F3aRug,9879
|
51
53
|
google/adk/cli/cli.py,sha256=5hbWTJYn9eOd4OVNZvvfJ4WuhuNf1ICBP6j6tb-kSFg,6724
|
52
54
|
google/adk/cli/cli_create.py,sha256=S5sAKIzTjaf3bWoh6nUCSxm9koxdkN0SkTnOtsl0Oqs,8010
|
53
|
-
google/adk/cli/cli_deploy.py,sha256=
|
55
|
+
google/adk/cli/cli_deploy.py,sha256=PbJUo3Fa7MGl6XDYKBGola2oYINb6WxEeHva8W80P1k,13351
|
54
56
|
google/adk/cli/cli_eval.py,sha256=iCSzi1f1ik1rytCeu0GvQqkVnIBekpfx97utHpSXUMI,10208
|
55
|
-
google/adk/cli/cli_tools_click.py,sha256=
|
56
|
-
google/adk/cli/fast_api.py,sha256=
|
57
|
+
google/adk/cli/cli_tools_click.py,sha256=be-j62_qJDgaF4cE2A_ZJLoa-2_vQnkXO5rKS3ozNiw,29582
|
58
|
+
google/adk/cli/fast_api.py,sha256=JC0_707uzvDCbiQKMqqzqLZ17F_nJZyH-8abE24W2tY,32964
|
57
59
|
google/adk/cli/browser/adk_favicon.svg,sha256=giyzTZ5Xe6HFU63NgTIZDm35L-RmID-odVFOZ4vMo1M,3132
|
58
60
|
google/adk/cli/browser/index.html,sha256=kXlN0L6yhMrhZajFKaXIAxY-bGJXlD6kUqWl9mElbeM,18492
|
59
61
|
google/adk/cli/browser/main-JAAWEV7F.js,sha256=SK4gb-wUizou4gmqa1Kdfoa6V8uKrYBxU5QHabOI5z8,2640561
|
@@ -67,7 +69,7 @@ google/adk/cli/utils/agent_loader.py,sha256=Lgde2ZYFYnnKGMNvdRyUl3GOWvaFCOVweNr9
|
|
67
69
|
google/adk/cli/utils/cleanup.py,sha256=c8kMxpDoNsr49C0O68pptpmy8oce1PjaLtvUy200pWw,1296
|
68
70
|
google/adk/cli/utils/common.py,sha256=brmJF3t-h_HCCS9FQtgqY0Ozk1meeM6a1omwcmsbDBQ,788
|
69
71
|
google/adk/cli/utils/envs.py,sha256=XOEFNiQlgTTyDvaH1FHmgOnPeC3MHsx_DhyOGa-tSAY,1684
|
70
|
-
google/adk/cli/utils/evals.py,sha256=
|
72
|
+
google/adk/cli/utils/evals.py,sha256=aGBEw7QOnyzmudKiz0JlUTyiLHlMd53r8_RuOqQneTQ,8235
|
71
73
|
google/adk/cli/utils/logs.py,sha256=ARcKVGDi8vHReg1DO7ZGbUBk0RejRMzKf2xHvIWn2xA,2296
|
72
74
|
google/adk/code_executors/__init__.py,sha256=dJ8qAZyj3jm8fNnzQWoWpI7xSVUGhU5qIxbEDpouizc,1641
|
73
75
|
google/adk/code_executors/base_code_executor.py,sha256=QLpgVcFNI5V21U-kVleze24ADeuDKgE3wI7Uui6vUeo,3030
|
@@ -92,14 +94,15 @@ google/adk/evaluation/eval_sets_manager.py,sha256=j6t-Vf5vDQXPG5cCQ3VTrkWMcmJv-u
|
|
92
94
|
google/adk/evaluation/evaluation_constants.py,sha256=q3FpEx1PDoj0VjVwHDZ6U-LNZ1_uApM03d2vOevvHA4,857
|
93
95
|
google/adk/evaluation/evaluation_generator.py,sha256=jbE_Q0bdIJ94vUfyZlblzJK6UsfjzkpdZG1Pp8ge75A,8188
|
94
96
|
google/adk/evaluation/evaluator.py,sha256=ACERS1jNCcqPPoI84qt68-B_aAr8o729cd2Qmb-FrXE,1673
|
97
|
+
google/adk/evaluation/final_response_match_v1.py,sha256=PamGQc3WwIYR1RU6Qhld4PbEFOSEA7LAK81nZVm2UCk,3768
|
95
98
|
google/adk/evaluation/gcs_eval_set_results_manager.py,sha256=XS4kcXgiTjuLPvfA2MSR6dZDo-8PZTQTilvOFW5jo64,4444
|
96
|
-
google/adk/evaluation/gcs_eval_sets_manager.py,sha256=
|
99
|
+
google/adk/evaluation/gcs_eval_sets_manager.py,sha256=K1zHJeKi8oIvuBMpCsfMEJRu20B5F6_pgN_bpHi0NCA,7559
|
97
100
|
google/adk/evaluation/local_eval_set_results_manager.py,sha256=eLZz95r0Z-xyT1m0MxdmLxSjGzmmycLWclfsGn1aVzM,3703
|
98
101
|
google/adk/evaluation/local_eval_sets_manager.py,sha256=CjT3cLEZfvra7QXzdPY3YaddjkQFFgupwdlRR_uOWP8,10414
|
99
|
-
google/adk/evaluation/response_evaluator.py,sha256=
|
102
|
+
google/adk/evaluation/response_evaluator.py,sha256=_tnErq0WQI7DjhrOSmgh3AkUrbAosRzOPCJIxvwCvHc,8864
|
100
103
|
google/adk/evaluation/trajectory_evaluator.py,sha256=HdQ2W2Qwy-08o7H2wtFNYFTlF7uphi9LeD03nHXeIVY,8235
|
101
104
|
google/adk/events/__init__.py,sha256=Lh0rh6RAt5DIxbwBUajjGMbB6bZW5K4Qli6PD_Jv74Q,688
|
102
|
-
google/adk/events/event.py,sha256=
|
105
|
+
google/adk/events/event.py,sha256=AFb6CibQCztO1fWGqz4OKB7Z5dusm7CRl91p8SdBB9M,4793
|
103
106
|
google/adk/events/event_actions.py,sha256=-f_WTN8eQdhAj2celU5AoynGlBfplj3nia9C7OrT534,2275
|
104
107
|
google/adk/examples/__init__.py,sha256=LCuLG_SOF9OAV3vc1tHAaBAOeQEZl0MFHC2LGmZ6e-A,851
|
105
108
|
google/adk/examples/base_example_provider.py,sha256=tood7EnGil4pM3GPRTsSUby2TiAfstBv0x1v8djpgwQ,1074
|
@@ -116,16 +119,17 @@ google/adk/flows/llm_flows/audio_transcriber.py,sha256=x0LeOZLDPVPzPCYNYA3JyAEAj
|
|
116
119
|
google/adk/flows/llm_flows/auto_flow.py,sha256=CnuFelyZhB_ns4U_5_dW0x_KQlzu02My7qWcB4XBCYY,1714
|
117
120
|
google/adk/flows/llm_flows/base_llm_flow.py,sha256=uGqJ-b_Xygqgae1dndNh9tgTaj3luMKq3Qj4_jDf278,22660
|
118
121
|
google/adk/flows/llm_flows/basic.py,sha256=263pfk6PIqKO-7BWo--bsBbpZJ8u5R9OK__WhpBgIbM,2848
|
119
|
-
google/adk/flows/llm_flows/contents.py,sha256=
|
120
|
-
google/adk/flows/llm_flows/functions.py,sha256=
|
122
|
+
google/adk/flows/llm_flows/contents.py,sha256=OMxxPcI_hwQ0OQCrBVBeKukVfdeefBhD3YJQP0C9B2M,14638
|
123
|
+
google/adk/flows/llm_flows/functions.py,sha256=nD74YrS2GSR4yr6erR_vpw7lE7dyx9zDPUFKmY1Uvic,18410
|
121
124
|
google/adk/flows/llm_flows/identity.py,sha256=X4CRg12NvnopmydU9gbFJI4lW1_otN-w_GOAuPvKrXo,1651
|
122
125
|
google/adk/flows/llm_flows/instructions.py,sha256=sO2dQ5hn6ybjXs2fWYWvEFVtACdpiiP0yKf9eNVjhhM,2879
|
123
126
|
google/adk/flows/llm_flows/single_flow.py,sha256=gC677SxxammKx1XkZBzUdgBjDzeymKRcRQQxFGIur8Y,1904
|
124
|
-
google/adk/memory/__init__.py,sha256=
|
127
|
+
google/adk/memory/__init__.py,sha256=N_K_03mtTC2Hl1biXdbkgrbdJVvF7EhKs6jgJMAsEpo,1250
|
125
128
|
google/adk/memory/_utils.py,sha256=6hba7T4ZJ00K3tX1kLuiuiN02E844XtfR1lFEGa-AaM,797
|
126
129
|
google/adk/memory/base_memory_service.py,sha256=KlpjlgZopqKM19QP9X0eKLBSVG10hHjD4qgEEfwdb9k,1987
|
127
130
|
google/adk/memory/in_memory_memory_service.py,sha256=S8mxOuosgzAFyl7ZoSjIo-vWY_3mhRMf2a13YO8MObo,3024
|
128
131
|
google/adk/memory/memory_entry.py,sha256=NSISrQHX6sww0J7wXP-eqxkGAkF2irqCU_UH-ziWACc,1092
|
132
|
+
google/adk/memory/vertex_ai_memory_bank_service.py,sha256=Nr0R37EM3uFzpQAC5g7aDogMljgn6MIIyoTXC4qrZYU,4711
|
129
133
|
google/adk/memory/vertex_ai_rag_memory_service.py,sha256=mNilkk4VtFQj6QYyX-DCPJ4kddKRgo68I3XfVhG8B14,6817
|
130
134
|
google/adk/models/__init__.py,sha256=jnI2M8tz4IN_WOUma4PIEdGOBDIotXcQpseH6P1VgZU,929
|
131
135
|
google/adk/models/anthropic_llm.py,sha256=NcsQ8IfC1vM_qGQexmiM8vRFeTpIHOYqXsXYbysou80,8135
|
@@ -133,7 +137,7 @@ google/adk/models/base_llm.py,sha256=85Oo0U0zyZK3iJZz9XVovnCvXNgVQ9Dvcf80VecWTNo
|
|
133
137
|
google/adk/models/base_llm_connection.py,sha256=y_pNFA2xlwnsP6dt7BfoezfzoZ5gSZJnTogd7o7DodI,2254
|
134
138
|
google/adk/models/gemini_llm_connection.py,sha256=M0dXHcVgDaPB97n6DWFjGjqwhuJkJMcbDYP9drK052U,7349
|
135
139
|
google/adk/models/google_llm.py,sha256=ZaZh9FckWGscHZ7y0BVyt7PETSdlJcSTkQu4mV2Km5o,11926
|
136
|
-
google/adk/models/lite_llm.py,sha256=
|
140
|
+
google/adk/models/lite_llm.py,sha256=kNpVDjcuagwdmiA9QrXnHPzToI6oH9ms53kA0OL5wVM,23445
|
137
141
|
google/adk/models/llm_request.py,sha256=nJdE_mkAwa_QNkl7FJdw5Ys748vM5RqaRYiZtke-mDA,3008
|
138
142
|
google/adk/models/llm_response.py,sha256=tQOfXCnJoiGp-Oxp1_lAKokx0klAzbwKklngKg4ExgQ,4563
|
139
143
|
google/adk/models/registry.py,sha256=5VQyHMEaMbVp9TdscTqDAOo9uXB85zjrbMrT3zQElLE,2542
|
@@ -152,7 +156,7 @@ google/adk/sessions/database_session_service.py,sha256=zPqH1pY_euvSA9I3f3BTfvBxL
|
|
152
156
|
google/adk/sessions/in_memory_session_service.py,sha256=5mU882L-0zobyWoldAkuBMmGKTQV_XlhL0A2_OySPzU,9080
|
153
157
|
google/adk/sessions/session.py,sha256=fwJ3D4rUQ1N5cLMpFrE_BstEz6Ct637FlF52MfkxZCk,1861
|
154
158
|
google/adk/sessions/state.py,sha256=con9G5nfJpa95J5LKTAnZ3KMPkXdaTbrdwRdKg6d6B4,2299
|
155
|
-
google/adk/sessions/vertex_ai_session_service.py,sha256=
|
159
|
+
google/adk/sessions/vertex_ai_session_service.py,sha256=WHm8kQoWYyP3cQbnx1f7mm6X655ypbtAwOwAdQ5zELQ,14893
|
156
160
|
google/adk/tools/__init__.py,sha256=_5JFmTAPBmXlOY8CRaYJlZubvwxoxhi2esXusovv5ME,1752
|
157
161
|
google/adk/tools/_automatic_function_calling_util.py,sha256=p5An_BklKDo1w5_DigZGgf0p023lIDKPaZPS_-iJN6k,11100
|
158
162
|
google/adk/tools/_forwarding_artifact_service.py,sha256=MHOfc8ntSuHLcA4jp218FP0k0qWAu3-6MSQCNWZ__S4,3022
|
@@ -235,8 +239,8 @@ google/adk/utils/__init__.py,sha256=Q9FlRO2IfSE9yEaiAYzWkOMBJPCaNYqh4ihcp0t0BQs,
|
|
235
239
|
google/adk/utils/feature_decorator.py,sha256=DzGHMTStf4-S9BNiA4EqcCJbrdKijhgeSUSPdzM44H8,5048
|
236
240
|
google/adk/utils/instructions_utils.py,sha256=al9Z-P8qOrbxNju8cqkeH7qRg0oQH7hfmvTG-0oSAQk,3996
|
237
241
|
google/adk/utils/variant_utils.py,sha256=u9IuOn2aXG3ibDYshgLoogBXqH9Gd84ixArQoeLQiE8,1463
|
238
|
-
google_adk-1.
|
239
|
-
google_adk-1.
|
240
|
-
google_adk-1.
|
241
|
-
google_adk-1.
|
242
|
-
google_adk-1.
|
242
|
+
google_adk-1.5.0.dist-info/entry_points.txt,sha256=zL9CU-6V2yQ2oc5lrcyj55ROHrpiIePsvQJ4H6SL-zI,43
|
243
|
+
google_adk-1.5.0.dist-info/licenses/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
|
244
|
+
google_adk-1.5.0.dist-info/WHEEL,sha256=G2gURzTEtmeR8nrdXUJfNiB3VYVxigPQ-bEQujpNiNs,82
|
245
|
+
google_adk-1.5.0.dist-info/METADATA,sha256=nEiEm0DXdaSUewv4RkbxJvQDRR_836UNO7gaj7iuEYs,10023
|
246
|
+
google_adk-1.5.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|