Skip to content

Commit b469597

Browse files
speedstorm1copybara-github
authored andcommitted
chore: sanitize model name inputs
PiperOrigin-RevId: 828998104
1 parent bd10082 commit b469597

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

google/genai/_transformers.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,8 @@ def _resource_name(
199199
def t_model(client: _api_client.BaseApiClient, model: str) -> str:
200200
if not model:
201201
raise ValueError('model is required.')
202+
if '..' in model or '?' in model or '&' in model:
203+
raise ValueError('invalid model parameter.')
202204
if client.vertexai:
203205
if (
204206
model.startswith('projects/')

google/genai/tests/models/test_generate_content.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,33 @@ class InstrumentEnum(Enum):
502502
),
503503
ignore_keys=['parsed'],
504504
),
505+
pytest_helper.TestTableItem(
506+
name='test_invalid_model_parameter_path',
507+
parameters=types._GenerateContentParameters(
508+
model='gemini-2.5-flash/../../upload/v1beta/files',
509+
contents=t.t_contents('What is your name?'),
510+
),
511+
exception_if_vertex='invalid model parameter',
512+
exception_if_mldev='invalid model parameter',
513+
),
514+
pytest_helper.TestTableItem(
515+
name='test_invalid_model_parameter_question_mark',
516+
parameters=types._GenerateContentParameters(
517+
model='gemini-2.5-flash?',
518+
contents=t.t_contents('What is your name?'),
519+
),
520+
exception_if_vertex='invalid model parameter',
521+
exception_if_mldev='invalid model parameter',
522+
),
523+
pytest_helper.TestTableItem(
524+
name='test_invalid_model_parameter_ampersand',
525+
parameters=types._GenerateContentParameters(
526+
model='gemini-2.5-flash&',
527+
contents=t.t_contents('What is your name?'),
528+
),
529+
exception_if_vertex='invalid model parameter',
530+
exception_if_mldev='invalid model parameter',
531+
),
505532
]
506533

507534
pytestmark = pytest_helper.setup(

0 commit comments

Comments
 (0)