Found docs updates needed from ADK python release v1.18.0 to v1.19.0
- Dominant language
- Shell
- Stars
- 1.5k
- Forks
- 1.3k
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 34
Description
The ADK Python repository has been updated from v1.18.0 to v1.19.0. This release includes several new features, API changes, and bug fixes that need to be reflected in the documentation.
**Compare Link**: https://github.com/google/adk-python/compare/v1.18.0...v1.19.0
Here are the recommended documentation updates:
1. **Update Python Version Requirement**.
The minimum required Python version has been updated from 3.9 to 3.10.
**Current state**:
The documentation in `docs/index.md` and other places might still mention Python 3.9.
**Proposed Change**:
Update all mentions of the Python version requirement to 3.10.
**Reasoning**:
The `pyproject.toml` file in the ADK Python repository has been updated to require Python 3.10 or higher. This change needs to be reflected in the documentation to ensure users have the correct environment setup.
**Reference**:
- `pyproject.toml`
2. **Document the New Service Registration Feature**.
A new service registry has been introduced that allows users to register custom services for sessions, artifacts, and memory using a `services.py` or `services.yaml` file.
**Current state**:
There is no documentation for this new feature.
**Proposed Change**:
Add a new section to the documentation that explains how to register custom services. This section should include:
- An explanation of the service registry and its purpose.
- Instructions on how to create and use `services.yaml` and `services.py`.
- Code examples for both methods of registration.
**Reasoning**:
This is a new feature that provides a powerful way for users to extend the ADK with their own custom services. The documentation should be updated to make users aware of this feature and how to use it.
**Reference**:
- `src/google/adk/cli/service_registry.py`
- `contributing/samples/services.py`
- `contributing/samples/services.yaml`
3. **Document the New `FileArtifactService` and Artifact Service Updates**.
A new `FileArtifactService` has been added for storing artifacts on the local filesystem. Additionally, the `save_artifact` method in `CallbackContext` now accepts `custom_metadata`, and new methods `get_artifact_version` and `list_artifacts` have been added.
**Current state**:
The documentation for artifact services may not include information about the `FileArtifactService` or the recent updates to `CallbackContext`.
**Proposed Change**:
- Add documentation for the `FileArtifactService`, explaining how to configure and use it.
- Update the documentation for `CallbackContext` to include the new `custom_metadata` parameter for `save_artifact` and the new `get_artifact_version` and `list_artifacts` methods.
- Add a new sample agent that demonstrates the use of the `FileArtifactService` and the new artifact-related methods.
**Reasoning**:
These updates provide more flexibility for managing artifacts. The documentation should be updated to reflect these new capabilities.
**Reference**:
- `src/google/adk/artifacts/file_artifact_service.py`
- `src/google/adk/agents/callback_context.py`
- `contributing/samples/context_offloading_with_artifact/`
4. **Document the Session Rewind Feature**.
A new feature has been added that allows rewinding a session to a previous state.
**Current state**:
There is no documentation for this new feature.
**Proposed Change**:
Add a new section to the documentation that explains the session rewind feature, how to use it, and provides a code example.
**Reasoning**:
This is a useful feature for debugging and replaying sessions. The documentation should be updated to make users aware of this feature.
**Reference**:
- `contributing/samples/rewind_session/main.py`
- `src/google/adk/runners.py` (the `rewind_async` method)
5. **Document the `on_model_error_callback`**.
A new `on_model_error_callback` has been added to the `LlmAgent` class to allow for custom error handling when a model call fails.
**Current state**:
There is no documentation for this new callback.
**Proposed Change**:
Update the documentation for `LlmAgent` to include the new `on_model_error_callback`, explaining its purpose, how to use it, and providing a code example.
**Reasoning**:
This new callback provides a way for users to implement custom error handling and recovery logic. The documentation should be updated to reflect this new capability.
**Reference**:
- `src/google/adk/agents/llm_agent.py`
6. **Update Documentation for `save_live_blob`**.
The `save_live_audio` run configuration has been deprecated and replaced with `save_live_blob`.
**Current state**:
The documentation may still refer to `save_live_audio`.
**Proposed Change**:
Update all mentions of `save_live_audio` to `save_live_blob` and explain that the new configuration supports both audio and video data.
**Reasoning**:
This is a breaking change for users of the live/bidi-streaming features. The documentation needs to be updated to reflect this change.
**Reference**:
- `src/google/adk/agents/run_config.py`
7. **Document New and Removed Plugins**.
The `BigQueryAgentAnalyticsPlugin` and `MultimodalToolResultsPlugin` have been added, and the `bigquery_logging_plugin` has been removed.
**Current state**:
The documentation for plugins may be out of date.
**Proposed Change**:
- Add documentation for the `BigQueryAgentAnalyticsPlugin` and `MultimodalToolResultsPlugin`, explaining their purpose, how to configure them, and how to use them.
- Remove documentation for the `bigquery_logging_plugin`.
**Reasoning**:
These changes to the available plugins need to be reflected in the documentation.
**Reference**:
- `src/google/adk/plugins/bigquery_agent_analytics_plugin.py`
- `src/google/adk/plugins/multimodal_tool_results_plugin.py`
8. **Document Session Service Updates**.
A new `SqliteSessionService` has been added, and the `DatabaseSessionService` is now async.
**Current state**:
The documentation for session services may not include these updates.
**Proposed Change**:
- Add documentation for the `SqliteSessionService`.
- Update the documentation for `DatabaseSessionService` to reflect its new async nature.
**Reasoning**:
These are significant changes to the session management capabilities of the ADK. The documentation should be updated to reflect these changes.
**Reference**:
- `src/google/adk/sessions/sqlite_session_service.py`
- `src/google/adk/sessions/database_session_service.py`
9. **Add Documentation for New Sample Agents**.
Several new sample agents have been added to demonstrate new features.
**Current state**:
There is no documentation for these new sample agents.
**Proposed Change**:
Add documentation for the following new sample agents:
- `context_offloading_with_artifact`
- `litellm_inline_tool_call`
- `litellm_structured_output`
- `mcp_in_agent_tool_remote`
- `mcp_in_agent_tool_stdio`
- `multimodal_tool_results`
**Reasoning**:
These new samples demonstrate important new features of the ADK. The documentation should be updated to make users aware of these samples and the features they demonstrate.
**Reference**:
- `contributing/samples/`
Contributor guide
Assessment
This issue has not been assessed yet.