Commit Graph

397 Commits

Author SHA1 Message Date
Google Team Member
958c18db2b Add download object as json function in the download service.
PiperOrigin-RevId: 764421398
2025-05-28 14:37:47 -07:00
Google Team Member
83ba6419cd Allow GOOGLE_AI to support optional args.
PiperOrigin-RevId: 764419789
2025-05-28 14:34:11 -07:00
Omar BENHAMID
d232e6216d feat: google/adk-python#479 support for streamable http MCP servers for MCPToolset
Copybara import of the project:

--
c5b9d49d7b6d858ff0a93bd690e6d653b7c32221 by Omar BENHAMID <omar.benhamid@smart-gts.com>:

feat: google/adk-python#479 support for streamable http MCP servers for MCPToolset

--
9431bc19e6538c1b814aba0b24ff564acf046075 by Omar BENHAMID <omar.benhamid@smart-gts.com>:

feat: google/adk-python#479 streamable http added to right package

--
8b4aabed45a6f0dc828beb61f12985dc7b14f3d0 by Omar BENHAMID <omar.benhamid@smart-gts.com>:

feat: google/adk-python#479 streamable http : review feedbacks + sample agent
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/650 from omarbenhamid:feature/mcp-streamable-http 625f028784c216401d45cb1b5d4d998535ebcb00
PiperOrigin-RevId: 764419586
2025-05-28 14:33:19 -07:00
Xiang (Sean) Zhou
c7ce987676 chore: reformat load_memory_tool
PiperOrigin-RevId: 764402270
2025-05-28 13:52:40 -07:00
Shangjie Chen
bf27f22a95 fix: Make GroundingMetadata JSON serializable. Also use the same logic to simplify content serialization.
PiperOrigin-RevId: 764401248
2025-05-28 13:50:25 -07:00
avidelatm
7fc09b2c64 chore: Adding regex for claude-4 models to anthropic_llm and updating tests
Copybara import of the project:

--
824b4379d59a375191f8ce10997efd4021d5d0b3 by Andres Videla <andres.videla@trademe.co.nz>:

Adding regex for claude-4 models to anthropic_llm and updating tests

--
8fa2a2df1931026dc803eee0e9b60e82e90c9efa by Wei Sun (Jack) <Jacksunwei@gmail.com>:

Adds trailing comma.

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/934 from avidelatm:feature/add-support-for-claude-4-models-to-anthropic_llm 8d10bacdbec952ec9832180ac6c1d220916641da
PiperOrigin-RevId: 764396694
2025-05-28 13:39:04 -07:00
Yuan Chai
c4cd1802bf Copybara import of the project:
--
50b09bbe9735c889a9c815eddcee6715ebe848da by Yuan Chai <350365422@qq.com>:

fix: improve json serialization by allowing non-ascii characters
--
c66977ae6ec4edc71a2d633eb09918eb2a226461 by Yuan Chai <350365422@qq.com>:

fix: serialize function call arguments to JSON string

Previously accepted JSON objects directly, which was less robust. Now serialize arguments to JSON strings using `_safe_json_serialize`, ensuring stability and handling non-ASCII characters correctly.

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/605 from nauyiahc:fix_non_ascii_char a52513c5747296b717acee989684324e1b072d34
PiperOrigin-RevId: 764396496
2025-05-28 13:38:11 -07:00
Sanchit Rk
3cd4cd3ecf Fix: add missing kwargs to db session service
Copybara import of the project:

--
bbd21e72e46227d5bbcaef6601f4a81724e7829f by Sanchit Rk <sanchitrrk@gmail.com>:

Fix: add missing kwargs to db session service
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/946 from sanchitrk:fix/missing-kwargs-db-session-service ebb699b04d8420ad14244cf3d43a2982b01d6b7f
PiperOrigin-RevId: 764392251
2025-05-28 13:27:58 -07:00
Alankrit Verma
2a07eefc27 chore: Raises error if the last event is partial, which is an unexpected state and can happen when the model output limit is maxed out.
Copybara import of the project:

--
a6e3a220a507a27523e427e88a803f4fec40db9c by Alankrit Verma <alankrit386@gmail.com>:

