Google's Agent Development Kit (ADK) is an open-source framework for building and deploying agents on top of Gemini, Google's model family, though it…
See ADK as Google's framework for building and shipping agents.
The Agent Development Kit (ADK) is Google's open-source framework for building agents, covering the full path from development to evaluation to deployment. It is optimized for Gemini and Google Cloud but is model-agnostic, so you can use it with other providers too.
ADK gives you structured building blocks — agents, tools, and multi-agent composition — plus tooling for testing and a smooth route to production on Google Cloud. It's Google's answer to 'how do I build a real agent on Gemini and run it at scale?'
Understand the tool-calling mechanism ADK builds on.
Underneath ADK is Gemini's function calling. You declare functions with a name, a description, and a parameter schema; Gemini decides when one is needed and returns a structured function call with arguments; your code executes it and returns the result for Gemini to use. As with other models, Gemini requests the call — it doesn't run your code.
Gemini can also make parallel function calls when several independent lookups are needed. This mechanism is the foundation every ADK agent is built on.
def get_weather(city: str) -> dict: """Get the current weather for a city.""" return {"temp_c": lookup(city)} # ADK infers the schema from the signature + docstring agent = Agent(model="gemini-2.0-flash", instruction="Help users with weather.", tools=[get_weather])
ADK turns a typed, documented Python function into a Gemini function declaration automatically — the signature becomes the parameter schema and the docstring the description. The Agent bundles the model, instructions, and tools.
Compose ADK agents, including teams of them.
An ADK agent bundles a model, instructions, and tools, and runs the tool-calling loop for you, with sessions for memory across turns. That handles single-agent tasks directly.
For bigger problems, ADK supports multi-agent composition: you build specialized agents and coordinate them — a coordinator delegating to sub-agents, or agents arranged in sequential or parallel workflows. This lets you decompose a complex task into focused agents while ADK manages how they hand off and share state.
Ship ADK agents to production and dodge the common errors.
ADK is built with deployment in mind. You develop and test locally, then deploy — a common target is Vertex AI Agent Engine, a managed runtime on Google Cloud that handles scaling, sessions, and operations, though you can also containerize and run ADK agents elsewhere. This development-to-production path is a core reason to use ADK over a raw function-calling loop.
It also includes evaluation tooling so you can test agent behavior before shipping.
Watch for: vague function docstrings and unclear signatures, since ADK derives the schema from them and Gemini chooses tools by their descriptions; reaching for multi-agent composition when one agent with tools would do; skipping evaluation before deploying; and not validating tool arguments before executing. Write clear, typed, documented tools and keep the design as simple as the task allows.
Google's ADK is an open-source framework for building, evaluating, and deploying agents, Gemini-first but model-agnostic. It builds on Gemini function calling — declare functions, Gemini returns structured calls, your code executes them — and infers schemas from typed, documented Python functions. ADK adds agents, sessions, and multi-agent composition (coordinator or sequential/parallel workflows), plus a production path to Vertex AI Agent Engine. Write clear typed tools, evaluate before shipping, and keep the design as simple as the task allows.
Design an ADK agent that answers travel questions using a weather tool and a flights tool. Write clear function docstrings so Gemini picks the right one, decide whether you need multi-agent composition, and name where you would deploy it and one thing you'd evaluate first.
What is Google's Agent Development Kit (ADK)?
ADK provides structured building blocks and a development-to-production path for agents, Gemini-first but usable with other models.
What mechanism does ADK build on?
Function calling is the foundation; ADK infers the declaration from a typed, documented Python function and runs the loop.
How does ADK handle complex tasks that exceed one agent?
ADK lets you decompose a task into focused agents and coordinate them while managing delegation and shared state.
What is a common way to deploy an ADK agent to production?
ADK is deployment-minded; Agent Engine offers a managed runtime, and agents can also be containerized and run elsewhere.