From 2f912bc365ccf752b9bb6c995b0d2f6988719417 Mon Sep 17 00:00:00 2001 From: Mark Daoust Date: Mon, 23 Mar 2026 11:30:53 -0700 Subject: [PATCH] feat: Add service tier for interactions. PiperOrigin-RevId: 888197117 --- .../_interactions/resources/interactions.py | 34 +++++++++++++++++++ .../genai/_interactions/types/interaction.py | 3 ++ .../types/interaction_create_params.py | 6 ++++ 3 files changed, 43 insertions(+) diff --git a/google/genai/_interactions/resources/interactions.py b/google/genai/_interactions/resources/interactions.py index bae20aeb6..3f015af2c 100644 --- a/google/genai/_interactions/resources/interactions.py +++ b/google/genai/_interactions/resources/interactions.py @@ -77,6 +77,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Omit = omit, system_instruction: str | Omit = omit, @@ -109,6 +110,8 @@ def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. stream: Input only. Whether the interaction will be streamed. @@ -141,6 +144,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -174,6 +178,8 @@ def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -203,6 +209,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Omit = omit, system_instruction: str | Omit = omit, @@ -235,6 +242,8 @@ def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. stream: Input only. Whether the interaction will be streamed. @@ -267,6 +276,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -300,6 +310,8 @@ def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -330,6 +342,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -363,6 +376,8 @@ def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -392,6 +407,7 @@ def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Literal[True] | Omit = omit, system_instruction: str | Omit = omit, @@ -425,6 +441,7 @@ def create( "response_format": response_format, "response_mime_type": response_mime_type, "response_modalities": response_modalities, + "service_tier": service_tier, "store": store, "stream": stream, "system_instruction": system_instruction, @@ -705,6 +722,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Omit = omit, system_instruction: str | Omit = omit, @@ -737,6 +755,8 @@ async def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. stream: Input only. Whether the interaction will be streamed. @@ -769,6 +789,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -802,6 +823,8 @@ async def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -831,6 +854,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Omit = omit, system_instruction: str | Omit = omit, @@ -863,6 +887,8 @@ async def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. stream: Input only. Whether the interaction will be streamed. @@ -895,6 +921,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -928,6 +955,8 @@ async def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -958,6 +987,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, system_instruction: str | Omit = omit, tools: Iterable[ToolParam] | Omit = omit, @@ -991,6 +1021,8 @@ async def create( response_modalities: The requested modalities of the response (TEXT, IMAGE, AUDIO). + service_tier: The service tier for the interaction. + store: Input only. Whether to store the response and request for later retrieval. system_instruction: System instruction for the interaction. @@ -1020,6 +1052,7 @@ async def create( response_format: object | Omit = omit, response_mime_type: str | Omit = omit, response_modalities: List[Literal["text", "image", "audio"]] | Omit = omit, + service_tier: Literal["flex", "standard", "priority"] | Omit = omit, store: bool | Omit = omit, stream: Literal[False] | Literal[True] | Omit = omit, system_instruction: str | Omit = omit, @@ -1053,6 +1086,7 @@ async def create( "response_format": response_format, "response_mime_type": response_mime_type, "response_modalities": response_modalities, + "service_tier": service_tier, "store": store, "stream": stream, "system_instruction": system_instruction, diff --git a/google/genai/_interactions/types/interaction.py b/google/genai/_interactions/types/interaction.py index 7db360680..a77f86645 100644 --- a/google/genai/_interactions/types/interaction.py +++ b/google/genai/_interactions/types/interaction.py @@ -138,6 +138,9 @@ class Interaction(BaseModel): role: Optional[str] = None """Output only. The role of the interaction.""" + service_tier: Optional[Literal["flex", "standard", "priority"]] = None + """The service tier for the interaction.""" + system_instruction: Optional[str] = None """System instruction for the interaction.""" diff --git a/google/genai/_interactions/types/interaction_create_params.py b/google/genai/_interactions/types/interaction_create_params.py index 4a6610323..a9f8ec7b2 100644 --- a/google/genai/_interactions/types/interaction_create_params.py +++ b/google/genai/_interactions/types/interaction_create_params.py @@ -90,6 +90,9 @@ class BaseCreateModelInteractionParams(TypedDict, total=False): response_modalities: List[Literal["text", "image", "audio"]] """The requested modalities of the response (TEXT, IMAGE, AUDIO).""" + service_tier: Literal["flex", "standard", "priority"] + """The service tier for the interaction.""" + store: bool """Input only. Whether to store the response and request for later retrieval.""" @@ -157,6 +160,9 @@ class BaseCreateAgentInteractionParams(TypedDict, total=False): response_modalities: List[Literal["text", "image", "audio"]] """The requested modalities of the response (TEXT, IMAGE, AUDIO).""" + service_tier: Literal["flex", "standard", "priority"] + """The service tier for the interaction.""" + store: bool """Input only. Whether to store the response and request for later retrieval."""