* Fix Gemini harness tool declarations Forward Agent Framework FunctionTool JSON Schemas to the Gemini SDK parameters_json_schema field and enable Developer API server-side tool invocation reporting when native Gemini tools are mixed with function declarations. Preserves Vertex AI behavior and existing function-calling tool_choice config. Validation: - uv run --directory python poe check -P gemini - uv run --directory python poe build -P gemini - uv run --directory python poe test -A -m 'not integration' - uv run --directory python pytest packages/gemini/tests/test_gemini_client.py -q -m integration (8 skipped: credential-gated) * Python: Use typing_extensions TypedDict in Gemini tests Use typing_extensions.TypedDict for the Gemini JSON Schema test helper so Pydantic can build the model on Python 3.11. This keeps the CI fix scoped to the failing test compatibility issue without changing Gemini client behavior. --------- Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>
Get Started with Microsoft Agent Framework Gemini
Install the provider package:
pip install agent-framework-gemini --pre
Gemini Integration
The Gemini integration enables Microsoft Agent Framework applications to call Google Gemini models with familiar chat abstractions, including streaming, tool/function calling, and structured output.
Structured Output
Gemini structured output can be configured with either a Pydantic model in response_format, a JSON schema mapping in response_format, or a Gemini-specific response_schema. Declarative agents that define outputSchema pass that schema through response_format.
Authentication
The connector supports both google-genai authentication modes.
Gemini Developer API
Obtain an API key from Google AI Studio and set either the package-prefixed or SDK-standard environment variable:
export GEMINI_API_KEY="your-api-key"
# or: export GOOGLE_API_KEY="your-api-key"
export GEMINI_MODEL="gemini-2.5-flash-lite"
# or: export GOOGLE_MODEL="gemini-2.5-flash-lite"
Vertex AI
Set the standard Vertex AI environment variables used by google-genai:
export GOOGLE_GENAI_USE_VERTEXAI=true
export GOOGLE_CLOUD_PROJECT="your-project-id"
export GOOGLE_CLOUD_LOCATION="global"
export GOOGLE_MODEL="gemini-2.5-flash-lite"
Examples
See the Google Gemini samples for runnable end-to-end scripts covering:
- Basic agent with tool calling and streaming
- Extended thinking with
ThinkingConfig - Google Search grounding
- Google Maps grounding
- Built-in code execution