google-genai 1.25.0__py3-none-any.whl → 1.27.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- google/genai/_extra_utils.py +1 -1
- google/genai/_live_converters.py +1624 -1922
- google/genai/_tokens_converters.py +11 -874
- google/genai/_transformers.py +21 -11
- google/genai/batches.py +402 -3477
- google/genai/caches.py +16 -67
- google/genai/files.py +15 -2
- google/genai/live.py +8 -10
- google/genai/models.py +150 -168
- google/genai/operations.py +36 -266
- google/genai/pagers.py +11 -1
- google/genai/tunings.py +23 -48
- google/genai/types.py +158 -48
- google/genai/version.py +1 -1
- {google_genai-1.25.0.dist-info → google_genai-1.27.0.dist-info}/METADATA +104 -36
- google_genai-1.27.0.dist-info/RECORD +35 -0
- google_genai-1.25.0.dist-info/RECORD +0 -35
- {google_genai-1.25.0.dist-info → google_genai-1.27.0.dist-info}/WHEEL +0 -0
- {google_genai-1.25.0.dist-info → google_genai-1.27.0.dist-info}/licenses/LICENSE +0 -0
- {google_genai-1.25.0.dist-info → google_genai-1.27.0.dist-info}/top_level.txt +0 -0
google/genai/caches.py
CHANGED
@@ -269,71 +269,6 @@ def _GoogleSearchRetrieval_to_mldev(
|
|
269
269
|
return to_object
|
270
270
|
|
271
271
|
|
272
|
-
def _EnterpriseWebSearch_to_mldev(
|
273
|
-
from_object: Union[dict[str, Any], object],
|
274
|
-
parent_object: Optional[dict[str, Any]] = None,
|
275
|
-
) -> dict[str, Any]:
|
276
|
-
to_object: dict[str, Any] = {}
|
277
|
-
|
278
|
-
return to_object
|
279
|
-
|
280
|
-
|
281
|
-
def _ApiKeyConfig_to_mldev(
|
282
|
-
from_object: Union[dict[str, Any], object],
|
283
|
-
parent_object: Optional[dict[str, Any]] = None,
|
284
|
-
) -> dict[str, Any]:
|
285
|
-
to_object: dict[str, Any] = {}
|
286
|
-
if getv(from_object, ['api_key_string']) is not None:
|
287
|
-
raise ValueError('api_key_string parameter is not supported in Gemini API.')
|
288
|
-
|
289
|
-
return to_object
|
290
|
-
|
291
|
-
|
292
|
-
def _AuthConfig_to_mldev(
|
293
|
-
from_object: Union[dict[str, Any], object],
|
294
|
-
parent_object: Optional[dict[str, Any]] = None,
|
295
|
-
) -> dict[str, Any]:
|
296
|
-
to_object: dict[str, Any] = {}
|
297
|
-
if getv(from_object, ['api_key_config']) is not None:
|
298
|
-
raise ValueError('api_key_config parameter is not supported in Gemini API.')
|
299
|
-
|
300
|
-
if getv(from_object, ['auth_type']) is not None:
|
301
|
-
setv(to_object, ['authType'], getv(from_object, ['auth_type']))
|
302
|
-
|
303
|
-
if getv(from_object, ['google_service_account_config']) is not None:
|
304
|
-
setv(
|
305
|
-
to_object,
|
306
|
-
['googleServiceAccountConfig'],
|
307
|
-
getv(from_object, ['google_service_account_config']),
|
308
|
-
)
|
309
|
-
|
310
|
-
if getv(from_object, ['http_basic_auth_config']) is not None:
|
311
|
-
setv(
|
312
|
-
to_object,
|
313
|
-
['httpBasicAuthConfig'],
|
314
|
-
getv(from_object, ['http_basic_auth_config']),
|
315
|
-
)
|
316
|
-
|
317
|
-
if getv(from_object, ['oauth_config']) is not None:
|
318
|
-
setv(to_object, ['oauthConfig'], getv(from_object, ['oauth_config']))
|
319
|
-
|
320
|
-
if getv(from_object, ['oidc_config']) is not None:
|
321
|
-
setv(to_object, ['oidcConfig'], getv(from_object, ['oidc_config']))
|
322
|
-
|
323
|
-
return to_object
|
324
|
-
|
325
|
-
|
326
|
-
def _GoogleMaps_to_mldev(
|
327
|
-
from_object: Union[dict[str, Any], object],
|
328
|
-
parent_object: Optional[dict[str, Any]] = None,
|
329
|
-
) -> dict[str, Any]:
|
330
|
-
to_object: dict[str, Any] = {}
|
331
|
-
if getv(from_object, ['auth_config']) is not None:
|
332
|
-
raise ValueError('auth_config parameter is not supported in Gemini API.')
|
333
|
-
|
334
|
-
return to_object
|
335
|
-
|
336
|
-
|
337
272
|
def _UrlContext_to_mldev(
|
338
273
|
from_object: Union[dict[str, Any], object],
|
339
274
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -1392,6 +1327,11 @@ def _ListCachedContentsResponse_from_mldev(
|
|
1392
1327
|
parent_object: Optional[dict[str, Any]] = None,
|
1393
1328
|
) -> dict[str, Any]:
|
1394
1329
|
to_object: dict[str, Any] = {}
|
1330
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
1331
|
+
setv(
|
1332
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
1333
|
+
)
|
1334
|
+
|
1395
1335
|
if getv(from_object, ['nextPageToken']) is not None:
|
1396
1336
|
setv(to_object, ['next_page_token'], getv(from_object, ['nextPageToken']))
|
1397
1337
|
|
@@ -1451,6 +1391,11 @@ def _ListCachedContentsResponse_from_vertex(
|
|
1451
1391
|
parent_object: Optional[dict[str, Any]] = None,
|
1452
1392
|
) -> dict[str, Any]:
|
1453
1393
|
to_object: dict[str, Any] = {}
|
1394
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
1395
|
+
setv(
|
1396
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
1397
|
+
)
|
1398
|
+
|
1454
1399
|
if getv(from_object, ['nextPageToken']) is not None:
|
1455
1400
|
setv(to_object, ['next_page_token'], getv(from_object, ['nextPageToken']))
|
1456
1401
|
|
@@ -1838,7 +1783,9 @@ class Caches(_api_module.BaseModule):
|
|
1838
1783
|
return_value = types.ListCachedContentsResponse._from_response(
|
1839
1784
|
response=response_dict, kwargs=parameter_model.model_dump()
|
1840
1785
|
)
|
1841
|
-
|
1786
|
+
return_value.sdk_http_response = types.HttpResponse(
|
1787
|
+
headers=response.headers
|
1788
|
+
)
|
1842
1789
|
self._api_client._verify_response(return_value)
|
1843
1790
|
return return_value
|
1844
1791
|
|
@@ -2230,7 +2177,9 @@ class AsyncCaches(_api_module.BaseModule):
|
|
2230
2177
|
return_value = types.ListCachedContentsResponse._from_response(
|
2231
2178
|
response=response_dict, kwargs=parameter_model.model_dump()
|
2232
2179
|
)
|
2233
|
-
|
2180
|
+
return_value.sdk_http_response = types.HttpResponse(
|
2181
|
+
headers=response.headers
|
2182
|
+
)
|
2234
2183
|
self._api_client._verify_response(return_value)
|
2235
2184
|
return return_value
|
2236
2185
|
|
google/genai/files.py
CHANGED
@@ -267,6 +267,11 @@ def _ListFilesResponse_from_mldev(
|
|
267
267
|
parent_object: Optional[dict[str, Any]] = None,
|
268
268
|
) -> dict[str, Any]:
|
269
269
|
to_object: dict[str, Any] = {}
|
270
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
271
|
+
setv(
|
272
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
273
|
+
)
|
274
|
+
|
270
275
|
if getv(from_object, ['nextPageToken']) is not None:
|
271
276
|
setv(to_object, ['next_page_token'], getv(from_object, ['nextPageToken']))
|
272
277
|
|
@@ -288,6 +293,10 @@ def _CreateFileResponse_from_mldev(
|
|
288
293
|
parent_object: Optional[dict[str, Any]] = None,
|
289
294
|
) -> dict[str, Any]:
|
290
295
|
to_object: dict[str, Any] = {}
|
296
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
297
|
+
setv(
|
298
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
299
|
+
)
|
291
300
|
|
292
301
|
return to_object
|
293
302
|
|
@@ -366,7 +375,9 @@ class Files(_api_module.BaseModule):
|
|
366
375
|
return_value = types.ListFilesResponse._from_response(
|
367
376
|
response=response_dict, kwargs=parameter_model.model_dump()
|
368
377
|
)
|
369
|
-
|
378
|
+
return_value.sdk_http_response = types.HttpResponse(
|
379
|
+
headers=response.headers
|
380
|
+
)
|
370
381
|
self._api_client._verify_response(return_value)
|
371
382
|
return return_value
|
372
383
|
|
@@ -844,7 +855,9 @@ class AsyncFiles(_api_module.BaseModule):
|
|
844
855
|
return_value = types.ListFilesResponse._from_response(
|
845
856
|
response=response_dict, kwargs=parameter_model.model_dump()
|
846
857
|
)
|
847
|
-
|
858
|
+
return_value.sdk_http_response = types.HttpResponse(
|
859
|
+
headers=response.headers
|
860
|
+
)
|
848
861
|
self._api_client._verify_response(return_value)
|
849
862
|
return return_value
|
850
863
|
|
google/genai/live.py
CHANGED
@@ -929,7 +929,8 @@ class AsyncLive(_api_module.BaseModule):
|
|
929
929
|
version = self._api_client._http_options.api_version
|
930
930
|
api_key = self._api_client.api_key
|
931
931
|
method = 'BidiGenerateContent'
|
932
|
-
|
932
|
+
original_headers = self._api_client._http_options.headers
|
933
|
+
headers = original_headers.copy() if original_headers is not None else {}
|
933
934
|
if api_key.startswith('auth_tokens/'):
|
934
935
|
warnings.warn(
|
935
936
|
message=(
|
@@ -939,7 +940,7 @@ class AsyncLive(_api_module.BaseModule):
|
|
939
940
|
category=errors.ExperimentalWarning,
|
940
941
|
)
|
941
942
|
method = 'BidiGenerateContentConstrained'
|
942
|
-
|
943
|
+
headers['Authorization'] = f'Token {api_key}'
|
943
944
|
if version != 'v1alpha':
|
944
945
|
warnings.warn(
|
945
946
|
message=(
|
@@ -950,8 +951,7 @@ class AsyncLive(_api_module.BaseModule):
|
|
950
951
|
),
|
951
952
|
category=errors.ExperimentalWarning,
|
952
953
|
)
|
953
|
-
uri = f'{base_url}/ws/google.ai.generativelanguage.{version}.GenerativeService.{method}
|
954
|
-
headers = self._api_client._http_options.headers
|
954
|
+
uri = f'{base_url}/ws/google.ai.generativelanguage.{version}.GenerativeService.{method}'
|
955
955
|
|
956
956
|
request_dict = _common.convert_to_dict(
|
957
957
|
live_converters._LiveConnectParameters_to_mldev(
|
@@ -972,7 +972,7 @@ class AsyncLive(_api_module.BaseModule):
|
|
972
972
|
api_key = self._api_client.api_key
|
973
973
|
version = self._api_client._http_options.api_version
|
974
974
|
uri = f'{base_url}/ws/google.cloud.aiplatform.{version}.LlmBidiService/BidiGenerateContent'
|
975
|
-
headers = self._api_client._http_options.headers
|
975
|
+
headers = self._api_client._http_options.headers or {}
|
976
976
|
|
977
977
|
request_dict = _common.convert_to_dict(
|
978
978
|
live_converters._LiveConnectParameters_to_vertex(
|
@@ -1002,11 +1002,9 @@ class AsyncLive(_api_module.BaseModule):
|
|
1002
1002
|
auth_req = google.auth.transport.requests.Request() # type: ignore
|
1003
1003
|
creds.refresh(auth_req)
|
1004
1004
|
bearer_token = creds.token
|
1005
|
-
|
1006
|
-
if
|
1007
|
-
|
1008
|
-
'Authorization': 'Bearer {}'.format(bearer_token),
|
1009
|
-
})
|
1005
|
+
original_headers = self._api_client._http_options.headers
|
1006
|
+
headers = original_headers.copy() if original_headers is not None else {}
|
1007
|
+
headers['Authorization'] = f'Bearer {bearer_token}'
|
1010
1008
|
version = self._api_client._http_options.api_version
|
1011
1009
|
uri = f'{base_url}/ws/google.cloud.aiplatform.{version}.LlmBidiService/BidiGenerateContent'
|
1012
1010
|
location = self._api_client.location
|
google/genai/models.py
CHANGED
@@ -260,19 +260,6 @@ def _Schema_to_mldev(
|
|
260
260
|
return to_object
|
261
261
|
|
262
262
|
|
263
|
-
def _ModelSelectionConfig_to_mldev(
|
264
|
-
from_object: Union[dict[str, Any], object],
|
265
|
-
parent_object: Optional[dict[str, Any]] = None,
|
266
|
-
) -> dict[str, Any]:
|
267
|
-
to_object: dict[str, Any] = {}
|
268
|
-
if getv(from_object, ['feature_selection_preference']) is not None:
|
269
|
-
raise ValueError(
|
270
|
-
'feature_selection_preference parameter is not supported in Gemini API.'
|
271
|
-
)
|
272
|
-
|
273
|
-
return to_object
|
274
|
-
|
275
|
-
|
276
263
|
def _SafetySetting_to_mldev(
|
277
264
|
from_object: Union[dict[str, Any], object],
|
278
265
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -391,71 +378,6 @@ def _GoogleSearchRetrieval_to_mldev(
|
|
391
378
|
return to_object
|
392
379
|
|
393
380
|
|
394
|
-
def _EnterpriseWebSearch_to_mldev(
|
395
|
-
from_object: Union[dict[str, Any], object],
|
396
|
-
parent_object: Optional[dict[str, Any]] = None,
|
397
|
-
) -> dict[str, Any]:
|
398
|
-
to_object: dict[str, Any] = {}
|
399
|
-
|
400
|
-
return to_object
|
401
|
-
|
402
|
-
|
403
|
-
def _ApiKeyConfig_to_mldev(
|
404
|
-
from_object: Union[dict[str, Any], object],
|
405
|
-
parent_object: Optional[dict[str, Any]] = None,
|
406
|
-
) -> dict[str, Any]:
|
407
|
-
to_object: dict[str, Any] = {}
|
408
|
-
if getv(from_object, ['api_key_string']) is not None:
|
409
|
-
raise ValueError('api_key_string parameter is not supported in Gemini API.')
|
410
|
-
|
411
|
-
return to_object
|
412
|
-
|
413
|
-
|
414
|
-
def _AuthConfig_to_mldev(
|
415
|
-
from_object: Union[dict[str, Any], object],
|
416
|
-
parent_object: Optional[dict[str, Any]] = None,
|
417
|
-
) -> dict[str, Any]:
|
418
|
-
to_object: dict[str, Any] = {}
|
419
|
-
if getv(from_object, ['api_key_config']) is not None:
|
420
|
-
raise ValueError('api_key_config parameter is not supported in Gemini API.')
|
421
|
-
|
422
|
-
if getv(from_object, ['auth_type']) is not None:
|
423
|
-
setv(to_object, ['authType'], getv(from_object, ['auth_type']))
|
424
|
-
|
425
|
-
if getv(from_object, ['google_service_account_config']) is not None:
|
426
|
-
setv(
|
427
|
-
to_object,
|
428
|
-
['googleServiceAccountConfig'],
|
429
|
-
getv(from_object, ['google_service_account_config']),
|
430
|
-
)
|
431
|
-
|
432
|
-
if getv(from_object, ['http_basic_auth_config']) is not None:
|
433
|
-
setv(
|
434
|
-
to_object,
|
435
|
-
['httpBasicAuthConfig'],
|
436
|
-
getv(from_object, ['http_basic_auth_config']),
|
437
|
-
)
|
438
|
-
|
439
|
-
if getv(from_object, ['oauth_config']) is not None:
|
440
|
-
setv(to_object, ['oauthConfig'], getv(from_object, ['oauth_config']))
|
441
|
-
|
442
|
-
if getv(from_object, ['oidc_config']) is not None:
|
443
|
-
setv(to_object, ['oidcConfig'], getv(from_object, ['oidc_config']))
|
444
|
-
|
445
|
-
return to_object
|
446
|
-
|
447
|
-
|
448
|
-
def _GoogleMaps_to_mldev(
|
449
|
-
from_object: Union[dict[str, Any], object],
|
450
|
-
parent_object: Optional[dict[str, Any]] = None,
|
451
|
-
) -> dict[str, Any]:
|
452
|
-
to_object: dict[str, Any] = {}
|
453
|
-
if getv(from_object, ['auth_config']) is not None:
|
454
|
-
raise ValueError('auth_config parameter is not supported in Gemini API.')
|
455
|
-
|
456
|
-
return to_object
|
457
|
-
|
458
|
-
|
459
381
|
def _UrlContext_to_mldev(
|
460
382
|
from_object: Union[dict[str, Any], object],
|
461
383
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -1074,6 +996,9 @@ def _GenerateImagesConfig_to_mldev(
|
|
1074
996
|
if getv(from_object, ['add_watermark']) is not None:
|
1075
997
|
raise ValueError('add_watermark parameter is not supported in Gemini API.')
|
1076
998
|
|
999
|
+
if getv(from_object, ['image_size']) is not None:
|
1000
|
+
raise ValueError('image_size parameter is not supported in Gemini API.')
|
1001
|
+
|
1077
1002
|
if getv(from_object, ['enhance_prompt']) is not None:
|
1078
1003
|
raise ValueError('enhance_prompt parameter is not supported in Gemini API.')
|
1079
1004
|
|
@@ -1317,23 +1242,11 @@ def _Image_to_mldev(
|
|
1317
1242
|
return to_object
|
1318
1243
|
|
1319
1244
|
|
1320
|
-
def
|
1245
|
+
def _GenerateVideosSource_to_mldev(
|
1321
1246
|
from_object: Union[dict[str, Any], object],
|
1322
1247
|
parent_object: Optional[dict[str, Any]] = None,
|
1323
1248
|
) -> dict[str, Any]:
|
1324
1249
|
to_object: dict[str, Any] = {}
|
1325
|
-
if getv(from_object, ['uri']) is not None:
|
1326
|
-
setv(to_object, ['video', 'uri'], getv(from_object, ['uri']))
|
1327
|
-
|
1328
|
-
if getv(from_object, ['video_bytes']) is not None:
|
1329
|
-
setv(
|
1330
|
-
to_object,
|
1331
|
-
['video', 'encodedVideo'],
|
1332
|
-
t.t_bytes(getv(from_object, ['video_bytes'])),
|
1333
|
-
)
|
1334
|
-
|
1335
|
-
if getv(from_object, ['mime_type']) is not None:
|
1336
|
-
setv(to_object, ['encoding'], getv(from_object, ['mime_type']))
|
1337
1250
|
|
1338
1251
|
return to_object
|
1339
1252
|
|
@@ -2071,33 +1984,6 @@ def _VoiceConfig_to_vertex(
|
|
2071
1984
|
return to_object
|
2072
1985
|
|
2073
1986
|
|
2074
|
-
def _SpeakerVoiceConfig_to_vertex(
|
2075
|
-
from_object: Union[dict[str, Any], object],
|
2076
|
-
parent_object: Optional[dict[str, Any]] = None,
|
2077
|
-
) -> dict[str, Any]:
|
2078
|
-
to_object: dict[str, Any] = {}
|
2079
|
-
if getv(from_object, ['speaker']) is not None:
|
2080
|
-
raise ValueError('speaker parameter is not supported in Vertex AI.')
|
2081
|
-
|
2082
|
-
if getv(from_object, ['voice_config']) is not None:
|
2083
|
-
raise ValueError('voice_config parameter is not supported in Vertex AI.')
|
2084
|
-
|
2085
|
-
return to_object
|
2086
|
-
|
2087
|
-
|
2088
|
-
def _MultiSpeakerVoiceConfig_to_vertex(
|
2089
|
-
from_object: Union[dict[str, Any], object],
|
2090
|
-
parent_object: Optional[dict[str, Any]] = None,
|
2091
|
-
) -> dict[str, Any]:
|
2092
|
-
to_object: dict[str, Any] = {}
|
2093
|
-
if getv(from_object, ['speaker_voice_configs']) is not None:
|
2094
|
-
raise ValueError(
|
2095
|
-
'speaker_voice_configs parameter is not supported in Vertex AI.'
|
2096
|
-
)
|
2097
|
-
|
2098
|
-
return to_object
|
2099
|
-
|
2100
|
-
|
2101
1987
|
def _SpeechConfig_to_vertex(
|
2102
1988
|
from_object: Union[dict[str, Any], object],
|
2103
1989
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -2514,6 +2400,13 @@ def _GenerateImagesConfig_to_vertex(
|
|
2514
2400
|
getv(from_object, ['add_watermark']),
|
2515
2401
|
)
|
2516
2402
|
|
2403
|
+
if getv(from_object, ['image_size']) is not None:
|
2404
|
+
setv(
|
2405
|
+
parent_object,
|
2406
|
+
['parameters', 'sampleImageSize'],
|
2407
|
+
getv(from_object, ['image_size']),
|
2408
|
+
)
|
2409
|
+
|
2517
2410
|
if getv(from_object, ['enhance_prompt']) is not None:
|
2518
2411
|
setv(
|
2519
2412
|
parent_object,
|
@@ -2793,6 +2686,13 @@ def _EditImageConfig_to_vertex(
|
|
2793
2686
|
getv(from_object, ['output_compression_quality']),
|
2794
2687
|
)
|
2795
2688
|
|
2689
|
+
if getv(from_object, ['add_watermark']) is not None:
|
2690
|
+
setv(
|
2691
|
+
parent_object,
|
2692
|
+
['parameters', 'addWatermark'],
|
2693
|
+
getv(from_object, ['add_watermark']),
|
2694
|
+
)
|
2695
|
+
|
2796
2696
|
if getv(from_object, ['edit_mode']) is not None:
|
2797
2697
|
setv(
|
2798
2698
|
parent_object,
|
@@ -3190,6 +3090,15 @@ def _Video_to_vertex(
|
|
3190
3090
|
return to_object
|
3191
3091
|
|
3192
3092
|
|
3093
|
+
def _GenerateVideosSource_to_vertex(
|
3094
|
+
from_object: Union[dict[str, Any], object],
|
3095
|
+
parent_object: Optional[dict[str, Any]] = None,
|
3096
|
+
) -> dict[str, Any]:
|
3097
|
+
to_object: dict[str, Any] = {}
|
3098
|
+
|
3099
|
+
return to_object
|
3100
|
+
|
3101
|
+
|
3193
3102
|
def _GenerateVideosConfig_to_vertex(
|
3194
3103
|
from_object: Union[dict[str, Any], object],
|
3195
3104
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -3331,18 +3240,6 @@ def _GenerateVideosParameters_to_vertex(
|
|
3331
3240
|
return to_object
|
3332
3241
|
|
3333
3242
|
|
3334
|
-
def _FeatureSelectionPreference_to_mldev_enum_validate(enum_value: Any) -> None:
|
3335
|
-
if enum_value in set(
|
3336
|
-
[
|
3337
|
-
'FEATURE_SELECTION_PREFERENCE_UNSPECIFIED',
|
3338
|
-
'PRIORITIZE_QUALITY',
|
3339
|
-
'BALANCED',
|
3340
|
-
'PRIORITIZE_COST',
|
3341
|
-
]
|
3342
|
-
):
|
3343
|
-
raise ValueError(f'{enum_value} enum value is not supported in Gemini API.')
|
3344
|
-
|
3345
|
-
|
3346
3243
|
def _SafetyFilterLevel_to_mldev_enum_validate(enum_value: Any) -> None:
|
3347
3244
|
if enum_value in set(['BLOCK_NONE']):
|
3348
3245
|
raise ValueError(f'{enum_value} enum value is not supported in Gemini API.')
|
@@ -3600,7 +3497,6 @@ def _GenerateContentResponse_from_mldev(
|
|
3600
3497
|
parent_object: Optional[dict[str, Any]] = None,
|
3601
3498
|
) -> dict[str, Any]:
|
3602
3499
|
to_object: dict[str, Any] = {}
|
3603
|
-
|
3604
3500
|
if getv(from_object, ['sdkHttpResponse']) is not None:
|
3605
3501
|
setv(
|
3606
3502
|
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
@@ -3628,15 +3524,6 @@ def _GenerateContentResponse_from_mldev(
|
|
3628
3524
|
return to_object
|
3629
3525
|
|
3630
3526
|
|
3631
|
-
def _ContentEmbeddingStatistics_from_mldev(
|
3632
|
-
from_object: Union[dict[str, Any], object],
|
3633
|
-
parent_object: Optional[dict[str, Any]] = None,
|
3634
|
-
) -> dict[str, Any]:
|
3635
|
-
to_object: dict[str, Any] = {}
|
3636
|
-
|
3637
|
-
return to_object
|
3638
|
-
|
3639
|
-
|
3640
3527
|
def _ContentEmbedding_from_mldev(
|
3641
3528
|
from_object: Union[dict[str, Any], object],
|
3642
3529
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -3782,15 +3669,6 @@ def _GenerateImagesResponse_from_mldev(
|
|
3782
3669
|
return to_object
|
3783
3670
|
|
3784
3671
|
|
3785
|
-
def _Endpoint_from_mldev(
|
3786
|
-
from_object: Union[dict[str, Any], object],
|
3787
|
-
parent_object: Optional[dict[str, Any]] = None,
|
3788
|
-
) -> dict[str, Any]:
|
3789
|
-
to_object: dict[str, Any] = {}
|
3790
|
-
|
3791
|
-
return to_object
|
3792
|
-
|
3793
|
-
|
3794
3672
|
def _TunedModelInfo_from_mldev(
|
3795
3673
|
from_object: Union[dict[str, Any], object],
|
3796
3674
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -3808,15 +3686,6 @@ def _TunedModelInfo_from_mldev(
|
|
3808
3686
|
return to_object
|
3809
3687
|
|
3810
3688
|
|
3811
|
-
def _Checkpoint_from_mldev(
|
3812
|
-
from_object: Union[dict[str, Any], object],
|
3813
|
-
parent_object: Optional[dict[str, Any]] = None,
|
3814
|
-
) -> dict[str, Any]:
|
3815
|
-
to_object: dict[str, Any] = {}
|
3816
|
-
|
3817
|
-
return to_object
|
3818
|
-
|
3819
|
-
|
3820
3689
|
def _Model_from_mldev(
|
3821
3690
|
from_object: Union[dict[str, Any], object],
|
3822
3691
|
parent_object: Optional[dict[str, Any]] = None,
|
@@ -3868,6 +3737,11 @@ def _ListModelsResponse_from_mldev(
|
|
3868
3737
|
parent_object: Optional[dict[str, Any]] = None,
|
3869
3738
|
) -> dict[str, Any]:
|
3870
3739
|
to_object: dict[str, Any] = {}
|
3740
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
3741
|
+
setv(
|
3742
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
3743
|
+
)
|
3744
|
+
|
3871
3745
|
if getv(from_object, ['nextPageToken']) is not None:
|
3872
3746
|
setv(to_object, ['next_page_token'], getv(from_object, ['nextPageToken']))
|
3873
3747
|
|
@@ -4263,7 +4137,6 @@ def _GenerateContentResponse_from_vertex(
|
|
4263
4137
|
parent_object: Optional[dict[str, Any]] = None,
|
4264
4138
|
) -> dict[str, Any]:
|
4265
4139
|
to_object: dict[str, Any] = {}
|
4266
|
-
|
4267
4140
|
if getv(from_object, ['sdkHttpResponse']) is not None:
|
4268
4141
|
setv(
|
4269
4142
|
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
@@ -4631,6 +4504,11 @@ def _ListModelsResponse_from_vertex(
|
|
4631
4504
|
parent_object: Optional[dict[str, Any]] = None,
|
4632
4505
|
) -> dict[str, Any]:
|
4633
4506
|
to_object: dict[str, Any] = {}
|
4507
|
+
if getv(from_object, ['sdkHttpResponse']) is not None:
|
4508
|
+
setv(
|
4509
|
+
to_object, ['sdk_http_response'], getv(from_object, ['sdkHttpResponse'])
|
4510
|
+
)
|
4511
|
+
|
4634
4512
|
if getv(from_object, ['nextPageToken']) is not None:
|
4635
4513
|
setv(to_object, ['next_page_token'], getv(from_object, ['nextPageToken']))
|
4636
4514
|
|
@@ -5393,7 +5271,9 @@ class Models(_api_module.BaseModule):
|
|
5393
5271
|
return_value = types.ListModelsResponse._from_response(
|
5394
5272
|
response=response_dict, kwargs=parameter_model.model_dump()
|
5395
5273
|
)
|
5396
|
-
|
5274
|
+
return_value.sdk_http_response = types.HttpResponse(
|
5275
|
+
headers=response.headers
|
5276
|
+
)
|
5397
5277
|
self._api_client._verify_response(return_value)
|
5398
5278
|
return return_value
|
5399
5279
|
|
@@ -5699,7 +5579,7 @@ class Models(_api_module.BaseModule):
|
|
5699
5579
|
self._api_client._verify_response(return_value)
|
5700
5580
|
return return_value
|
5701
5581
|
|
5702
|
-
def
|
5582
|
+
def _generate_videos(
|
5703
5583
|
self,
|
5704
5584
|
*,
|
5705
5585
|
model: str,
|
@@ -5720,7 +5600,7 @@ class Models(_api_module.BaseModule):
|
|
5720
5600
|
Args:
|
5721
5601
|
model: The model to use.
|
5722
5602
|
prompt: The text prompt for generating the videos. Optional for image to
|
5723
|
-
video use cases.
|
5603
|
+
video and video extension use cases.
|
5724
5604
|
image: The input image for generating the videos. Optional if prompt is
|
5725
5605
|
provided.
|
5726
5606
|
video: The input video for video extension use cases. Optional if prompt
|
@@ -5861,9 +5741,9 @@ class Models(_api_module.BaseModule):
|
|
5861
5741
|
response = client.models.generate_content(
|
5862
5742
|
model='gemini-2.0-flash',
|
5863
5743
|
contents=[
|
5864
|
-
types.Part.from_text('What is shown in this image?'),
|
5865
|
-
types.Part.from_uri('gs://generativeai-downloads/images/scones.jpg',
|
5866
|
-
'image/jpeg')
|
5744
|
+
types.Part.from_text(text='What is shown in this image?'),
|
5745
|
+
types.Part.from_uri(file_uri='gs://generativeai-downloads/images/scones.jpg',
|
5746
|
+
mime_type='image/jpeg')
|
5867
5747
|
]
|
5868
5748
|
)
|
5869
5749
|
print(response.text)
|
@@ -6289,6 +6169,56 @@ class Models(_api_module.BaseModule):
|
|
6289
6169
|
config=api_config,
|
6290
6170
|
)
|
6291
6171
|
|
6172
|
+
def generate_videos(
|
6173
|
+
self,
|
6174
|
+
*,
|
6175
|
+
model: str,
|
6176
|
+
prompt: Optional[str] = None,
|
6177
|
+
image: Optional[types.ImageOrDict] = None,
|
6178
|
+
video: Optional[types.VideoOrDict] = None,
|
6179
|
+
config: Optional[types.GenerateVideosConfigOrDict] = None,
|
6180
|
+
) -> types.GenerateVideosOperation:
|
6181
|
+
"""Generates videos based on an input (text, image, or video) and configuration.
|
6182
|
+
|
6183
|
+
The following use cases are supported:
|
6184
|
+
1. Text to video generation.
|
6185
|
+
2a. Image to video generation (additional text prompt is optional).
|
6186
|
+
2b. Image to video generation with frame interpolation (specify last_frame
|
6187
|
+
in config).
|
6188
|
+
3. Video extension (additional text prompt is optional)
|
6189
|
+
|
6190
|
+
Args:
|
6191
|
+
model: The model to use.
|
6192
|
+
prompt: The text prompt for generating the videos. Optional for image to
|
6193
|
+
video and video extension use cases.
|
6194
|
+
image: The input image for generating the videos. Optional if prompt is
|
6195
|
+
provided.
|
6196
|
+
video: The input video for video extension use cases. Optional if prompt
|
6197
|
+
or image is provided.
|
6198
|
+
config: Configuration for generation.
|
6199
|
+
|
6200
|
+
Usage:
|
6201
|
+
|
6202
|
+
```
|
6203
|
+
operation = client.models.generate_videos(
|
6204
|
+
model="veo-2.0-generate-001",
|
6205
|
+
prompt="A neon hologram of a cat driving at top speed",
|
6206
|
+
)
|
6207
|
+
while not operation.done:
|
6208
|
+
time.sleep(10)
|
6209
|
+
operation = client.operations.get(operation)
|
6210
|
+
|
6211
|
+
operation.result.generated_videos[0].video.uri
|
6212
|
+
```
|
6213
|
+
"""
|
6214
|
+
return self._generate_videos(
|
6215
|
+
model=model,
|
6216
|
+
prompt=prompt,
|
6217
|
+
image=image,
|
6218
|
+
video=video,
|
6219
|
+
config=config,
|
6220
|
+
)
|
6221
|
+
|
6292
6222
|
def list(
|
6293
6223
|
self,
|
6294
6224
|
*,
|
@@ -6958,7 +6888,9 @@ class AsyncModels(_api_module.BaseModule):
|
|
6958
6888
|
return_value = types.ListModelsResponse._from_response(
|
6959
6889
|
response=response_dict, kwargs=parameter_model.model_dump()
|
6960
6890
|
)
|
6961
|
-
|
6891
|
+
return_value.sdk_http_response = types.HttpResponse(
|
6892
|
+
headers=response.headers
|
6893
|
+
)
|
6962
6894
|
self._api_client._verify_response(return_value)
|
6963
6895
|
return return_value
|
6964
6896
|
|
@@ -7263,7 +7195,7 @@ class AsyncModels(_api_module.BaseModule):
|
|
7263
7195
|
self._api_client._verify_response(return_value)
|
7264
7196
|
return return_value
|
7265
7197
|
|
7266
|
-
async def
|
7198
|
+
async def _generate_videos(
|
7267
7199
|
self,
|
7268
7200
|
*,
|
7269
7201
|
model: str,
|
@@ -7284,7 +7216,7 @@ class AsyncModels(_api_module.BaseModule):
|
|
7284
7216
|
Args:
|
7285
7217
|
model: The model to use.
|
7286
7218
|
prompt: The text prompt for generating the videos. Optional for image to
|
7287
|
-
video use cases.
|
7219
|
+
video and video extension use cases.
|
7288
7220
|
image: The input image for generating the videos. Optional if prompt is
|
7289
7221
|
provided.
|
7290
7222
|
video: The input video for video extension use cases. Optional if prompt
|
@@ -7884,3 +7816,53 @@ class AsyncModels(_api_module.BaseModule):
|
|
7884
7816
|
upscale_factor=upscale_factor,
|
7885
7817
|
config=api_config,
|
7886
7818
|
)
|
7819
|
+
|
7820
|
+
async def generate_videos(
|
7821
|
+
self,
|
7822
|
+
*,
|
7823
|
+
model: str,
|
7824
|
+
prompt: Optional[str] = None,
|
7825
|
+
image: Optional[types.ImageOrDict] = None,
|
7826
|
+
video: Optional[types.VideoOrDict] = None,
|
7827
|
+
config: Optional[types.GenerateVideosConfigOrDict] = None,
|
7828
|
+
) -> types.GenerateVideosOperation:
|
7829
|
+
"""Generates videos based on an input (text, image, or video) and configuration.
|
7830
|
+
|
7831
|
+
The following use cases are supported:
|
7832
|
+
1. Text to video generation.
|
7833
|
+
2a. Image to video generation (additional text prompt is optional).
|
7834
|
+
2b. Image to video generation with frame interpolation (specify last_frame
|
7835
|
+
in config).
|
7836
|
+
3. Video extension (additional text prompt is optional)
|
7837
|
+
|
7838
|
+
Args:
|
7839
|
+
model: The model to use.
|
7840
|
+
prompt: The text prompt for generating the videos. Optional for image to
|
7841
|
+
video and video extension use cases.
|
7842
|
+
image: The input image for generating the videos. Optional if prompt is
|
7843
|
+
provided.
|
7844
|
+
video: The input video for video extension use cases. Optional if prompt
|
7845
|
+
or image is provided.
|
7846
|
+
config: Configuration for generation.
|
7847
|
+
|
7848
|
+
Usage:
|
7849
|
+
|
7850
|
+
```
|
7851
|
+
operation = client.models.generate_videos(
|
7852
|
+
model="veo-2.0-generate-001",
|
7853
|
+
prompt="A neon hologram of a cat driving at top speed",
|
7854
|
+
)
|
7855
|
+
while not operation.done:
|
7856
|
+
time.sleep(10)
|
7857
|
+
operation = client.operations.get(operation)
|
7858
|
+
|
7859
|
+
operation.result.generated_videos[0].video.uri
|
7860
|
+
```
|
7861
|
+
"""
|
7862
|
+
return await self._generate_videos(
|
7863
|
+
model=model,
|
7864
|
+
prompt=prompt,
|
7865
|
+
image=image,
|
7866
|
+
video=video,
|
7867
|
+
config=config,
|
7868
|
+
)
|