pulumi-oci 1.20.0a1705991859__py3-none-any.whl → 1.21.0a1706309702__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 (31) hide show
  1. pulumi_oci/__init__.py +35 -0
  2. pulumi_oci/core/get_boot_volume_attachments.py +36 -2
  3. pulumi_oci/database/autonomous_database_wallet.py +18 -0
  4. pulumi_oci/database/vm_cluster_network.py +20 -7
  5. pulumi_oci/generativeai/__init__.py +18 -0
  6. pulumi_oci/generativeai/_inputs.py +534 -0
  7. pulumi_oci/generativeai/dedicated_ai_cluster.py +808 -0
  8. pulumi_oci/generativeai/endpoint.py +717 -0
  9. pulumi_oci/generativeai/get_dedicated_ai_cluster.py +288 -0
  10. pulumi_oci/generativeai/get_dedicated_ai_clusters.py +183 -0
  11. pulumi_oci/generativeai/get_endpoint.py +275 -0
  12. pulumi_oci/generativeai/get_endpoints.py +183 -0
  13. pulumi_oci/generativeai/get_model.py +353 -0
  14. pulumi_oci/generativeai/get_models.py +220 -0
  15. pulumi_oci/generativeai/model.py +858 -0
  16. pulumi_oci/generativeai/outputs.py +1721 -0
  17. pulumi_oci/loadbalancer/_inputs.py +12 -0
  18. pulumi_oci/loadbalancer/outputs.py +12 -0
  19. pulumi_oci/marketplace/get_publication.py +14 -1
  20. pulumi_oci/marketplace/outputs.py +11 -0
  21. pulumi_oci/marketplace/publication.py +28 -0
  22. pulumi_oci/stackmonitoring/__init__.py +3 -0
  23. pulumi_oci/stackmonitoring/_inputs.py +143 -0
  24. pulumi_oci/stackmonitoring/get_process_set.py +236 -0
  25. pulumi_oci/stackmonitoring/get_process_sets.py +156 -0
  26. pulumi_oci/stackmonitoring/outputs.py +422 -0
  27. pulumi_oci/stackmonitoring/process_set.py +548 -0
  28. {pulumi_oci-1.20.0a1705991859.dist-info → pulumi_oci-1.21.0a1706309702.dist-info}/METADATA +1 -1
  29. {pulumi_oci-1.20.0a1705991859.dist-info → pulumi_oci-1.21.0a1706309702.dist-info}/RECORD +31 -16
  30. {pulumi_oci-1.20.0a1705991859.dist-info → pulumi_oci-1.21.0a1706309702.dist-info}/WHEEL +0 -0
  31. {pulumi_oci-1.20.0a1705991859.dist-info → pulumi_oci-1.21.0a1706309702.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,808 @@
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__ = ['DedicatedAiClusterArgs', 'DedicatedAiCluster']
15
+
16
+ @pulumi.input_type
17
+ class DedicatedAiClusterArgs:
18
+ def __init__(__self__, *,
19
+ compartment_id: pulumi.Input[str],
20
+ type: pulumi.Input[str],
21
+ unit_count: pulumi.Input[int],
22
+ unit_shape: pulumi.Input[str],
23
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
24
+ description: Optional[pulumi.Input[str]] = None,
25
+ display_name: Optional[pulumi.Input[str]] = None,
26
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None):
27
+ """
28
+ The set of arguments for constructing a DedicatedAiCluster resource.
29
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID to create the dedicated AI cluster in.
30
+ :param pulumi.Input[str] type: The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
31
+
32
+ Allowed values are:
33
+ * HOSTING
34
+ * FINE_TUNING
35
+ :param pulumi.Input[int] unit_count: (Updatable) The number of dedicated units in this AI cluster.
36
+ :param pulumi.Input[str] unit_shape: The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
37
+
38
+ Allowed values are:
39
+ * LARGE_COHERE
40
+ * SMALL_COHERE
41
+ * EMBED_COHERE
42
+ * LLAMA2_70
43
+
44
+
45
+ ** IMPORTANT **
46
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
47
+ :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"}`
48
+ :param pulumi.Input[str] description: (Updatable) An optional description of the dedicated AI cluster.
49
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
50
+ :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"}`
51
+ """
52
+ pulumi.set(__self__, "compartment_id", compartment_id)
53
+ pulumi.set(__self__, "type", type)
54
+ pulumi.set(__self__, "unit_count", unit_count)
55
+ pulumi.set(__self__, "unit_shape", unit_shape)
56
+ if defined_tags is not None:
57
+ pulumi.set(__self__, "defined_tags", defined_tags)
58
+ if description is not None:
59
+ pulumi.set(__self__, "description", description)
60
+ if display_name is not None:
61
+ pulumi.set(__self__, "display_name", display_name)
62
+ if freeform_tags is not None:
63
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
64
+
65
+ @property
66
+ @pulumi.getter(name="compartmentId")
67
+ def compartment_id(self) -> pulumi.Input[str]:
68
+ """
69
+ (Updatable) The compartment OCID to create the dedicated AI cluster in.
70
+ """
71
+ return pulumi.get(self, "compartment_id")
72
+
73
+ @compartment_id.setter
74
+ def compartment_id(self, value: pulumi.Input[str]):
75
+ pulumi.set(self, "compartment_id", value)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def type(self) -> pulumi.Input[str]:
80
+ """
81
+ The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
82
+
83
+ Allowed values are:
84
+ * HOSTING
85
+ * FINE_TUNING
86
+ """
87
+ return pulumi.get(self, "type")
88
+
89
+ @type.setter
90
+ def type(self, value: pulumi.Input[str]):
91
+ pulumi.set(self, "type", value)
92
+
93
+ @property
94
+ @pulumi.getter(name="unitCount")
95
+ def unit_count(self) -> pulumi.Input[int]:
96
+ """
97
+ (Updatable) The number of dedicated units in this AI cluster.
98
+ """
99
+ return pulumi.get(self, "unit_count")
100
+
101
+ @unit_count.setter
102
+ def unit_count(self, value: pulumi.Input[int]):
103
+ pulumi.set(self, "unit_count", value)
104
+
105
+ @property
106
+ @pulumi.getter(name="unitShape")
107
+ def unit_shape(self) -> pulumi.Input[str]:
108
+ """
109
+ The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
110
+
111
+ Allowed values are:
112
+ * LARGE_COHERE
113
+ * SMALL_COHERE
114
+ * EMBED_COHERE
115
+ * LLAMA2_70
116
+
117
+
118
+ ** IMPORTANT **
119
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
120
+ """
121
+ return pulumi.get(self, "unit_shape")
122
+
123
+ @unit_shape.setter
124
+ def unit_shape(self, value: pulumi.Input[str]):
125
+ pulumi.set(self, "unit_shape", value)
126
+
127
+ @property
128
+ @pulumi.getter(name="definedTags")
129
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
130
+ """
131
+ (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"}`
132
+ """
133
+ return pulumi.get(self, "defined_tags")
134
+
135
+ @defined_tags.setter
136
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
137
+ pulumi.set(self, "defined_tags", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def description(self) -> Optional[pulumi.Input[str]]:
142
+ """
143
+ (Updatable) An optional description of the dedicated AI cluster.
144
+ """
145
+ return pulumi.get(self, "description")
146
+
147
+ @description.setter
148
+ def description(self, value: Optional[pulumi.Input[str]]):
149
+ pulumi.set(self, "description", value)
150
+
151
+ @property
152
+ @pulumi.getter(name="displayName")
153
+ def display_name(self) -> Optional[pulumi.Input[str]]:
154
+ """
155
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
156
+ """
157
+ return pulumi.get(self, "display_name")
158
+
159
+ @display_name.setter
160
+ def display_name(self, value: Optional[pulumi.Input[str]]):
161
+ pulumi.set(self, "display_name", value)
162
+
163
+ @property
164
+ @pulumi.getter(name="freeformTags")
165
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
166
+ """
167
+ (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"}`
168
+ """
169
+ return pulumi.get(self, "freeform_tags")
170
+
171
+ @freeform_tags.setter
172
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
173
+ pulumi.set(self, "freeform_tags", value)
174
+
175
+
176
+ @pulumi.input_type
177
+ class _DedicatedAiClusterState:
178
+ def __init__(__self__, *,
179
+ capacities: Optional[pulumi.Input[Sequence[pulumi.Input['DedicatedAiClusterCapacityArgs']]]] = None,
180
+ compartment_id: Optional[pulumi.Input[str]] = None,
181
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
182
+ description: Optional[pulumi.Input[str]] = None,
183
+ display_name: Optional[pulumi.Input[str]] = None,
184
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
185
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
186
+ state: Optional[pulumi.Input[str]] = None,
187
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
188
+ time_created: Optional[pulumi.Input[str]] = None,
189
+ time_updated: Optional[pulumi.Input[str]] = None,
190
+ type: Optional[pulumi.Input[str]] = None,
191
+ unit_count: Optional[pulumi.Input[int]] = None,
192
+ unit_shape: Optional[pulumi.Input[str]] = None):
193
+ """
194
+ Input properties used for looking up and filtering DedicatedAiCluster resources.
195
+ :param pulumi.Input[Sequence[pulumi.Input['DedicatedAiClusterCapacityArgs']]] capacities: The total capacity for a dedicated AI cluster.
196
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID to create the dedicated AI cluster in.
197
+ :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"}`
198
+ :param pulumi.Input[str] description: (Updatable) An optional description of the dedicated AI cluster.
199
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
200
+ :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"}`
201
+ :param pulumi.Input[str] lifecycle_details: A message describing the current state with detail that can provide actionable information.
202
+ :param pulumi.Input[str] state: The current state of the dedicated AI cluster.
203
+ :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"}`
204
+ :param pulumi.Input[str] time_created: The date and time the dedicated AI cluster was created, in the format defined by RFC 3339
205
+ :param pulumi.Input[str] time_updated: The date and time the dedicated AI cluster was updated, in the format defined by RFC 3339
206
+ :param pulumi.Input[str] type: The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
207
+
208
+ Allowed values are:
209
+ * HOSTING
210
+ * FINE_TUNING
211
+ :param pulumi.Input[int] unit_count: (Updatable) The number of dedicated units in this AI cluster.
212
+ :param pulumi.Input[str] unit_shape: The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
213
+
214
+ Allowed values are:
215
+ * LARGE_COHERE
216
+ * SMALL_COHERE
217
+ * EMBED_COHERE
218
+ * LLAMA2_70
219
+
220
+
221
+ ** IMPORTANT **
222
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
223
+ """
224
+ if capacities is not None:
225
+ pulumi.set(__self__, "capacities", capacities)
226
+ if compartment_id is not None:
227
+ pulumi.set(__self__, "compartment_id", compartment_id)
228
+ if defined_tags is not None:
229
+ pulumi.set(__self__, "defined_tags", defined_tags)
230
+ if description is not None:
231
+ pulumi.set(__self__, "description", description)
232
+ if display_name is not None:
233
+ pulumi.set(__self__, "display_name", display_name)
234
+ if freeform_tags is not None:
235
+ pulumi.set(__self__, "freeform_tags", freeform_tags)
236
+ if lifecycle_details is not None:
237
+ pulumi.set(__self__, "lifecycle_details", lifecycle_details)
238
+ if state is not None:
239
+ pulumi.set(__self__, "state", state)
240
+ if system_tags is not None:
241
+ pulumi.set(__self__, "system_tags", system_tags)
242
+ if time_created is not None:
243
+ pulumi.set(__self__, "time_created", time_created)
244
+ if time_updated is not None:
245
+ pulumi.set(__self__, "time_updated", time_updated)
246
+ if type is not None:
247
+ pulumi.set(__self__, "type", type)
248
+ if unit_count is not None:
249
+ pulumi.set(__self__, "unit_count", unit_count)
250
+ if unit_shape is not None:
251
+ pulumi.set(__self__, "unit_shape", unit_shape)
252
+
253
+ @property
254
+ @pulumi.getter
255
+ def capacities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DedicatedAiClusterCapacityArgs']]]]:
256
+ """
257
+ The total capacity for a dedicated AI cluster.
258
+ """
259
+ return pulumi.get(self, "capacities")
260
+
261
+ @capacities.setter
262
+ def capacities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DedicatedAiClusterCapacityArgs']]]]):
263
+ pulumi.set(self, "capacities", value)
264
+
265
+ @property
266
+ @pulumi.getter(name="compartmentId")
267
+ def compartment_id(self) -> Optional[pulumi.Input[str]]:
268
+ """
269
+ (Updatable) The compartment OCID to create the dedicated AI cluster in.
270
+ """
271
+ return pulumi.get(self, "compartment_id")
272
+
273
+ @compartment_id.setter
274
+ def compartment_id(self, value: Optional[pulumi.Input[str]]):
275
+ pulumi.set(self, "compartment_id", value)
276
+
277
+ @property
278
+ @pulumi.getter(name="definedTags")
279
+ def defined_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
280
+ """
281
+ (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"}`
282
+ """
283
+ return pulumi.get(self, "defined_tags")
284
+
285
+ @defined_tags.setter
286
+ def defined_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
287
+ pulumi.set(self, "defined_tags", value)
288
+
289
+ @property
290
+ @pulumi.getter
291
+ def description(self) -> Optional[pulumi.Input[str]]:
292
+ """
293
+ (Updatable) An optional description of the dedicated AI cluster.
294
+ """
295
+ return pulumi.get(self, "description")
296
+
297
+ @description.setter
298
+ def description(self, value: Optional[pulumi.Input[str]]):
299
+ pulumi.set(self, "description", value)
300
+
301
+ @property
302
+ @pulumi.getter(name="displayName")
303
+ def display_name(self) -> Optional[pulumi.Input[str]]:
304
+ """
305
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
306
+ """
307
+ return pulumi.get(self, "display_name")
308
+
309
+ @display_name.setter
310
+ def display_name(self, value: Optional[pulumi.Input[str]]):
311
+ pulumi.set(self, "display_name", value)
312
+
313
+ @property
314
+ @pulumi.getter(name="freeformTags")
315
+ def freeform_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
316
+ """
317
+ (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"}`
318
+ """
319
+ return pulumi.get(self, "freeform_tags")
320
+
321
+ @freeform_tags.setter
322
+ def freeform_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
323
+ pulumi.set(self, "freeform_tags", value)
324
+
325
+ @property
326
+ @pulumi.getter(name="lifecycleDetails")
327
+ def lifecycle_details(self) -> Optional[pulumi.Input[str]]:
328
+ """
329
+ A message describing the current state with detail that can provide actionable information.
330
+ """
331
+ return pulumi.get(self, "lifecycle_details")
332
+
333
+ @lifecycle_details.setter
334
+ def lifecycle_details(self, value: Optional[pulumi.Input[str]]):
335
+ pulumi.set(self, "lifecycle_details", value)
336
+
337
+ @property
338
+ @pulumi.getter
339
+ def state(self) -> Optional[pulumi.Input[str]]:
340
+ """
341
+ The current state of the dedicated AI cluster.
342
+ """
343
+ return pulumi.get(self, "state")
344
+
345
+ @state.setter
346
+ def state(self, value: Optional[pulumi.Input[str]]):
347
+ pulumi.set(self, "state", value)
348
+
349
+ @property
350
+ @pulumi.getter(name="systemTags")
351
+ def system_tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
352
+ """
353
+ System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
354
+ """
355
+ return pulumi.get(self, "system_tags")
356
+
357
+ @system_tags.setter
358
+ def system_tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
359
+ pulumi.set(self, "system_tags", value)
360
+
361
+ @property
362
+ @pulumi.getter(name="timeCreated")
363
+ def time_created(self) -> Optional[pulumi.Input[str]]:
364
+ """
365
+ The date and time the dedicated AI cluster was created, in the format defined by RFC 3339
366
+ """
367
+ return pulumi.get(self, "time_created")
368
+
369
+ @time_created.setter
370
+ def time_created(self, value: Optional[pulumi.Input[str]]):
371
+ pulumi.set(self, "time_created", value)
372
+
373
+ @property
374
+ @pulumi.getter(name="timeUpdated")
375
+ def time_updated(self) -> Optional[pulumi.Input[str]]:
376
+ """
377
+ The date and time the dedicated AI cluster was updated, in the format defined by RFC 3339
378
+ """
379
+ return pulumi.get(self, "time_updated")
380
+
381
+ @time_updated.setter
382
+ def time_updated(self, value: Optional[pulumi.Input[str]]):
383
+ pulumi.set(self, "time_updated", value)
384
+
385
+ @property
386
+ @pulumi.getter
387
+ def type(self) -> Optional[pulumi.Input[str]]:
388
+ """
389
+ The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
390
+
391
+ Allowed values are:
392
+ * HOSTING
393
+ * FINE_TUNING
394
+ """
395
+ return pulumi.get(self, "type")
396
+
397
+ @type.setter
398
+ def type(self, value: Optional[pulumi.Input[str]]):
399
+ pulumi.set(self, "type", value)
400
+
401
+ @property
402
+ @pulumi.getter(name="unitCount")
403
+ def unit_count(self) -> Optional[pulumi.Input[int]]:
404
+ """
405
+ (Updatable) The number of dedicated units in this AI cluster.
406
+ """
407
+ return pulumi.get(self, "unit_count")
408
+
409
+ @unit_count.setter
410
+ def unit_count(self, value: Optional[pulumi.Input[int]]):
411
+ pulumi.set(self, "unit_count", value)
412
+
413
+ @property
414
+ @pulumi.getter(name="unitShape")
415
+ def unit_shape(self) -> Optional[pulumi.Input[str]]:
416
+ """
417
+ The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
418
+
419
+ Allowed values are:
420
+ * LARGE_COHERE
421
+ * SMALL_COHERE
422
+ * EMBED_COHERE
423
+ * LLAMA2_70
424
+
425
+
426
+ ** IMPORTANT **
427
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
428
+ """
429
+ return pulumi.get(self, "unit_shape")
430
+
431
+ @unit_shape.setter
432
+ def unit_shape(self, value: Optional[pulumi.Input[str]]):
433
+ pulumi.set(self, "unit_shape", value)
434
+
435
+
436
+ class DedicatedAiCluster(pulumi.CustomResource):
437
+ @overload
438
+ def __init__(__self__,
439
+ resource_name: str,
440
+ opts: Optional[pulumi.ResourceOptions] = None,
441
+ compartment_id: Optional[pulumi.Input[str]] = None,
442
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
443
+ description: Optional[pulumi.Input[str]] = None,
444
+ display_name: Optional[pulumi.Input[str]] = None,
445
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
446
+ type: Optional[pulumi.Input[str]] = None,
447
+ unit_count: Optional[pulumi.Input[int]] = None,
448
+ unit_shape: Optional[pulumi.Input[str]] = None,
449
+ __props__=None):
450
+ """
451
+ This resource provides the Dedicated Ai Cluster resource in Oracle Cloud Infrastructure Generative Ai service.
452
+
453
+ Creates a dedicated AI cluster.
454
+
455
+ ## Example Usage
456
+
457
+ ```python
458
+ import pulumi
459
+ import pulumi_oci as oci
460
+
461
+ test_dedicated_ai_cluster = oci.generative_ai.DedicatedAiCluster("testDedicatedAiCluster",
462
+ compartment_id=var["compartment_id"],
463
+ type=var["dedicated_ai_cluster_type"],
464
+ unit_count=var["dedicated_ai_cluster_unit_count"],
465
+ unit_shape=var["dedicated_ai_cluster_unit_shape"],
466
+ defined_tags={
467
+ "Operations.CostCenter": "42",
468
+ },
469
+ description=var["dedicated_ai_cluster_description"],
470
+ display_name=var["dedicated_ai_cluster_display_name"],
471
+ freeform_tags={
472
+ "Department": "Finance",
473
+ })
474
+ ```
475
+
476
+ ## Import
477
+
478
+ DedicatedAiClusters can be imported using the `id`, e.g.
479
+
480
+ ```sh
481
+ $ pulumi import oci:GenerativeAi/dedicatedAiCluster:DedicatedAiCluster test_dedicated_ai_cluster "id"
482
+ ```
483
+
484
+ :param str resource_name: The name of the resource.
485
+ :param pulumi.ResourceOptions opts: Options for the resource.
486
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID to create the dedicated AI cluster in.
487
+ :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"}`
488
+ :param pulumi.Input[str] description: (Updatable) An optional description of the dedicated AI cluster.
489
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
490
+ :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"}`
491
+ :param pulumi.Input[str] type: The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
492
+
493
+ Allowed values are:
494
+ * HOSTING
495
+ * FINE_TUNING
496
+ :param pulumi.Input[int] unit_count: (Updatable) The number of dedicated units in this AI cluster.
497
+ :param pulumi.Input[str] unit_shape: The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
498
+
499
+ Allowed values are:
500
+ * LARGE_COHERE
501
+ * SMALL_COHERE
502
+ * EMBED_COHERE
503
+ * LLAMA2_70
504
+
505
+
506
+ ** IMPORTANT **
507
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
508
+ """
509
+ ...
510
+ @overload
511
+ def __init__(__self__,
512
+ resource_name: str,
513
+ args: DedicatedAiClusterArgs,
514
+ opts: Optional[pulumi.ResourceOptions] = None):
515
+ """
516
+ This resource provides the Dedicated Ai Cluster resource in Oracle Cloud Infrastructure Generative Ai service.
517
+
518
+ Creates a dedicated AI cluster.
519
+
520
+ ## Example Usage
521
+
522
+ ```python
523
+ import pulumi
524
+ import pulumi_oci as oci
525
+
526
+ test_dedicated_ai_cluster = oci.generative_ai.DedicatedAiCluster("testDedicatedAiCluster",
527
+ compartment_id=var["compartment_id"],
528
+ type=var["dedicated_ai_cluster_type"],
529
+ unit_count=var["dedicated_ai_cluster_unit_count"],
530
+ unit_shape=var["dedicated_ai_cluster_unit_shape"],
531
+ defined_tags={
532
+ "Operations.CostCenter": "42",
533
+ },
534
+ description=var["dedicated_ai_cluster_description"],
535
+ display_name=var["dedicated_ai_cluster_display_name"],
536
+ freeform_tags={
537
+ "Department": "Finance",
538
+ })
539
+ ```
540
+
541
+ ## Import
542
+
543
+ DedicatedAiClusters can be imported using the `id`, e.g.
544
+
545
+ ```sh
546
+ $ pulumi import oci:GenerativeAi/dedicatedAiCluster:DedicatedAiCluster test_dedicated_ai_cluster "id"
547
+ ```
548
+
549
+ :param str resource_name: The name of the resource.
550
+ :param DedicatedAiClusterArgs args: The arguments to use to populate this resource's properties.
551
+ :param pulumi.ResourceOptions opts: Options for the resource.
552
+ """
553
+ ...
554
+ def __init__(__self__, resource_name: str, *args, **kwargs):
555
+ resource_args, opts = _utilities.get_resource_args_opts(DedicatedAiClusterArgs, pulumi.ResourceOptions, *args, **kwargs)
556
+ if resource_args is not None:
557
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
558
+ else:
559
+ __self__._internal_init(resource_name, *args, **kwargs)
560
+
561
+ def _internal_init(__self__,
562
+ resource_name: str,
563
+ opts: Optional[pulumi.ResourceOptions] = None,
564
+ compartment_id: Optional[pulumi.Input[str]] = None,
565
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
566
+ description: Optional[pulumi.Input[str]] = None,
567
+ display_name: Optional[pulumi.Input[str]] = None,
568
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
569
+ type: Optional[pulumi.Input[str]] = None,
570
+ unit_count: Optional[pulumi.Input[int]] = None,
571
+ unit_shape: Optional[pulumi.Input[str]] = None,
572
+ __props__=None):
573
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
574
+ if not isinstance(opts, pulumi.ResourceOptions):
575
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
576
+ if opts.id is None:
577
+ if __props__ is not None:
578
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
579
+ __props__ = DedicatedAiClusterArgs.__new__(DedicatedAiClusterArgs)
580
+
581
+ if compartment_id is None and not opts.urn:
582
+ raise TypeError("Missing required property 'compartment_id'")
583
+ __props__.__dict__["compartment_id"] = compartment_id
584
+ __props__.__dict__["defined_tags"] = defined_tags
585
+ __props__.__dict__["description"] = description
586
+ __props__.__dict__["display_name"] = display_name
587
+ __props__.__dict__["freeform_tags"] = freeform_tags
588
+ if type is None and not opts.urn:
589
+ raise TypeError("Missing required property 'type'")
590
+ __props__.__dict__["type"] = type
591
+ if unit_count is None and not opts.urn:
592
+ raise TypeError("Missing required property 'unit_count'")
593
+ __props__.__dict__["unit_count"] = unit_count
594
+ if unit_shape is None and not opts.urn:
595
+ raise TypeError("Missing required property 'unit_shape'")
596
+ __props__.__dict__["unit_shape"] = unit_shape
597
+ __props__.__dict__["capacities"] = None
598
+ __props__.__dict__["lifecycle_details"] = None
599
+ __props__.__dict__["state"] = None
600
+ __props__.__dict__["system_tags"] = None
601
+ __props__.__dict__["time_created"] = None
602
+ __props__.__dict__["time_updated"] = None
603
+ super(DedicatedAiCluster, __self__).__init__(
604
+ 'oci:GenerativeAi/dedicatedAiCluster:DedicatedAiCluster',
605
+ resource_name,
606
+ __props__,
607
+ opts)
608
+
609
+ @staticmethod
610
+ def get(resource_name: str,
611
+ id: pulumi.Input[str],
612
+ opts: Optional[pulumi.ResourceOptions] = None,
613
+ capacities: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DedicatedAiClusterCapacityArgs']]]]] = None,
614
+ compartment_id: Optional[pulumi.Input[str]] = None,
615
+ defined_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
616
+ description: Optional[pulumi.Input[str]] = None,
617
+ display_name: Optional[pulumi.Input[str]] = None,
618
+ freeform_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
619
+ lifecycle_details: Optional[pulumi.Input[str]] = None,
620
+ state: Optional[pulumi.Input[str]] = None,
621
+ system_tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
622
+ time_created: Optional[pulumi.Input[str]] = None,
623
+ time_updated: Optional[pulumi.Input[str]] = None,
624
+ type: Optional[pulumi.Input[str]] = None,
625
+ unit_count: Optional[pulumi.Input[int]] = None,
626
+ unit_shape: Optional[pulumi.Input[str]] = None) -> 'DedicatedAiCluster':
627
+ """
628
+ Get an existing DedicatedAiCluster resource's state with the given name, id, and optional extra
629
+ properties used to qualify the lookup.
630
+
631
+ :param str resource_name: The unique name of the resulting resource.
632
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
633
+ :param pulumi.ResourceOptions opts: Options for the resource.
634
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DedicatedAiClusterCapacityArgs']]]] capacities: The total capacity for a dedicated AI cluster.
635
+ :param pulumi.Input[str] compartment_id: (Updatable) The compartment OCID to create the dedicated AI cluster in.
636
+ :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"}`
637
+ :param pulumi.Input[str] description: (Updatable) An optional description of the dedicated AI cluster.
638
+ :param pulumi.Input[str] display_name: (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
639
+ :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"}`
640
+ :param pulumi.Input[str] lifecycle_details: A message describing the current state with detail that can provide actionable information.
641
+ :param pulumi.Input[str] state: The current state of the dedicated AI cluster.
642
+ :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"}`
643
+ :param pulumi.Input[str] time_created: The date and time the dedicated AI cluster was created, in the format defined by RFC 3339
644
+ :param pulumi.Input[str] time_updated: The date and time the dedicated AI cluster was updated, in the format defined by RFC 3339
645
+ :param pulumi.Input[str] type: The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
646
+
647
+ Allowed values are:
648
+ * HOSTING
649
+ * FINE_TUNING
650
+ :param pulumi.Input[int] unit_count: (Updatable) The number of dedicated units in this AI cluster.
651
+ :param pulumi.Input[str] unit_shape: The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
652
+
653
+ Allowed values are:
654
+ * LARGE_COHERE
655
+ * SMALL_COHERE
656
+ * EMBED_COHERE
657
+ * LLAMA2_70
658
+
659
+
660
+ ** IMPORTANT **
661
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
662
+ """
663
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
664
+
665
+ __props__ = _DedicatedAiClusterState.__new__(_DedicatedAiClusterState)
666
+
667
+ __props__.__dict__["capacities"] = capacities
668
+ __props__.__dict__["compartment_id"] = compartment_id
669
+ __props__.__dict__["defined_tags"] = defined_tags
670
+ __props__.__dict__["description"] = description
671
+ __props__.__dict__["display_name"] = display_name
672
+ __props__.__dict__["freeform_tags"] = freeform_tags
673
+ __props__.__dict__["lifecycle_details"] = lifecycle_details
674
+ __props__.__dict__["state"] = state
675
+ __props__.__dict__["system_tags"] = system_tags
676
+ __props__.__dict__["time_created"] = time_created
677
+ __props__.__dict__["time_updated"] = time_updated
678
+ __props__.__dict__["type"] = type
679
+ __props__.__dict__["unit_count"] = unit_count
680
+ __props__.__dict__["unit_shape"] = unit_shape
681
+ return DedicatedAiCluster(resource_name, opts=opts, __props__=__props__)
682
+
683
+ @property
684
+ @pulumi.getter
685
+ def capacities(self) -> pulumi.Output[Sequence['outputs.DedicatedAiClusterCapacity']]:
686
+ """
687
+ The total capacity for a dedicated AI cluster.
688
+ """
689
+ return pulumi.get(self, "capacities")
690
+
691
+ @property
692
+ @pulumi.getter(name="compartmentId")
693
+ def compartment_id(self) -> pulumi.Output[str]:
694
+ """
695
+ (Updatable) The compartment OCID to create the dedicated AI cluster in.
696
+ """
697
+ return pulumi.get(self, "compartment_id")
698
+
699
+ @property
700
+ @pulumi.getter(name="definedTags")
701
+ def defined_tags(self) -> pulumi.Output[Mapping[str, Any]]:
702
+ """
703
+ (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"}`
704
+ """
705
+ return pulumi.get(self, "defined_tags")
706
+
707
+ @property
708
+ @pulumi.getter
709
+ def description(self) -> pulumi.Output[str]:
710
+ """
711
+ (Updatable) An optional description of the dedicated AI cluster.
712
+ """
713
+ return pulumi.get(self, "description")
714
+
715
+ @property
716
+ @pulumi.getter(name="displayName")
717
+ def display_name(self) -> pulumi.Output[str]:
718
+ """
719
+ (Updatable) A user-friendly name. Does not have to be unique, and it's changeable.
720
+ """
721
+ return pulumi.get(self, "display_name")
722
+
723
+ @property
724
+ @pulumi.getter(name="freeformTags")
725
+ def freeform_tags(self) -> pulumi.Output[Mapping[str, Any]]:
726
+ """
727
+ (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"}`
728
+ """
729
+ return pulumi.get(self, "freeform_tags")
730
+
731
+ @property
732
+ @pulumi.getter(name="lifecycleDetails")
733
+ def lifecycle_details(self) -> pulumi.Output[str]:
734
+ """
735
+ A message describing the current state with detail that can provide actionable information.
736
+ """
737
+ return pulumi.get(self, "lifecycle_details")
738
+
739
+ @property
740
+ @pulumi.getter
741
+ def state(self) -> pulumi.Output[str]:
742
+ """
743
+ The current state of the dedicated AI cluster.
744
+ """
745
+ return pulumi.get(self, "state")
746
+
747
+ @property
748
+ @pulumi.getter(name="systemTags")
749
+ def system_tags(self) -> pulumi.Output[Mapping[str, Any]]:
750
+ """
751
+ System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}`
752
+ """
753
+ return pulumi.get(self, "system_tags")
754
+
755
+ @property
756
+ @pulumi.getter(name="timeCreated")
757
+ def time_created(self) -> pulumi.Output[str]:
758
+ """
759
+ The date and time the dedicated AI cluster was created, in the format defined by RFC 3339
760
+ """
761
+ return pulumi.get(self, "time_created")
762
+
763
+ @property
764
+ @pulumi.getter(name="timeUpdated")
765
+ def time_updated(self) -> pulumi.Output[str]:
766
+ """
767
+ The date and time the dedicated AI cluster was updated, in the format defined by RFC 3339
768
+ """
769
+ return pulumi.get(self, "time_updated")
770
+
771
+ @property
772
+ @pulumi.getter
773
+ def type(self) -> pulumi.Output[str]:
774
+ """
775
+ The dedicated AI cluster type indicating whether this is a fine-tuning/training processor or hosting/inference processor.
776
+
777
+ Allowed values are:
778
+ * HOSTING
779
+ * FINE_TUNING
780
+ """
781
+ return pulumi.get(self, "type")
782
+
783
+ @property
784
+ @pulumi.getter(name="unitCount")
785
+ def unit_count(self) -> pulumi.Output[int]:
786
+ """
787
+ (Updatable) The number of dedicated units in this AI cluster.
788
+ """
789
+ return pulumi.get(self, "unit_count")
790
+
791
+ @property
792
+ @pulumi.getter(name="unitShape")
793
+ def unit_shape(self) -> pulumi.Output[str]:
794
+ """
795
+ The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers.
796
+
797
+ Allowed values are:
798
+ * LARGE_COHERE
799
+ * SMALL_COHERE
800
+ * EMBED_COHERE
801
+ * LLAMA2_70
802
+
803
+
804
+ ** IMPORTANT **
805
+ Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
806
+ """
807
+ return pulumi.get(self, "unit_shape")
808
+