kaggle 1.7.3b1__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.
Files changed (89) hide show
  1. kaggle/LICENSE +201 -0
  2. kaggle/__init__.py +6 -0
  3. kaggle/api/__init__.py +0 -0
  4. kaggle/api/kaggle_api.py +614 -0
  5. kaggle/api/kaggle_api_extended.py +4657 -0
  6. kaggle/cli.py +1606 -0
  7. kaggle/configuration.py +206 -0
  8. kaggle/models/__init__.py +0 -0
  9. kaggle/models/api_blob_type.py +4 -0
  10. kaggle/models/dataset_column.py +228 -0
  11. kaggle/models/dataset_new_request.py +385 -0
  12. kaggle/models/dataset_new_version_request.py +287 -0
  13. kaggle/models/dataset_update_settings_request.py +310 -0
  14. kaggle/models/kaggle_models_extended.py +276 -0
  15. kaggle/models/kernel_push_request.py +556 -0
  16. kaggle/models/model_instance_new_version_request.py +145 -0
  17. kaggle/models/model_instance_update_request.py +351 -0
  18. kaggle/models/model_new_instance_request.py +417 -0
  19. kaggle/models/model_new_request.py +314 -0
  20. kaggle/models/model_update_request.py +282 -0
  21. kaggle/models/start_blob_upload_request.py +232 -0
  22. kaggle/models/start_blob_upload_response.py +137 -0
  23. kaggle/models/upload_file.py +169 -0
  24. kaggle/test/__init__.py +0 -0
  25. kaggle/test/test_authenticate.py +43 -0
  26. kaggle-1.7.3b1.dist-info/METADATA +348 -0
  27. kaggle-1.7.3b1.dist-info/RECORD +89 -0
  28. kaggle-1.7.3b1.dist-info/WHEEL +4 -0
  29. kaggle-1.7.3b1.dist-info/entry_points.txt +2 -0
  30. kaggle-1.7.3b1.dist-info/licenses/LICENSE.txt +201 -0
  31. kagglesdk/LICENSE +201 -0
  32. kagglesdk/__init__.py +2 -0
  33. kagglesdk/admin/__init__.py +0 -0
  34. kagglesdk/admin/services/__init__.py +0 -0
  35. kagglesdk/admin/services/inbox_file_service.py +22 -0
  36. kagglesdk/admin/types/__init__.py +0 -0
  37. kagglesdk/admin/types/inbox_file_service.py +74 -0
  38. kagglesdk/blobs/__init__.py +0 -0
  39. kagglesdk/blobs/services/__init__.py +0 -0
  40. kagglesdk/blobs/services/blob_api_service.py +25 -0
  41. kagglesdk/blobs/types/__init__.py +0 -0
  42. kagglesdk/blobs/types/blob_api_service.py +177 -0
  43. kagglesdk/common/__init__.py +0 -0
  44. kagglesdk/common/types/__init__.py +0 -0
  45. kagglesdk/common/types/file_download.py +102 -0
  46. kagglesdk/common/types/http_redirect.py +105 -0
  47. kagglesdk/competitions/__init__.py +0 -0
  48. kagglesdk/competitions/services/__init__.py +0 -0
  49. kagglesdk/competitions/services/competition_api_service.py +129 -0
  50. kagglesdk/competitions/types/__init__.py +0 -0
  51. kagglesdk/competitions/types/competition_api_service.py +1874 -0
  52. kagglesdk/competitions/types/competition_enums.py +53 -0
  53. kagglesdk/competitions/types/submission_status.py +9 -0
  54. kagglesdk/datasets/__init__.py +0 -0
  55. kagglesdk/datasets/services/__init__.py +0 -0
  56. kagglesdk/datasets/services/dataset_api_service.py +170 -0
  57. kagglesdk/datasets/types/__init__.py +0 -0
  58. kagglesdk/datasets/types/dataset_api_service.py +2777 -0
  59. kagglesdk/datasets/types/dataset_enums.py +82 -0
  60. kagglesdk/datasets/types/dataset_types.py +646 -0
  61. kagglesdk/education/__init__.py +0 -0
  62. kagglesdk/education/services/__init__.py +0 -0
  63. kagglesdk/education/services/education_api_service.py +19 -0
  64. kagglesdk/education/types/__init__.py +0 -0
  65. kagglesdk/education/types/education_api_service.py +248 -0
  66. kagglesdk/education/types/education_service.py +139 -0
  67. kagglesdk/kaggle_client.py +66 -0
  68. kagglesdk/kaggle_env.py +42 -0
  69. kagglesdk/kaggle_http_client.py +316 -0
  70. kagglesdk/kaggle_object.py +293 -0
  71. kagglesdk/kernels/__init__.py +0 -0
  72. kagglesdk/kernels/services/__init__.py +0 -0
  73. kagglesdk/kernels/services/kernels_api_service.py +109 -0
  74. kagglesdk/kernels/types/__init__.py +0 -0
  75. kagglesdk/kernels/types/kernels_api_service.py +1951 -0
  76. kagglesdk/kernels/types/kernels_enums.py +33 -0
  77. kagglesdk/models/__init__.py +0 -0
  78. kagglesdk/models/services/__init__.py +0 -0
  79. kagglesdk/models/services/model_api_service.py +255 -0
  80. kagglesdk/models/services/model_service.py +19 -0
  81. kagglesdk/models/types/__init__.py +0 -0
  82. kagglesdk/models/types/model_api_service.py +3719 -0
  83. kagglesdk/models/types/model_enums.py +60 -0
  84. kagglesdk/models/types/model_service.py +275 -0
  85. kagglesdk/models/types/model_types.py +286 -0
  86. kagglesdk/test/test_client.py +45 -0
  87. kagglesdk/users/__init__.py +0 -0
  88. kagglesdk/users/types/__init__.py +0 -0
  89. kagglesdk/users/types/users_enums.py +22 -0
