A powerful, multi-tool AI agent built with Google's Agent Development Kit (ADK). This agent is capable of intelligently retrieving real-time weather information and current local time for supported cities, showcasing the power of LLM-driven tool use.
- Query Weather: Get instant weather reports (currently simulated for demo purposes).
- Check Time: Retrieve accurate local time for specific time zones.
- Intelligent Routing: The agent automatically decides which tool to use based on your natural language query.
- Powered by Gemini: Utilizes the
gemini-2.0-flashmodel for high-speed, accurate reasoning.
Follow these instructions to get your agent up and running.
- Python 3.10+ installed on your machine.
- A Google Cloud Project with Vertex AI enabled (or a valid API key).
- Google ADK installed.
-
Clone the repository (if applicable) or navigate to your project directory:
cd agent -
Install dependencies:
pip install google-adk
(Note: Ensure you have the ADK installed. If available on PyPI, use
pip install google-adk. Otherwise, follow the specific ADK installation guide.) -
Configure Environment: Create a
.envfile in themulti_tool_agentdirectory with your credentials:GOOGLE_API_KEY=your_api_key_here # Or for OpenRouter/LiteLLM usage # OPENROUTER_API_KEY=your_openrouter_key
Command Line Interface:
Run the agent using the ADK CLI:
adk run multi_tool_agentWeb Interface:
To run the agent with a web interface, use the following command:
adk web --port 8000Once the agent is running, you can interact with it via the command line or the web UI:
[user]: What's the weather in New York?
[agent]: The weather in New York is sunny with a temperature of 25 degrees Celsius.
[user]: What time is it there?
[agent]: The current time in New York is 2025-12-07 13:45:00 EST-0500.
The project is structured around the Agent class from Google ADK:
agent.py: Defines theweather_time_agentand its tools.- Tools:
get_weather(city): Simulates weather data retrieval.get_current_time(city): Fetches current time usingzoneinfo.
Contributions are welcome! Please feel free to submit a Pull Request.
Built using Google ADK