test(base_llm_flow): add test for infinite loop on truncated responses

--
b5f2245788b8ed51189d1ad057372989452f070d by Alankrit Verma <alankrit386@gmail.com>:

feat(base_llm_flow): break run_async loop on partial/truncated events

--
cbbae4c468a4de3b5a737aef07cb4615f8418c38 by Wei Sun (Jack) <Jacksunwei@gmail.com>:

Raise ValueError if the last event is partial.

This is invalid state for llm flow.
--
6eebae0bc27c664eee4743ff7278ae5803415c9f by Wei Sun (Jack) <Jacksunwei@gmail.com>:

Delete tests/unittests/flows/llm_flows/test_base_llm_flow_truncation.py
--
e08b0ab19ca6eb88eb84f044bf72e815b2cf317c by Wei Sun (Jack) <Jacksunwei@gmail.com>:

format base_llm_flow.py

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/659 from AlankritVerma01:fix/522-base-llm-flow-truncation e08b0ab19ca6eb88eb84f044bf72e815b2cf317c
PiperOrigin-RevId: 764380150
2025-05-28 12:58:04 -07:00
Shangjie Chen
d83ee1a6f2 fix: Remove excessive db call to update state table.
PiperOrigin-RevId: 764375522
2025-05-28 12:46:13 -07:00
shubham rajput
3611e9fe09 Copybara import of the project:
--
19b6701800bc3a26321ff3633b356106aba5a800 by shubham rajput <42935066+shu8hamrajput@users.noreply.github.com>:

fix: Update load_memory_tool.py

make `query` args required.

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/389 from shu8hamrajput:fix/make-query-required-arg 92eb6472a380aa02b287a6ca94d2bfabdaa1c38b
PiperOrigin-RevId: 764303198
2025-05-28 09:49:36 -07:00
Wei Sun (Jack)
97bf28bad6 chore: Adds --version to adk cli.
Sample:

```
-> % adk --version
adk, version 1.0.0
```

Help with https://github.com/google/adk-python/issues/832

PiperOrigin-RevId: 764297949
2025-05-28 09:37:23 -07:00
Google Team Member
d6c6bb4b24 feat: add BigQuery first-party tools.
These tools support getting BigQuery dataset/table metadata and query results.

PiperOrigin-RevId: 764139132
2025-05-28 00:59:19 -07:00
Wei Sun (Jack)
46282eeb0d chore: Don't add prompt about parent agent when disallow_transfer_to_parent=True
Fixes https://github.com/google/adk-python/issues/844

PiperOrigin-RevId: 764116180
2025-05-27 23:41:30 -07:00
Wei Sun (Jack)
f4c7d788b0 fix: build_graph is not awaited.
Fixes https://github.com/google/adk-python/issues/927

PiperOrigin-RevId: 764113488
2025-05-27 23:32:21 -07:00
Yifan Wang
15109c6879 fix: oauth fix for adk web
PiperOrigin-RevId: 764111115
2025-05-27 23:22:45 -07:00
Xiang (Sean) Zhou
d40df2edf2 chore: fix unit tests
PiperOrigin-RevId: 764107186
2025-05-27 23:07:29 -07:00
Yifan Wang
a66f12273c bump version number to 1.1.0.
PiperOrigin-RevId: 764026739
2025-05-27 18:17:04 -07:00
Yifan Wang
5d2a876ca8 feat:update minified adk web files
PiperOrigin-RevId: 763970627
2025-05-27 15:26:19 -07:00
Yifan Wang
0c4f52699b fix: serve web app at /dev-ui/
PiperOrigin-RevId: 763965859
2025-05-27 15:14:23 -07:00
Xiang (Sean) Zhou
618c824994 feat: extract agent loading logic from fast_api.py to a separate AgentLoader class and support more agent definition folder/file structure.
Structures supported:
a) agents_dir/agent_name.py (with root_agent or agent.root_agent in it)
b) agents_dir/agent_name_folder/__init__.py (with root_agent or agent.root_agent in the package)
c) agents_dir/agent_name_folder/agent.py (where agent.py has root_agent)