@@ -0,0 +1,1951 @@
1
+ from datetime import datetime
2
+ from kagglesdk.kaggle_object import *
3
+ from kagglesdk.kernels.types.kernels_enums import KernelsListSortType, KernelsListViewType, KernelWorkerStatus
4
+ from typing import Optional, List
5
+
6
+ class ApiDownloadKernelOutputRequest(KaggleObject):
7
+ r"""
8
+ Attributes:
9
+ owner_slug (str)
10
+ kernel_slug (str)
11
+ file_path (str)
12
+ Relative path to a specific file inside the databundle.
13
+ version_number (int)
14
+ """
15
+
16
+ def __init__(self):
17
+ self._owner_slug = ""
18
+ self._kernel_slug = ""
19
+ self._file_path = None
20
+ self._version_number = None
21
+ self._freeze()
22
+
23
+ @property
24
+ def owner_slug(self) -> str:
25
+ return self._owner_slug
26
+
27
+ @owner_slug.setter
28
+ def owner_slug(self, owner_slug: str):
29
+ if owner_slug is None:
30
+ del self.owner_slug
31
+ return
32
+ if not isinstance(owner_slug, str):
33
+ raise TypeError('owner_slug must be of type str')
34
+ self._owner_slug = owner_slug
35
+
36
+ @property
37
+ def kernel_slug(self) -> str:
38
+ return self._kernel_slug
39
+
40
+ @kernel_slug.setter
41
+ def kernel_slug(self, kernel_slug: str):
42
+ if kernel_slug is None:
43
+ del self.kernel_slug
44
+ return
45
+ if not isinstance(kernel_slug, str):
46
+ raise TypeError('kernel_slug must be of type str')
47
+ self._kernel_slug = kernel_slug
48
+
49
+ @property
50
+ def file_path(self) -> str:
51
+ """Relative path to a specific file inside the databundle."""
52
+ return self._file_path or ""
53
+
54
+ @file_path.setter
55
+ def file_path(self, file_path: str):
56
+ if file_path is None:
57
+ del self.file_path
58
+ return
59
+ if not isinstance(file_path, str):
60
+ raise TypeError('file_path must be of type str')
61
+ self._file_path = file_path
62
+
63
+ @property
64
+ def version_number(self) -> int:
65
+ return self._version_number or 0
66
+
67
+ @version_number.setter
68
+ def version_number(self, version_number: int):
69
+ if version_number is None:
70
+ del self.version_number
71
+ return
72
+ if not isinstance(version_number, int):
73
+ raise TypeError('version_number must be of type int')
74
+ self._version_number = version_number
75
+
76
+ def endpoint(self):
77
+ if self.file_path:
78
+ path = '/api/v1/kernels/output/download/{owner_slug}/{kernel_slug}/{file_path}'
79
+ else:
80
+ path = '/api/v1/kernels/output/download/{owner_slug}/{kernel_slug}'
81
+ return path.format_map(self.to_field_map(self))
82
+
83
+ @staticmethod
84
+ def endpoint_path():
85
+ return '/api/v1/kernels/output/download/{owner_slug}/{kernel_slug}'
86
+
87
+
88
+ class ApiDownloadKernelOutputZipRequest(KaggleObject):
89
+ r"""
90
+ Attributes:
91
+ kernel_session_id (int)
92
+ """
93
+
94
+ def __init__(self):
95
+ self._kernel_session_id = 0
96
+ self._freeze()
97
+
98
+ @property
99
+ def kernel_session_id(self) -> int:
100
+ return self._kernel_session_id
101
+
102
+ @kernel_session_id.setter
103
+ def kernel_session_id(self, kernel_session_id: int):
104
+ if kernel_session_id is None:
105
+ del self.kernel_session_id
106
+ return
107
+ if not isinstance(kernel_session_id, int):
108
+ raise TypeError('kernel_session_id must be of type int')
109
+ self._kernel_session_id = kernel_session_id
110
+
111
+ def endpoint(self):
112
+ path = '/api/v1/kernels/output/download_zip/{kernel_session_id}'
113
+ return path.format_map(self.to_field_map(self))
114
+
115
+ @staticmethod
116
+ def endpoint_path():
117
+ return '/api/v1/kernels/output/download_zip/{kernel_session_id}'
118
+
119
+
120
+ class ApiGetKernelRequest(KaggleObject):
121
+ r"""
122
+ Attributes:
123
+ user_name (str)
124
+ kernel_slug (str)
125
+ """
126
+
127
+ def __init__(self):
128
+ self._user_name = ""
129
+ self._kernel_slug = ""
130
+ self._freeze()
131
+
132
+ @property
133
+ def user_name(self) -> str:
134
+ return self._user_name
135
+
136
+ @user_name.setter
137
+ def user_name(self, user_name: str):
138
+ if user_name is None:
139
+ del self.user_name
140
+ return
141
+ if not isinstance(user_name, str):
142
+ raise TypeError('user_name must be of type str')
143
+ self._user_name = user_name
144
+
145
+ @property
146
+ def kernel_slug(self) -> str:
147
+ return self._kernel_slug
148
+
149
+ @kernel_slug.setter
150
+ def kernel_slug(self, kernel_slug: str):
151
+ if kernel_slug is None:
152
+ del self.kernel_slug
153
+ return
154
+ if not isinstance(kernel_slug, str):
155
+ raise TypeError('kernel_slug must be of type str')
156
+ self._kernel_slug = kernel_slug
157
+
158
+ def endpoint(self):
159
+ path = '/api/v1/kernels/pull'
160
+ return path.format_map(self.to_field_map(self))
161
+
162
+
163
+ class ApiGetKernelResponse(KaggleObject):
164
+ r"""
165
+ Attributes:
166
+ metadata (ApiKernelMetadata)
167
+ blob (ApiKernelBlob)
168
+ """
169
+
170
+ def __init__(self):
171
+ self._metadata = None
172
+ self._blob = None
173
+ self._freeze()
174
+
175
+ @property
176
+ def metadata(self) -> Optional['ApiKernelMetadata']:
177
+ return self._metadata
178
+
179
+ @metadata.setter
180
+ def metadata(self, metadata: Optional['ApiKernelMetadata']):
181
+ if metadata is None:
182
+ del self.metadata
183
+ return
184
+ if not isinstance(metadata, ApiKernelMetadata):
185
+ raise TypeError('metadata must be of type ApiKernelMetadata')
186
+ self._metadata = metadata
187
+
188
+ @property
189
+ def blob(self) -> Optional['ApiKernelBlob']:
190
+ return self._blob
191
+
192
+ @blob.setter
193
+ def blob(self, blob: Optional['ApiKernelBlob']):
194
+ if blob is None:
195
+ del self.blob
196
+ return
197
+ if not isinstance(blob, ApiKernelBlob):
198
+ raise TypeError('blob must be of type ApiKernelBlob')
199
+ self._blob = blob
200
+
201
+
202
+ class ApiGetKernelSessionStatusRequest(KaggleObject):
203
+ r"""
204
+ Attributes:
205
+ user_name (str)
206
+ kernel_slug (str)
207
+ """
208
+
209
+ def __init__(self):
210
+ self._user_name = ""
211
+ self._kernel_slug = ""
212
+ self._freeze()
213
+
214
+ @property
215
+ def user_name(self) -> str:
216
+ return self._user_name
217
+
218
+ @user_name.setter
219
+ def user_name(self, user_name: str):
220
+ if user_name is None:
221
+ del self.user_name
222
+ return
223
+ if not isinstance(user_name, str):
224
+ raise TypeError('user_name must be of type str')
225
+ self._user_name = user_name
226
+
227
+ @property
228
+ def kernel_slug(self) -> str:
229
+ return self._kernel_slug
230
+
231
+ @kernel_slug.setter
232
+ def kernel_slug(self, kernel_slug: str):
233
+ if kernel_slug is None:
234
+ del self.kernel_slug
235
+ return
236
+ if not isinstance(kernel_slug, str):
237
+ raise TypeError('kernel_slug must be of type str')
238
+ self._kernel_slug = kernel_slug
239
+
240
+ def endpoint(self):
241
+ path = '/api/v1/kernels/status'
242
+ return path.format_map(self.to_field_map(self))
243
+
244
+
245
+ class ApiGetKernelSessionStatusResponse(KaggleObject):
246
+ r"""
247
+ Attributes:
248
+ status (KernelWorkerStatus)
249
+ failure_message (str)
250
+ """
251
+
252
+ def __init__(self):
253
+ self._status = KernelWorkerStatus.QUEUED
254
+ self._failure_message = None
255
+ self._freeze()
256
+
257
+ @property
258
+ def status(self) -> 'KernelWorkerStatus':
259
+ return self._status
260
+
261
+ @status.setter
262
+ def status(self, status: 'KernelWorkerStatus'):
263
+ if status is None:
264
+ del self.status
265
+ return
266
+ if not isinstance(status, KernelWorkerStatus):
267
+ raise TypeError('status must be of type KernelWorkerStatus')
268
+ self._status = status
269
+
270
+ @property
271
+ def failure_message(self) -> str:
272
+ return self._failure_message or ""
273
+
274
+ @failure_message.setter
275
+ def failure_message(self, failure_message: str):
276
+ if failure_message is None:
277
+ del self.failure_message
278
+ return
279
+ if not isinstance(failure_message, str):
280
+ raise TypeError('failure_message must be of type str')
281
+ self._failure_message = failure_message
282
+
283
+ @property
284
+ def failureMessage(self):
285
+ return self.failure_message
286
+
287
+
288
+ class ApiKernelBlob(KaggleObject):
289
+ r"""
290
+ Attributes:
291
+ source (str)
292
+ language (str)
293
+ kernel_type (str)
294
+ slug (str)
295
+ """
296
+
297
+ def __init__(self):
298
+ self._source = None
299
+ self._language = None
300
+ self._kernel_type = None
301
+ self._slug = None
302
+ self._freeze()
303
+
304
+ @property
305
+ def source(self) -> str:
306
+ return self._source or ""
307
+
308
+ @source.setter
309
+ def source(self, source: str):
310
+ if source is None:
311
+ del self.source
312
+ return
313
+ if not isinstance(source, str):
314
+ raise TypeError('source must be of type str')
315
+ self._source = source
316
+
317
+ @property
318
+ def language(self) -> str:
319
+ return self._language or ""
320
+
321
+ @language.setter
322
+ def language(self, language: str):
323
+ if language is None:
324
+ del self.language
325
+ return
326
+ if not isinstance(language, str):
327
+ raise TypeError('language must be of type str')
328
+ self._language = language
329
+
330
+ @property
331
+ def kernel_type(self) -> str:
332
+ return self._kernel_type or ""
333
+
334
+ @kernel_type.setter
335
+ def kernel_type(self, kernel_type: str):
336
+ if kernel_type is None:
337
+ del self.kernel_type
338
+ return
339
+ if not isinstance(kernel_type, str):
340
+ raise TypeError('kernel_type must be of type str')
341
+ self._kernel_type = kernel_type
342
+
343
+ @property
344
+ def slug(self) -> str:
345
+ return self._slug or ""
346
+
347
+ @slug.setter
348
+ def slug(self, slug: str):
349
+ if slug is None:
350
+ del self.slug
351
+ return
352
+ if not isinstance(slug, str):
353
+ raise TypeError('slug must be of type str')
354
+ self._slug = slug
355
+
356
+
357
+ class ApiKernelMetadata(KaggleObject):
358
+ r"""
359
+ Attributes:
360
+ id (int)
361
+ ref (str)
362
+ title (str)
363
+ author (str)
364
+ slug (str)
365
+ last_run_time (datetime)
366
+ language (str)
367
+ kernel_type (str)
368
+ is_private (bool)
369
+ enable_gpu (bool)
370
+ enable_tpu (bool)
371
+ enable_internet (bool)
372
+ category_ids (str)
373
+ dataset_data_sources (str)
374
+ kernel_data_sources (str)
375
+ competition_data_sources (str)
376
+ model_data_sources (str)
377
+ total_votes (int)
378
+ current_version_number (int)
379
+ """
380
+
381
+ def __init__(self):
382
+ self._id = 0
383
+ self._ref = ""
384
+ self._title = ""
385
+ self._author = ""
386
+ self._slug = ""
387
+ self._last_run_time = None
388
+ self._language = None
389
+ self._kernel_type = None
390
+ self._is_private = None
391
+ self._enable_gpu = None
392
+ self._enable_tpu = None
393
+ self._enable_internet = None
394
+ self._category_ids = []
395
+ self._dataset_data_sources = []
396
+ self._kernel_data_sources = []
397
+ self._competition_data_sources = []
398
+ self._model_data_sources = []
399
+ self._total_votes = 0
400
+ self._current_version_number = None
401
+ self._freeze()
402
+
403
+ @property
404
+ def id(self) -> int:
405
+ return self._id
406
+
407
+ @id.setter
408
+ def id(self, id: int):
409
+ if id is None:
410
+ del self.id
411
+ return
412
+ if not isinstance(id, int):
413
+ raise TypeError('id must be of type int')
414
+ self._id = id
415
+
416
+ @property
417
+ def ref(self) -> str:
418
+ return self._ref
419
+
420
+ @ref.setter
421
+ def ref(self, ref: str):
422
+ if ref is None:
423
+ del self.ref
424
+ return
425
+ if not isinstance(ref, str):
426
+ raise TypeError('ref must be of type str')
427
+ self._ref = ref
428
+
429
+ @property
430
+ def title(self) -> str:
431
+ return self._title
432
+
433
+ @title.setter
434
+ def title(self, title: str):
435
+ if title is None:
436
+ del self.title
437
+ return
438
+ if not isinstance(title, str):
439
+ raise TypeError('title must be of type str')
440
+ self._title = title
441
+
442
+ @property
443
+ def author(self) -> str:
444
+ return self._author
445
+
446
+ @author.setter
447
+ def author(self, author: str):
448
+ if author is None:
449
+ del self.author
450
+ return
451
+ if not isinstance(author, str):
452
+ raise TypeError('author must be of type str')
453
+ self._author = author
454
+
455
+ @property
456
+ def slug(self) -> str:
457
+ return self._slug
458
+
459
+ @slug.setter
460
+ def slug(self, slug: str):
461
+ if slug is None:
462
+ del self.slug
463
+ return
464
+ if not isinstance(slug, str):
465
+ raise TypeError('slug must be of type str')
466
+ self._slug = slug
467
+
468
+ @property
469
+ def last_run_time(self) -> datetime:
470
+ return self._last_run_time
471
+
472
+ @last_run_time.setter
473
+ def last_run_time(self, last_run_time: datetime):
474
+ if last_run_time is None:
475
+ del self.last_run_time
476
+ return
477
+ if not isinstance(last_run_time, datetime):
478
+ raise TypeError('last_run_time must be of type datetime')
479
+ self._last_run_time = last_run_time
480
+
481
+ @property
482
+ def language(self) -> str:
483
+ return self._language or ""
484
+
485
+ @language.setter
486
+ def language(self, language: str):
487
+ if language is None:
488
+ del self.language
489
+ return
490
+ if not isinstance(language, str):
491
+ raise TypeError('language must be of type str')
492
+ self._language = language
493
+
494
+ @property
495
+ def kernel_type(self) -> str:
496
+ return self._kernel_type or ""
497
+
498
+ @kernel_type.setter
499
+ def kernel_type(self, kernel_type: str):
500
+ if kernel_type is None:
501
+ del self.kernel_type
502
+ return
503
+ if not isinstance(kernel_type, str):
504
+ raise TypeError('kernel_type must be of type str')
505
+ self._kernel_type = kernel_type
506
+
507
+ @property
508
+ def is_private(self) -> bool:
509
+ return self._is_private or False
510
+
511
+ @is_private.setter
512
+ def is_private(self, is_private: bool):
513
+ if is_private is None:
514
+ del self.is_private
515
+ return
516
+ if not isinstance(is_private, bool):
517
+ raise TypeError('is_private must be of type bool')
518
+ self._is_private = is_private
519
+
520
+ @property
521
+ def enable_gpu(self) -> bool:
522
+ return self._enable_gpu or False
523
+
524
+ @enable_gpu.setter
525
+ def enable_gpu(self, enable_gpu: bool):
526
+ if enable_gpu is None:
527
+ del self.enable_gpu
528
+ return
529
+ if not isinstance(enable_gpu, bool):
530
+ raise TypeError('enable_gpu must be of type bool')
531
+ self._enable_gpu = enable_gpu
532
+
533
+ @property
534
+ def enable_tpu(self) -> bool:
535
+ return self._enable_tpu or False
536
+
537
+ @enable_tpu.setter
538
+ def enable_tpu(self, enable_tpu: bool):
539
+ if enable_tpu is None:
540
+ del self.enable_tpu
541
+ return
542
+ if not isinstance(enable_tpu, bool):
543
+ raise TypeError('enable_tpu must be of type bool')
544
+ self._enable_tpu = enable_tpu
545
+
546
+ @property
547
+ def enable_internet(self) -> bool:
548
+ return self._enable_internet or False
549
+
550
+ @enable_internet.setter
551
+ def enable_internet(self, enable_internet: bool):
552
+ if enable_internet is None:
553
+ del self.enable_internet
554
+ return
555
+ if not isinstance(enable_internet, bool):
556
+ raise TypeError('enable_internet must be of type bool')
557
+ self._enable_internet = enable_internet
558
+
559
+ @property
560
+ def category_ids(self) -> Optional[List[str]]:
561
+ return self._category_ids
562
+
563
+ @category_ids.setter
564
+ def category_ids(self, category_ids: Optional[List[str]]):
565
+ if category_ids is None:
566
+ del self.category_ids
567
+ return
568
+ if not isinstance(category_ids, list):
569
+ raise TypeError('category_ids must be of type list')
570
+ if not all([isinstance(t, str) for t in category_ids]):
571
+ raise TypeError('category_ids must contain only items of type str')
572
+ self._category_ids = category_ids
573
+
574
+ @property
575
+ def dataset_data_sources(self) -> Optional[List[str]]:
576
+ return self._dataset_data_sources
577
+
578
+ @dataset_data_sources.setter
579
+ def dataset_data_sources(self, dataset_data_sources: Optional[List[str]]):
580
+ if dataset_data_sources is None:
581
+ del self.dataset_data_sources
582
+ return
583
+ if not isinstance(dataset_data_sources, list):
584
+ raise TypeError('dataset_data_sources must be of type list')
585
+ if not all([isinstance(t, str) for t in dataset_data_sources]):
586
+ raise TypeError('dataset_data_sources must contain only items of type str')
587
+ self._dataset_data_sources = dataset_data_sources
588
+
589
+ @property
590
+ def kernel_data_sources(self) -> Optional[List[str]]:
591
+ return self._kernel_data_sources
592
+
593
+ @kernel_data_sources.setter
594
+ def kernel_data_sources(self, kernel_data_sources: Optional[List[str]]):
595
+ if kernel_data_sources is None:
596
+ del self.kernel_data_sources
597
+ return
598
+ if not isinstance(kernel_data_sources, list):
599
+ raise TypeError('kernel_data_sources must be of type list')
600
+ if not all([isinstance(t, str) for t in kernel_data_sources]):
601
+ raise TypeError('kernel_data_sources must contain only items of type str')
602
+ self._kernel_data_sources = kernel_data_sources
603
+
604
+ @property
605
+ def competition_data_sources(self) -> Optional[List[str]]:
606
+ return self._competition_data_sources
607
+
608
+ @competition_data_sources.setter
609
+ def competition_data_sources(self, competition_data_sources: Optional[List[str]]):
610
+ if competition_data_sources is None:
611
+ del self.competition_data_sources
612
+ return
613
+ if not isinstance(competition_data_sources, list):
614
+ raise TypeError('competition_data_sources must be of type list')
615
+ if not all([isinstance(t, str) for t in competition_data_sources]):
616
+ raise TypeError('competition_data_sources must contain only items of type str')
617
+ self._competition_data_sources = competition_data_sources
618
+
619
+ @property
620
+ def model_data_sources(self) -> Optional[List[str]]:
621
+ return self._model_data_sources
622
+
623
+ @model_data_sources.setter
624
+ def model_data_sources(self, model_data_sources: Optional[List[str]]):
625
+ if model_data_sources is None:
626
+ del self.model_data_sources
627
+ return
628
+ if not isinstance(model_data_sources, list):
629
+ raise TypeError('model_data_sources must be of type list')
630
+ if not all([isinstance(t, str) for t in model_data_sources]):
631
+ raise TypeError('model_data_sources must contain only items of type str')
632
+ self._model_data_sources = model_data_sources
633
+
634
+ @property
635
+ def total_votes(self) -> int:
636
+ return self._total_votes
637
+
638
+ @total_votes.setter
639
+ def total_votes(self, total_votes: int):
640
+ if total_votes is None:
641
+ del self.total_votes
642
+ return
643
+ if not isinstance(total_votes, int):
644
+ raise TypeError('total_votes must be of type int')
645
+ self._total_votes = total_votes
646
+
647
+ @property
648
+ def current_version_number(self) -> int:
649
+ return self._current_version_number or 0
650
+
651
+ @current_version_number.setter
652
+ def current_version_number(self, current_version_number: int):
653
+ if current_version_number is None:
654
+ del self.current_version_number
655
+ return
656
+ if not isinstance(current_version_number, int):
657
+ raise TypeError('current_version_number must be of type int')
658
+ self._current_version_number = current_version_number
659
+
660
+
661
+ class ApiListKernelFilesRequest(KaggleObject):
662
+ r"""
663
+ Attributes:
664
+ user_name (str)
665
+ kernel_slug (str)
666
+ page_size (int)
667
+ page_token (str)
668
+ """
669
+
670
+ def __init__(self):
671
+ self._user_name = ""
672
+ self._kernel_slug = ""
673
+ self._page_size = None
674
+ self._page_token = None
675
+ self._freeze()
676
+
677
+ @property
678
+ def user_name(self) -> str:
679
+ return self._user_name
680
+
681
+ @user_name.setter
682
+ def user_name(self, user_name: str):
683
+ if user_name is None:
684
+ del self.user_name
685
+ return
686
+ if not isinstance(user_name, str):
687
+ raise TypeError('user_name must be of type str')
688
+ self._user_name = user_name
689
+
690
+ @property
691
+ def kernel_slug(self) -> str:
692
+ return self._kernel_slug
693
+
694
+ @kernel_slug.setter
695
+ def kernel_slug(self, kernel_slug: str):
696
+ if kernel_slug is None:
697
+ del self.kernel_slug
698
+ return
699
+ if not isinstance(kernel_slug, str):
700
+ raise TypeError('kernel_slug must be of type str')
701
+ self._kernel_slug = kernel_slug
702
+
703
+ @property
704
+ def page_size(self) -> int:
705
+ return self._page_size or 0
706
+
707
+ @page_size.setter
708
+ def page_size(self, page_size: int):
709
+ if page_size is None:
710
+ del self.page_size
711
+ return
712
+ if not isinstance(page_size, int):
713
+ raise TypeError('page_size must be of type int')
714
+ self._page_size = page_size
715
+
716
+ @property
717
+ def page_token(self) -> str:
718
+ return self._page_token or ""
719
+
720
+ @page_token.setter
721
+ def page_token(self, page_token: str):
722
+ if page_token is None:
723
+ del self.page_token
724
+ return
725
+ if not isinstance(page_token, str):
726
+ raise TypeError('page_token must be of type str')
727
+ self._page_token = page_token
728
+
729
+ def endpoint(self):
730
+ path = '/api/v1/kernels/files'
731
+ return path.format_map(self.to_field_map(self))
732
+
733
+
734
+ class ApiListKernelFilesResponse(KaggleObject):
735
+ r"""
736
+ Attributes:
737
+ files (ApiListKernelFilesItem)
738
+ next_page_token (str)
739
+ """
740
+
741
+ def __init__(self):
742
+ self._files = []
743
+ self._next_page_token = None
744
+ self._freeze()
745
+
746
+ @property
747
+ def files(self) -> Optional[List[Optional['ApiListKernelFilesItem']]]:
748
+ return self._files
749
+
750
+ @files.setter
751
+ def files(self, files: Optional[List[Optional['ApiListKernelFilesItem']]]):
752
+ if files is None:
753
+ del self.files
754
+ return
755
+ if not isinstance(files, list):
756
+ raise TypeError('files must be of type list')
757
+ if not all([isinstance(t, ApiListKernelFilesItem) for t in files]):
758
+ raise TypeError('files must contain only items of type ApiListKernelFilesItem')
759
+ self._files = files
760
+
761
+ @property
762
+ def next_page_token(self) -> str:
763
+ return self._next_page_token or ""
764
+
765
+ @next_page_token.setter
766
+ def next_page_token(self, next_page_token: str):
767
+ if next_page_token is None:
768
+ del self.next_page_token
769
+ return
770
+ if not isinstance(next_page_token, str):
771
+ raise TypeError('next_page_token must be of type str')
772
+ self._next_page_token = next_page_token
773
+
774
+ @property
775
+ def nextPageToken(self):
776
+ return self.next_page_token
777
+
778
+
779
+ class ApiListKernelSessionOutputRequest(KaggleObject):
780
+ r"""
781
+ Attributes:
782
+ user_name (str)
783
+ kernel_slug (str)
784
+ page_size (int)
785
+ page_token (str)
786
+ """
787
+
788
+ def __init__(self):
789
+ self._user_name = ""
790
+ self._kernel_slug = ""
791
+ self._page_size = None
792
+ self._page_token = None
793
+ self._freeze()
794
+
795
+ @property
796
+ def user_name(self) -> str:
797
+ return self._user_name
798
+
799
+ @user_name.setter
800
+ def user_name(self, user_name: str):
801
+ if user_name is None:
802
+ del self.user_name
803
+ return
804
+ if not isinstance(user_name, str):
805
+ raise TypeError('user_name must be of type str')
806
+ self._user_name = user_name
807
+
808
+ @property
809
+ def kernel_slug(self) -> str:
810
+ return self._kernel_slug
811
+
812
+ @kernel_slug.setter
813
+ def kernel_slug(self, kernel_slug: str):
814
+ if kernel_slug is None:
815
+ del self.kernel_slug
816
+ return
817
+ if not isinstance(kernel_slug, str):
818
+ raise TypeError('kernel_slug must be of type str')
819
+ self._kernel_slug = kernel_slug
820
+
821
+ @property
822
+ def page_size(self) -> int:
823
+ return self._page_size or 0
824
+
825
+ @page_size.setter
826
+ def page_size(self, page_size: int):
827
+ if page_size is None:
828
+ del self.page_size
829
+ return
830
+ if not isinstance(page_size, int):
831
+ raise TypeError('page_size must be of type int')
832
+ self._page_size = page_size
833
+
834
+ @property
835
+ def page_token(self) -> str:
836
+ return self._page_token or ""
837
+
838
+ @page_token.setter
839
+ def page_token(self, page_token: str):
840
+ if page_token is None:
841
+ del self.page_token
842
+ return
843
+ if not isinstance(page_token, str):
844
+ raise TypeError('page_token must be of type str')
845
+ self._page_token = page_token
846
+
847
+ def endpoint(self):
848
+ path = '/api/v1/kernels/output'
849
+ return path.format_map(self.to_field_map(self))
850
+
851
+
852
+ class ApiListKernelSessionOutputResponse(KaggleObject):
853
+ r"""
854
+ Attributes:
855
+ files (ApiKernelSessionOutputFile)
856
+ log (str)
857
+ next_page_token (str)
858
+ """
859
+
860
+ def __init__(self):
861
+ self._files = []
862
+ self._log = None
863
+ self._next_page_token = None
864
+ self._freeze()
865
+
866
+ @property
867
+ def files(self) -> Optional[List[Optional['ApiKernelSessionOutputFile']]]:
868
+ return self._files
869
+
870
+ @files.setter
871
+ def files(self, files: Optional[List[Optional['ApiKernelSessionOutputFile']]]):
872
+ if files is None:
873
+ del self.files
874
+ return
875
+ if not isinstance(files, list):
876
+ raise TypeError('files must be of type list')
877
+ if not all([isinstance(t, ApiKernelSessionOutputFile) for t in files]):
878
+ raise TypeError('files must contain only items of type ApiKernelSessionOutputFile')
879
+ self._files = files
880
+
881
+ @property
882
+ def log(self) -> str:
883
+ return self._log or ""
884
+
885
+ @log.setter
886
+ def log(self, log: str):
887
+ if log is None:
888
+ del self.log
889
+ return
890
+ if not isinstance(log, str):
891
+ raise TypeError('log must be of type str')
892
+ self._log = log
893
+
894
+ @property
895
+ def next_page_token(self) -> str:
896
+ return self._next_page_token or ""
897
+
898
+ @next_page_token.setter
899
+ def next_page_token(self, next_page_token: str):
900
+ if next_page_token is None:
901
+ del self.next_page_token
902
+ return
903
+ if not isinstance(next_page_token, str):
904
+ raise TypeError('next_page_token must be of type str')
905
+ self._next_page_token = next_page_token
906
+
907
+ @property
908
+ def nextPageToken(self):
909
+ return self.next_page_token
910
+
911
+
912
+ class ApiListKernelsRequest(KaggleObject):
913
+ r"""
914
+ Attributes:
915
+ competition (str)
916
+ Display kernels using the specified competition.
917
+ dataset (str)
918
+ Display kernels using the specified dataset.
919
+ parent_kernel (str)
920
+ Display kernels that have forked the specified kernel.
921
+ group (KernelsListViewType)
922
+ Display your kernels, collaborated, bookmarked or upvoted kernels.
923
+ kernel_type (str)
924
+ Display kernels of a specific type.
925
+ language (str)
926
+ Display kernels in a specific language. One of 'all', 'python', 'r',
927
+ 'sqlite' and 'julia'.
928
+ output_type (str)
929
+ Display kernels with a specific output type. One of 'all', 'visualization'
930
+ and 'notebook'.
931
+ search (str)
932
+ Display kernels matching the specified search terms.
933
+ sort_by (KernelsListSortType)
934
+ Sort the results (default is 'hotness'). 'relevance' only works if there is
935
+ a search query.
936
+ user (str)
937
+ Display kernels by a particular user or group.
938
+ page (int)
939
+ Page number (default is 1).
940
+ page_size (int)
941
+ Page size, i.e., maximum number of results to return.
942
+ """
943
+
944
+ def __init__(self):
945
+ self._competition = None
946
+ self._dataset = None
947
+ self._parent_kernel = None
948
+ self._group = KernelsListViewType.KERNELS_LIST_VIEW_TYPE_UNSPECIFIED
949
+ self._kernel_type = None
950
+ self._language = None
951
+ self._output_type = None
952
+ self._search = None
953
+ self._sort_by = KernelsListSortType.HOTNESS
954
+ self._user = None
955
+ self._page = None
956
+ self._page_size = None
957
+ self._freeze()
958
+
959
+ @property
960
+ def competition(self) -> str:
961
+ """Display kernels using the specified competition."""
962
+ return self._competition or ""
963
+
964
+ @competition.setter
965
+ def competition(self, competition: str):
966
+ if competition is None:
967
+ del self.competition
968
+ return
969
+ if not isinstance(competition, str):
970
+ raise TypeError('competition must be of type str')
971
+ self._competition = competition
972
+
973
+ @property
974
+ def dataset(self) -> str:
975
+ """Display kernels using the specified dataset."""
976
+ return self._dataset or ""
977
+
978
+ @dataset.setter
979
+ def dataset(self, dataset: str):
980
+ if dataset is None:
981
+ del self.dataset
982
+ return
983
+ if not isinstance(dataset, str):
984
+ raise TypeError('dataset must be of type str')
985
+ self._dataset = dataset
986
+
987
+ @property
988
+ def parent_kernel(self) -> str:
989
+ """Display kernels that have forked the specified kernel."""
990
+ return self._parent_kernel or ""
991
+
992
+ @parent_kernel.setter
993
+ def parent_kernel(self, parent_kernel: str):
994
+ if parent_kernel is None:
995
+ del self.parent_kernel
996
+ return
997
+ if not isinstance(parent_kernel, str):
998
+ raise TypeError('parent_kernel must be of type str')
999
+ self._parent_kernel = parent_kernel
1000
+
1001
+ @property
1002
+ def group(self) -> 'KernelsListViewType':
1003
+ """Display your kernels, collaborated, bookmarked or upvoted kernels."""
1004
+ return self._group
1005
+
1006
+ @group.setter
1007
+ def group(self, group: 'KernelsListViewType'):
1008
+ if group is None:
1009
+ del self.group
1010
+ return
1011
+ if not isinstance(group, KernelsListViewType):
1012
+ raise TypeError('group must be of type KernelsListViewType')
1013
+ self._group = group
1014
+
1015
+ @property
1016
+ def kernel_type(self) -> str:
1017
+ """Display kernels of a specific type."""
1018
+ return self._kernel_type or ""
1019
+
1020
+ @kernel_type.setter
1021
+ def kernel_type(self, kernel_type: str):
1022
+ if kernel_type is None:
1023
+ del self.kernel_type
1024
+ return
1025
+ if not isinstance(kernel_type, str):
1026
+ raise TypeError('kernel_type must be of type str')
1027
+ self._kernel_type = kernel_type
1028
+
1029
+ @property
1030
+ def language(self) -> str:
1031
+ r"""
1032
+ Display kernels in a specific language. One of 'all', 'python', 'r',
1033
+ 'sqlite' and 'julia'.
1034
+ """
1035
+ return self._language or ""
1036
+
1037
+ @language.setter
1038
+ def language(self, language: str):
1039
+ if language is None:
1040
+ del self.language
1041
+ return
1042
+ if not isinstance(language, str):
1043
+ raise TypeError('language must be of type str')
1044
+ self._language = language
1045
+
1046
+ @property
1047
+ def output_type(self) -> str:
1048
+ r"""
1049
+ Display kernels with a specific output type. One of 'all', 'visualization'
1050
+ and 'notebook'.
1051
+ """
1052
+ return self._output_type or ""
1053
+
1054
+ @output_type.setter
1055
+ def output_type(self, output_type: str):
1056
+ if output_type is None:
1057
+ del self.output_type
1058
+ return
1059
+ if not isinstance(output_type, str):
1060
+ raise TypeError('output_type must be of type str')
1061
+ self._output_type = output_type
1062
+
1063
+ @property
1064
+ def search(self) -> str:
1065
+ """Display kernels matching the specified search terms."""
1066
+ return self._search or ""
1067
+
1068
+ @search.setter
1069
+ def search(self, search: str):
1070
+ if search is None:
1071
+ del self.search
1072
+ return
1073
+ if not isinstance(search, str):
1074
+ raise TypeError('search must be of type str')
1075
+ self._search = search
1076
+
1077
+ @property
1078
+ def sort_by(self) -> 'KernelsListSortType':
1079
+ r"""
1080
+ Sort the results (default is 'hotness'). 'relevance' only works if there is
1081
+ a search query.
1082
+ """
1083
+ return self._sort_by
1084
+
1085
+ @sort_by.setter
1086
+ def sort_by(self, sort_by: 'KernelsListSortType'):
1087
+ if sort_by is None:
1088
+ del self.sort_by
1089
+ return
1090
+ if not isinstance(sort_by, KernelsListSortType):
1091
+ raise TypeError('sort_by must be of type KernelsListSortType')
1092
+ self._sort_by = sort_by
1093
+
1094
+ @property
1095
+ def user(self) -> str:
1096
+ """Display kernels by a particular user or group."""
1097
+ return self._user or ""
1098
+
1099
+ @user.setter
1100
+ def user(self, user: str):
1101
+ if user is None:
1102
+ del self.user
1103
+ return
1104
+ if not isinstance(user, str):
1105
+ raise TypeError('user must be of type str')
1106
+ self._user = user
1107
+
1108
+ @property
1109
+ def page(self) -> int:
1110
+ """Page number (default is 1)."""
1111
+ return self._page or 0
1112
+
1113
+ @page.setter
1114
+ def page(self, page: int):
1115
+ if page is None:
1116
+ del self.page
1117
+ return
1118
+ if not isinstance(page, int):
1119
+ raise TypeError('page must be of type int')
1120
+ self._page = page
1121
+
1122
+ @property
1123
+ def page_size(self) -> int:
1124
+ """Page size, i.e., maximum number of results to return."""
1125
+ return self._page_size or 0
1126
+
1127
+ @page_size.setter
1128
+ def page_size(self, page_size: int):
1129
+ if page_size is None:
1130
+ del self.page_size
1131
+ return
1132
+ if not isinstance(page_size, int):
1133
+ raise TypeError('page_size must be of type int')
1134
+ self._page_size = page_size
1135
+
1136
+ def endpoint(self):
1137
+ path = '/api/v1/kernels/list'
1138
+ return path.format_map(self.to_field_map(self))
1139
+
1140
+
1141
+ class ApiListKernelsResponse(KaggleObject):
1142
+ r"""
1143
+ Attributes:
1144
+ kernels (ApiKernelMetadata)
1145
+ """
1146
+
1147
+ def __init__(self):
1148
+ self._kernels = []
1149
+ self._freeze()
1150
+
1151
+ @property
1152
+ def kernels(self) -> Optional[List[Optional['ApiKernelMetadata']]]:
1153
+ return self._kernels
1154
+
1155
+ @kernels.setter
1156
+ def kernels(self, kernels: Optional[List[Optional['ApiKernelMetadata']]]):
1157
+ if kernels is None:
1158
+ del self.kernels
1159
+ return
1160
+ if not isinstance(kernels, list):
1161
+ raise TypeError('kernels must be of type list')
1162
+ if not all([isinstance(t, ApiKernelMetadata) for t in kernels]):
1163
+ raise TypeError('kernels must contain only items of type ApiKernelMetadata')
1164
+ self._kernels = kernels
1165
+
1166
+ @classmethod
1167
+ def prepare_from(cls, http_response):
1168
+ return cls.from_dict({'kernels': json.loads(http_response.text)})
1169
+
1170
+
1171
+ class ApiSaveKernelRequest(KaggleObject):
1172
+ r"""
1173
+ Attributes:
1174
+ id (int)
1175
+ The kernel's unique ID number. One of `id` and `slug` are required. If both
1176
+ are specified, `id` will be preferred.
1177
+ slug (str)
1178
+ The full slug of the kernel to push to, in the format
1179
+ `{username}/{kernel-slug}`. The kernel slug must be the title lowercased
1180
+ with dashes (`-`) replacing spaces. One of `id` and `slug` are required. If
1181
+ both are specified, `id` will be preferred.
1182
+ new_title (str)
1183
+ The title to be set on the kernel.
1184
+ text (str)
1185
+ The kernel's source code.
1186
+ language (str)
1187
+ The language that the kernel is written in. One of 'python', 'r' and
1188
+ 'rmarkdown'.
1189
+ kernel_type (str)
1190
+ The type of kernel. Cannot be changed once the kernel has been created.
1191
+ dataset_data_sources (str)
1192
+ A list of dataset data sources that the kernel should use. Each dataset is
1193
+ specified as
1194
+ `{username}/{dataset-slug}`.
1195
+ kernel_data_sources (str)
1196
+ A list of kernel data sources that the kernel should use. Each dataset is
1197
+ specified as
1198
+ `{username}/{kernel-slug}`.
1199
+ competition_data_sources (str)
1200
+ A list of competition data sources that the kernel should use
1201
+ category_ids (str)
1202
+ A list of tag IDs to associated with the kernel.
1203
+ is_private (bool)
1204
+ Whether or not the kernel should be private.
1205
+ enable_gpu (bool)
1206
+ Whether or not the kernel should run on a GPU.
1207
+ enable_tpu (bool)
1208
+ Whether or not the kernel should run on a TPU.
1209
+ enable_internet (bool)
1210
+ Whether or not the kernel should be able to access the internet.
1211
+ docker_image_pinning_type (str)
1212
+ Which docker image to use for executing new versions going forward.
1213
+ model_data_sources (str)
1214
+ A list of model data sources that the kernel should use.
1215
+ Each model is specified as (for the latest version):
1216
+ `{username}/{model-slug}/{framework}/{variation-slug}`
1217
+ Or versioned:
1218
+ `{username}/{model-slug}/{framework}/{variation-slug}/{version-number}`
1219
+ session_timeout_seconds (int)
1220
+ If specified, terminate the kernel session after this many seconds of
1221
+ runtime, which must be lower than the global maximum.
1222
+ """
1223
+
1224
+ def __init__(self):
1225
+ self._id = None
1226
+ self._slug = None
1227
+ self._new_title = None
1228
+ self._text = None
1229
+ self._language = None
1230
+ self._kernel_type = None
1231
+ self._dataset_data_sources = []
1232
+ self._kernel_data_sources = []
1233
+ self._competition_data_sources = []
1234
+ self._category_ids = []
1235
+ self._is_private = None
1236
+ self._enable_gpu = None
1237
+ self._enable_tpu = None
1238
+ self._enable_internet = None
1239
+ self._docker_image_pinning_type = None
1240
+ self._model_data_sources = []
1241
+ self._session_timeout_seconds = None
1242
+ self._freeze()
1243
+
1244
+ @property
1245
+ def id(self) -> int:
1246
+ r"""
1247
+ The kernel's unique ID number. One of `id` and `slug` are required. If both
1248
+ are specified, `id` will be preferred.
1249
+ """
1250
+ return self._id or 0
1251
+
1252
+ @id.setter
1253
+ def id(self, id: int):
1254
+ if id is None:
1255
+ del self.id
1256
+ return
1257
+ if not isinstance(id, int):
1258
+ raise TypeError('id must be of type int')
1259
+ self._id = id
1260
+
1261
+ @property
1262
+ def slug(self) -> str:
1263
+ r"""
1264
+ The full slug of the kernel to push to, in the format
1265
+ `{username}/{kernel-slug}`. The kernel slug must be the title lowercased
1266
+ with dashes (`-`) replacing spaces. One of `id` and `slug` are required. If
1267
+ both are specified, `id` will be preferred.
1268
+ """
1269
+ return self._slug or ""
1270
+
1271
+ @slug.setter
1272
+ def slug(self, slug: str):
1273
+ if slug is None:
1274
+ del self.slug
1275
+ return
1276
+ if not isinstance(slug, str):
1277
+ raise TypeError('slug must be of type str')
1278
+ self._slug = slug
1279
+
1280
+ @property
1281
+ def new_title(self) -> str:
1282
+ """The title to be set on the kernel."""
1283
+ return self._new_title or ""
1284
+
1285
+ @new_title.setter
1286
+ def new_title(self, new_title: str):
1287
+ if new_title is None:
1288
+ del self.new_title
1289
+ return
1290
+ if not isinstance(new_title, str):
1291
+ raise TypeError('new_title must be of type str')
1292
+ self._new_title = new_title
1293
+
1294
+ @property
1295
+ def text(self) -> str:
1296
+ """The kernel's source code."""
1297
+ return self._text or ""
1298
+
1299
+ @text.setter
1300
+ def text(self, text: str):
1301
+ if text is None:
1302
+ del self.text
1303
+ return
1304
+ if not isinstance(text, str):
1305
+ raise TypeError('text must be of type str')
1306
+ self._text = text
1307
+
1308
+ @property
1309
+ def language(self) -> str:
1310
+ r"""
1311
+ The language that the kernel is written in. One of 'python', 'r' and
1312
+ 'rmarkdown'.
1313
+ """
1314
+ return self._language or ""
1315
+
1316
+ @language.setter
1317
+ def language(self, language: str):
1318
+ if language is None:
1319
+ del self.language
1320
+ return
1321
+ if not isinstance(language, str):
1322
+ raise TypeError('language must be of type str')
1323
+ self._language = language
1324
+
1325
+ @property
1326
+ def kernel_type(self) -> str:
1327
+ """The type of kernel. Cannot be changed once the kernel has been created."""
1328
+ return self._kernel_type or ""
1329
+
1330
+ @kernel_type.setter
1331
+ def kernel_type(self, kernel_type: str):
1332
+ if kernel_type is None:
1333
+ del self.kernel_type
1334
+ return
1335
+ if not isinstance(kernel_type, str):
1336
+ raise TypeError('kernel_type must be of type str')
1337
+ self._kernel_type = kernel_type
1338
+
1339
+ @property
1340
+ def dataset_data_sources(self) -> Optional[List[str]]:
1341
+ r"""
1342
+ A list of dataset data sources that the kernel should use. Each dataset is
1343
+ specified as
1344
+ `{username}/{dataset-slug}`.
1345
+ """
1346
+ return self._dataset_data_sources
1347
+
1348
+ @dataset_data_sources.setter
1349
+ def dataset_data_sources(self, dataset_data_sources: Optional[List[str]]):
1350
+ if dataset_data_sources is None:
1351
+ del self.dataset_data_sources
1352
+ return
1353
+ if not isinstance(dataset_data_sources, list):
1354
+ raise TypeError('dataset_data_sources must be of type list')
1355
+ if not all([isinstance(t, str) for t in dataset_data_sources]):
1356
+ raise TypeError('dataset_data_sources must contain only items of type str')
1357
+ self._dataset_data_sources = dataset_data_sources
1358
+
1359
+ @property
1360
+ def kernel_data_sources(self) -> Optional[List[str]]:
1361
+ r"""
1362
+ A list of kernel data sources that the kernel should use. Each dataset is
1363
+ specified as
1364
+ `{username}/{kernel-slug}`.
1365
+ """
1366
+ return self._kernel_data_sources
1367
+
1368
+ @kernel_data_sources.setter
1369
+ def kernel_data_sources(self, kernel_data_sources: Optional[List[str]]):
1370
+ if kernel_data_sources is None:
1371
+ del self.kernel_data_sources
1372
+ return
1373
+ if not isinstance(kernel_data_sources, list):
1374
+ raise TypeError('kernel_data_sources must be of type list')
1375
+ if not all([isinstance(t, str) for t in kernel_data_sources]):
1376
+ raise TypeError('kernel_data_sources must contain only items of type str')
1377
+ self._kernel_data_sources = kernel_data_sources
1378
+
1379
+ @property
1380
+ def competition_data_sources(self) -> Optional[List[str]]:
1381
+ """A list of competition data sources that the kernel should use"""
1382
+ return self._competition_data_sources
1383
+
1384
+ @competition_data_sources.setter
1385
+ def competition_data_sources(self, competition_data_sources: Optional[List[str]]):
1386
+ if competition_data_sources is None:
1387
+ del self.competition_data_sources
1388
+ return
1389
+ if not isinstance(competition_data_sources, list):
1390
+ raise TypeError('competition_data_sources must be of type list')
1391
+ if not all([isinstance(t, str) for t in competition_data_sources]):
1392
+ raise TypeError('competition_data_sources must contain only items of type str')
1393
+ self._competition_data_sources = competition_data_sources
1394
+
1395
+ @property
1396
+ def category_ids(self) -> Optional[List[str]]:
1397
+ """A list of tag IDs to associated with the kernel."""
1398
+ return self._category_ids
1399
+
1400
+ @category_ids.setter
1401
+ def category_ids(self, category_ids: Optional[List[str]]):
1402
+ if category_ids is None:
1403
+ del self.category_ids
1404
+ return
1405
+ if not isinstance(category_ids, list):
1406
+ raise TypeError('category_ids must be of type list')
1407
+ if not all([isinstance(t, str) for t in category_ids]):
1408
+ raise TypeError('category_ids must contain only items of type str')
1409
+ self._category_ids = category_ids
1410
+
1411
+ @property
1412
+ def is_private(self) -> bool:
1413
+ """Whether or not the kernel should be private."""
1414
+ return self._is_private or False
1415
+
1416
+ @is_private.setter
1417
+ def is_private(self, is_private: bool):
1418
+ if is_private is None:
1419
+ del self.is_private
1420
+ return
1421
+ if not isinstance(is_private, bool):
1422
+ raise TypeError('is_private must be of type bool')
1423
+ self._is_private = is_private
1424
+
1425
+ @property
1426
+ def enable_gpu(self) -> bool:
1427
+ """Whether or not the kernel should run on a GPU."""
1428
+ return self._enable_gpu or False
1429
+
1430
+ @enable_gpu.setter
1431
+ def enable_gpu(self, enable_gpu: bool):
1432
+ if enable_gpu is None:
1433
+ del self.enable_gpu
1434
+ return
1435
+ if not isinstance(enable_gpu, bool):
1436
+ raise TypeError('enable_gpu must be of type bool')
1437
+ self._enable_gpu = enable_gpu
1438
+
1439
+ @property
1440
+ def enable_tpu(self) -> bool:
1441
+ """Whether or not the kernel should run on a TPU."""
1442
+ return self._enable_tpu or False
1443
+
1444
+ @enable_tpu.setter
1445
+ def enable_tpu(self, enable_tpu: bool):
1446
+ if enable_tpu is None:
1447
+ del self.enable_tpu
1448
+ return
1449
+ if not isinstance(enable_tpu, bool):
1450
+ raise TypeError('enable_tpu must be of type bool')
1451
+ self._enable_tpu = enable_tpu
1452
+
1453
+ @property
1454
+ def enable_internet(self) -> bool:
1455
+ """Whether or not the kernel should be able to access the internet."""
1456
+ return self._enable_internet or False
1457
+
1458
+ @enable_internet.setter
1459
+ def enable_internet(self, enable_internet: bool):
1460
+ if enable_internet is None:
1461
+ del self.enable_internet
1462
+ return
1463
+ if not isinstance(enable_internet, bool):
1464
+ raise TypeError('enable_internet must be of type bool')
1465
+ self._enable_internet = enable_internet
1466
+
1467
+ @property
1468
+ def docker_image_pinning_type(self) -> str:
1469
+ """Which docker image to use for executing new versions going forward."""
1470
+ return self._docker_image_pinning_type or ""
1471
+
1472
+ @docker_image_pinning_type.setter
1473
+ def docker_image_pinning_type(self, docker_image_pinning_type: str):
1474
+ if docker_image_pinning_type is None:
1475
+ del self.docker_image_pinning_type
1476
+ return
1477
+ if not isinstance(docker_image_pinning_type, str):
1478
+ raise TypeError('docker_image_pinning_type must be of type str')
1479
+ self._docker_image_pinning_type = docker_image_pinning_type
1480
+
1481
+ @property
1482
+ def model_data_sources(self) -> Optional[List[str]]:
1483
+ r"""
1484
+ A list of model data sources that the kernel should use.
1485
+ Each model is specified as (for the latest version):
1486
+ `{username}/{model-slug}/{framework}/{variation-slug}`
1487
+ Or versioned:
1488
+ `{username}/{model-slug}/{framework}/{variation-slug}/{version-number}`
1489
+ """
1490
+ return self._model_data_sources
1491
+
1492
+ @model_data_sources.setter
1493
+ def model_data_sources(self, model_data_sources: Optional[List[str]]):
1494
+ if model_data_sources is None:
1495
+ del self.model_data_sources
1496
+ return
1497
+ if not isinstance(model_data_sources, list):
1498
+ raise TypeError('model_data_sources must be of type list')
1499
+ if not all([isinstance(t, str) for t in model_data_sources]):
1500
+ raise TypeError('model_data_sources must contain only items of type str')
1501
+ self._model_data_sources = model_data_sources
1502
+
1503
+ @property
1504
+ def session_timeout_seconds(self) -> int:
1505
+ r"""
1506
+ If specified, terminate the kernel session after this many seconds of
1507
+ runtime, which must be lower than the global maximum.
1508
+ """
1509
+ return self._session_timeout_seconds or 0
1510
+
1511
+ @session_timeout_seconds.setter
1512
+ def session_timeout_seconds(self, session_timeout_seconds: int):
1513
+ if session_timeout_seconds is None:
1514
+ del self.session_timeout_seconds
1515
+ return
1516
+ if not isinstance(session_timeout_seconds, int):
1517
+ raise TypeError('session_timeout_seconds must be of type int')
1518
+ self._session_timeout_seconds = session_timeout_seconds
1519
+
1520
+ def endpoint(self):
1521
+ path = '/api/v1/kernels/push'
1522
+ return path.format_map(self.to_field_map(self))
1523
+
1524
+
1525
+ @staticmethod
1526
+ def method():
1527
+ return 'POST'
1528
+
1529
+ @staticmethod
1530
+ def body_fields():
1531
+ return '*'
1532
+
1533
+
1534
+ class ApiSaveKernelResponse(KaggleObject):
1535
+ r"""
1536
+ Attributes:
1537
+ ref (str)
1538
+ url (str)
1539
+ version_number (int)
1540
+ error (str)
1541
+ invalid_tags (str)
1542
+ invalid_dataset_sources (str)
1543
+ invalid_competition_sources (str)
1544
+ invalid_kernel_sources (str)
1545
+ invalid_model_sources (str)
1546
+ """
1547
+
1548
+ def __init__(self):
1549
+ self._ref = ""
1550
+ self._url = ""
1551
+ self._version_number = None
1552
+ self._error = None
1553
+ self._invalid_tags = []
1554
+ self._invalid_dataset_sources = []
1555
+ self._invalid_competition_sources = []
1556
+ self._invalid_kernel_sources = []
1557
+ self._invalid_model_sources = []
1558
+ self._freeze()
1559
+
1560
+ @property
1561
+ def ref(self) -> str:
1562
+ return self._ref
1563
+
1564
+ @ref.setter
1565
+ def ref(self, ref: str):
1566
+ if ref is None:
1567
+ del self.ref
1568
+ return
1569
+ if not isinstance(ref, str):
1570
+ raise TypeError('ref must be of type str')
1571
+ self._ref = ref
1572
+
1573
+ @property
1574
+ def url(self) -> str:
1575
+ return self._url
1576
+
1577
+ @url.setter
1578
+ def url(self, url: str):
1579
+ if url is None:
1580
+ del self.url
1581
+ return
1582
+ if not isinstance(url, str):
1583
+ raise TypeError('url must be of type str')
1584
+ self._url = url
1585
+
1586
+ @property
1587
+ def version_number(self) -> int:
1588
+ return self._version_number or 0
1589
+
1590
+ @version_number.setter
1591
+ def version_number(self, version_number: int):
1592
+ if version_number is None:
1593
+ del self.version_number
1594
+ return
1595
+ if not isinstance(version_number, int):
1596
+ raise TypeError('version_number must be of type int')
1597
+ self._version_number = version_number
1598
+
1599
+ @property
1600
+ def error(self) -> str:
1601
+ return self._error or ""
1602
+
1603
+ @error.setter
1604
+ def error(self, error: str):
1605
+ if error is None:
1606
+ del self.error
1607
+ return
1608
+ if not isinstance(error, str):
1609
+ raise TypeError('error must be of type str')
1610
+ self._error = error
1611
+
1612
+ @property
1613
+ def invalid_tags(self) -> Optional[List[str]]:
1614
+ return self._invalid_tags
1615
+
1616
+ @invalid_tags.setter
1617
+ def invalid_tags(self, invalid_tags: Optional[List[str]]):
1618
+ if invalid_tags is None:
1619
+ del self.invalid_tags
1620
+ return
1621
+ if not isinstance(invalid_tags, list):
1622
+ raise TypeError('invalid_tags must be of type list')
1623
+ if not all([isinstance(t, str) for t in invalid_tags]):
1624
+ raise TypeError('invalid_tags must contain only items of type str')
1625
+ self._invalid_tags = invalid_tags
1626
+
1627
+ @property
1628
+ def invalid_dataset_sources(self) -> Optional[List[str]]:
1629
+ return self._invalid_dataset_sources
1630
+
1631
+ @invalid_dataset_sources.setter
1632
+ def invalid_dataset_sources(self, invalid_dataset_sources: Optional[List[str]]):
1633
+ if invalid_dataset_sources is None:
1634
+ del self.invalid_dataset_sources
1635
+ return
1636
+ if not isinstance(invalid_dataset_sources, list):
1637
+ raise TypeError('invalid_dataset_sources must be of type list')
1638
+ if not all([isinstance(t, str) for t in invalid_dataset_sources]):
1639
+ raise TypeError('invalid_dataset_sources must contain only items of type str')
1640
+ self._invalid_dataset_sources = invalid_dataset_sources
1641
+
1642
+ @property
1643
+ def invalid_competition_sources(self) -> Optional[List[str]]:
1644
+ return self._invalid_competition_sources
1645
+
1646
+ @invalid_competition_sources.setter
1647
+ def invalid_competition_sources(self, invalid_competition_sources: Optional[List[str]]):
1648
+ if invalid_competition_sources is None:
1649
+ del self.invalid_competition_sources
1650
+ return
1651
+ if not isinstance(invalid_competition_sources, list):
1652
+ raise TypeError('invalid_competition_sources must be of type list')
1653
+ if not all([isinstance(t, str) for t in invalid_competition_sources]):
1654
+ raise TypeError('invalid_competition_sources must contain only items of type str')
1655
+ self._invalid_competition_sources = invalid_competition_sources
1656
+
1657
+ @property
1658
+ def invalid_kernel_sources(self) -> Optional[List[str]]:
1659
+ return self._invalid_kernel_sources
1660
+
1661
+ @invalid_kernel_sources.setter
1662
+ def invalid_kernel_sources(self, invalid_kernel_sources: Optional[List[str]]):
1663
+ if invalid_kernel_sources is None:
1664
+ del self.invalid_kernel_sources
1665
+ return
1666
+ if not isinstance(invalid_kernel_sources, list):
1667
+ raise TypeError('invalid_kernel_sources must be of type list')
1668
+ if not all([isinstance(t, str) for t in invalid_kernel_sources]):
1669
+ raise TypeError('invalid_kernel_sources must contain only items of type str')
1670
+ self._invalid_kernel_sources = invalid_kernel_sources
1671
+
1672
+ @property
1673
+ def invalid_model_sources(self) -> Optional[List[str]]:
1674
+ return self._invalid_model_sources
1675
+
1676
+ @invalid_model_sources.setter
1677
+ def invalid_model_sources(self, invalid_model_sources: Optional[List[str]]):
1678
+ if invalid_model_sources is None:
1679
+ del self.invalid_model_sources
1680
+ return
1681
+ if not isinstance(invalid_model_sources, list):
1682
+ raise TypeError('invalid_model_sources must be of type list')
1683
+ if not all([isinstance(t, str) for t in invalid_model_sources]):
1684
+ raise TypeError('invalid_model_sources must contain only items of type str')
1685
+ self._invalid_model_sources = invalid_model_sources
1686
+
1687
+ @property
1688
+ def versionNumber(self):
1689
+ return self.version_number
1690
+
1691
+ @property
1692
+ def invalidTags(self):
1693
+ return self.invalid_tags
1694
+
1695
+ @property
1696
+ def invalidDatasetSources(self):
1697
+ return self.invalid_dataset_sources
1698
+
1699
+ @property
1700
+ def invalidCompetitionSources(self):
1701
+ return self.invalid_competition_sources
1702
+
1703
+ @property
1704
+ def invalidKernelSources(self):
1705
+ return self.invalid_kernel_sources
1706
+
1707
+ @property
1708
+ def invalidModelSources(self):
1709
+ return self.invalid_model_sources
1710
+
1711
+
1712
+ class ApiKernelSessionOutputFile(KaggleObject):
1713
+ r"""
1714
+ Attributes:
1715
+ url (str)
1716
+ file_name (str)
1717
+ """
1718
+
1719
+ def __init__(self):
1720
+ self._url = None
1721
+ self._file_name = None
1722
+ self._freeze()
1723
+
1724
+ @property
1725
+ def url(self) -> str:
1726
+ return self._url or ""
1727
+
1728
+ @url.setter
1729
+ def url(self, url: str):
1730
+ if url is None:
1731
+ del self.url
1732
+ return
1733
+ if not isinstance(url, str):
1734
+ raise TypeError('url must be of type str')
1735
+ self._url = url
1736
+
1737
+ @property
1738
+ def file_name(self) -> str:
1739
+ return self._file_name or ""
1740
+
1741
+ @file_name.setter
1742
+ def file_name(self, file_name: str):
1743
+ if file_name is None:
1744
+ del self.file_name
1745
+ return
1746
+ if not isinstance(file_name, str):
1747
+ raise TypeError('file_name must be of type str')
1748
+ self._file_name = file_name
1749
+
1750
+
1751
+ class ApiListKernelFilesItem(KaggleObject):
1752
+ r"""
1753
+ Attributes:
1754
+ name (str)
1755
+ size (int)
1756
+ creation_date (str)
1757
+ """
1758
+
1759
+ def __init__(self):
1760
+ self._name = ""
1761
+ self._size = 0
1762
+ self._creation_date = ""
1763
+ self._freeze()
1764
+
1765
+ @property
1766
+ def name(self) -> str:
1767
+ return self._name
1768
+
1769
+ @name.setter
1770
+ def name(self, name: str):
1771
+ if name is None:
1772
+ del self.name
1773
+ return
1774
+ if not isinstance(name, str):
1775
+ raise TypeError('name must be of type str')
1776
+ self._name = name
1777
+
1778
+ @property
1779
+ def size(self) -> int:
1780
+ return self._size
1781
+
1782
+ @size.setter
1783
+ def size(self, size: int):
1784
+ if size is None:
1785
+ del self.size
1786
+ return
1787
+ if not isinstance(size, int):
1788
+ raise TypeError('size must be of type int')
1789
+ self._size = size
1790
+
1791
+ @property
1792
+ def creation_date(self) -> str:
1793
+ return self._creation_date
1794
+
1795
+ @creation_date.setter
1796
+ def creation_date(self, creation_date: str):
1797
+ if creation_date is None:
1798
+ del self.creation_date
1799
+ return
1800
+ if not isinstance(creation_date, str):
1801
+ raise TypeError('creation_date must be of type str')
1802
+ self._creation_date = creation_date
1803
+
1804
+
1805
+ ApiDownloadKernelOutputRequest._fields = [
1806
+ FieldMetadata("ownerSlug", "owner_slug", "_owner_slug", str, "", PredefinedSerializer()),
1807
+ FieldMetadata("kernelSlug", "kernel_slug", "_kernel_slug", str, "", PredefinedSerializer()),
1808
+ FieldMetadata("filePath", "file_path", "_file_path", str, None, PredefinedSerializer(), optional=True),
1809
+ FieldMetadata("versionNumber", "version_number", "_version_number", int, None, PredefinedSerializer(), optional=True),
1810
+ ]
1811
+
1812
+ ApiDownloadKernelOutputZipRequest._fields = [
1813
+ FieldMetadata("kernelSessionId", "kernel_session_id", "_kernel_session_id", int, 0, PredefinedSerializer()),
1814
+ ]
1815
+
1816
+ ApiGetKernelRequest._fields = [
1817
+ FieldMetadata("userName", "user_name", "_user_name", str, "", PredefinedSerializer()),
1818
+ FieldMetadata("kernelSlug", "kernel_slug", "_kernel_slug", str, "", PredefinedSerializer()),
1819
+ ]
1820
+
1821
+ ApiGetKernelResponse._fields = [
1822
+ FieldMetadata("metadata", "metadata", "_metadata", ApiKernelMetadata, None, KaggleObjectSerializer()),
1823
+ FieldMetadata("blob", "blob", "_blob", ApiKernelBlob, None, KaggleObjectSerializer()),
1824
+ ]
1825
+
1826
+ ApiGetKernelSessionStatusRequest._fields = [
1827
+ FieldMetadata("userName", "user_name", "_user_name", str, "", PredefinedSerializer()),
1828
+ FieldMetadata("kernelSlug", "kernel_slug", "_kernel_slug", str, "", PredefinedSerializer()),
1829
+ ]
1830
+
1831
+ ApiGetKernelSessionStatusResponse._fields = [
1832
+ FieldMetadata("status", "status", "_status", KernelWorkerStatus, KernelWorkerStatus.QUEUED, EnumSerializer()),
1833
+ FieldMetadata("failureMessage", "failure_message", "_failure_message", str, None, PredefinedSerializer(), optional=True),
1834
+ ]
1835
+
1836
+ ApiKernelBlob._fields = [
1837
+ FieldMetadata("source", "source", "_source", str, None, PredefinedSerializer(), optional=True),
1838
+ FieldMetadata("language", "language", "_language", str, None, PredefinedSerializer(), optional=True),
1839
+ FieldMetadata("kernelType", "kernel_type", "_kernel_type", str, None, PredefinedSerializer(), optional=True),
1840
+ FieldMetadata("slug", "slug", "_slug", str, None, PredefinedSerializer(), optional=True),
1841
+ ]
1842
+
1843
+ ApiKernelMetadata._fields = [
1844
+ FieldMetadata("id", "id", "_id", int, 0, PredefinedSerializer()),
1845
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
1846
+ FieldMetadata("title", "title", "_title", str, "", PredefinedSerializer()),
1847
+ FieldMetadata("author", "author", "_author", str, "", PredefinedSerializer()),
1848
+ FieldMetadata("slug", "slug", "_slug", str, "", PredefinedSerializer()),
1849
+ FieldMetadata("lastRunTime", "last_run_time", "_last_run_time", datetime, None, DateTimeSerializer()),
1850
+ FieldMetadata("language", "language", "_language", str, None, PredefinedSerializer(), optional=True),
1851
+ FieldMetadata("kernelType", "kernel_type", "_kernel_type", str, None, PredefinedSerializer(), optional=True),
1852
+ FieldMetadata("isPrivate", "is_private", "_is_private", bool, None, PredefinedSerializer(), optional=True),
1853
+ FieldMetadata("enableGpu", "enable_gpu", "_enable_gpu", bool, None, PredefinedSerializer(), optional=True),
1854
+ FieldMetadata("enableTpu", "enable_tpu", "_enable_tpu", bool, None, PredefinedSerializer(), optional=True),
1855
+ FieldMetadata("enableInternet", "enable_internet", "_enable_internet", bool, None, PredefinedSerializer(), optional=True),
1856
+ FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
1857
+ FieldMetadata("datasetDataSources", "dataset_data_sources", "_dataset_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1858
+ FieldMetadata("kernelDataSources", "kernel_data_sources", "_kernel_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1859
+ FieldMetadata("competitionDataSources", "competition_data_sources", "_competition_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1860
+ FieldMetadata("modelDataSources", "model_data_sources", "_model_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1861
+ FieldMetadata("totalVotes", "total_votes", "_total_votes", int, 0, PredefinedSerializer()),
1862
+ FieldMetadata("currentVersionNumber", "current_version_number", "_current_version_number", int, None, PredefinedSerializer(), optional=True),
1863
+ ]
1864
+
1865
+ ApiListKernelFilesRequest._fields = [
1866
+ FieldMetadata("userName", "user_name", "_user_name", str, "", PredefinedSerializer()),
1867
+ FieldMetadata("kernelSlug", "kernel_slug", "_kernel_slug", str, "", PredefinedSerializer()),
1868
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
1869
+ FieldMetadata("pageToken", "page_token", "_page_token", str, None, PredefinedSerializer(), optional=True),
1870
+ ]
1871
+
1872
+ ApiListKernelFilesResponse._fields = [
1873
+ FieldMetadata("files", "files", "_files", ApiListKernelFilesItem, [], ListSerializer(KaggleObjectSerializer())),
1874
+ FieldMetadata("nextPageToken", "next_page_token", "_next_page_token", str, None, PredefinedSerializer(), optional=True),
1875
+ ]
1876
+
1877
+ ApiListKernelSessionOutputRequest._fields = [
1878
+ FieldMetadata("userName", "user_name", "_user_name", str, "", PredefinedSerializer()),
1879
+ FieldMetadata("kernelSlug", "kernel_slug", "_kernel_slug", str, "", PredefinedSerializer()),
1880
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
1881
+ FieldMetadata("pageToken", "page_token", "_page_token", str, None, PredefinedSerializer(), optional=True),
1882
+ ]
1883
+
1884
+ ApiListKernelSessionOutputResponse._fields = [
1885
+ FieldMetadata("files", "files", "_files", ApiKernelSessionOutputFile, [], ListSerializer(KaggleObjectSerializer())),
1886
+ FieldMetadata("log", "log", "_log", str, None, PredefinedSerializer(), optional=True),
1887
+ FieldMetadata("nextPageToken", "next_page_token", "_next_page_token", str, None, PredefinedSerializer(), optional=True),
1888
+ ]
1889
+
1890
+ ApiListKernelsRequest._fields = [
1891
+ FieldMetadata("competition", "competition", "_competition", str, None, PredefinedSerializer(), optional=True),
1892
+ FieldMetadata("dataset", "dataset", "_dataset", str, None, PredefinedSerializer(), optional=True),
1893
+ FieldMetadata("parentKernel", "parent_kernel", "_parent_kernel", str, None, PredefinedSerializer(), optional=True),
1894
+ FieldMetadata("group", "group", "_group", KernelsListViewType, KernelsListViewType.KERNELS_LIST_VIEW_TYPE_UNSPECIFIED, EnumSerializer()),
1895
+ FieldMetadata("kernelType", "kernel_type", "_kernel_type", str, None, PredefinedSerializer(), optional=True),
1896
+ FieldMetadata("language", "language", "_language", str, None, PredefinedSerializer(), optional=True),
1897
+ FieldMetadata("outputType", "output_type", "_output_type", str, None, PredefinedSerializer(), optional=True),
1898
+ FieldMetadata("search", "search", "_search", str, None, PredefinedSerializer(), optional=True),
1899
+ FieldMetadata("sortBy", "sort_by", "_sort_by", KernelsListSortType, KernelsListSortType.HOTNESS, EnumSerializer()),
1900
+ FieldMetadata("user", "user", "_user", str, None, PredefinedSerializer(), optional=True),
1901
+ FieldMetadata("page", "page", "_page", int, None, PredefinedSerializer(), optional=True),
1902
+ FieldMetadata("pageSize", "page_size", "_page_size", int, None, PredefinedSerializer(), optional=True),
1903
+ ]
1904
+
1905
+ ApiListKernelsResponse._fields = [
1906
+ FieldMetadata("kernels", "kernels", "_kernels", ApiKernelMetadata, [], ListSerializer(KaggleObjectSerializer())),
1907
+ ]
1908
+
1909
+ ApiSaveKernelRequest._fields = [
1910
+ FieldMetadata("id", "id", "_id", int, None, PredefinedSerializer(), optional=True),
1911
+ FieldMetadata("slug", "slug", "_slug", str, None, PredefinedSerializer(), optional=True),
1912
+ FieldMetadata("newTitle", "new_title", "_new_title", str, None, PredefinedSerializer(), optional=True),
1913
+ FieldMetadata("text", "text", "_text", str, None, PredefinedSerializer(), optional=True),
1914
+ FieldMetadata("language", "language", "_language", str, None, PredefinedSerializer(), optional=True),
1915
+ FieldMetadata("kernelType", "kernel_type", "_kernel_type", str, None, PredefinedSerializer(), optional=True),
1916
+ FieldMetadata("datasetDataSources", "dataset_data_sources", "_dataset_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1917
+ FieldMetadata("kernelDataSources", "kernel_data_sources", "_kernel_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1918
+ FieldMetadata("competitionDataSources", "competition_data_sources", "_competition_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1919
+ FieldMetadata("categoryIds", "category_ids", "_category_ids", str, [], ListSerializer(PredefinedSerializer())),
1920
+ FieldMetadata("isPrivate", "is_private", "_is_private", bool, None, PredefinedSerializer(), optional=True),
1921
+ FieldMetadata("enableGpu", "enable_gpu", "_enable_gpu", bool, None, PredefinedSerializer(), optional=True),
1922
+ FieldMetadata("enableTpu", "enable_tpu", "_enable_tpu", bool, None, PredefinedSerializer(), optional=True),
1923
+ FieldMetadata("enableInternet", "enable_internet", "_enable_internet", bool, None, PredefinedSerializer(), optional=True),
1924
+ FieldMetadata("dockerImagePinningType", "docker_image_pinning_type", "_docker_image_pinning_type", str, None, PredefinedSerializer(), optional=True),
1925
+ FieldMetadata("modelDataSources", "model_data_sources", "_model_data_sources", str, [], ListSerializer(PredefinedSerializer())),
1926
+ FieldMetadata("sessionTimeoutSeconds", "session_timeout_seconds", "_session_timeout_seconds", int, None, PredefinedSerializer(), optional=True),
1927
+ ]
1928
+
1929
+ ApiSaveKernelResponse._fields = [
1930
+ FieldMetadata("ref", "ref", "_ref", str, "", PredefinedSerializer()),
1931
+ FieldMetadata("url", "url", "_url", str, "", PredefinedSerializer()),
1932
+ FieldMetadata("versionNumber", "version_number", "_version_number", int, None, PredefinedSerializer(), optional=True),
1933
+ FieldMetadata("error", "error", "_error", str, None, PredefinedSerializer(), optional=True),
1934
+ FieldMetadata("invalidTags", "invalid_tags", "_invalid_tags", str, [], ListSerializer(PredefinedSerializer())),
1935
+ FieldMetadata("invalidDatasetSources", "invalid_dataset_sources", "_invalid_dataset_sources", str, [], ListSerializer(PredefinedSerializer())),
1936
+ FieldMetadata("invalidCompetitionSources", "invalid_competition_sources", "_invalid_competition_sources", str, [], ListSerializer(PredefinedSerializer())),
1937
+ FieldMetadata("invalidKernelSources", "invalid_kernel_sources", "_invalid_kernel_sources", str, [], ListSerializer(PredefinedSerializer())),
1938
+ FieldMetadata("invalidModelSources", "invalid_model_sources", "_invalid_model_sources", str, [], ListSerializer(PredefinedSerializer())),
1939
+ ]
1940
+
1941
+ ApiKernelSessionOutputFile._fields = [
1942
+ FieldMetadata("url", "url", "_url", str, None, PredefinedSerializer(), optional=True),
1943
+ FieldMetadata("fileName", "file_name", "_file_name", str, None, PredefinedSerializer(), optional=True),
1944
+ ]
1945
+
1946
+ ApiListKernelFilesItem._fields = [
1947
+ FieldMetadata("name", "name", "_name", str, "", PredefinedSerializer()),
1948
+ FieldMetadata("size", "size", "_size", int, 0, PredefinedSerializer()),
1949
+ FieldMetadata("creationDate", "creation_date", "_creation_date", str, "", PredefinedSerializer()),
1950
+ ]
1951
+