Repository navigation
Description
Environment details
- Programming language: python
- OS: arch linux
- Language runtime version: 3.13
- Package version: 1.64.0
Steps to reproduce
from enum import IntEnum
from google import genai
from google.genai import types
1. Define an Integer-based Enum
class DaysEnum(IntEnum):
ONE = 1
FIVE = 5
TEN = 10
2. Define a Pydantic model using that Enum
def WeatherRequest(location: str, days: DaysEnum) -> str:
return f"Weather in {location} for {days} days"
def reproduce_error():
# Credentials aren't even needed to see the validation fail
# during schema transformation
client = genai.Client(api_key="DUMMY_KEY")
print("Attempting to use a tool with an IntEnum...")
try:
# The crash happens when the SDK tries to convert the
# Pydantic model into a Google API 'Schema' object.
response = client.models.generate_content(
model="gemini-3.1-flash-lite-preview",
contents="What is the weather in London for 5 days?",
config=types.GenerateContentConfig(tools=[WeatherRequest]),
)
except Exception as e:
print("\nCaught Expected Error:")
print(f"{type(e).__name__}: {e}")
if name == "main":
reproduce_error()
The error:
*/.venv/lib/python3.13/site-packages/pydantic/main.py:464: UserWarning: Pydantic serializer warnings:
PydanticSerializationUnexpectedValue(Expected str - serialized value may not be as expected [field_name='enum', input_value=1, input_type=int])
PydanticSerializationUnexpectedValue(Expected str - serialized value may not be as expected [field_name='enum', input_value=5, input_type=int])
PydanticSerializationUnexpectedValue(Expected str - serialized value may not be as expected [field_name='enum', input_value=10, input_type=int])
return self.pydantic_serializer.to_python(
Activity
Venkaiahbabuneelam commentedon Mar 31, 2026
Hi @alonahmias, Thanks for reaching out us!
Thank you for bringing this to our attention. We truly appreciate you flagging this issue, we will file a bug internally.
Thanks
alonahmias commentedon Apr 23, 2026
@Venkaiahbabuneelam do you have any updates?
alonahmias commentedon Jun 14, 2026
@Venkaiahbabuneelam any updates? because its really holding us back
fix: Support numeric enum parameters in Schema.from_json_schema and AFC
fix: Support numeric enum parameters in Schema.from_json_schema and AFC
fix: Support numeric enum parameters in Schema.from_json_schema and AFC
fix: Support numeric enum parameters in Schema.from_json_schema and AFC
fix: Support numeric enum parameters in Schema.from_json_schema and AFC