PiperOrigin-RevId: 763943716
2025-05-27 14:14:51 -07:00
Wei Sun (Jack)
16d9696012 fix: avoid duplicating log in stderr.
This was introduced to work around google-auth kills all logs via `google` root logging namespace. Given we're now using `google_adk` as root logging namesapce, we don't need additional Stream log handler now.

PiperOrigin-RevId: 763924531
2025-05-27 13:28:00 -07:00
Stephen Smith
03fe909ada Copybara import of the project:
--
b781880d9bfb9786bd5e50314eaedc441fc2a93e by Stephen Smith <stephen.smith@newfront.com>:

Telemetry unit test for non-serializable data.

--
179da9db997bb3f992e126c9c64193ff7df67b3d by Stephen Smith <stephen.smith@newfront.com>:

When converting the llm_request to JSON, skip non-serializable data.

--
5dc68f4f5a6d12b753fdb81d1449716d13490afb by Stephen Smith <stephen.smith@newfront.com>:

Update _create_invocation_context() return type to InvocationContext.

--
23a33f754409fcd2a7641098d68cef7e4f1c72c6 by Stephen Smith <stephen.smith@newfront.com>:

Oops, remove unnecessary import.

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/879 from stephensmithnewfront:main f71e195a9ed157e4c0b3abfa74ae078b0c1a920a
PiperOrigin-RevId: 763922003
2025-05-27 13:21:44 -07:00
Google Team Member
b79400162d Use audio player component in the artifact tab
PiperOrigin-RevId: 763875097
2025-05-27 11:23:04 -07:00
Yongsul Kim
c024ac5762 Align event filtering and ordering logic
Copybara import of the project:

--
d01a8fd5f079bc4fca9e4b71796dbe65312ce9ff by Leo Yongsul Kim <ystory84@gmail.com>:

fix(DatabaseSessionService): Align event filtering and ordering logic

This commit addresses inconsistencies in how DatabaseSessionService
handles config.after_timestamp and config.num_recent_events
parameters, aligning its behavior with InMemorySessionService and
VertexAiSessionService.

Key changes:
- Made after_timestamp filtering inclusive
- Corrected num_recent_events behavior to fetch the N most recent events
- Refined timezone handling for after_timestamp
- Updated the unit test test_get_session_with_config to includeSessionServiceType.DATABASE, allowing verification of these fixes.

Fixes #911

COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/915 from ystory:fix/database-session-timestamp-recency 5cc8cf5f5a5c0cb3e87f6ab178a5725d3f696c88
PiperOrigin-RevId: 763874840
2025-05-27 11:22:04 -07:00
Wei Sun (Jack)
19ca61d241 fix: model_config is misplaced for EvalMetricResultPerInvocation.
PiperOrigin-RevId: 763648920
2025-05-26 23:50:05 -07:00
Xiang (Sean) Zhou
7c2df7e4f6 refactor: refactor evaluation to make cli module depends on evaluation module. Modules outside of cli module should not reference cli module
PiperOrigin-RevId: 763577749
2025-05-26 19:18:55 -07:00
Wei Sun (Jack)
d43c80b718 chore: updates mypy config in pyproject.toml.
1. Use non-strict as starting point;
2. Apply python_version to 3.9.
3. Sets `follow_imports` to skip.

PiperOrigin-RevId: 763553672
2025-05-26 17:25:48 -07:00
Xiang (Sean) Zhou
be0786ea88 refactor: rename agent_dir to agents_dir and rename app_id to app_name in fast_api.py to make it consistent among every endpoints
PiperOrigin-RevId: 763483339
2025-05-26 11:51:19 -07:00
Wei Sun (Jack)
6b89ceb49a fix: mutable object cannot be default value in parameter.
PiperOrigin-RevId: 763479612
2025-05-26 11:32:07 -07:00
Xiang (Sean) Zhou
694eca08e5 fix: fix bigquery credentials and bigquery tool to make it compatible with python 3.9 and make the credential serializable in session
PiperOrigin-RevId: 763332829
2025-05-26 01:58:52 -07:00
Google Team Member
55cb36edfe Add handling for None param.annotation.
This is the case for function tools that have no return value.

