pulumi-datarobot 0.8.4__tar.gz → 0.8.5__tar.gz

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 (55) hide show
  1. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/PKG-INFO +1 -1
  2. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/__init__.py +9 -0
  3. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/_inputs.py +74 -0
  4. pulumi_datarobot-0.8.5/pulumi_datarobot/custom_model_llm_validation.py +465 -0
  5. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/llm_blueprint.py +64 -18
  6. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/outputs.py +65 -0
  7. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/PKG-INFO +1 -1
  8. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/SOURCES.txt +1 -0
  9. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/setup.py +1 -1
  10. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/README.md +0 -0
  11. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/_utilities.py +0 -0
  12. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/api_token_credential.py +0 -0
  13. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/application_source.py +0 -0
  14. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/application_source_from_template.py +0 -0
  15. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/aws_credential.py +0 -0
  16. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/basic_credential.py +0 -0
  17. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/batch_prediction_job_definition.py +0 -0
  18. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/config/__init__.py +0 -0
  19. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/config/vars.py +0 -0
  20. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_application.py +0 -0
  21. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_application_from_environment.py +0 -0
  22. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_job.py +0 -0
  23. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_metric.py +0 -0
  24. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_metric_from_job.py +0 -0
  25. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_metric_job.py +0 -0
  26. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/custom_model.py +0 -0
  27. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/dataset_from_datasource.py +0 -0
  28. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/dataset_from_file.py +0 -0
  29. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/dataset_from_url.py +0 -0
  30. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/datasource.py +0 -0
  31. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/datastore.py +0 -0
  32. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/deployment.py +0 -0
  33. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/deployment_retraining_policy.py +0 -0
  34. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/execution_environment.py +0 -0
  35. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/get_execution_environment.py +0 -0
  36. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/get_global_model.py +0 -0
  37. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/google_cloud_credential.py +0 -0
  38. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/notification_channel.py +0 -0
  39. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/notification_policy.py +0 -0
  40. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/playground.py +0 -0
  41. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/prediction_environment.py +0 -0
  42. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/provider.py +0 -0
  43. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/pulumi-plugin.json +0 -0
  44. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/py.typed +0 -0
  45. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/qa_application.py +0 -0
  46. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/registered_model.py +0 -0
  47. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/registered_model_from_leaderboard.py +0 -0
  48. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/remote_repository.py +0 -0
  49. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/use_case.py +0 -0
  50. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot/vector_database.py +0 -0
  51. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/dependency_links.txt +0 -0
  52. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/not-zip-safe +0 -0
  53. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/requires.txt +0 -0
  54. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/pulumi_datarobot.egg-info/top_level.txt +0 -0
  55. {pulumi_datarobot-0.8.4 → pulumi_datarobot-0.8.5}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pulumi_datarobot
3
- Version: 0.8.4
3
+ Version: 0.8.5
4
4
  Summary: A Pulumi package for creating and managing DataRobot resources.
5
5
  Home-page: https://www.datarobot.com
6
6
  License: Apache-2.0
@@ -18,6 +18,7 @@ from .custom_metric import *
18
18
  from .custom_metric_from_job import *
19
19
  from .custom_metric_job import *
20
20
  from .custom_model import *
21
+ from .custom_model_llm_validation import *
21
22
  from .dataset_from_datasource import *
22
23
  from .dataset_from_file import *
23
24
  from .dataset_from_url import *
@@ -158,6 +159,14 @@ _utilities.register(
158
159
  "datarobot:index/customModel:CustomModel": "CustomModel"
159
160
  }
160
161
  },
