You've already forked adk-python
mirror of
https://github.com/encounter/adk-python.git
synced 2026-07-09 18:19:28 -07:00
Compare commits
30 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5b999ed6fd | |||
| bb8ebd15f9 | |||
| fef5318a22 | |||
| 018db79d13 | |||
| 77ed1f5f15 | |||
| 4afc9b2f33 | |||
| f8fd6a4f09 | |||
| a953807cce | |||
| fa64545a9d | |||
| 004a0a0f2d | |||
| a117cf0af3 | |||
| 1fd58cb363 | |||
| f03f167779 | |||
| 43f302ce1a | |||
| ecaa7b4c98 | |||
| 279e4fedd0 | |||
| b3b70035c4 | |||
| 22f34e9d2c | |||
| ba6e85eb3f | |||
| c84350345a | |||
| a2b7909fc3 | |||
| b66054dd0d | |||
| 8a9a271141 | |||
| a2832d5ac7 | |||
| 1328e6ef62 | |||
| cd357bf5ae | |||
| a27927dc81 | |||
| 6c217bad82 | |||
| c32cb6eef9 | |||
| 80052700f6 |
@@ -1,5 +1,55 @@
|
||||
# Changelog
|
||||
|
||||
## [1.11.0](https://github.com/google/adk-python/compare/v1.10.0...v1.11.0) (2025-08-14)
|
||||
|
||||
### Features
|
||||
|
||||
* [Tools] Support adding prefix to tool names returned by toolset ([ebd726f](https://github.com/google/adk-python/commit/ebd726f1f5e0a76f383192cace4a80a83204325b))
|
||||
* [Eval] Expose `print_detailed_results` param to `AgentEvaluator.evaluate` ([7e08808](https://github.com/google/adk-python/commit/7e0880869b340e9a5e0d68d6936219e64ab41212))
|
||||
* [Tools] Add Spanner toolset (breaking change to BigQueryTool, consolidating into generic GoogleTool) ([1fc8d20](https://github.com/google/adk-python/commit/1fc8d20ae88451b7ed764aa86c17c3cdfaffa1cf))
|
||||
* [Core] Support both output_schema and tools at the same time in LlmAgent([sample](https://github.com/google/adk-python/tree/main/contributing/samples/output_schema_with_tools)) ([af63567](https://github.com/google/adk-python/commit/af635674b5d3c128cf21737056e091646283aeb7))
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* A2A RPC URL got overriden by host and port param of adk api server ([52284b1](https://github.com/google/adk-python/commit/52284b1bae561e0d6c93c9d3240a09f210551b97))
|
||||
* Aclose all async generators to fix OTel tracing context ([a30c63c](https://github.com/google/adk-python/commit/a30c63c5933a770b960b08a6e2f8bf13eece8a22))
|
||||
* Use PreciseTimestamp for create and update time in database session service to improve precision ([585141e](https://github.com/google/adk-python/commit/585141e0b7dda20abb024c7164073862c8eea7ae))
|
||||
* Ignore AsyncGenerator return types in function declarations ([e2518dc](https://github.com/google/adk-python/commit/e2518dc371fe77d7b30328d8d6f5f864176edeac))
|
||||
* Make all subclass of BaseToolset to call parent constructor ([8c65967](https://github.com/google/adk-python/commit/8c65967cdc2dc79fa925ff49a2a8d67c2a248fa9))
|
||||
* Path parameter extraction for complex Google API endpoints ([54680ed](https://github.com/google/adk-python/commit/54680edf3cac7477c281680ec988c0a207c0915d))
|
||||
* Docstring concatenation in 3.13 ([88f759a](https://github.com/google/adk-python/commit/88f759a941c95beef0571f36f8e7a34f27971ba8))
|
||||
* Lazy load retrieval tools and prompt users to install extensions if import failed ([9478a31](https://github.com/google/adk-python/commit/9478a31bf2257f0b668ae7eb91a10863e87c7bed))
|
||||
* Incorrect logic in LlmRequest.append_tools and make BaseTool to call it ([b4ce3b1](https://github.com/google/adk-python/commit/b4ce3b12d109dd0386f4985fc4b27d5b93787532))
|
||||
* Creates an InMemoryMemoryService within the EvaluationGenerator ([e4d54b6](https://github.com/google/adk-python/commit/e4d54b66b38ed334ca92c3bb1a83aca01b19e490))
|
||||
* Uncomment OTel tracing in base_llm_flow.py ([9cfe433](https://github.com/google/adk-python/commit/9cfe43334ae50f814fed663cca7cbe330e663b8c))
|
||||
|
||||
### Improvements
|
||||
|
||||
* Added upper version bounds to dependencies in "pyproject.toml" ([a74d334](https://github.com/google/adk-python/commit/a74d3344bc19e587c5e9f55f3c90fa9d22c478d8))
|
||||
* Update python-version in .github/workflows/python-unit-tests.yml to \["3.9", "3.10", "3.11", "3.12", "3.13"] ([ddf2e21](https://github.com/google/adk-python/commit/ddf2e2194b49667c8e91b4a6afde694474674250))
|
||||
* Update comment to reference "Streamable HTTP Client" ([c52f956](https://github.com/google/adk-python/commit/c52f9564330f0c00d82338cc58df28cb22400b6f))
|
||||
* Remove logging that contains full event data from DatabaseSessionService ([bb3735c](https://github.com/google/adk-python/commit/bb3735c9cab1baa1af2cc22981af3b3984ddfe15))
|
||||
* Add the missing env variables in discussion_answering.yml ([a09a5e6](https://github.com/google/adk-python/commit/a09a5e67aa95cf71b51732ab445232dc4815d83d))
|
||||
* Add Gemini API docs as a new datastore for the ADK Answering Agent ([5fba196](https://github.com/google/adk-python/commit/5fba1963c31eec512558325c480812ccb919a7bb))
|
||||
* Add the missing license header for some sample agents' files ([7d2cb65](https://github.com/google/adk-python/commit/7d2cb654f0d64728741b5de733e572c44c8a5b04))
|
||||
* Add docstring to clarify the behavior of preload memory tool ([88114d7](https://github.com/google/adk-python/commit/88114d7c739ca6a1b9bd19d40ed7160e53054a89))
|
||||
* Add experimental messages for a2a related API ([d0b3b5d](https://github.com/google/adk-python/commit/d0b3b5d857d8105c689bd64204e367102a67eded))
|
||||
* Fixes generate_image sample ([d674178](https://github.com/google/adk-python/commit/d674178a0535be3769edbf6af5a3d8cd3d47fcd2))
|
||||
* Make all FastAPI endpoints async ([7f12387](https://github.com/google/adk-python/commit/7f12387eb19b9335a64b80df00609c3c765480e7))
|
||||
* Group FastAPI endpoints with tags ([c323de5](https://github.com/google/adk-python/commit/c323de5c692223e55372c3797e62d4752835774d))
|
||||
* Allow implementations to skip defining a close method on Toolset ([944e39e](https://github.com/google/adk-python/commit/944e39ec2a7c9ad7f20c08fd66bf544de94a23d7))
|
||||
* Add sample agent to test support of output_schema and tools at the same time for gemini model ([f2005a2](https://github.com/google/adk-python/commit/f2005a20267e1ee8581cb79c37aa55dc8e18c0ea))
|
||||
* Add Github workflow config for uploading ADK docs to knowledge store ([5900273](https://github.com/google/adk-python/commit/59002734559d49a46940db9822b9c5f490220a8c))
|
||||
* Update ADK Answering agent to reference doc site instead of adk-docs repo ([b5a8bad](https://github.com/google/adk-python/commit/b5a8bad170e271b475385dac440c7983ed207df8))
|
||||
|
||||
### Documentation
|
||||
|
||||
* Fixes tool_functions, which is a config-based sample for using tools ([c5af44c](https://github.com/google/adk-python/commit/c5af44cfc0224e2f07ddc7a649a8561e7141fcdc))
|
||||
* Add workflow_triage sample for multi-agent request orchestration ([e295feb](https://github.com/google/adk-python/commit/e295feb4c67cbe8ac4425d9ae230210840378b2e))
|
||||
* Add examples for config agents ([d87feb8](https://github.com/google/adk-python/commit/d87feb8ddb6a5e402c63bd3c35625160eb94e132))
|
||||
* Adds pypi badge to README.md ([dc26aad](https://github.com/google/adk-python/commit/dc26aad663b6ae72223cfec9b91eaf73a636402d))
|
||||
* Update StreamableHTTPConnectionParams docstring to remove SSE references ([8f937b5](https://github.com/google/adk-python/commit/8f937b517548a1ce0569f9698ea55c0a130ef221))
|
||||
|
||||
## [1.10.0](https://github.com/google/adk-python/compare/v1.9.0...v1.10.0) (2025-08-07)
|
||||
|
||||
### Features
|
||||
|
||||
+1
-2
@@ -49,8 +49,7 @@ This project follows
|
||||
|
||||
## Requirement for PRs
|
||||
|
||||
- Each PR should only have one commit. Please squash it if there are multiple PRs.
|
||||
- All PRs, other than small documentation or typo fixes, should have a Issue assoicated. If not, please create one.
|
||||
- All PRs, other than small documentation or typo fixes, should have a Issue associated. If not, please create one.
|
||||
- Small, focused PRs. Keep changes minimal—one concern per PR.
|
||||
- For bug fixes or features, please provide logs or screenshot after the fix is applied to help reviewers better understand the fix.
|
||||
- Please include a `testing plan` section in your PR to talk about how you will test. This will save time for PR review. See `Testing Requirements` section for more details.
|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
# Bigtable Tools Sample
|
||||
|
||||
## Introduction
|
||||
|
||||
This sample agent demonstrates the Bigtable first-party tools in ADK,
|
||||
distributed via the `google.adk.tools.bigtable` module. These tools include:
|
||||
|
||||
1. `bigtable_list_instances`
|
||||
|
||||
Fetches Bigtable instance ids in a Google Cloud project.
|
||||
|
||||
1. `bigtable_get_instance_info`
|
||||
|
||||
Fetches metadata information about a Bigtable instance.
|
||||
|
||||
1. `bigtable_list_tables`
|
||||
|
||||
Fetches table ids in a Bigtable instance.
|
||||
|
||||
1. `bigtable_get_table_info`
|
||||
|
||||
Fetches metadata information about a Bigtable table.
|
||||
|
||||
1. `bigtable_execute_sql`
|
||||
|
||||
Runs a DQL SQL query in Bigtable database.
|
||||
|
||||
## How to use
|
||||
|
||||
Set up environment variables in your `.env` file for using
|
||||
[Google AI Studio](https://google.github.io/adk-docs/get-started/quickstart/#gemini---google-ai-studio)
|
||||
or
|
||||
[Google Cloud Vertex AI](https://google.github.io/adk-docs/get-started/quickstart/#gemini---google-cloud-vertex-ai)
|
||||
for the LLM service for your agent. For example, for using Google AI Studio you
|
||||
would set:
|
||||
|
||||
* GOOGLE_GENAI_USE_VERTEXAI=FALSE
|
||||
* GOOGLE_API_KEY={your api key}
|
||||
|
||||
### With Application Default Credentials
|
||||
|
||||
This mode is useful for quick development when the agent builder is the only
|
||||
user interacting with the agent. The tools are run with these credentials.
|
||||
|
||||
1. Create application default credentials on the machine where the agent would
|
||||
be running by following https://cloud.google.com/docs/authentication/provide-credentials-adc.
|
||||
|
||||
1. Set `CREDENTIALS_TYPE=None` in `agent.py`
|
||||
|
||||
1. Run the agent
|
||||
|
||||
### With Service Account Keys
|
||||
|
||||
This mode is useful for quick development when the agent builder wants to run
|
||||
the agent with service account credentials. The tools are run with these
|
||||
credentials.
|
||||
|
||||
1. Create service account key by following https://cloud.google.com/iam/docs/service-account-creds#user-managed-keys.
|
||||
|
||||
1. Set `CREDENTIALS_TYPE=AuthCredentialTypes.SERVICE_ACCOUNT` in `agent.py`
|
||||
|
||||
1. Download the key file and replace `"service_account_key.json"` with the path
|
||||
|
||||
1. Run the agent
|
||||
|
||||
### With Interactive OAuth
|
||||
|
||||
1. Follow
|
||||
https://developers.google.com/identity/protocols/oauth2#1.-obtain-oauth-2.0-credentials-from-the-dynamic_data.setvar.console_name.
|
||||
to get your client id and client secret. Be sure to choose "web" as your client
|
||||
type.
|
||||
|
||||
1. Follow https://developers.google.com/workspace/guides/configure-oauth-consent
|
||||
to add scope "https://www.googleapis.com/auth/bigtable.admin" and
|
||||
"https://www.googleapis.com/auth/bigtable.data" as declaration, this is used
|
||||
for review purpose.
|
||||
|
||||
1. Follow
|
||||
https://developers.google.com/identity/protocols/oauth2/web-server#creatingcred
|
||||
to add http://localhost/dev-ui/ to "Authorized redirect URIs".
|
||||
|
||||
Note: localhost here is just a hostname that you use to access the dev ui,
|
||||
replace it with the actual hostname you use to access the dev ui.
|
||||
|
||||
1. For 1st run, allow popup for localhost in Chrome.
|
||||
|
||||
1. Configure your `.env` file to add two more variables before running the
|
||||
agent:
|
||||
|
||||
* OAUTH_CLIENT_ID={your client id}
|
||||
* OAUTH_CLIENT_SECRET={your client secret}
|
||||
|
||||
Note: don't create a separate .env, instead put it to the same .env file that
|
||||
stores your Vertex AI or Dev ML credentials
|
||||
|
||||
1. Set `CREDENTIALS_TYPE=AuthCredentialTypes.OAUTH2` in `agent.py` and run the
|
||||
agent
|
||||
|
||||
## Sample prompts
|
||||
|
||||
* Show me all instances in the my-project.
|
||||
* Show me all tables in the my-instance instance in my-project.
|
||||
* Describe the schema of the my-table table in the my-instance instance in my-project.
|
||||
* Show me the first 10 rows of data from the my-table table in the my-instance instance in my-project.
|
||||
@@ -0,0 +1,15 @@
|
||||
# Copyright 2025 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from . import agent
|
||||
@@ -0,0 +1,76 @@
|
||||
# Copyright 2025 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import os
|
||||
|
||||
from google.adk.agents.llm_agent import LlmAgent
|
||||
from google.adk.auth.auth_credential import AuthCredentialTypes
|
||||
from google.adk.tools.bigtable.bigtable_credentials import BigtableCredentialsConfig
|
||||
from google.adk.tools.bigtable.bigtable_toolset import BigtableToolset
|
||||
from google.adk.tools.bigtable.settings import BigtableToolSettings
|
||||
import google.auth
|
||||
|
||||
# Define an appropriate credential type
|
||||
CREDENTIALS_TYPE = AuthCredentialTypes.OAUTH2
|
||||
|
||||
|
||||
# Define Bigtable tool config with read capability set to allowed.
|
||||
tool_settings = BigtableToolSettings()
|
||||
|
||||
if CREDENTIALS_TYPE == AuthCredentialTypes.OAUTH2:
|
||||
# Initiaze the tools to do interactive OAuth
|
||||
# The environment variables OAUTH_CLIENT_ID and OAUTH_CLIENT_SECRET
|
||||
# must be set
|
||||
credentials_config = BigtableCredentialsConfig(
|
||||
client_id=os.getenv("OAUTH_CLIENT_ID"),
|
||||
client_secret=os.getenv("OAUTH_CLIENT_SECRET"),
|
||||
scopes=[
|
||||
"https://www.googleapis.com/auth/bigtable.admin",
|
||||
"https://www.googleapis.com/auth/bigtable.data",
|
||||
],
|
||||
)
|
||||
elif CREDENTIALS_TYPE == AuthCredentialTypes.SERVICE_ACCOUNT:
|
||||
# Initialize the tools to use the credentials in the service account key.
|
||||
# If this flow is enabled, make sure to replace the file path with your own
|
||||
# service account key file
|
||||
# https://cloud.google.com/iam/docs/service-account-creds#user-managed-keys
|
||||
creds, _ = google.auth.load_credentials_from_file("service_account_key.json")
|
||||
credentials_config = BigtableCredentialsConfig(credentials=creds)
|
||||
else:
|
||||
# Initialize the tools to use the application default credentials.
|
||||
# https://cloud.google.com/docs/authentication/provide-credentials-adc
|
||||
application_default_credentials, _ = google.auth.default()
|
||||
credentials_config = BigtableCredentialsConfig(
|
||||
credentials=application_default_credentials
|
||||
)
|
||||
|
||||
bigtable_toolset = BigtableToolset(
|
||||
credentials_config=credentials_config, bigtable_tool_settings=tool_settings
|
||||
)
|
||||
|
||||
# The variable name `root_agent` determines what your root agent is for the
|
||||
# debug CLI
|
||||
root_agent = LlmAgent(
|
||||
model="gemini-1.5-flash",
|
||||
name="bigtable_agent",
|
||||
description=(
|
||||
"Agent to answer questions about Bigtable database tables and"
|
||||
" execute SQL queries."
|
||||
), # TODO(b/360128447): Update description
|
||||
instruction="""\
|
||||
You are a data agent with access to several Bigtable tools.
|
||||
Make use of those tools to answer the user's questions.
|
||||
""",
|
||||
tools=[bigtable_toolset],
|
||||
)
|
||||
+16
-16
@@ -19,25 +19,25 @@ instruction: |
|
||||
You should always perform the previous 3 steps when asking for a roll and checking prime numbers.
|
||||
You should not rely on the previous history on prime results.
|
||||
tools:
|
||||
- name: callbacks.tools.roll_die
|
||||
- name: callbacks.tools.check_prime
|
||||
- name: core_callback_config.tools.roll_die
|
||||
- name: core_callback_config.tools.check_prime
|
||||
before_agent_callbacks:
|
||||
- name: callbacks.callbacks.before_agent_callback1
|
||||
- name: callbacks.callbacks.before_agent_callback2
|
||||
- name: callbacks.callbacks.before_agent_callback3
|
||||
- name: core_callback_config.callbacks.before_agent_callback1
|
||||
- name: core_callback_config.callbacks.before_agent_callback2
|
||||
- name: core_callback_config.callbacks.before_agent_callback3
|
||||
after_agent_callbacks:
|
||||
- name: callbacks.callbacks.after_agent_callback1
|
||||
- name: callbacks.callbacks.after_agent_callback2
|
||||
- name: callbacks.callbacks.after_agent_callback3
|
||||
- name: core_callback_config.callbacks.after_agent_callback1
|
||||
- name: core_callback_config.callbacks.after_agent_callback2
|
||||
- name: core_callback_config.callbacks.after_agent_callback3
|
||||
before_model_callbacks:
|
||||
- name: callbacks.callbacks.before_model_callback
|
||||
- name: core_callback_config.callbacks.before_model_callback
|
||||
after_model_callbacks:
|
||||
- name: callbacks.callbacks.after_model_callback
|
||||
- name: core_callback_config.callbacks.after_model_callback
|
||||
before_tool_callbacks:
|
||||
- name: callbacks.callbacks.before_tool_callback1
|
||||
- name: callbacks.callbacks.before_tool_callback2
|
||||
- name: callbacks.callbacks.before_tool_callback3
|
||||
- name: core_callback_config.callbacks.before_tool_callback1
|
||||
- name: core_callback_config.callbacks.before_tool_callback2
|
||||
- name: core_callback_config.callbacks.before_tool_callback3
|
||||
after_tool_callbacks:
|
||||
- name: callbacks.callbacks.after_tool_callback1
|
||||
- name: callbacks.callbacks.after_tool_callback2
|
||||
- name: callbacks.callbacks.after_tool_callback3
|
||||
- name: core_callback_config.callbacks.after_tool_callback1
|
||||
- name: core_callback_config.callbacks.after_tool_callback2
|
||||
- name: core_callback_config.callbacks.after_tool_callback3
|
||||
+1
-1
@@ -34,7 +34,7 @@ class MyCustomAgentConfig(BaseAgentConfig):
|
||||
model_config = ConfigDict(
|
||||
extra="forbid",
|
||||
)
|
||||
agent_class: str = "core_cutom_agent.my_agents.MyCustomAgent"
|
||||
agent_class: str = "core_cutom_agent_config.my_agents.MyCustomAgent"
|
||||
my_field: str = ""
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
# yaml-language-server: $schema=https://raw.githubusercontent.com/google/adk-python/refs/heads/main/src/google/adk/agents/config_schemas/AgentConfig.json
|
||||
name: working_agent
|
||||
agent_class: core_custom_agent.my_agents.MyCustomAgent
|
||||
agent_class: core_custom_agent_config.my_agents.MyCustomAgent
|
||||
description: Handles all the work.
|
||||
my_field: my_field_value
|
||||
@@ -131,7 +131,7 @@ prime_agent = Agent(
|
||||
|
||||
|
||||
root_agent = Agent(
|
||||
model="gemini-1.5-flash",
|
||||
model="gemini-2.5-flash",
|
||||
name="root_agent",
|
||||
instruction="""
|
||||
You are a helpful assistant that can roll dice and check if numbers are prime.
|
||||
|
||||
@@ -39,7 +39,7 @@ def ask_for_approval(
|
||||
|
||||
|
||||
root_agent = Agent(
|
||||
model='gemini-1.5-flash',
|
||||
model='gemini-2.5-flash',
|
||||
name='reimbursement_agent',
|
||||
instruction="""
|
||||
You are an agent whose job is to handle the reimbursement process for
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
# Config-based Agent Sample - Learning Assistant
|
||||
|
||||
This sample demonstrates a minimal multi-agent setup with a learning assistant that delegates to specialized tutoring agents.
|
||||
|
||||
## Structure
|
||||
|
||||
- `root_agent.yaml` - Main learning assistant agent that routes questions to appropriate tutors
|
||||
- `code_tutor_agent.yaml` - Specialized agent for programming and coding questions
|
||||
- `math_tutor_agent.yaml` - Specialized agent for mathematical concepts and problems
|
||||
|
||||
## Usage
|
||||
|
||||
The root agent will automatically delegate:
|
||||
- Coding/programming questions → `code_tutor_agent`
|
||||
- Math questions → `math_tutor_agent`
|
||||
|
||||
This example shows how to create a simple multi-agent system without tools, focusing on clear delegation and specialized expertise.
|
||||
|
||||
## Sample Queries
|
||||
|
||||
### Coding Questions
|
||||
|
||||
```
|
||||
"How do I create a for loop in Python?"
|
||||
"Can you help me debug this function?"
|
||||
"What are the best practices for variable naming?"
|
||||
```
|
||||
|
||||
### Math Questions
|
||||
|
||||
```
|
||||
"Can you explain the quadratic formula?"
|
||||
"How do I solve this algebra problem: 2x + 5 = 15?"
|
||||
"What's the difference between mean and median?"
|
||||
```
|
||||
@@ -0,0 +1,15 @@
|
||||
# yaml-language-server: $schema=https://raw.githubusercontent.com/google/adk-python/refs/heads/main/src/google/adk/agents/config_schemas/AgentConfig.json
|
||||
agent_class: LlmAgent
|
||||
name: code_tutor_agent
|
||||
description: Coding tutor that helps with programming concepts and questions.
|
||||
instruction: |
|
||||
You are a helpful coding tutor that specializes in teaching programming concepts.
|
||||
|
||||
Your role is to:
|
||||
1. Explain programming concepts clearly and simply
|
||||
2. Help debug code issues
|
||||
3. Provide code examples and best practices
|
||||
4. Guide students through problem-solving approaches
|
||||
5. Encourage good coding habits
|
||||
|
||||
Always be patient, encouraging, and provide step-by-step explanations.
|
||||
@@ -0,0 +1,15 @@
|
||||
# yaml-language-server: $schema=https://raw.githubusercontent.com/google/adk-python/refs/heads/main/src/google/adk/agents/config_schemas/AgentConfig.json
|
||||
agent_class: LlmAgent
|
||||
name: math_tutor_agent
|
||||
description: Math tutor that helps with mathematical concepts and problems.
|
||||
instruction: |
|
||||
You are a helpful math tutor that specializes in teaching mathematical concepts.
|
||||
|
||||
Your role is to:
|
||||
1. Explain mathematical concepts clearly with examples
|
||||
2. Help solve math problems step by step
|
||||
3. Provide different approaches to solving problems
|
||||
4. Help students understand the reasoning behind solutions
|
||||
5. Encourage mathematical thinking and problem-solving skills
|
||||
|
||||
Always break down complex problems into manageable steps and be patient with explanations.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user