PiperOrigin-RevId: 763306054
2025-05-26 00:21:15 -07:00
Xiang (Sean) Zhou
74a331f1fb chore: reformat the code with autoformat.sh
PiperOrigin-RevId: 763256626
2025-05-25 20:33:45 -07:00
Xiang (Sean) Zhou
98c8a71d67 refactor: rename parameter name and add type annotation of _get_agent_to_run method
PiperOrigin-RevId: 763234780
2025-05-25 18:56:16 -07:00
Xiang (Sean) Zhou
b0fb3536e5 chore: cleanup unused import in cli module
PiperOrigin-RevId: 763233551
2025-05-25 18:50:31 -07:00
Calvin Giles
1a43cf0f60 Copybara import of the project:
--
73826d258b136f92a8da8171f7dc14d5f07de8dd by Calvin Giles <calvin.giles@trademe.co.nz>:

fix: Enable InMemoryRunner to be used in async tests
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/868 from calvingiles:enable-test-runner-in-async fb9033ed6f350a3114859715cae51798f864ecf6
PiperOrigin-RevId: 763233472
2025-05-25 18:49:35 -07:00
Xiang (Sean) Zhou
a380d70ac7 chore: fix cli UT
PiperOrigin-RevId: 762734348
2025-05-24 00:11:32 -07:00
Xiang (Sean) Zhou
a134ba6f7a feat: add toolset cleanup logic to run_cli
PiperOrigin-RevId: 762638389
2025-05-23 18:06:30 -07:00
Yifan Wang
7067c0319d fix: adk web now can be served under custom route
PiperOrigin-RevId: 762629432
2025-05-23 17:35:44 -07:00
Xiang (Sean) Zhou
756a326033 feat: add customized bigquer tool wrapper class to facilitate developer to handcraft bigquery api tool
PiperOrigin-RevId: 762626700
2025-05-23 17:23:41 -07:00
Hangfei Lin
0e284f45ff Copybara import of the project:
--
76f579c8f75e28c79e322dc60c9dca56ac96d0fa by Hangfei Lin <hangfei@google.com>:

doc: Update README.md
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/901 from google:hangfei-patch-3 6c5e264c8134e8eb164114992f3d8f2f2efe83fc
PiperOrigin-RevId: 762603928
2025-05-23 16:10:22 -07:00
Google Team Member
8076b2294f ADK changes
PiperOrigin-RevId: 762573275
2025-05-23 14:41:27 -07:00
Ariz Chang
f1a92e9674 chore: add google search agent for testing
PiperOrigin-RevId: 762571269
2025-05-23 14:36:27 -07:00
Google Team Member
717993b14f Fix eval history cases can't be toggled
PiperOrigin-RevId: 762561171
2025-05-23 14:06:35 -07:00
Shangjie Chen
d212e50c10 feat:Make VertexAiSessionService true async.
PiperOrigin-RevId: 762547133
2025-05-23 13:31:38 -07:00
Google Team Member
79681e3513 Write eval results locally from adk eval cli.
PiperOrigin-RevId: 762499588
2025-05-23 11:16:00 -07:00
Google Team Member
33921d524f Add click event to the image in chat window.
PiperOrigin-RevId: 762473152
2025-05-23 10:12:15 -07:00
Xiang (Sean) Zhou
92c37496d3 refactor: simplify toolset cleanup codes and extract common cleanup codes to utils which could be utilized by cli or client codes that directly call runners
PiperOrigin-RevId: 762463028
2025-05-23 09:49:19 -07:00
Wei Sun (Jack)
b9b2c3fb54 chore: Adds autoformat.sh for formatting codebase.
PiperOrigin-RevId: 762301862
2025-05-23 00:41:18 -07:00
Stephen Smith
b4c4f88c22 Copybara import of the project:
--
aa92081193ccf4710e5aefb93c715791eab2c2ef by Stephen Smith <stephen.smith@newfront.com>:

docs: Fix typos in issue templates.
COPYBARA_INTEGRATE_REVIEW=https://github.com/google/adk-python/pull/880 from stephensmithnewfront:stephensmithnewfront/address-typos-in-issue-templates-pr 65b7f85e26fca76b3e076ef0b826189353e8ab13
PiperOrigin-RevId: 762259304
2025-05-22 21:57:09 -07:00