162
+ {
163
+ "pkg": "datarobot",
164
+ "mod": "index/customModelLlmValidation",
165
+ "fqn": "pulumi_datarobot",
166
+ "classes": {
167
+ "datarobot:index/customModelLlmValidation:CustomModelLlmValidation": "CustomModelLlmValidation"
168
+ }
169
+ },
161
170
  {
162
171
  "pkg": "datarobot",
163
172
  "mod": "index/datasetFromDatasource",
@@ -137,6 +137,8 @@ __all__ = [
137
137
  'DeploymentRuntimeParameterValueArgsDict',
138
138
  'DeploymentSegmentAnalysisSettingsArgs',
139
139
  'DeploymentSegmentAnalysisSettingsArgsDict',
140
+ 'LlmBlueprintCustomModelLlmSettingsArgs',
141
+ 'LlmBlueprintCustomModelLlmSettingsArgsDict',
140
142
  'LlmBlueprintLlmSettingsArgs',
141
143
  'LlmBlueprintLlmSettingsArgsDict',
142
144
  'LlmBlueprintVectorDatabaseSettingsArgs',
@@ -5225,6 +5227,78 @@ class DeploymentSegmentAnalysisSettingsArgs:
5225
5227
  pulumi.set(self, "attributes", value)
5226
5228
 
5227
5229
 
5230
+ if not MYPY:
5231
+ class LlmBlueprintCustomModelLlmSettingsArgsDict(TypedDict):
5232
+ external_llm_context_size: NotRequired[pulumi.Input[int]]
5233
+ """
5234
+ The external LLM's context size, in tokens. This value is only used for pruning documents supplied to the LLM when a vector database is associated with the LLM blueprint. It does not affect the external LLM's actual context size in any way and is not supplied to the LLM.
5235
+ """
5236
+ system_prompt: NotRequired[pulumi.Input[str]]
5237
+ """
5238
+ System prompt guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
5239
+ """
5240
+ validation_id: NotRequired[pulumi.Input[str]]
5241
+ """
5242
+ The validation ID of the custom model LLM.
5243
+ """
5244
+ elif False:
5245
+ LlmBlueprintCustomModelLlmSettingsArgsDict: TypeAlias = Mapping[str, Any]
5246
+
5247
+ @pulumi.input_type
5248
+ class LlmBlueprintCustomModelLlmSettingsArgs:
5249
+ def __init__(__self__, *,
5250
+ external_llm_context_size: Optional[pulumi.Input[int]] = None,
5251
+ system_prompt: Optional[pulumi.Input[str]] = None,
5252
+ validation_id: Optional[pulumi.Input[str]] = None):
5253
+ """
5254
+ :param pulumi.Input[int] external_llm_context_size: The external LLM's context size, in tokens. This value is only used for pruning documents supplied to the LLM when a vector database is associated with the LLM blueprint. It does not affect the external LLM's actual context size in any way and is not supplied to the LLM.
5255
+ :param pulumi.Input[str] system_prompt: System prompt guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
5256
+ :param pulumi.Input[str] validation_id: The validation ID of the custom model LLM.
5257
+ """
5258
+ if external_llm_context_size is not None:
5259
+ pulumi.set(__self__, "external_llm_context_size", external_llm_context_size)
5260
+ if system_prompt is not None:
5261
+ pulumi.set(__self__, "system_prompt", system_prompt)
5262
+ if validation_id is not None:
5263
+ pulumi.set(__self__, "validation_id", validation_id)
5264
+
5265
+ @property
5266
+ @pulumi.getter(name="externalLlmContextSize")
5267
+ def external_llm_context_size(self) -> Optional[pulumi.Input[int]]:
5268
+ """
5269
+ The external LLM's context size, in tokens. This value is only used for pruning documents supplied to the LLM when a vector database is associated with the LLM blueprint. It does not affect the external LLM's actual context size in any way and is not supplied to the LLM.
5270
+ """
5271
+ return pulumi.get(self, "external_llm_context_size")
5272
+
5273
+ @external_llm_context_size.setter
5274
+ def external_llm_context_size(self, value: Optional[pulumi.Input[int]]):
5275
+ pulumi.set(self, "external_llm_context_size", value)
5276
+
5277
+ @property
5278
+ @pulumi.getter(name="systemPrompt")
5279
+ def system_prompt(self) -> Optional[pulumi.Input[str]]:
5280
+ """
5281
+ System prompt guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
5282
+ """
5283
+ return pulumi.get(self, "system_prompt")
5284
+
5285
+ @system_prompt.setter
5286
+ def system_prompt(self, value: Optional[pulumi.Input[str]]):
5287
+ pulumi.set(self, "system_prompt", value)
5288
+
5289
+ @property
5290
+ @pulumi.getter(name="validationId")
5291
+ def validation_id(self) -> Optional[pulumi.Input[str]]:
5292
+ """
5293
+ The validation ID of the custom model LLM.
5294
+ """
5295
+ return pulumi.get(self, "validation_id")
5296
+
5297
+ @validation_id.setter
5298
+ def validation_id(self, value: Optional[pulumi.Input[str]]):
5299
+ pulumi.set(self, "validation_id", value)
5300
+
5301
+
5228
5302
  if not MYPY:
5229
5303
  class LlmBlueprintLlmSettingsArgsDict(TypedDict):
5230
5304
  max_completion_length: NotRequired[pulumi.Input[int]]
@@ -0,0 +1,465 @@
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 sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+
17
+ __all__ = ['CustomModelLlmValidationArgs', 'CustomModelLlmValidation']
18
+
19
+ @pulumi.input_type
20
+ class CustomModelLlmValidationArgs:
21
+ def __init__(__self__, *,
22
+ deployment_id: pulumi.Input[str],
23
+ prompt_column_name: pulumi.Input[str],
24
+ target_column_name: pulumi.Input[str],
25
+ model_id: Optional[pulumi.Input[str]] = None,
26
+ name: Optional[pulumi.Input[str]] = None,
27
+ prediction_timeout: Optional[pulumi.Input[int]] = None,
28
+ use_case_id: Optional[pulumi.Input[str]] = None):
29
+ """
30
+ The set of arguments for constructing a CustomModelLlmValidation resource.
31
+ :param pulumi.Input[str] deployment_id: The ID of the custom model deployment.
32
+ :param pulumi.Input[str] prompt_column_name: The name of the column the custom model uses for prompt text input.
33
+ :param pulumi.Input[str] target_column_name: The name of the column the custom model uses for prediction output.
34
+ :param pulumi.Input[str] model_id: The ID of the model used in the deployment.
35
+ :param pulumi.Input[str] name: The name to use for the validated custom model.
36
+ :param pulumi.Input[int] prediction_timeout: The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
37
+ :param pulumi.Input[str] use_case_id: The ID of the use case to associate with the validated custom model.
38
+ """
39
+ pulumi.set(__self__, "deployment_id", deployment_id)
40
+ pulumi.set(__self__, "prompt_column_name", prompt_column_name)
41
+ pulumi.set(__self__, "target_column_name", target_column_name)
42
+ if model_id is not None:
43
+ pulumi.set(__self__, "model_id", model_id)
44
+ if name is not None:
45
+ pulumi.set(__self__, "name", name)
46
+ if prediction_timeout is not None:
47
+ pulumi.set(__self__, "prediction_timeout", prediction_timeout)
48
+ if use_case_id is not None:
49
+ pulumi.set(__self__, "use_case_id", use_case_id)
50
+
51
+ @property
52
+ @pulumi.getter(name="deploymentId")
53
+ def deployment_id(self) -> pulumi.Input[str]:
54
+ """
55
+ The ID of the custom model deployment.
56
+ """
57
+ return pulumi.get(self, "deployment_id")
58
+
59
+ @deployment_id.setter
60
+ def deployment_id(self, value: pulumi.Input[str]):
61
+ pulumi.set(self, "deployment_id", value)
62
+
63
+ @property
64
+ @pulumi.getter(name="promptColumnName")
65
+ def prompt_column_name(self) -> pulumi.Input[str]:
66
+ """
67
+ The name of the column the custom model uses for prompt text input.
68
+ """
69
+ return pulumi.get(self, "prompt_column_name")
70
+
71
+ @prompt_column_name.setter
72
+ def prompt_column_name(self, value: pulumi.Input[str]):
73
+ pulumi.set(self, "prompt_column_name", value)
74
+
75
+ @property
76
+ @pulumi.getter(name="targetColumnName")
77
+ def target_column_name(self) -> pulumi.Input[str]:
78
+ """
79
+ The name of the column the custom model uses for prediction output.
80
+ """
81
+ return pulumi.get(self, "target_column_name")
82
+
83
+ @target_column_name.setter
84
+ def target_column_name(self, value: pulumi.Input[str]):
85
+ pulumi.set(self, "target_column_name", value)
86
+
87
+ @property
88
+ @pulumi.getter(name="modelId")
89
+ def model_id(self) -> Optional[pulumi.Input[str]]:
90
+ """
91
+ The ID of the model used in the deployment.
92
+ """
93
+ return pulumi.get(self, "model_id")
94
+
95
+ @model_id.setter
96
+ def model_id(self, value: Optional[pulumi.Input[str]]):
97
+ pulumi.set(self, "model_id", value)
98
+
99
+ @property
100
+ @pulumi.getter
101
+ def name(self) -> Optional[pulumi.Input[str]]:
102
+ """
103
+ The name to use for the validated custom model.
104
+ """
105
+ return pulumi.get(self, "name")
106
+
107
+ @name.setter
108
+ def name(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "name", value)
110
+
111
+ @property
112
+ @pulumi.getter(name="predictionTimeout")
113
+ def prediction_timeout(self) -> Optional[pulumi.Input[int]]:
114
+ """
115
+ The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
116
+ """
117
+ return pulumi.get(self, "prediction_timeout")
118
+
119
+ @prediction_timeout.setter
120
+ def prediction_timeout(self, value: Optional[pulumi.Input[int]]):
121
+ pulumi.set(self, "prediction_timeout", value)
122
+
123
+ @property
124
+ @pulumi.getter(name="useCaseId")
125
+ def use_case_id(self) -> Optional[pulumi.Input[str]]:
126
+ """
127
+ The ID of the use case to associate with the validated custom model.
128
+ """
129
+ return pulumi.get(self, "use_case_id")
130
+
131
+ @use_case_id.setter
132
+ def use_case_id(self, value: Optional[pulumi.Input[str]]):
133
+ pulumi.set(self, "use_case_id", value)
134
+
135
+
136
+ @pulumi.input_type
137
+ class _CustomModelLlmValidationState:
138
+ def __init__(__self__, *,
139
+ deployment_id: Optional[pulumi.Input[str]] = None,
140
+ model_id: Optional[pulumi.Input[str]] = None,
141
+ name: Optional[pulumi.Input[str]] = None,
142
+ prediction_timeout: Optional[pulumi.Input[int]] = None,
143
+ prompt_column_name: Optional[pulumi.Input[str]] = None,
144
+ target_column_name: Optional[pulumi.Input[str]] = None,
145
+ use_case_id: Optional[pulumi.Input[str]] = None):
146
+ """
147
+ Input properties used for looking up and filtering CustomModelLlmValidation resources.
148
+ :param pulumi.Input[str] deployment_id: The ID of the custom model deployment.
149
+ :param pulumi.Input[str] model_id: The ID of the model used in the deployment.
150
+ :param pulumi.Input[str] name: The name to use for the validated custom model.
151
+ :param pulumi.Input[int] prediction_timeout: The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
152
+ :param pulumi.Input[str] prompt_column_name: The name of the column the custom model uses for prompt text input.
153
+ :param pulumi.Input[str] target_column_name: The name of the column the custom model uses for prediction output.
154
+ :param pulumi.Input[str] use_case_id: The ID of the use case to associate with the validated custom model.
155
+ """
156
+ if deployment_id is not None:
157
+ pulumi.set(__self__, "deployment_id", deployment_id)
158
+ if model_id is not None:
159
+ pulumi.set(__self__, "model_id", model_id)
160
+ if name is not None:
161
+ pulumi.set(__self__, "name", name)
162
+ if prediction_timeout is not None:
163
+ pulumi.set(__self__, "prediction_timeout", prediction_timeout)
164
+ if prompt_column_name is not None:
165
+ pulumi.set(__self__, "prompt_column_name", prompt_column_name)
166
+ if target_column_name is not None:
167
+ pulumi.set(__self__, "target_column_name", target_column_name)
168
+ if use_case_id is not None:
169
+ pulumi.set(__self__, "use_case_id", use_case_id)
170
+
171
+ @property
172
+ @pulumi.getter(name="deploymentId")
173
+ def deployment_id(self) -> Optional[pulumi.Input[str]]:
174
+ """
175
+ The ID of the custom model deployment.
176
+ """
177
+ return pulumi.get(self, "deployment_id")
178
+
179
+ @deployment_id.setter
180
+ def deployment_id(self, value: Optional[pulumi.Input[str]]):
181
+ pulumi.set(self, "deployment_id", value)
182
+
183
+ @property
184
+ @pulumi.getter(name="modelId")
185
+ def model_id(self) -> Optional[pulumi.Input[str]]:
186
+ """
187
+ The ID of the model used in the deployment.
188
+ """
189
+ return pulumi.get(self, "model_id")
190
+
191
+ @model_id.setter
192
+ def model_id(self, value: Optional[pulumi.Input[str]]):
193
+ pulumi.set(self, "model_id", value)
194
+
195
+ @property
196
+ @pulumi.getter
197
+ def name(self) -> Optional[pulumi.Input[str]]:
198
+ """
199
+ The name to use for the validated custom model.
200
+ """
201
+ return pulumi.get(self, "name")
202
+
203
+ @name.setter
204
+ def name(self, value: Optional[pulumi.Input[str]]):
205
+ pulumi.set(self, "name", value)
206
+
207
+ @property
208
+ @pulumi.getter(name="predictionTimeout")
209
+ def prediction_timeout(self) -> Optional[pulumi.Input[int]]:
210
+ """
211
+ The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
212
+ """
213
+ return pulumi.get(self, "prediction_timeout")
214
+
215
+ @prediction_timeout.setter
216
+ def prediction_timeout(self, value: Optional[pulumi.Input[int]]):
217
+ pulumi.set(self, "prediction_timeout", value)
218
+
219
+ @property
220
+ @pulumi.getter(name="promptColumnName")
221
+ def prompt_column_name(self) -> Optional[pulumi.Input[str]]:
222
+ """
223
+ The name of the column the custom model uses for prompt text input.
224
+ """
225
+ return pulumi.get(self, "prompt_column_name")
226
+
227
+ @prompt_column_name.setter
228
+ def prompt_column_name(self, value: Optional[pulumi.Input[str]]):
229
+ pulumi.set(self, "prompt_column_name", value)
230
+
231
+ @property
232
+ @pulumi.getter(name="targetColumnName")
233
+ def target_column_name(self) -> Optional[pulumi.Input[str]]:
234
+ """
235
+ The name of the column the custom model uses for prediction output.
236
+ """
237
+ return pulumi.get(self, "target_column_name")
238
+
239
+ @target_column_name.setter
240
+ def target_column_name(self, value: Optional[pulumi.Input[str]]):
241
+ pulumi.set(self, "target_column_name", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="useCaseId")
245
+ def use_case_id(self) -> Optional[pulumi.Input[str]]:
246
+ """
247
+ The ID of the use case to associate with the validated custom model.
248
+ """
249
+ return pulumi.get(self, "use_case_id")
250
+
251
+ @use_case_id.setter
252
+ def use_case_id(self, value: Optional[pulumi.Input[str]]):
253
+ pulumi.set(self, "use_case_id", value)
254
+
255
+
256
+ class CustomModelLlmValidation(pulumi.CustomResource):
257
+ @overload
258
+ def __init__(__self__,
259
+ resource_name: str,
260
+ opts: Optional[pulumi.ResourceOptions] = None,
261
+ deployment_id: Optional[pulumi.Input[str]] = None,
262
+ model_id: Optional[pulumi.Input[str]] = None,
263
+ name: Optional[pulumi.Input[str]] = None,
264
+ prediction_timeout: Optional[pulumi.Input[int]] = None,
265
+ prompt_column_name: Optional[pulumi.Input[str]] = None,
266
+ target_column_name: Optional[pulumi.Input[str]] = None,
267
+ use_case_id: Optional[pulumi.Input[str]] = None,
268
+ __props__=None):
269
+ """
270
+ Custom Model LLM Validation
271
+
272
+ ## Example Usage
273
+
274
+ ```python
275
+ import pulumi
276
+ import pulumi_datarobot as datarobot
277
+
278
+ example = datarobot.CustomModelLlmValidation("example",
279
+ deployment_id=datarobot_deployment["example"]["id"],
280
+ prompt_column_name="promptText",
281
+ target_column_name="resultText",
282
+ prediction_timeout=100,
283
+ use_case_id=datarobot["use_case"]["example"]["id"])
284
+ pulumi.export("exampleId", example.id)
285
+ ```
286
+
287
+ :param str resource_name: The name of the resource.
288
+ :param pulumi.ResourceOptions opts: Options for the resource.
289
+ :param pulumi.Input[str] deployment_id: The ID of the custom model deployment.
290
+ :param pulumi.Input[str] model_id: The ID of the model used in the deployment.
291
+ :param pulumi.Input[str] name: The name to use for the validated custom model.
292
+ :param pulumi.Input[int] prediction_timeout: The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
293
+ :param pulumi.Input[str] prompt_column_name: The name of the column the custom model uses for prompt text input.
294
+ :param pulumi.Input[str] target_column_name: The name of the column the custom model uses for prediction output.
295
+ :param pulumi.Input[str] use_case_id: The ID of the use case to associate with the validated custom model.
296
+ """
297
+ ...
298
+ @overload
299
+ def __init__(__self__,
300
+ resource_name: str,
301
+ args: CustomModelLlmValidationArgs,
302
+ opts: Optional[pulumi.ResourceOptions] = None):
303
+ """
304
+ Custom Model LLM Validation
305
+
306
+ ## Example Usage
307
+
308
+ ```python
309
+ import pulumi
310
+ import pulumi_datarobot as datarobot
311
+
312
+ example = datarobot.CustomModelLlmValidation("example",
313
+ deployment_id=datarobot_deployment["example"]["id"],
314
+ prompt_column_name="promptText",
315
+ target_column_name="resultText",
316
+ prediction_timeout=100,
317
+ use_case_id=datarobot["use_case"]["example"]["id"])
318
+ pulumi.export("exampleId", example.id)
319
+ ```
320
+
321
+ :param str resource_name: The name of the resource.
322
+ :param CustomModelLlmValidationArgs args: The arguments to use to populate this resource's properties.
323
+ :param pulumi.ResourceOptions opts: Options for the resource.
324
+ """
325
+ ...
326
+ def __init__(__self__, resource_name: str, *args, **kwargs):
327
+ resource_args, opts = _utilities.get_resource_args_opts(CustomModelLlmValidationArgs, pulumi.ResourceOptions, *args, **kwargs)
328
+ if resource_args is not None:
329
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
330
+ else:
331
+ __self__._internal_init(resource_name, *args, **kwargs)
332
+
333
+ def _internal_init(__self__,
334
+ resource_name: str,
335
+ opts: Optional[pulumi.ResourceOptions] = None,
336
+ deployment_id: Optional[pulumi.Input[str]] = None,
337
+ model_id: Optional[pulumi.Input[str]] = None,
338
+ name: Optional[pulumi.Input[str]] = None,
339
+ prediction_timeout: Optional[pulumi.Input[int]] = None,
340
+ prompt_column_name: Optional[pulumi.Input[str]] = None,
341
+ target_column_name: Optional[pulumi.Input[str]] = None,
342
+ use_case_id: Optional[pulumi.Input[str]] = None,
343
+ __props__=None):
344
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
345
+ if not isinstance(opts, pulumi.ResourceOptions):
346
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
347
+ if opts.id is None:
348
+ if __props__ is not None:
349
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
350
+ __props__ = CustomModelLlmValidationArgs.__new__(CustomModelLlmValidationArgs)
351
+
352
+ if deployment_id is None and not opts.urn:
353
+ raise TypeError("Missing required property 'deployment_id'")
354
+ __props__.__dict__["deployment_id"] = deployment_id
355
+ __props__.__dict__["model_id"] = model_id
356
+ __props__.__dict__["name"] = name
357
+ __props__.__dict__["prediction_timeout"] = prediction_timeout
358
+ if prompt_column_name is None and not opts.urn:
359
+ raise TypeError("Missing required property 'prompt_column_name'")
360
+ __props__.__dict__["prompt_column_name"] = prompt_column_name
361
+ if target_column_name is None and not opts.urn:
362
+ raise TypeError("Missing required property 'target_column_name'")
363
+ __props__.__dict__["target_column_name"] = target_column_name
364
+ __props__.__dict__["use_case_id"] = use_case_id
365
+ super(CustomModelLlmValidation, __self__).__init__(
366
+ 'datarobot:index/customModelLlmValidation:CustomModelLlmValidation',
367
+ resource_name,
368
+ __props__,
369
+ opts)
370
+
371
+ @staticmethod
372
+ def get(resource_name: str,
373
+ id: pulumi.Input[str],
374
+ opts: Optional[pulumi.ResourceOptions] = None,
375
+ deployment_id: Optional[pulumi.Input[str]] = None,
376
+ model_id: Optional[pulumi.Input[str]] = None,
377
+ name: Optional[pulumi.Input[str]] = None,
378
+ prediction_timeout: Optional[pulumi.Input[int]] = None,
379
+ prompt_column_name: Optional[pulumi.Input[str]] = None,
380
+ target_column_name: Optional[pulumi.Input[str]] = None,
381
+ use_case_id: Optional[pulumi.Input[str]] = None) -> 'CustomModelLlmValidation':
382
+ """
383
+ Get an existing CustomModelLlmValidation resource's state with the given name, id, and optional extra
384
+ properties used to qualify the lookup.
385
+
386
+ :param str resource_name: The unique name of the resulting resource.
387
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
388
+ :param pulumi.ResourceOptions opts: Options for the resource.
389
+ :param pulumi.Input[str] deployment_id: The ID of the custom model deployment.
390
+ :param pulumi.Input[str] model_id: The ID of the model used in the deployment.
391
+ :param pulumi.Input[str] name: The name to use for the validated custom model.
392
+ :param pulumi.Input[int] prediction_timeout: The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
393
+ :param pulumi.Input[str] prompt_column_name: The name of the column the custom model uses for prompt text input.
394
+ :param pulumi.Input[str] target_column_name: The name of the column the custom model uses for prediction output.
395
+ :param pulumi.Input[str] use_case_id: The ID of the use case to associate with the validated custom model.
396
+ """
397
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
398
+
399
+ __props__ = _CustomModelLlmValidationState.__new__(_CustomModelLlmValidationState)
400
+
401
+ __props__.__dict__["deployment_id"] = deployment_id
402
+ __props__.__dict__["model_id"] = model_id
403
+ __props__.__dict__["name"] = name
404
+ __props__.__dict__["prediction_timeout"] = prediction_timeout
405
+ __props__.__dict__["prompt_column_name"] = prompt_column_name
406
+ __props__.__dict__["target_column_name"] = target_column_name
407
+ __props__.__dict__["use_case_id"] = use_case_id
408
+ return CustomModelLlmValidation(resource_name, opts=opts, __props__=__props__)
409
+
410
+ @property
411
+ @pulumi.getter(name="deploymentId")
412
+ def deployment_id(self) -> pulumi.Output[str]:
413
+ """
414
+ The ID of the custom model deployment.
415
+ """
416
+ return pulumi.get(self, "deployment_id")
417
+
418
+ @property
419
+ @pulumi.getter(name="modelId")
420
+ def model_id(self) -> pulumi.Output[str]:
421
+ """
422
+ The ID of the model used in the deployment.
423
+ """
424
+ return pulumi.get(self, "model_id")
425
+
426
+ @property
427
+ @pulumi.getter
428
+ def name(self) -> pulumi.Output[str]:
429
+ """
430
+ The name to use for the validated custom model.
431
+ """
432
+ return pulumi.get(self, "name")
433
+
434
+ @property
435
+ @pulumi.getter(name="predictionTimeout")
436
+ def prediction_timeout(self) -> pulumi.Output[int]:
437
+ """
438
+ The timeout in seconds for the prediction when validating a custom model. Defaults to 300.
439
+ """
440
+ return pulumi.get(self, "prediction_timeout")
441
+
442
+ @property
443
+ @pulumi.getter(name="promptColumnName")
444
+ def prompt_column_name(self) -> pulumi.Output[str]:
445
+ """
446
+ The name of the column the custom model uses for prompt text input.
447
+ """
448
+ return pulumi.get(self, "prompt_column_name")
449
+
450
+ @property
451
+ @pulumi.getter(name="targetColumnName")
452
+ def target_column_name(self) -> pulumi.Output[str]:
453
+ """
454
+ The name of the column the custom model uses for prediction output.
455
+ """
456
+ return pulumi.get(self, "target_column_name")
457
+
458
+ @property
459
+ @pulumi.getter(name="useCaseId")
460
+ def use_case_id(self) -> pulumi.Output[Optional[str]]:
461
+ """
462
+ The ID of the use case to associate with the validated custom model.
463
+ """
464
+ return pulumi.get(self, "use_case_id")
465
+
@@ -21,9 +21,10 @@ __all__ = ['LlmBlueprintArgs', 'LlmBlueprint']
21
21
  @pulumi.input_type
22
22
  class LlmBlueprintArgs:
23
23
  def __init__(__self__, *,
24
- llm_id: pulumi.Input[str],
25
24
  playground_id: pulumi.Input[str],
25
+ custom_model_llm_settings: Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']] = None,
26
26
  description: Optional[pulumi.Input[str]] = None,
27
+ llm_id: Optional[pulumi.Input[str]] = None,
27
28
  llm_settings: Optional[pulumi.Input['LlmBlueprintLlmSettingsArgs']] = None,
28
29
  name: Optional[pulumi.Input[str]] = None,
29
30
  prompt_type: Optional[pulumi.Input[str]] = None,
@@ -31,19 +32,23 @@ class LlmBlueprintArgs:
31
32
  vector_database_settings: Optional[pulumi.Input['LlmBlueprintVectorDatabaseSettingsArgs']] = None):
32
33
  """
33
34
  The set of arguments for constructing a LlmBlueprint resource.
34
- :param pulumi.Input[str] llm_id: The id of the LLM for the LLM Blueprint.
35
35
  :param pulumi.Input[str] playground_id: The id of the Playground for the LLM Blueprint.
36
+ :param pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs'] custom_model_llm_settings: The custom model LLM settings for the LLM Blueprint.
36
37
  :param pulumi.Input[str] description: The description of the LLM Blueprint.
38
+ :param pulumi.Input[str] llm_id: The id of the LLM for the LLM Blueprint.
37
39
  :param pulumi.Input['LlmBlueprintLlmSettingsArgs'] llm_settings: The LLM settings for the LLM Blueprint.
38
40
  :param pulumi.Input[str] name: The name of the LLM Blueprint.
39
41
  :param pulumi.Input[str] prompt_type: The prompt type for the LLM Blueprint.
40
42
  :param pulumi.Input[str] vector_database_id: The id of the Vector Database for the LLM Blueprint.
41
43
  :param pulumi.Input['LlmBlueprintVectorDatabaseSettingsArgs'] vector_database_settings: The Vector Database settings for the LLM Blueprint.
42
44
  """
43
- pulumi.set(__self__, "llm_id", llm_id)
44
45
  pulumi.set(__self__, "playground_id", playground_id)
46
+ if custom_model_llm_settings is not None:
47
+ pulumi.set(__self__, "custom_model_llm_settings", custom_model_llm_settings)
45
48
  if description is not None:
46
49
  pulumi.set(__self__, "description", description)
50
+ if llm_id is not None:
51
+ pulumi.set(__self__, "llm_id", llm_id)
47
52
  if llm_settings is not None:
48
53
  pulumi.set(__self__, "llm_settings", llm_settings)
49
54
  if name is not None:
@@ -55,18 +60,6 @@ class LlmBlueprintArgs:
55
60
  if vector_database_settings is not None:
56
61
  pulumi.set(__self__, "vector_database_settings", vector_database_settings)
57
62
 
58
- @property
59
- @pulumi.getter(name="llmId")
60
- def llm_id(self) -> pulumi.Input[str]:
61
- """
62
- The id of the LLM for the LLM Blueprint.
63
- """
64
- return pulumi.get(self, "llm_id")
65
-
66
- @llm_id.setter
67
- def llm_id(self, value: pulumi.Input[str]):
68
- pulumi.set(self, "llm_id", value)
69
-
70
63
  @property
71
64
  @pulumi.getter(name="playgroundId")
72
65
  def playground_id(self) -> pulumi.Input[str]:
@@ -79,6 +72,18 @@ class LlmBlueprintArgs:
79
72
  def playground_id(self, value: pulumi.Input[str]):
80
73
  pulumi.set(self, "playground_id", value)
81
74
 
75
+ @property
76
+ @pulumi.getter(name="customModelLlmSettings")
77
+ def custom_model_llm_settings(self) -> Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']]:
78
+ """
79
+ The custom model LLM settings for the LLM Blueprint.
80
+ """
81
+ return pulumi.get(self, "custom_model_llm_settings")
82
+
83
+ @custom_model_llm_settings.setter
84
+ def custom_model_llm_settings(self, value: Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']]):
85
+ pulumi.set(self, "custom_model_llm_settings", value)
86
+
82
87
  @property
83
88
  @pulumi.getter
84
89
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -91,6 +96,18 @@ class LlmBlueprintArgs:
91
96
  def description(self, value: Optional[pulumi.Input[str]]):
92
97
  pulumi.set(self, "description", value)
93
98
 
99
+ @property
100
+ @pulumi.getter(name="llmId")
101
+ def llm_id(self) -> Optional[pulumi.Input[str]]:
102
+ """
103
+ The id of the LLM for the LLM Blueprint.
104
+ """
105
+ return pulumi.get(self, "llm_id")
106
+
107
+ @llm_id.setter
108
+ def llm_id(self, value: Optional[pulumi.Input[str]]):
109
+ pulumi.set(self, "llm_id", value)
110
+
94
111
  @property
95
112
  @pulumi.getter(name="llmSettings")
96
113
  def llm_settings(self) -> Optional[pulumi.Input['LlmBlueprintLlmSettingsArgs']]:
@@ -155,6 +172,7 @@ class LlmBlueprintArgs:
155
172
  @pulumi.input_type
156
173
  class _LlmBlueprintState:
157
174
  def __init__(__self__, *,
175
+ custom_model_llm_settings: Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']] = None,
158
176
  description: Optional[pulumi.Input[str]] = None,
159
177
  llm_id: Optional[pulumi.Input[str]] = None,
160
178
  llm_settings: Optional[pulumi.Input['LlmBlueprintLlmSettingsArgs']] = None,
@@ -165,6 +183,7 @@ class _LlmBlueprintState:
165
183
  vector_database_settings: Optional[pulumi.Input['LlmBlueprintVectorDatabaseSettingsArgs']] = None):
166
184
  """
167
185
  Input properties used for looking up and filtering LlmBlueprint resources.
186
+ :param pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs'] custom_model_llm_settings: The custom model LLM settings for the LLM Blueprint.
168
187
  :param pulumi.Input[str] description: The description of the LLM Blueprint.
169
188
  :param pulumi.Input[str] llm_id: The id of the LLM for the LLM Blueprint.
170
189
  :param pulumi.Input['LlmBlueprintLlmSettingsArgs'] llm_settings: The LLM settings for the LLM Blueprint.
@@ -174,6 +193,8 @@ class _LlmBlueprintState:
174
193
  :param pulumi.Input[str] vector_database_id: The id of the Vector Database for the LLM Blueprint.
175
194
  :param pulumi.Input['LlmBlueprintVectorDatabaseSettingsArgs'] vector_database_settings: The Vector Database settings for the LLM Blueprint.
176
195
  """
196
+ if custom_model_llm_settings is not None:
197
+ pulumi.set(__self__, "custom_model_llm_settings", custom_model_llm_settings)
177
198
  if description is not None:
178
199
  pulumi.set(__self__, "description", description)
179
200
  if llm_id is not None:
@@ -191,6 +212,18 @@ class _LlmBlueprintState:
191
212
  if vector_database_settings is not None:
192
213
  pulumi.set(__self__, "vector_database_settings", vector_database_settings)
193
214
 
215
+ @property
216
+ @pulumi.getter(name="customModelLlmSettings")
217
+ def custom_model_llm_settings(self) -> Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']]:
218
+ """
219
+ The custom model LLM settings for the LLM Blueprint.
220
+ """
221
+ return pulumi.get(self, "custom_model_llm_settings")
222
+
223
+ @custom_model_llm_settings.setter
224
+ def custom_model_llm_settings(self, value: Optional[pulumi.Input['LlmBlueprintCustomModelLlmSettingsArgs']]):
225
+ pulumi.set(self, "custom_model_llm_settings", value)
226
+
194
227
  @property
195
228
  @pulumi.getter
196
229
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -293,6 +326,7 @@ class LlmBlueprint(pulumi.CustomResource):
293
326
  def __init__(__self__,
294
327
  resource_name: str,
295
328
  opts: Optional[pulumi.ResourceOptions] = None,
329
+ custom_model_llm_settings: Optional[pulumi.Input[Union['LlmBlueprintCustomModelLlmSettingsArgs', 'LlmBlueprintCustomModelLlmSettingsArgsDict']]] = None,
296
330
  description: Optional[pulumi.Input[str]] = None,
297
331
  llm_id: Optional[pulumi.Input[str]] = None,
298
332
  llm_settings: Optional[pulumi.Input[Union['LlmBlueprintLlmSettingsArgs', 'LlmBlueprintLlmSettingsArgsDict']]] = None,
@@ -336,6 +370,7 @@ class LlmBlueprint(pulumi.CustomResource):
336
370
 
337
371
  :param str resource_name: The name of the resource.
338
372
  :param pulumi.ResourceOptions opts: Options for the resource.
373
+ :param pulumi.Input[Union['LlmBlueprintCustomModelLlmSettingsArgs', 'LlmBlueprintCustomModelLlmSettingsArgsDict']] custom_model_llm_settings: The custom model LLM settings for the LLM Blueprint.
339
374
  :param pulumi.Input[str] description: The description of the LLM Blueprint.
340
375
  :param pulumi.Input[str] llm_id: The id of the LLM for the LLM Blueprint.
341
376
  :param pulumi.Input[Union['LlmBlueprintLlmSettingsArgs', 'LlmBlueprintLlmSettingsArgsDict']] llm_settings: The LLM settings for the LLM Blueprint.
@@ -398,6 +433,7 @@ class LlmBlueprint(pulumi.CustomResource):
398
433
  def _internal_init(__self__,
399
434
  resource_name: str,
400
435
  opts: Optional[pulumi.ResourceOptions] = None,
436
+ custom_model_llm_settings: Optional[pulumi.Input[Union['LlmBlueprintCustomModelLlmSettingsArgs', 'LlmBlueprintCustomModelLlmSettingsArgsDict']]] = None,
401
437
  description: Optional[pulumi.Input[str]] = None,
402
438
  llm_id: Optional[pulumi.Input[str]] = None,
403
439
  llm_settings: Optional[pulumi.Input[Union['LlmBlueprintLlmSettingsArgs', 'LlmBlueprintLlmSettingsArgsDict']]] = None,
@@ -415,9 +451,8 @@ class LlmBlueprint(pulumi.CustomResource):
415
451
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
416
452
  __props__ = LlmBlueprintArgs.__new__(LlmBlueprintArgs)
417
453
 
454
+ __props__.__dict__["custom_model_llm_settings"] = custom_model_llm_settings
418
455
  __props__.__dict__["description"] = description
419
- if llm_id is None and not opts.urn:
420
- raise TypeError("Missing required property 'llm_id'")
421
456
  __props__.__dict__["llm_id"] = llm_id
422
457
  __props__.__dict__["llm_settings"] = llm_settings
423
458
  __props__.__dict__["name"] = name
@@ -437,6 +472,7 @@ class LlmBlueprint(pulumi.CustomResource):
437
472
  def get(resource_name: str,
438
473
  id: pulumi.Input[str],
439
474
  opts: Optional[pulumi.ResourceOptions] = None,
475
+ custom_model_llm_settings: Optional[pulumi.Input[Union['LlmBlueprintCustomModelLlmSettingsArgs', 'LlmBlueprintCustomModelLlmSettingsArgsDict']]] = None,
440
476
  description: Optional[pulumi.Input[str]] = None,
441
477
  llm_id: Optional[pulumi.Input[str]] = None,
442
478
  llm_settings: Optional[pulumi.Input[Union['LlmBlueprintLlmSettingsArgs', 'LlmBlueprintLlmSettingsArgsDict']]] = None,
@@ -452,6 +488,7 @@ class LlmBlueprint(pulumi.CustomResource):
452
488
  :param str resource_name: The unique name of the resulting resource.
453
489
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
454
490
  :param pulumi.ResourceOptions opts: Options for the resource.
491
+ :param pulumi.Input[Union['LlmBlueprintCustomModelLlmSettingsArgs', 'LlmBlueprintCustomModelLlmSettingsArgsDict']] custom_model_llm_settings: The custom model LLM settings for the LLM Blueprint.
455
492
  :param pulumi.Input[str] description: The description of the LLM Blueprint.
456
493
  :param pulumi.Input[str] llm_id: The id of the LLM for the LLM Blueprint.
457
494
  :param pulumi.Input[Union['LlmBlueprintLlmSettingsArgs', 'LlmBlueprintLlmSettingsArgsDict']] llm_settings: The LLM settings for the LLM Blueprint.
@@ -465,6 +502,7 @@ class LlmBlueprint(pulumi.CustomResource):
465
502
 
466
503
  __props__ = _LlmBlueprintState.__new__(_LlmBlueprintState)
467
504
 
505
+ __props__.__dict__["custom_model_llm_settings"] = custom_model_llm_settings
468
506
  __props__.__dict__["description"] = description
469
507
  __props__.__dict__["llm_id"] = llm_id
470
508
  __props__.__dict__["llm_settings"] = llm_settings
@@ -475,6 +513,14 @@ class LlmBlueprint(pulumi.CustomResource):
475
513
  __props__.__dict__["vector_database_settings"] = vector_database_settings
476
514
  return LlmBlueprint(resource_name, opts=opts, __props__=__props__)
477
515
 
516
+ @property
517
+ @pulumi.getter(name="customModelLlmSettings")
518
+ def custom_model_llm_settings(self) -> pulumi.Output[Optional['outputs.LlmBlueprintCustomModelLlmSettings']]:
519
+ """
520
+ The custom model LLM settings for the LLM Blueprint.
521
+ """
522
+ return pulumi.get(self, "custom_model_llm_settings")
523
+
478
524
  @property
479
525
  @pulumi.getter
480
526
  def description(self) -> pulumi.Output[Optional[str]]:
@@ -485,7 +531,7 @@ class LlmBlueprint(pulumi.CustomResource):
485
531
 
486
532
  @property
487
533
  @pulumi.getter(name="llmId")
488
- def llm_id(self) -> pulumi.Output[str]:
534
+ def llm_id(self) -> pulumi.Output[Optional[str]]:
489
535
  """
490
536
  The id of the LLM for the LLM Blueprint.
491
537
  """
@@ -77,6 +77,7 @@ __all__ = [
77
77
  'DeploymentRetrainingPolicyTriggerSchedule',
78
78
  'DeploymentRuntimeParameterValue',
79
79
  'DeploymentSegmentAnalysisSettings',
80
+ 'LlmBlueprintCustomModelLlmSettings',
80
81
  'LlmBlueprintLlmSettings',
81
82
  'LlmBlueprintVectorDatabaseSettings',
82
83
  'NotificationChannelCustomHeader',
@@ -4014,6 +4015,70 @@ class DeploymentSegmentAnalysisSettings(dict):
4014
4015
  return pulumi.get(self, "attributes")
4015
4016
 
4016
4017
 
4018
+ @pulumi.output_type
4019
+ class LlmBlueprintCustomModelLlmSettings(dict):
4020
+ @staticmethod
4021
+ def __key_warning(key: str):
4022
+ suggest = None
4023
+ if key == "externalLlmContextSize":
4024
+ suggest = "external_llm_context_size"
4025
+ elif key == "systemPrompt":
4026
+ suggest = "system_prompt"
4027
+ elif key == "validationId":
4028
+ suggest = "validation_id"
4029
+
4030
+ if suggest:
4031
+ pulumi.log.warn(f"Key '{key}' not found in LlmBlueprintCustomModelLlmSettings. Access the value via the '{suggest}' property getter instead.")
4032
+
4033
+ def __getitem__(self, key: str) -> Any:
4034
+ LlmBlueprintCustomModelLlmSettings.__key_warning(key)
4035
+ return super().__getitem__(key)
4036
+
4037
+ def get(self, key: str, default = None) -> Any:
4038
+ LlmBlueprintCustomModelLlmSettings.__key_warning(key)
4039
+ return super().get(key, default)
4040
+
4041
+ def __init__(__self__, *,
4042
+ external_llm_context_size: Optional[int] = None,
4043
+ system_prompt: Optional[str] = None,
4044
+ validation_id: Optional[str] = None):
4045
+ """
4046
+ :param int external_llm_context_size: The external LLM's context size, in tokens. This value is only used for pruning documents supplied to the LLM when a vector database is associated with the LLM blueprint. It does not affect the external LLM's actual context size in any way and is not supplied to the LLM.
4047
+ :param str system_prompt: System prompt guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
4048
+ :param str validation_id: The validation ID of the custom model LLM.
4049
+ """
4050
+ if external_llm_context_size is not None:
4051
+ pulumi.set(__self__, "external_llm_context_size", external_llm_context_size)
4052
+ if system_prompt is not None:
4053
+ pulumi.set(__self__, "system_prompt", system_prompt)
4054
+ if validation_id is not None:
4055
+ pulumi.set(__self__, "validation_id", validation_id)
4056
+
4057
+ @property
4058
+ @pulumi.getter(name="externalLlmContextSize")
4059
+ def external_llm_context_size(self) -> Optional[int]:
4060
+ """
4061
+ The external LLM's context size, in tokens. This value is only used for pruning documents supplied to the LLM when a vector database is associated with the LLM blueprint. It does not affect the external LLM's actual context size in any way and is not supplied to the LLM.
4062
+ """
4063
+ return pulumi.get(self, "external_llm_context_size")
4064
+
4065
+ @property
4066
+ @pulumi.getter(name="systemPrompt")
4067
+ def system_prompt(self) -> Optional[str]:
4068
+ """
4069
+ System prompt guides the style of the LLM response. It is a 'universal' prompt, prepended to all individual prompts.
4070
+ """
4071
+ return pulumi.get(self, "system_prompt")
4072
+
4073
+ @property
4074
+ @pulumi.getter(name="validationId")
4075
+ def validation_id(self) -> Optional[str]:
4076
+ """
4077
+ The validation ID of the custom model LLM.
4078
+ """
4079
+ return pulumi.get(self, "validation_id")
4080
+
4081
+
4017
4082
  @pulumi.output_type
4018
4083
  class LlmBlueprintLlmSettings(dict):
4019
4084
  @staticmethod
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pulumi-datarobot
3
- Version: 0.8.4
3
+ Version: 0.8.5
4
4
  Summary: A Pulumi package for creating and managing DataRobot resources.
5
5
  Home-page: https://www.datarobot.com
6
6
  License: Apache-2.0
@@ -16,6 +16,7 @@ pulumi_datarobot/custom_metric.py
16
16
  pulumi_datarobot/custom_metric_from_job.py
17
17
  pulumi_datarobot/custom_metric_job.py
18
18
  pulumi_datarobot/custom_model.py
19
+ pulumi_datarobot/custom_model_llm_validation.py
19
20
  pulumi_datarobot/dataset_from_datasource.py
20
21
  pulumi_datarobot/dataset_from_file.py
21
22
  pulumi_datarobot/dataset_from_url.py
@@ -8,7 +8,7 @@ from setuptools.command.install import install
8
8
  from subprocess import check_call
9
9
 
10
10
 
11
- VERSION = "0.8.4"
11
+ VERSION = "0.8.5"
12
12
  def readme():
13
13
  try:
14
14
  with open('README.md', encoding='utf-8') as f: