google-genai 1.1.0__py3-none-any.whl → 1.3.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.
@@ -15,15 +15,19 @@
15
15
 
16
16
  # Code generated by the Google Gen AI SDK generator DO NOT EDIT.
17
17
 
18
+ import logging
18
19
  from typing import Optional, Union
19
20
  from urllib.parse import urlencode
20
21
  from . import _api_module
21
22
  from . import _common
23
+ from . import _transformers as t
22
24
  from . import types
23
25
  from ._api_client import ApiClient
24
26
  from ._common import get_value_by_path as getv
25
27
  from ._common import set_value_by_path as setv
26
28
 
29
+ logger = logging.getLogger('google_genai.operations')
30
+
27
31
 
28
32
  def _GetOperationParameters_to_mldev(
29
33
  api_client: ApiClient,
@@ -103,7 +107,149 @@ def _FetchPredictOperationParameters_to_vertex(
103
107
  return to_object
104
108
 
105
109
 
106
- def _Operation_from_mldev(
110
+ def _Video_from_mldev(
111
+ api_client: ApiClient,
112
+ from_object: Union[dict, object],
113
+ parent_object: dict = None,
114
+ ) -> dict:
115
+ to_object = {}
116
+ if getv(from_object, ['uri']) is not None:
117
+ setv(to_object, ['uri'], getv(from_object, ['uri']))
118
+
119
+ if getv(from_object, ['encodedVideo']) is not None:
120
+ setv(
121
+ to_object,
122
+ ['video_bytes'],
123
+ t.t_bytes(api_client, getv(from_object, ['encodedVideo'])),
124
+ )
125
+
126
+ if getv(from_object, ['encoding']) is not None:
127
+ setv(to_object, ['mime_type'], getv(from_object, ['encoding']))
128
+
129
+ return to_object
130
+
131
+
132
+ def _Video_from_vertex(
133
+ api_client: ApiClient,
134
+ from_object: Union[dict, object],
135
+ parent_object: dict = None,
136
+ ) -> dict:
137
+ to_object = {}
138
+ if getv(from_object, ['gcsUri']) is not None:
139
+ setv(to_object, ['uri'], getv(from_object, ['gcsUri']))
140
+
141
+ if getv(from_object, ['bytesBase64Encoded']) is not None:
142
+ setv(
143
+ to_object,
144
+ ['video_bytes'],
145
+ t.t_bytes(api_client, getv(from_object, ['bytesBase64Encoded'])),
146
+ )
147
+
148
+ if getv(from_object, ['mimeType']) is not None:
149
+ setv(to_object, ['mime_type'], getv(from_object, ['mimeType']))
150
+
151
+ return to_object
152
+
153
+
154
+ def _GeneratedVideo_from_mldev(
155
+ api_client: ApiClient,
156
+ from_object: Union[dict, object],
157
+ parent_object: dict = None,
158
+ ) -> dict:
159
+ to_object = {}
160
+ if getv(from_object, ['_self']) is not None:
161
+ setv(
162
+ to_object,
163
+ ['video'],
164
+ _Video_from_mldev(api_client, getv(from_object, ['_self']), to_object),
165
+ )
166
+
167
+ return to_object
168
+
169
+
170
+ def _GeneratedVideo_from_vertex(
171
+ api_client: ApiClient,
172
+ from_object: Union[dict, object],
173
+ parent_object: dict = None,
174
+ ) -> dict:
175
+ to_object = {}
176
+ if getv(from_object, ['_self']) is not None:
177
+ setv(
178
+ to_object,
179
+ ['video'],
180
+ _Video_from_vertex(api_client, getv(from_object, ['_self']), to_object),
181
+ )
182
+
183
+ return to_object
184
+
185
+
186
+ def _GenerateVideosResponse_from_mldev(
187
+ api_client: ApiClient,
188
+ from_object: Union[dict, object],
189
+ parent_object: dict = None,
190
+ ) -> dict:
191
+ to_object = {}
192
+ if getv(from_object, ['videos']) is not None:
193
+ setv(
194
+ to_object,
195
+ ['generated_videos'],
196
+ [
197
+ _GeneratedVideo_from_mldev(api_client, item, to_object)
198
+ for item in getv(from_object, ['videos'])
199
+ ],
200
+ )
201
+
202
+ if getv(from_object, ['raiMediaFilteredCount']) is not None:
203
+ setv(
204
+ to_object,
205
+ ['rai_media_filtered_count'],
206
+ getv(from_object, ['raiMediaFilteredCount']),
207
+ )
208
+
209
+ if getv(from_object, ['raiMediaFilteredReasons']) is not None:
210
+ setv(
211
+ to_object,
212
+ ['rai_media_filtered_reasons'],
213
+ getv(from_object, ['raiMediaFilteredReasons']),
214
+ )
215
+
216
+ return to_object
217
+
218
+
219
+ def _GenerateVideosResponse_from_vertex(
220
+ api_client: ApiClient,
221
+ from_object: Union[dict, object],
222
+ parent_object: dict = None,
223
+ ) -> dict:
224
+ to_object = {}
225
+ if getv(from_object, ['videos']) is not None:
226
+ setv(
227
+ to_object,
228
+ ['generated_videos'],
229
+ [
230
+ _GeneratedVideo_from_vertex(api_client, item, to_object)
231
+ for item in getv(from_object, ['videos'])
232
+ ],
233
+ )
234
+
235
+ if getv(from_object, ['raiMediaFilteredCount']) is not None:
236
+ setv(
237
+ to_object,
238
+ ['rai_media_filtered_count'],
239
+ getv(from_object, ['raiMediaFilteredCount']),
240
+ )
241
+
242
+ if getv(from_object, ['raiMediaFilteredReasons']) is not None:
243
+ setv(
244
+ to_object,
245
+ ['rai_media_filtered_reasons'],
246
+ getv(from_object, ['raiMediaFilteredReasons']),
247
+ )
248
+
249
+ return to_object
250
+
251
+
252
+ def _GenerateVideosOperation_from_mldev(
107
253
  api_client: ApiClient,
108
254
  from_object: Union[dict, object],
109
255
  parent_object: dict = None,
@@ -124,10 +270,21 @@ def _Operation_from_mldev(
124
270
  if getv(from_object, ['response']) is not None:
125
271
  setv(to_object, ['response'], getv(from_object, ['response']))
126
272
 
273
+ if getv(from_object, ['response', 'generateVideoResponse']) is not None:
274
+ setv(
275
+ to_object,
276
+ ['result'],
277
+ _GenerateVideosResponse_from_mldev(
278
+ api_client,
279
+ getv(from_object, ['response', 'generateVideoResponse']),
280
+ to_object,
281
+ ),
282
+ )
283
+
127
284
  return to_object
128
285
 
129
286
 
130
- def _Operation_from_vertex(
287
+ def _GenerateVideosOperation_from_vertex(
131
288
  api_client: ApiClient,
132
289
  from_object: Union[dict, object],
133
290
  parent_object: dict = None,
@@ -148,17 +305,26 @@ def _Operation_from_vertex(
148
305
  if getv(from_object, ['response']) is not None:
149
306
  setv(to_object, ['response'], getv(from_object, ['response']))
150
307
 
308
+ if getv(from_object, ['response']) is not None:
309
+ setv(
310
+ to_object,
311
+ ['result'],
312
+ _GenerateVideosResponse_from_vertex(
313
+ api_client, getv(from_object, ['response']), to_object
314
+ ),
315
+ )
316
+
151
317
  return to_object
152
318
 
153
319
 
154
- class _operations(_api_module.BaseModule):
320
+ class Operations(_api_module.BaseModule):
155
321
 
156
322
  def _get_operation(
157
323
  self,
158
324
  *,
159
325
  operation_name: str,
160
326
  config: Optional[types.GetOperationConfigOrDict] = None,
161
- ) -> types.Operation:
327
+ ) -> types.GenerateVideosOperation:
162
328
  parameter_model = types._GetOperationParameters(
163
329
  operation_name=operation_name,
164
330
  config=config,
@@ -194,11 +360,15 @@ class _operations(_api_module.BaseModule):
194
360
  )
195
361
 
196
362
  if self._api_client.vertexai:
197
- response_dict = _Operation_from_vertex(self._api_client, response_dict)
363
+ response_dict = _GenerateVideosOperation_from_vertex(
364
+ self._api_client, response_dict
365
+ )
198
366
  else:
199
- response_dict = _Operation_from_mldev(self._api_client, response_dict)
367
+ response_dict = _GenerateVideosOperation_from_mldev(
368
+ self._api_client, response_dict
369
+ )
200
370
 
201
- return_value = types.Operation._from_response(
371
+ return_value = types.GenerateVideosOperation._from_response(
202
372
  response=response_dict, kwargs=parameter_model
203
373
  )
204
374
  self._api_client._verify_response(return_value)
@@ -210,7 +380,7 @@ class _operations(_api_module.BaseModule):
210
380
  operation_name: str,
211
381
  resource_name: str,
212
382
  config: Optional[types.FetchPredictOperationConfigOrDict] = None,
213
- ) -> types.Operation:
383
+ ) -> types.GenerateVideosOperation:
214
384
  parameter_model = types._FetchPredictOperationParameters(
215
385
  operation_name=operation_name,
216
386
  resource_name=resource_name,
@@ -247,25 +417,59 @@ class _operations(_api_module.BaseModule):
247
417
  )
248
418
 
249
419
  if self._api_client.vertexai:
250
- response_dict = _Operation_from_vertex(self._api_client, response_dict)
420
+ response_dict = _GenerateVideosOperation_from_vertex(
421
+ self._api_client, response_dict
422
+ )
251
423
  else:
252
- response_dict = _Operation_from_mldev(self._api_client, response_dict)
424
+ response_dict = _GenerateVideosOperation_from_mldev(
425
+ self._api_client, response_dict
426
+ )
253
427
 
254
- return_value = types.Operation._from_response(
428
+ return_value = types.GenerateVideosOperation._from_response(
255
429
  response=response_dict, kwargs=parameter_model
256
430
  )
257
431
  self._api_client._verify_response(return_value)
258
432
  return return_value
259
433
 
434
+ @_common.experimental_warning(
435
+ 'This method is experimental and may change in future versions.'
436
+ )
437
+ def get(
438
+ self,
439
+ operation: types.GenerateVideosOperation,
440
+ *,
441
+ config: Optional[types.GetOperationConfigOrDict] = None,
442
+ ) -> types.GenerateVideosOperation:
443
+ """Gets the status of an operation."""
444
+ # Currently, only GenerateVideosOperation is supported.
445
+ # TODO(b/398040607): Support short form names
446
+ operation_name = operation.name
447
+ if not operation_name:
448
+ raise ValueError('Operation name is empty.')
449
+
450
+ # TODO(b/398233524): Cast operation types
451
+ if self._api_client.vertexai:
452
+ resource_name = operation_name.rpartition('/operations/')[0]
453
+ return self._fetch_predict_operation(
454
+ operation_name=operation_name,
455
+ resource_name=resource_name,
456
+ config=config,
457
+ )
458
+ else:
459
+ return self._get_operation(
460
+ operation_name=operation_name,
461
+ config=config,
462
+ )
463
+
260
464
 
261
- class Async_operations(_api_module.BaseModule):
465
+ class AsyncOperations(_api_module.BaseModule):
262
466
 
263
467
  async def _get_operation(
264
468
  self,
265
469
  *,
266
470
  operation_name: str,
267
471
  config: Optional[types.GetOperationConfigOrDict] = None,
268
- ) -> types.Operation:
472
+ ) -> types.GenerateVideosOperation:
269
473
  parameter_model = types._GetOperationParameters(
270
474
  operation_name=operation_name,
271
475
  config=config,
@@ -301,11 +505,15 @@ class Async_operations(_api_module.BaseModule):
301
505
  )
302
506
 
303
507
  if self._api_client.vertexai:
304
- response_dict = _Operation_from_vertex(self._api_client, response_dict)
508
+ response_dict = _GenerateVideosOperation_from_vertex(
509
+ self._api_client, response_dict
510
+ )
305
511
  else:
306
- response_dict = _Operation_from_mldev(self._api_client, response_dict)
512
+ response_dict = _GenerateVideosOperation_from_mldev(
513
+ self._api_client, response_dict
514
+ )
307
515
 
308
- return_value = types.Operation._from_response(
516
+ return_value = types.GenerateVideosOperation._from_response(
309
517
  response=response_dict, kwargs=parameter_model
310
518
  )
311
519
  self._api_client._verify_response(return_value)
@@ -317,7 +525,7 @@ class Async_operations(_api_module.BaseModule):
317
525
  operation_name: str,
318
526
  resource_name: str,
319
527
  config: Optional[types.FetchPredictOperationConfigOrDict] = None,
320
- ) -> types.Operation:
528
+ ) -> types.GenerateVideosOperation:
321
529
  parameter_model = types._FetchPredictOperationParameters(
322
530
  operation_name=operation_name,
323
531
  resource_name=resource_name,
@@ -354,12 +562,44 @@ class Async_operations(_api_module.BaseModule):
354
562
  )
355
563
 
356
564
  if self._api_client.vertexai:
357
- response_dict = _Operation_from_vertex(self._api_client, response_dict)
565
+ response_dict = _GenerateVideosOperation_from_vertex(
566
+ self._api_client, response_dict
567
+ )
358
568
  else:
359
- response_dict = _Operation_from_mldev(self._api_client, response_dict)
569
+ response_dict = _GenerateVideosOperation_from_mldev(
570
+ self._api_client, response_dict
571
+ )
360
572
 
361
- return_value = types.Operation._from_response(
573
+ return_value = types.GenerateVideosOperation._from_response(
362
574
  response=response_dict, kwargs=parameter_model
363
575
  )
364
576
  self._api_client._verify_response(return_value)
365
577
  return return_value
578
+
579
+ @_common.experimental_warning(
580
+ 'This method is experimental and may change in future versions.'
581
+ )
582
+ async def get(
583
+ self,
584
+ operation: types.GenerateVideosOperation,
585
+ *,
586
+ config: Optional[types.GetOperationConfigOrDict] = None,
587
+ ) -> types.GenerateVideosOperation:
588
+ """Gets the status of an operation."""
589
+ # Currently, only GenerateVideosOperation is supported.
590
+ operation_name = operation.name
591
+ if not operation_name:
592
+ raise ValueError('Operation name is empty.')
593
+
594
+ if self._api_client.vertexai:
595
+ resource_name = operation_name.rpartition('/operations/')[0]
596
+ return await self._fetch_predict_operation(
597
+ operation_name=operation_name,
598
+ resource_name=resource_name,
599
+ config=config,
600
+ )
601
+ else:
602
+ return await self._get_operation(
603
+ operation_name=operation_name,
604
+ config=config,
605
+ )
google/genai/tunings.py CHANGED
@@ -15,6 +15,7 @@
15
15
 
16
16
  # Code generated by the Google Gen AI SDK generator DO NOT EDIT.
17
17
 
18
+ import logging
18
19
  from typing import Optional, Union
19
20
  from urllib.parse import urlencode
20
21
  from . import _api_module
@@ -26,6 +27,8 @@ from ._common import get_value_by_path as getv
26
27
  from ._common import set_value_by_path as setv
27
28
  from .pagers import AsyncPager, Pager
28
29
 
30
+ logger = logging.getLogger('google_genai.tunings')
31
+
29
32
 
30
33
  def _GetTuningJobParameters_to_mldev(
31
34
  api_client: ApiClient,