From f5ec5fd2599de86cc467289e0a0916075581123e Mon Sep 17 00:00:00 2001 From: "claude[bot]" <209825114+claude[bot]@users.noreply.github.com> Date: Tue, 9 Sep 2025 15:34:11 +0000 Subject: [PATCH] feat: add seed parameter support to GoogleModel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add seed parameter to GenerateContentConfigDict in GoogleModel._build_content_and_config - Add seed parameter to GenerationConfigDict in GoogleModel.count_tokens for Vertex AI - Update ModelSettings docstring to include Gemini in the list of supported providers for seed parameter Fixes #2838 🤖 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: Douwe Maan --- pydantic_ai_slim/pydantic_ai/models/google.py | 2 ++ pydantic_ai_slim/pydantic_ai/settings.py | 1 + 2 files changed, 3 insertions(+) diff --git a/pydantic_ai_slim/pydantic_ai/models/google.py b/pydantic_ai_slim/pydantic_ai/models/google.py index fa35191278..a6d9d0e577 100644 --- a/pydantic_ai_slim/pydantic_ai/models/google.py +++ b/pydantic_ai_slim/pydantic_ai/models/google.py @@ -254,6 +254,7 @@ async def count_tokens( stop_sequences=generation_config.get('stop_sequences'), presence_penalty=generation_config.get('presence_penalty'), frequency_penalty=generation_config.get('frequency_penalty'), + seed=generation_config.get('seed'), thinking_config=generation_config.get('thinking_config'), media_resolution=generation_config.get('media_resolution'), response_mime_type=generation_config.get('response_mime_type'), @@ -397,6 +398,7 @@ async def _build_content_and_config( stop_sequences=model_settings.get('stop_sequences'), presence_penalty=model_settings.get('presence_penalty'), frequency_penalty=model_settings.get('frequency_penalty'), + seed=model_settings.get('seed'), safety_settings=model_settings.get('google_safety_settings'), thinking_config=model_settings.get('google_thinking_config'), labels=model_settings.get('google_labels'), diff --git a/pydantic_ai_slim/pydantic_ai/settings.py b/pydantic_ai_slim/pydantic_ai/settings.py index f3d515ae69..cc87ba4a37 100644 --- a/pydantic_ai_slim/pydantic_ai/settings.py +++ b/pydantic_ai_slim/pydantic_ai/settings.py @@ -94,6 +94,7 @@ class ModelSettings(TypedDict, total=False): * Groq * Cohere * Mistral + * Gemini """ presence_penalty: float