pulumi-oci 1.19.0a1705698401__py3-none-any.whl → 1.20.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.
@@ -0,0 +1,858 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['ModelArgs', 'Model']
15
+
16
+ @pulumi.input_type
17
+ class ModelArgs:
18
+ def __init__(__self__, *,
19
+ base_model_id: pulumi.Input[str],
20
+ compartment_id: pulumi.Input[str],
21
+ fine_tune_details: pulumi.Input['ModelFineTuneDetailsArgs'],
22
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
23
+ description: Optional[pulumi.Input[str]] = None,
24
+ display_name: Optional[pulumi.Input[str]] = None,
25
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
26
+ vendor: Optional[pulumi.Input[str]] = None,
27
+ version: Optional[pulumi.Input[str]] = None):
28
+ """
29
+ The set of arguments for constructing a Model resource.
30
+ :param pulumi.Input[str] base_model_id: The OCID of the base model that's used for fine-tuning.
31
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
32
+ :param pulumi.Input['ModelFineTuneDetailsArgs'] fine_tune_details: Details about fine-tuning a custom model.
33
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
34
+ :param pulumi.Input[str] description: (Updatable) An optional description of the model.
35
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name.
36
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
37
+ :param pulumi.Input[str] vendor: (Updatable) The provider of the model.
38
+ :param pulumi.Input[str] version: (Updatable) The version of the model.
39
+
40
+
41
+ ** IMPORTANT **
42
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
43
+ """
44
+ pulumi.set(__self__, "base_model_id", base_model_id)
45
+ pulumi.set(__self__, "compartment_id", compartment_id)
46
+ pulumi.set(__self__, "fine_tune_details", fine_tune_details)
47
+ if defined_tags is not None:
48
+ pulumi.set(__self__, "defined_tags", defined_tags)
49
+ if description is not None:
50
+ pulumi.set(__self__, "description", description)
51
+ if display_name is not None:
52
+ pulumi.set(__self__, "display_name", display_name)
53
+ if freeform_tags is not None:
54
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
55
+ if vendor is not None:
56
+ pulumi.set(__self__, "vendor", vendor)
57
+ if version is not None:
58
+ pulumi.set(__self__, "version", version)
59
+
60
+ @property
61
+ @pulumi.getter(name="baseModelId")
62
+ def base_model_id(self) -> pulumi.Input[str]:
63
+ """
64
+ The OCID of the base model that's used for fine-tuning.
65
+ """
66
+ return pulumi.get(self, "base_model_id")
67
+
68
+ @base_model_id.setter
69
+ def base_model_id(self, value: pulumi.Input[str]):
70
+ pulumi.set(self, "base_model_id", value)
71
+
72
+ @property
73
+ @pulumi.getter(name="compartmentId")
74
+ def compartment_id(self) -> pulumi.Input[str]:
75
+ """
76
+ (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
77
+ """
78
+ return pulumi.get(self, "compartment_id")
79
+
80
+ @compartment_id.setter
81
+ def compartment_id(self, value: pulumi.Input[str]):
82
+ pulumi.set(self, "compartment_id", value)
83
+
84
+ @property
85
+ @pulumi.getter(name="fineTuneDetails")
86
+ def fine_tune_details(self) -> pulumi.Input['ModelFineTuneDetailsArgs']:
87
+ """
88
+ Details about fine-tuning a custom model.
89
+ """
90
+ return pulumi.get(self, "fine_tune_details")
91
+
92
+ @fine_tune_details.setter
93
+ def fine_tune_details(self, value: pulumi.Input['ModelFineTuneDetailsArgs']):
94
+ pulumi.set(self, "fine_tune_details", value)
95
+
96
+ @property
97
+ @pulumi.getter(name="definedTags")
98
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
99
+ """
100
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
101
+ """
102
+ return pulumi.get(self, "defined_tags")
103
+
104
+ @defined_tags.setter
105
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
106
+ pulumi.set(self, "defined_tags", value)
107
+
108
+ @property
109
+ @pulumi.getter
110
+ def description(self) -> Optional[pulumi.Input[str]]:
111
+ """
112
+ (Updatable) An optional description of the model.
113
+ """
114
+ return pulumi.get(self, "description")
115
+
116
+ @description.setter
117
+ def description(self, value: Optional[pulumi.Input[str]]):
118
+ pulumi.set(self, "description", value)
119
+
120
+ @property
121
+ @pulumi.getter(name="displayName")
122
+ def display_name(self) -> Optional[pulumi.Input[str]]:
123
+ """
124
+ (Updatable) A user-friendly name.
125
+ """
126
+ return pulumi.get(self, "display_name")
127
+
128
+ @display_name.setter
129
+ def display_name(self, value: Optional[pulumi.Input[str]]):
130
+ pulumi.set(self, "display_name", value)
131
+
132
+ @property
133
+ @pulumi.getter(name="freeformTags")
134
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
135
+ """
136
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
137
+ """
138
+ return pulumi.get(self, "freeform_tags")
139
+
140
+ @freeform_tags.setter
141
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
142
+ pulumi.set(self, "freeform_tags", value)
143
+
144
+ @property
145
+ @pulumi.getter
146
+ def vendor(self) -> Optional[pulumi.Input[str]]:
147
+ """
148
+ (Updatable) The provider of the model.
149
+ """
150
+ return pulumi.get(self, "vendor")
151
+
152
+ @vendor.setter
153
+ def vendor(self, value: Optional[pulumi.Input[str]]):
154
+ pulumi.set(self, "vendor", value)
155
+
156
+ @property
157
+ @pulumi.getter
158
+ def version(self) -> Optional[pulumi.Input[str]]:
159
+ """
160
+ (Updatable) The version of the model.
161
+
162
+
163
+ ** IMPORTANT **
164
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
165
+ """
166
+ return pulumi.get(self, "version")
167
+
168
+ @version.setter
169
+ def version(self, value: Optional[pulumi.Input[str]]):
170
+ pulumi.set(self, "version", value)
171
+
172
+
173
+ @pulumi.input_type
174
+ class _ModelState:
175
+ def __init__(__self__, *,
176
+ base_model_id: Optional[pulumi.Input[str]] = None,
177
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
178
+ compartment_id: Optional[pulumi.Input[str]] = None,
179
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
180
+ description: Optional[pulumi.Input[str]] = None,
181
+ display_name: Optional[pulumi.Input[str]] = None,
182
+ fine_tune_details: Optional[pulumi.Input['ModelFineTuneDetailsArgs']] = None,
183
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
184
+ is_long_term_supported: Optional[pulumi.Input[bool]] = None,
185
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
186
+ model_metrics: Optional[pulumi.Input[Sequence[pulumi.Input['ModelModelMetricArgs']]]] = None,
187
+ state: Optional[pulumi.Input[str]] = None,
188
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
189
+ time_created: Optional[pulumi.Input[str]] = None,
190
+ time_deprecated: Optional[pulumi.Input[str]] = None,
191
+ time_updated: Optional[pulumi.Input[str]] = None,
192
+ type: Optional[pulumi.Input[str]] = None,
193
+ vendor: Optional[pulumi.Input[str]] = None,
194
+ version: Optional[pulumi.Input[str]] = None):
195
+ """
196
+ Input properties used for looking up and filtering Model resources.
197
+ :param pulumi.Input[str] base_model_id: The OCID of the base model that's used for fine-tuning.
198
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: Describes what this model can be used for.
199
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
200
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
201
+ :param pulumi.Input[str] description: (Updatable) An optional description of the model.
202
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name.
203
+ :param pulumi.Input['ModelFineTuneDetailsArgs'] fine_tune_details: Details about fine-tuning a custom model.
204
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
205
+ :param pulumi.Input[bool] is_long_term_supported: Whether a model is supported long-term. Only applicable to base models.
206
+ :param pulumi.Input[str] lifecycle_details: A message describing the current state of the model in more detail that can provide actionable information.
207
+ :param pulumi.Input[Sequence[pulumi.Input['ModelModelMetricArgs']]] model_metrics: Model metrics during the creation of a new model.
208
+ :param pulumi.Input[str] state: The lifecycle state of the model.
209
+ :param pulumi.Input[Mapping[str, Any]] system_tags: System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
210
+ :param pulumi.Input[str] time_created: The date and time that the model was created in the format of an RFC3339 datetime string.
211
+ :param pulumi.Input[str] time_deprecated: Corresponds to the time when the custom model and its associated foundation model will be deprecated.
212
+ :param pulumi.Input[str] time_updated: The date and time that the model was updated in the format of an RFC3339 datetime string.
213
+ :param pulumi.Input[str] type: The model type indicating whether this is a pretrained/base model or a custom/fine-tuned model.
214
+ :param pulumi.Input[str] vendor: (Updatable) The provider of the model.
215
+ :param pulumi.Input[str] version: (Updatable) The version of the model.
216
+
217
+
218
+ ** IMPORTANT **
219
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
220
+ """
221
+ if base_model_id is not None:
222
+ pulumi.set(__self__, "base_model_id", base_model_id)
223
+ if capabilities is not None:
224
+ pulumi.set(__self__, "capabilities", capabilities)
225
+ if compartment_id is not None:
226
+ pulumi.set(__self__, "compartment_id", compartment_id)
227
+ if defined_tags is not None:
228
+ pulumi.set(__self__, "defined_tags", defined_tags)
229
+ if description is not None:
230
+ pulumi.set(__self__, "description", description)
231
+ if display_name is not None:
232
+ pulumi.set(__self__, "display_name", display_name)
233
+ if fine_tune_details is not None:
234
+ pulumi.set(__self__, "fine_tune_details", fine_tune_details)
235
+ if freeform_tags is not None:
236
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
237
+ if is_long_term_supported is not None:
238
+ pulumi.set(__self__, "is_long_term_supported", is_long_term_supported)
239
+ if lifecycle_details is not None:
240
+ pulumi.set(__self__, "lifecycle_details", lifecycle_details)
241
+ if model_metrics is not None:
242
+ pulumi.set(__self__, "model_metrics", model_metrics)
243
+ if state is not None:
244
+ pulumi.set(__self__, "state", state)
245
+ if system_tags is not None:
246
+ pulumi.set(__self__, "system_tags", system_tags)
247
+ if time_created is not None:
248
+ pulumi.set(__self__, "time_created", time_created)
249
+ if time_deprecated is not None:
250
+ pulumi.set(__self__, "time_deprecated", time_deprecated)
251
+ if time_updated is not None:
252
+ pulumi.set(__self__, "time_updated", time_updated)
253
+ if type is not None:
254
+ pulumi.set(__self__, "type", type)
255
+ if vendor is not None:
256
+ pulumi.set(__self__, "vendor", vendor)
257
+ if version is not None:
258
+ pulumi.set(__self__, "version", version)
259
+
260
+ @property
261
+ @pulumi.getter(name="baseModelId")
262
+ def base_model_id(self) -> Optional[pulumi.Input[str]]:
263
+ """
264
+ The OCID of the base model that's used for fine-tuning.
265
+ """
266
+ return pulumi.get(self, "base_model_id")
267
+
268
+ @base_model_id.setter
269
+ def base_model_id(self, value: Optional[pulumi.Input[str]]):
270
+ pulumi.set(self, "base_model_id", value)
271
+
272
+ @property
273
+ @pulumi.getter
274
+ def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
275
+ """
276
+ Describes what this model can be used for.
277
+ """
278
+ return pulumi.get(self, "capabilities")
279
+
280
+ @capabilities.setter
281
+ def capabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
282
+ pulumi.set(self, "capabilities", value)
283
+
284
+ @property
285
+ @pulumi.getter(name="compartmentId")
286
+ def compartment_id(self) -> Optional[pulumi.Input[str]]:
287
+ """
288
+ (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
289
+ """
290
+ return pulumi.get(self, "compartment_id")
291
+
292
+ @compartment_id.setter
293
+ def compartment_id(self, value: Optional[pulumi.Input[str]]):
294
+ pulumi.set(self, "compartment_id", value)
295
+
296
+ @property
297
+ @pulumi.getter(name="definedTags")
298
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
299
+ """
300
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
301
+ """
302
+ return pulumi.get(self, "defined_tags")
303
+
304
+ @defined_tags.setter
305
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
306
+ pulumi.set(self, "defined_tags", value)
307
+
308
+ @property
309
+ @pulumi.getter
310
+ def description(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ (Updatable) An optional description of the model.
313
+ """
314
+ return pulumi.get(self, "description")
315
+
316
+ @description.setter
317
+ def description(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "description", value)
319
+
320
+ @property
321
+ @pulumi.getter(name="displayName")
322
+ def display_name(self) -> Optional[pulumi.Input[str]]:
323
+ """
324
+ (Updatable) A user-friendly name.
325
+ """
326
+ return pulumi.get(self, "display_name")
327
+
328
+ @display_name.setter
329
+ def display_name(self, value: Optional[pulumi.Input[str]]):
330
+ pulumi.set(self, "display_name", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="fineTuneDetails")
334
+ def fine_tune_details(self) -> Optional[pulumi.Input['ModelFineTuneDetailsArgs']]:
335
+ """
336
+ Details about fine-tuning a custom model.
337
+ """
338
+ return pulumi.get(self, "fine_tune_details")
339
+
340
+ @fine_tune_details.setter
341
+ def fine_tune_details(self, value: Optional[pulumi.Input['ModelFineTuneDetailsArgs']]):
342
+ pulumi.set(self, "fine_tune_details", value)
343
+
344
+ @property
345
+ @pulumi.getter(name="freeformTags")
346
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
347
+ """
348
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
349
+ """
350
+ return pulumi.get(self, "freeform_tags")
351
+
352
+ @freeform_tags.setter
353
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
354
+ pulumi.set(self, "freeform_tags", value)
355
+
356
+ @property
357
+ @pulumi.getter(name="isLongTermSupported")
358
+ def is_long_term_supported(self) -> Optional[pulumi.Input[bool]]:
359
+ """
360
+ Whether a model is supported long-term. Only applicable to base models.
361
+ """
362
+ return pulumi.get(self, "is_long_term_supported")
363
+
364
+ @is_long_term_supported.setter
365
+ def is_long_term_supported(self, value: Optional[pulumi.Input[bool]]):
366
+ pulumi.set(self, "is_long_term_supported", value)
367
+
368
+ @property
369
+ @pulumi.getter(name="lifecycleDetails")
370
+ def lifecycle_details(self) -> Optional[pulumi.Input[str]]:
371
+ """
372
+ A message describing the current state of the model in more detail that can provide actionable information.
373
+ """
374
+ return pulumi.get(self, "lifecycle_details")
375
+
376
+ @lifecycle_details.setter
377
+ def lifecycle_details(self, value: Optional[pulumi.Input[str]]):
378
+ pulumi.set(self, "lifecycle_details", value)
379
+
380
+ @property
381
+ @pulumi.getter(name="modelMetrics")
382
+ def model_metrics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ModelModelMetricArgs']]]]:
383
+ """
384
+ Model metrics during the creation of a new model.
385
+ """
386
+ return pulumi.get(self, "model_metrics")
387
+
388
+ @model_metrics.setter
389
+ def model_metrics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ModelModelMetricArgs']]]]):
390
+ pulumi.set(self, "model_metrics", value)
391
+
392
+ @property
393
+ @pulumi.getter
394
+ def state(self) -> Optional[pulumi.Input[str]]:
395
+ """
396
+ The lifecycle state of the model.
397
+ """
398
+ return pulumi.get(self, "state")
399
+
400
+ @state.setter
401
+ def state(self, value: Optional[pulumi.Input[str]]):
402
+ pulumi.set(self, "state", value)
403
+
404
+ @property
405
+ @pulumi.getter(name="systemTags")
406
+ def system_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
407
+ """
408
+ System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
409
+ """
410
+ return pulumi.get(self, "system_tags")
411
+
412
+ @system_tags.setter
413
+ def system_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
414
+ pulumi.set(self, "system_tags", value)
415
+
416
+ @property
417
+ @pulumi.getter(name="timeCreated")
418
+ def time_created(self) -> Optional[pulumi.Input[str]]:
419
+ """
420
+ The date and time that the model was created in the format of an RFC3339 datetime string.
421
+ """
422
+ return pulumi.get(self, "time_created")
423
+
424
+ @time_created.setter
425
+ def time_created(self, value: Optional[pulumi.Input[str]]):
426
+ pulumi.set(self, "time_created", value)
427
+
428
+ @property
429
+ @pulumi.getter(name="timeDeprecated")
430
+ def time_deprecated(self) -> Optional[pulumi.Input[str]]:
431
+ """
432
+ Corresponds to the time when the custom model and its associated foundation model will be deprecated.
433
+ """
434
+ return pulumi.get(self, "time_deprecated")
435
+
436
+ @time_deprecated.setter
437
+ def time_deprecated(self, value: Optional[pulumi.Input[str]]):
438
+ pulumi.set(self, "time_deprecated", value)
439
+
440
+ @property
441
+ @pulumi.getter(name="timeUpdated")
442
+ def time_updated(self) -> Optional[pulumi.Input[str]]:
443
+ """
444
+ The date and time that the model was updated in the format of an RFC3339 datetime string.
445
+ """
446
+ return pulumi.get(self, "time_updated")
447
+
448
+ @time_updated.setter
449
+ def time_updated(self, value: Optional[pulumi.Input[str]]):
450
+ pulumi.set(self, "time_updated", value)
451
+
452
+ @property
453
+ @pulumi.getter
454
+ def type(self) -> Optional[pulumi.Input[str]]:
455
+ """
456
+ The model type indicating whether this is a pretrained/base model or a custom/fine-tuned model.
457
+ """
458
+ return pulumi.get(self, "type")
459
+
460
+ @type.setter
461
+ def type(self, value: Optional[pulumi.Input[str]]):
462
+ pulumi.set(self, "type", value)
463
+
464
+ @property
465
+ @pulumi.getter
466
+ def vendor(self) -> Optional[pulumi.Input[str]]:
467
+ """
468
+ (Updatable) The provider of the model.
469
+ """
470
+ return pulumi.get(self, "vendor")
471
+
472
+ @vendor.setter
473
+ def vendor(self, value: Optional[pulumi.Input[str]]):
474
+ pulumi.set(self, "vendor", value)
475
+
476
+ @property
477
+ @pulumi.getter
478
+ def version(self) -> Optional[pulumi.Input[str]]:
479
+ """
480
+ (Updatable) The version of the model.
481
+
482
+
483
+ ** IMPORTANT **
484
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
485
+ """
486
+ return pulumi.get(self, "version")
487
+
488
+ @version.setter
489
+ def version(self, value: Optional[pulumi.Input[str]]):
490
+ pulumi.set(self, "version", value)
491
+
492
+
493
+ class Model(pulumi.CustomResource):
494
+ @overload
495
+ def __init__(__self__,
496
+ resource_name: str,
497
+ opts: Optional[pulumi.ResourceOptions] = None,
498
+ base_model_id: Optional[pulumi.Input[str]] = None,
499
+ compartment_id: Optional[pulumi.Input[str]] = None,
500
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
501
+ description: Optional[pulumi.Input[str]] = None,
502
+ display_name: Optional[pulumi.Input[str]] = None,
503
+ fine_tune_details: Optional[pulumi.Input[pulumi.InputType['ModelFineTuneDetailsArgs']]] = None,
504
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
505
+ vendor: Optional[pulumi.Input[str]] = None,
506
+ version: Optional[pulumi.Input[str]] = None,
507
+ __props__=None):
508
+ """
509
+ This resource provides the Model resource in Oracle Cloud Infrastructure Generative Ai service.
510
+
511
+ Creates a custom model by fine-tuning a base model with your own dataset. You can create a new custom models or create a new version of existing custom model..
512
+
513
+ The header contains an opc-work-request-id, which is the id for the WorkRequest that tracks the model creation progress.
514
+
515
+ ## Import
516
+
517
+ Models can be imported using the `id`, e.g.
518
+
519
+ ```sh
520
+ $ pulumi import oci:GenerativeAi/model:Model test_model "id"
521
+ ```
522
+
523
+ :param str resource_name: The name of the resource.
524
+ :param pulumi.ResourceOptions opts: Options for the resource.
525
+ :param pulumi.Input[str] base_model_id: The OCID of the base model that's used for fine-tuning.
526
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
527
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
528
+ :param pulumi.Input[str] description: (Updatable) An optional description of the model.
529
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name.
530
+ :param pulumi.Input[pulumi.InputType['ModelFineTuneDetailsArgs']] fine_tune_details: Details about fine-tuning a custom model.
531
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
532
+ :param pulumi.Input[str] vendor: (Updatable) The provider of the model.
533
+ :param pulumi.Input[str] version: (Updatable) The version of the model.
534
+
535
+
536
+ ** IMPORTANT **
537
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
538
+ """
539
+ ...
540
+ @overload
541
+ def __init__(__self__,
542
+ resource_name: str,
543
+ args: ModelArgs,
544
+ opts: Optional[pulumi.ResourceOptions] = None):
545
+ """
546
+ This resource provides the Model resource in Oracle Cloud Infrastructure Generative Ai service.
547
+
548
+ Creates a custom model by fine-tuning a base model with your own dataset. You can create a new custom models or create a new version of existing custom model..
549
+
550
+ The header contains an opc-work-request-id, which is the id for the WorkRequest that tracks the model creation progress.
551
+
552
+ ## Import
553
+
554
+ Models can be imported using the `id`, e.g.
555
+
556
+ ```sh
557
+ $ pulumi import oci:GenerativeAi/model:Model test_model "id"
558
+ ```
559
+
560
+ :param str resource_name: The name of the resource.
561
+ :param ModelArgs args: The arguments to use to populate this resource's properties.
562
+ :param pulumi.ResourceOptions opts: Options for the resource.
563
+ """
564
+ ...
565
+ def __init__(__self__, resource_name: str, *args, **kwargs):
566
+ resource_args, opts = _utilities.get_resource_args_opts(ModelArgs, pulumi.ResourceOptions, *args, **kwargs)
567
+ if resource_args is not None:
568
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
569
+ else:
570
+ __self__._internal_init(resource_name, *args, **kwargs)
571
+
572
+ def _internal_init(__self__,
573
+ resource_name: str,
574
+ opts: Optional[pulumi.ResourceOptions] = None,
575
+ base_model_id: Optional[pulumi.Input[str]] = None,
576
+ compartment_id: Optional[pulumi.Input[str]] = None,
577
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
578
+ description: Optional[pulumi.Input[str]] = None,
579
+ display_name: Optional[pulumi.Input[str]] = None,
580
+ fine_tune_details: Optional[pulumi.Input[pulumi.InputType['ModelFineTuneDetailsArgs']]] = None,
581
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
582
+ vendor: Optional[pulumi.Input[str]] = None,
583
+ version: Optional[pulumi.Input[str]] = None,
584
+ __props__=None):
585
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
586
+ if not isinstance(opts, pulumi.ResourceOptions):
587
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
588
+ if opts.id is None:
589
+ if __props__ is not None:
590
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
591
+ __props__ = ModelArgs.__new__(ModelArgs)
592
+
593
+ if base_model_id is None and not opts.urn:
594
+ raise TypeError("Missing required property 'base_model_id'")
595
+ __props__.__dict__["base_model_id"] = base_model_id
596
+ if compartment_id is None and not opts.urn:
597
+ raise TypeError("Missing required property 'compartment_id'")
598
+ __props__.__dict__["compartment_id"] = compartment_id
599
+ __props__.__dict__["defined_tags"] = defined_tags
600
+ __props__.__dict__["description"] = description
601
+ __props__.__dict__["display_name"] = display_name
602
+ if fine_tune_details is None and not opts.urn:
603
+ raise TypeError("Missing required property 'fine_tune_details'")
604
+ __props__.__dict__["fine_tune_details"] = fine_tune_details
605
+ __props__.__dict__["freeform_tags"] = freeform_tags
606
+ __props__.__dict__["vendor"] = vendor
607
+ __props__.__dict__["version"] = version
608
+ __props__.__dict__["capabilities"] = None
609
+ __props__.__dict__["is_long_term_supported"] = None
610
+ __props__.__dict__["lifecycle_details"] = None
611
+ __props__.__dict__["model_metrics"] = None
612
+ __props__.__dict__["state"] = None
613
+ __props__.__dict__["system_tags"] = None
614
+ __props__.__dict__["time_created"] = None
615
+ __props__.__dict__["time_deprecated"] = None
616
+ __props__.__dict__["time_updated"] = None
617
+ __props__.__dict__["type"] = None
618
+ super(Model, __self__).__init__(
619
+ 'oci:GenerativeAi/model:Model',
620
+ resource_name,
621
+ __props__,
622
+ opts)
623
+
624
+ @staticmethod
625
+ def get(resource_name: str,
626
+ id: pulumi.Input[str],
627
+ opts: Optional[pulumi.ResourceOptions] = None,
628
+ base_model_id: Optional[pulumi.Input[str]] = None,
629
+ capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
630
+ compartment_id: Optional[pulumi.Input[str]] = None,
631
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
632
+ description: Optional[pulumi.Input[str]] = None,
633
+ display_name: Optional[pulumi.Input[str]] = None,
634
+ fine_tune_details: Optional[pulumi.Input[pulumi.InputType['ModelFineTuneDetailsArgs']]] = None,
635
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
636
+ is_long_term_supported: Optional[pulumi.Input[bool]] = None,
637
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
638
+ model_metrics: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ModelModelMetricArgs']]]]] = None,
639
+ state: Optional[pulumi.Input[str]] = None,
640
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
641
+ time_created: Optional[pulumi.Input[str]] = None,
642
+ time_deprecated: Optional[pulumi.Input[str]] = None,
643
+ time_updated: Optional[pulumi.Input[str]] = None,
644
+ type: Optional[pulumi.Input[str]] = None,
645
+ vendor: Optional[pulumi.Input[str]] = None,
646
+ version: Optional[pulumi.Input[str]] = None) -> 'Model':
647
+ """
648
+ Get an existing Model resource's state with the given name, id, and optional extra
649
+ properties used to qualify the lookup.
650
+
651
+ :param str resource_name: The unique name of the resulting resource.
652
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
653
+ :param pulumi.ResourceOptions opts: Options for the resource.
654
+ :param pulumi.Input[str] base_model_id: The OCID of the base model that's used for fine-tuning.
655
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] capabilities: Describes what this model can be used for.
656
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
657
+ :param pulumi.Input[Mapping[str, Any]] defined_tags: (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
658
+ :param pulumi.Input[str] description: (Updatable) An optional description of the model.
659
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name.
660
+ :param pulumi.Input[pulumi.InputType['ModelFineTuneDetailsArgs']] fine_tune_details: Details about fine-tuning a custom model.
661
+ :param pulumi.Input[Mapping[str, Any]] freeform_tags: (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
662
+ :param pulumi.Input[bool] is_long_term_supported: Whether a model is supported long-term. Only applicable to base models.
663
+ :param pulumi.Input[str] lifecycle_details: A message describing the current state of the model in more detail that can provide actionable information.
664
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ModelModelMetricArgs']]]] model_metrics: Model metrics during the creation of a new model.
665
+ :param pulumi.Input[str] state: The lifecycle state of the model.
666
+ :param pulumi.Input[Mapping[str, Any]] system_tags: System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
667
+ :param pulumi.Input[str] time_created: The date and time that the model was created in the format of an RFC3339 datetime string.
668
+ :param pulumi.Input[str] time_deprecated: Corresponds to the time when the custom model and its associated foundation model will be deprecated.
669
+ :param pulumi.Input[str] time_updated: The date and time that the model was updated in the format of an RFC3339 datetime string.
670
+ :param pulumi.Input[str] type: The model type indicating whether this is a pretrained/base model or a custom/fine-tuned model.
671
+ :param pulumi.Input[str] vendor: (Updatable) The provider of the model.
672
+ :param pulumi.Input[str] version: (Updatable) The version of the model.
673
+
674
+
675
+ ** IMPORTANT **
676
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
677
+ """
678
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
679
+
680
+ __props__ = _ModelState.__new__(_ModelState)
681
+
682
+ __props__.__dict__["base_model_id"] = base_model_id
683
+ __props__.__dict__["capabilities"] = capabilities
684
+ __props__.__dict__["compartment_id"] = compartment_id
685
+ __props__.__dict__["defined_tags"] = defined_tags
686
+ __props__.__dict__["description"] = description
687
+ __props__.__dict__["display_name"] = display_name
688
+ __props__.__dict__["fine_tune_details"] = fine_tune_details
689
+ __props__.__dict__["freeform_tags"] = freeform_tags
690
+ __props__.__dict__["is_long_term_supported"] = is_long_term_supported
691
+ __props__.__dict__["lifecycle_details"] = lifecycle_details
692
+ __props__.__dict__["model_metrics"] = model_metrics
693
+ __props__.__dict__["state"] = state
694
+ __props__.__dict__["system_tags"] = system_tags
695
+ __props__.__dict__["time_created"] = time_created
696
+ __props__.__dict__["time_deprecated"] = time_deprecated
697
+ __props__.__dict__["time_updated"] = time_updated
698
+ __props__.__dict__["type"] = type
699
+ __props__.__dict__["vendor"] = vendor
700
+ __props__.__dict__["version"] = version
701
+ return Model(resource_name, opts=opts, __props__=__props__)
702
+
703
+ @property
704
+ @pulumi.getter(name="baseModelId")
705
+ def base_model_id(self) -> pulumi.Output[str]:
706
+ """
707
+ The OCID of the base model that's used for fine-tuning.
708
+ """
709
+ return pulumi.get(self, "base_model_id")
710
+
711
+ @property
712
+ @pulumi.getter
713
+ def capabilities(self) -> pulumi.Output[Sequence[str]]:
714
+ """
715
+ Describes what this model can be used for.
716
+ """
717
+ return pulumi.get(self, "capabilities")
718
+
719
+ @property
720
+ @pulumi.getter(name="compartmentId")
721
+ def compartment_id(self) -> pulumi.Output[str]:
722
+ """
723
+ (Updatable) The compartment OCID for fine-tuned models. For pretrained models, this value is null.
724
+ """
725
+ return pulumi.get(self, "compartment_id")
726
+
727
+ @property
728
+ @pulumi.getter(name="definedTags")
729
+ def defined_tags(self) -> pulumi.Output[Mapping[str, Any]]:
730
+ """
731
+ (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
732
+ """
733
+ return pulumi.get(self, "defined_tags")
734
+
735
+ @property
736
+ @pulumi.getter
737
+ def description(self) -> pulumi.Output[str]:
738
+ """
739
+ (Updatable) An optional description of the model.
740
+ """
741
+ return pulumi.get(self, "description")
742
+
743
+ @property
744
+ @pulumi.getter(name="displayName")
745
+ def display_name(self) -> pulumi.Output[str]:
746
+ """
747
+ (Updatable) A user-friendly name.
748
+ """
749
+ return pulumi.get(self, "display_name")
750
+
751
+ @property
752
+ @pulumi.getter(name="fineTuneDetails")
753
+ def fine_tune_details(self) -> pulumi.Output['outputs.ModelFineTuneDetails']:
754
+ """
755
+ Details about fine-tuning a custom model.
756
+ """
757
+ return pulumi.get(self, "fine_tune_details")
758
+
759
+ @property
760
+ @pulumi.getter(name="freeformTags")
761
+ def freeform_tags(self) -> pulumi.Output[Mapping[str, Any]]:
762
+ """
763
+ (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
764
+ """
765
+ return pulumi.get(self, "freeform_tags")
766
+
767
+ @property
768
+ @pulumi.getter(name="isLongTermSupported")
769
+ def is_long_term_supported(self) -> pulumi.Output[bool]:
770
+ """
771
+ Whether a model is supported long-term. Only applicable to base models.
772
+ """
773
+ return pulumi.get(self, "is_long_term_supported")
774
+
775
+ @property
776
+ @pulumi.getter(name="lifecycleDetails")
777
+ def lifecycle_details(self) -> pulumi.Output[str]:
778
+ """
779
+ A message describing the current state of the model in more detail that can provide actionable information.
780
+ """
781
+ return pulumi.get(self, "lifecycle_details")
782
+
783
+ @property
784
+ @pulumi.getter(name="modelMetrics")
785
+ def model_metrics(self) -> pulumi.Output[Sequence['outputs.ModelModelMetric']]:
786
+ """
787
+ Model metrics during the creation of a new model.
788
+ """
789
+ return pulumi.get(self, "model_metrics")
790
+
791
+ @property
792
+ @pulumi.getter
793
+ def state(self) -> pulumi.Output[str]:
794
+ """
795
+ The lifecycle state of the model.
796
+ """
797
+ return pulumi.get(self, "state")
798
+
799
+ @property
800
+ @pulumi.getter(name="systemTags")
801
+ def system_tags(self) -> pulumi.Output[Mapping[str, Any]]:
802
+ """
803
+ System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
804
+ """
805
+ return pulumi.get(self, "system_tags")
806
+
807
+ @property
808
+ @pulumi.getter(name="timeCreated")
809
+ def time_created(self) -> pulumi.Output[str]:
810
+ """
811
+ The date and time that the model was created in the format of an RFC3339 datetime string.
812
+ """
813
+ return pulumi.get(self, "time_created")
814
+
815
+ @property
816
+ @pulumi.getter(name="timeDeprecated")
817
+ def time_deprecated(self) -> pulumi.Output[str]:
818
+ """
819
+ Corresponds to the time when the custom model and its associated foundation model will be deprecated.
820
+ """
821
+ return pulumi.get(self, "time_deprecated")
822
+
823
+ @property
824
+ @pulumi.getter(name="timeUpdated")
825
+ def time_updated(self) -> pulumi.Output[str]:
826
+ """
827
+ The date and time that the model was updated in the format of an RFC3339 datetime string.
828
+ """
829
+ return pulumi.get(self, "time_updated")
830
+
831
+ @property
832
+ @pulumi.getter
833
+ def type(self) -> pulumi.Output[str]:
834
+ """
835
+ The model type indicating whether this is a pretrained/base model or a custom/fine-tuned model.
836
+ """
837
+ return pulumi.get(self, "type")
838
+
839
+ @property
840
+ @pulumi.getter
841
+ def vendor(self) -> pulumi.Output[str]:
842
+ """
843
+ (Updatable) The provider of the model.
844
+ """
845
+ return pulumi.get(self, "vendor")
846
+
847
+ @property
848
+ @pulumi.getter
849
+ def version(self) -> pulumi.Output[str]:
850
+ """
851
+ (Updatable) The version of the model.
852
+
853
+
854
+ ** IMPORTANT **
855
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
856
+ """
857
+ return pulumi.get(self, "version")
858
+