@pulumiverse/scaleway 1.28.0-alpha.1747119212 → 1.28.0

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 (124) hide show
  1. package/baremetalServer.d.ts +19 -166
  2. package/baremetalServer.js +13 -166
  3. package/baremetalServer.js.map +1 -1
  4. package/databaseInstance.d.ts +14 -9
  5. package/databaseInstance.js +2 -0
  6. package/databaseInstance.js.map +1 -1
  7. package/databases/getInstance.d.ts +1 -0
  8. package/databases/getInstance.js.map +1 -1
  9. package/databases/instance.d.ts +14 -9
  10. package/databases/instance.js +2 -0
  11. package/databases/instance.js.map +1 -1
  12. package/databases/snapshot.d.ts +1 -1
  13. package/databases/snapshot.js +1 -1
  14. package/elasticmetal/getServer.d.ts +1 -0
  15. package/elasticmetal/getServer.js.map +1 -1
  16. package/elasticmetal/server.d.ts +19 -166
  17. package/elasticmetal/server.js +13 -166
  18. package/elasticmetal/server.js.map +1 -1
  19. package/getBaremetalServer.d.ts +1 -0
  20. package/getBaremetalServer.js.map +1 -1
  21. package/getCockpitPlan.d.ts +0 -44
  22. package/getCockpitPlan.js +0 -44
  23. package/getCockpitPlan.js.map +1 -1
  24. package/getDatabaseInstance.d.ts +1 -0
  25. package/getDatabaseInstance.js.map +1 -1
  26. package/getInstancePrivateNic.d.ts +2 -0
  27. package/getInstancePrivateNic.js.map +1 -1
  28. package/getInstanceServer.d.ts +1 -0
  29. package/getInstanceServer.js.map +1 -1
  30. package/getLbRoute.d.ts +1 -0
  31. package/getLbRoute.js.map +1 -1
  32. package/getLoadbalancer.d.ts +1 -0
  33. package/getLoadbalancer.js.map +1 -1
  34. package/getRedisCluster.d.ts +1 -0
  35. package/getRedisCluster.js.map +1 -1
  36. package/getVpcGatewayNetwork.d.ts +1 -0
  37. package/getVpcGatewayNetwork.js.map +1 -1
  38. package/inference/deployment.d.ts +18 -23
  39. package/inference/deployment.js +6 -21
  40. package/inference/deployment.js.map +1 -1
  41. package/inference/getModel.d.ts +109 -0
  42. package/inference/getModel.js +60 -0
  43. package/inference/getModel.js.map +1 -0
  44. package/inference/index.d.ts +6 -0
  45. package/inference/index.js +9 -1
  46. package/inference/index.js.map +1 -1
  47. package/inference/model.d.ts +220 -0
  48. package/inference/model.js +130 -0
  49. package/inference/model.js.map +1 -0
  50. package/inferenceDeployment.d.ts +18 -23
  51. package/inferenceDeployment.js +6 -21
  52. package/inferenceDeployment.js.map +1 -1
  53. package/instance/getPrivateNic.d.ts +2 -0
  54. package/instance/getPrivateNic.js.map +1 -1
  55. package/instance/getServer.d.ts +1 -0
  56. package/instance/getServer.js.map +1 -1
  57. package/instance/privateNic.d.ts +10 -0
  58. package/instance/privateNic.js +2 -0
  59. package/instance/privateNic.js.map +1 -1
  60. package/instance/server.d.ts +8 -0
  61. package/instance/server.js +2 -0
  62. package/instance/server.js.map +1 -1
  63. package/instancePrivateNic.d.ts +10 -0
  64. package/instancePrivateNic.js +2 -0
  65. package/instancePrivateNic.js.map +1 -1
  66. package/instanceServer.d.ts +8 -0
  67. package/instanceServer.js +2 -0
  68. package/instanceServer.js.map +1 -1
  69. package/kubernetes/acl.d.ts +166 -0
  70. package/kubernetes/acl.js +120 -0
  71. package/kubernetes/acl.js.map +1 -0
  72. package/kubernetes/index.d.ts +3 -0
  73. package/kubernetes/index.js +6 -1
  74. package/kubernetes/index.js.map +1 -1
  75. package/loadbalancer.d.ts +8 -0
  76. package/loadbalancer.js +2 -0
  77. package/loadbalancer.js.map +1 -1
  78. package/loadbalancerRoute.d.ts +62 -6
  79. package/loadbalancerRoute.js +43 -0
  80. package/loadbalancerRoute.js.map +1 -1
  81. package/loadbalancers/getLoadBalancer.d.ts +1 -0
  82. package/loadbalancers/getLoadBalancer.js.map +1 -1
  83. package/loadbalancers/getRoute.d.ts +1 -0
  84. package/loadbalancers/getRoute.js.map +1 -1
  85. package/loadbalancers/loadBalancer.d.ts +8 -0
  86. package/loadbalancers/loadBalancer.js +2 -0
  87. package/loadbalancers/loadBalancer.js.map +1 -1
  88. package/loadbalancers/route.d.ts +62 -6
  89. package/loadbalancers/route.js +43 -0
  90. package/loadbalancers/route.js.map +1 -1
  91. package/mnq/snsCredentials.d.ts +3 -3
  92. package/mnq/sqsCredentials.d.ts +3 -3
  93. package/mnqSnsCredentials.d.ts +3 -3
  94. package/mnqSqsCredentials.d.ts +3 -3
  95. package/network/gatewayNetwork.d.ts +8 -0
  96. package/network/gatewayNetwork.js +2 -0
  97. package/network/gatewayNetwork.js.map +1 -1
  98. package/network/getGatewayNetwork.d.ts +1 -0
  99. package/network/getGatewayNetwork.js.map +1 -1
  100. package/network/route.d.ts +56 -1
  101. package/network/route.js +56 -1
  102. package/network/route.js.map +1 -1
  103. package/observability/getPlan.d.ts +0 -44
  104. package/observability/getPlan.js +0 -44
  105. package/observability/getPlan.js.map +1 -1
  106. package/package.json +2 -2
  107. package/rdbSnapshot.d.ts +1 -1
  108. package/rdbSnapshot.js +1 -1
  109. package/redis/cluster.d.ts +8 -0
  110. package/redis/cluster.js +2 -0
  111. package/redis/cluster.js.map +1 -1
  112. package/redis/getCluster.d.ts +1 -0
  113. package/redis/getCluster.js.map +1 -1
  114. package/redisCluster.d.ts +8 -0
  115. package/redisCluster.js +2 -0
  116. package/redisCluster.js.map +1 -1
  117. package/types/input.d.ts +235 -4
  118. package/types/output.d.ts +443 -4
  119. package/vpcGatewayNetwork.d.ts +8 -0
  120. package/vpcGatewayNetwork.js +2 -0
  121. package/vpcGatewayNetwork.js.map +1 -1
  122. package/vpcRoute.d.ts +56 -1
  123. package/vpcRoute.js +56 -1
  124. package/vpcRoute.js.map +1 -1
@@ -7,23 +7,6 @@ import * as outputs from "../types/output";
7
7
  *
8
8
  * ## Example Usage
9
9
  *
10
- * ### Basic
11
- *
12
- * ```typescript
13
- * import * as pulumi from "@pulumi/pulumi";
14
- * import * as scaleway from "@pulumiverse/scaleway";
15
- *
16
- * const deployment = new scaleway.inference.Deployment("deployment", {
17
- * name: "tf-inference-deployment",
18
- * nodeType: "L4",
19
- * modelName: "meta/llama-3.1-8b-instruct:fp8",
20
- * publicEndpoint: {
21
- * isEnabled: true,
22
- * },
23
- * acceptEula: true,
24
- * });
25
- * ```
26
- *
27
10
  * ## Import
28
11
  *
29
12
  * Functions can be imported using, `{region}/{id}`, as shown below:
@@ -61,17 +44,17 @@ export declare class Deployment extends pulumi.CustomResource {
61
44
  /**
62
45
  * The maximum size of the pool.
63
46
  */
64
- readonly maxSize: pulumi.Output<number>;
47
+ readonly maxSize: pulumi.Output<number | undefined>;
65
48
  /**
66
49
  * The minimum size of the pool.
67
50
  */
68
- readonly minSize: pulumi.Output<number>;
51
+ readonly minSize: pulumi.Output<number | undefined>;
69
52
  /**
70
53
  * The model id used for the deployment.
71
54
  */
72
55
  readonly modelId: pulumi.Output<string>;
73
56
  /**
74
- * The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
57
+ * The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
75
58
  */
76
59
  readonly modelName: pulumi.Output<string>;
77
60
  /**
@@ -94,6 +77,10 @@ export declare class Deployment extends pulumi.CustomResource {
94
77
  * Configuration of the deployment's public endpoint.
95
78
  */
96
79
  readonly publicEndpoint: pulumi.Output<outputs.inference.DeploymentPublicEndpoint | undefined>;
80
+ /**
81
+ * The number of bits each model parameter should be quantized to
82
+ */
83
+ readonly quantization: pulumi.Output<number | undefined>;
97
84
  /**
98
85
  * `region`) The region in which the deployment is created.
99
86
  */
@@ -148,7 +135,7 @@ export interface DeploymentState {
148
135
  */
149
136
  modelId?: pulumi.Input<string>;
150
137
  /**
151
- * The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
138
+ * The model name used for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
152
139
  */
153
140
  modelName?: pulumi.Input<string>;
154
141
  /**
@@ -171,6 +158,10 @@ export interface DeploymentState {
171
158
  * Configuration of the deployment's public endpoint.
172
159
  */
173
160
  publicEndpoint?: pulumi.Input<inputs.inference.DeploymentPublicEndpoint>;
161
+ /**
162
+ * The number of bits each model parameter should be quantized to
163
+ */
164
+ quantization?: pulumi.Input<number>;
174
165
  /**
175
166
  * `region`) The region in which the deployment is created.
176
167
  */
@@ -209,9 +200,9 @@ export interface DeploymentArgs {
209
200
  */
210
201
  minSize?: pulumi.Input<number>;
211
202
  /**
212
- * The model name to use for the deployment. Model names can be found in Console or using Scaleway's CLI (`scw inference model list`)
203
+ * The model id used for the deployment.
213
204
  */
214
- modelName: pulumi.Input<string>;
205
+ modelId: pulumi.Input<string>;
215
206
  /**
216
207
  * The deployment name.
217
208
  */
@@ -232,6 +223,10 @@ export interface DeploymentArgs {
232
223
  * Configuration of the deployment's public endpoint.
233
224
  */
234
225
  publicEndpoint?: pulumi.Input<inputs.inference.DeploymentPublicEndpoint>;
226
+ /**
227
+ * The number of bits each model parameter should be quantized to
228
+ */
229
+ quantization?: pulumi.Input<number>;
235
230
  /**
236
231
  * `region`) The region in which the deployment is created.
237
232
  */
@@ -11,23 +11,6 @@ const utilities = require("../utilities");
11
11
  *
12
12
  * ## Example Usage
13
13
  *
14
- * ### Basic
15
- *
16
- * ```typescript
17
- * import * as pulumi from "@pulumi/pulumi";
18
- * import * as scaleway from "@pulumiverse/scaleway";
19
- *
20
- * const deployment = new scaleway.inference.Deployment("deployment", {
21
- * name: "tf-inference-deployment",
22
- * nodeType: "L4",
23
- * modelName: "meta/llama-3.1-8b-instruct:fp8",
24
- * publicEndpoint: {
25
- * isEnabled: true,
26
- * },
27
- * acceptEula: true,
28
- * });
29
- * ```
30
- *
31
14
  * ## Import
32
15
  *
33
16
  * Functions can be imported using, `{region}/{id}`, as shown below:
@@ -77,6 +60,7 @@ class Deployment extends pulumi.CustomResource {
77
60
  resourceInputs["privateEndpoint"] = state ? state.privateEndpoint : undefined;
78
61
  resourceInputs["projectId"] = state ? state.projectId : undefined;
79
62
  resourceInputs["publicEndpoint"] = state ? state.publicEndpoint : undefined;
63
+ resourceInputs["quantization"] = state ? state.quantization : undefined;
80
64
  resourceInputs["region"] = state ? state.region : undefined;
81
65
  resourceInputs["size"] = state ? state.size : undefined;
82
66
  resourceInputs["status"] = state ? state.status : undefined;
@@ -85,8 +69,8 @@ class Deployment extends pulumi.CustomResource {
85
69
  }
86
70
  else {
87
71
  const args = argsOrState;
88
- if ((!args || args.modelName === undefined) && !opts.urn) {
89
- throw new Error("Missing required property 'modelName'");
72
+ if ((!args || args.modelId === undefined) && !opts.urn) {
73
+ throw new Error("Missing required property 'modelId'");
90
74
  }
91
75
  if ((!args || args.nodeType === undefined) && !opts.urn) {
92
76
  throw new Error("Missing required property 'nodeType'");
@@ -94,16 +78,17 @@ class Deployment extends pulumi.CustomResource {
94
78
  resourceInputs["acceptEula"] = args ? args.acceptEula : undefined;
95
79
  resourceInputs["maxSize"] = args ? args.maxSize : undefined;
96
80
  resourceInputs["minSize"] = args ? args.minSize : undefined;
97
- resourceInputs["modelName"] = args ? args.modelName : undefined;
81
+ resourceInputs["modelId"] = args ? args.modelId : undefined;
98
82
  resourceInputs["name"] = args ? args.name : undefined;
99
83
  resourceInputs["nodeType"] = args ? args.nodeType : undefined;
100
84
  resourceInputs["privateEndpoint"] = args ? args.privateEndpoint : undefined;
101
85
  resourceInputs["projectId"] = args ? args.projectId : undefined;
102
86
  resourceInputs["publicEndpoint"] = args ? args.publicEndpoint : undefined;
87
+ resourceInputs["quantization"] = args ? args.quantization : undefined;
103
88
  resourceInputs["region"] = args ? args.region : undefined;
104
89
  resourceInputs["tags"] = args ? args.tags : undefined;
105
90
  resourceInputs["createdAt"] = undefined /*out*/;
106
- resourceInputs["modelId"] = undefined /*out*/;
91
+ resourceInputs["modelName"] = undefined /*out*/;
107
92
  resourceInputs["size"] = undefined /*out*/;
108
93
  resourceInputs["status"] = undefined /*out*/;
109
94
  resourceInputs["updatedAt"] = undefined /*out*/;
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../inference/deployment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../inference/deployment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as outputs from "../types/output";
3
+ /**
4
+ * The `scaleway.inference.Model` data source allows you to retrieve information about an inference model available in the Scaleway Inference API, either by providing the model's `name` or its `modelId`.
5
+ *
6
+ * ## Example Usage
7
+ *
8
+ * ### Basic
9
+ *
10
+ * ```typescript
11
+ * import * as pulumi from "@pulumi/pulumi";
12
+ * import * as scaleway from "@pulumi/scaleway";
13
+ *
14
+ * const myModel = scaleway.inference.getModel({
15
+ * name: "meta/llama-3.1-8b-instruct:fp8",
16
+ * });
17
+ * ```
18
+ */
19
+ export declare function getModel(args?: GetModelArgs, opts?: pulumi.InvokeOptions): Promise<GetModelResult>;
20
+ /**
21
+ * A collection of arguments for invoking getModel.
22
+ */
23
+ export interface GetModelArgs {
24
+ /**
25
+ * The ID of the model to retrieve. Must be a valid UUID with locality (i.e., Scaleway's zoned UUID format).
26
+ */
27
+ modelId?: string;
28
+ /**
29
+ * The fully qualified name of the model to look up (e.g., "meta/llama-3.1-8b-instruct:fp8"). The provider will search for a model with an exact name match in the selected region and project.
30
+ */
31
+ name?: string;
32
+ url?: string;
33
+ }
34
+ /**
35
+ * A collection of values returned by getModel.
36
+ */
37
+ export interface GetModelResult {
38
+ readonly createdAt: string;
39
+ /**
40
+ * A textual description of the model (if available).
41
+ */
42
+ readonly description: string;
43
+ /**
44
+ * Whether the model requires end-user license agreement acceptance before use.
45
+ */
46
+ readonly hasEula: boolean;
47
+ /**
48
+ * The provider-assigned unique ID for this managed resource.
49
+ */
50
+ readonly id: string;
51
+ readonly modelId?: string;
52
+ readonly name?: string;
53
+ /**
54
+ * List of supported node types and their quantization options. Each entry contains:
55
+ */
56
+ readonly nodesSupports: outputs.inference.GetModelNodesSupport[];
57
+ /**
58
+ * Size, in bits, of the model parameters.
59
+ */
60
+ readonly parameterSizeBits: number;
61
+ readonly projectId: string;
62
+ readonly region: string;
63
+ readonly secret: string;
64
+ /**
65
+ * Total size, in bytes, of the model archive.
66
+ */
67
+ readonly sizeBytes: number;
68
+ /**
69
+ * The current status of the model (e.g., ready, error, etc.).
70
+ */
71
+ readonly status: string;
72
+ /**
73
+ * Tags associated with the model.
74
+ */
75
+ readonly tags: string[];
76
+ readonly updatedAt: string;
77
+ readonly url?: string;
78
+ }
79
+ /**
80
+ * The `scaleway.inference.Model` data source allows you to retrieve information about an inference model available in the Scaleway Inference API, either by providing the model's `name` or its `modelId`.
81
+ *
82
+ * ## Example Usage
83
+ *
84
+ * ### Basic
85
+ *
86
+ * ```typescript
87
+ * import * as pulumi from "@pulumi/pulumi";
88
+ * import * as scaleway from "@pulumi/scaleway";
89
+ *
90
+ * const myModel = scaleway.inference.getModel({
91
+ * name: "meta/llama-3.1-8b-instruct:fp8",
92
+ * });
93
+ * ```
94
+ */
95
+ export declare function getModelOutput(args?: GetModelOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetModelResult>;
96
+ /**
97
+ * A collection of arguments for invoking getModel.
98
+ */
99
+ export interface GetModelOutputArgs {
100
+ /**
101
+ * The ID of the model to retrieve. Must be a valid UUID with locality (i.e., Scaleway's zoned UUID format).
102
+ */
103
+ modelId?: pulumi.Input<string>;
104
+ /**
105
+ * The fully qualified name of the model to look up (e.g., "meta/llama-3.1-8b-instruct:fp8"). The provider will search for a model with an exact name match in the selected region and project.
106
+ */
107
+ name?: pulumi.Input<string>;
108
+ url?: pulumi.Input<string>;
109
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
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
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getModelOutput = exports.getModel = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * The `scaleway.inference.Model` data source allows you to retrieve information about an inference model available in the Scaleway Inference API, either by providing the model's `name` or its `modelId`.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ### Basic
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as scaleway from "@pulumi/scaleway";
18
+ *
19
+ * const myModel = scaleway.inference.getModel({
20
+ * name: "meta/llama-3.1-8b-instruct:fp8",
21
+ * });
22
+ * ```
23
+ */
24
+ function getModel(args, opts) {
25
+ args = args || {};
26
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
27
+ return pulumi.runtime.invoke("scaleway:inference/getModel:getModel", {
28
+ "modelId": args.modelId,
29
+ "name": args.name,
30
+ "url": args.url,
31
+ }, opts);
32
+ }
33
+ exports.getModel = getModel;
34
+ /**
35
+ * The `scaleway.inference.Model` data source allows you to retrieve information about an inference model available in the Scaleway Inference API, either by providing the model's `name` or its `modelId`.
36
+ *
37
+ * ## Example Usage
38
+ *
39
+ * ### Basic
40
+ *
41
+ * ```typescript
42
+ * import * as pulumi from "@pulumi/pulumi";
43
+ * import * as scaleway from "@pulumi/scaleway";
44
+ *
45
+ * const myModel = scaleway.inference.getModel({
46
+ * name: "meta/llama-3.1-8b-instruct:fp8",
47
+ * });
48
+ * ```
49
+ */
50
+ function getModelOutput(args, opts) {
51
+ args = args || {};
52
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
53
+ return pulumi.runtime.invokeOutput("scaleway:inference/getModel:getModel", {
54
+ "modelId": args.modelId,
55
+ "name": args.name,
56
+ "url": args.url,
57
+ }, opts);
58
+ }
59
+ exports.getModelOutput = getModelOutput;
60
+ //# sourceMappingURL=getModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getModel.js","sourceRoot":"","sources":["../../inference/getModel.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,QAAQ,CAAC,IAAmB,EAAE,IAA2B;IACrE,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,sCAAsC,EAAE;QACjE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,KAAK,EAAE,IAAI,CAAC,GAAG;KAClB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,4BAQC;AA8DD;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,cAAc,CAAC,IAAyB,EAAE,IAAiC;IACvF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAClB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,sCAAsC,EAAE;QACvE,SAAS,EAAE,IAAI,CAAC,OAAO;QACvB,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,KAAK,EAAE,IAAI,CAAC,GAAG;KAClB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AARD,wCAQC"}
@@ -1,3 +1,9 @@
1
1
  export { DeploymentArgs, DeploymentState } from "./deployment";
2
2
  export type Deployment = import("./deployment").Deployment;
3
3
  export declare const Deployment: typeof import("./deployment").Deployment;
4
+ export { GetModelArgs, GetModelResult, GetModelOutputArgs } from "./getModel";
5
+ export declare const getModel: typeof import("./getModel").getModel;
6
+ export declare const getModelOutput: typeof import("./getModel").getModelOutput;
7
+ export { ModelArgs, ModelState } from "./model";
8
+ export type Model = import("./model").Model;
9
+ export declare const Model: typeof import("./model").Model;
@@ -2,21 +2,29 @@
2
2
  // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.Deployment = void 0;
5
+ exports.Model = exports.getModelOutput = exports.getModel = exports.Deployment = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  exports.Deployment = null;
9
9
  utilities.lazyLoad(exports, ["Deployment"], () => require("./deployment"));
10
+ exports.getModel = null;
11
+ exports.getModelOutput = null;
12
+ utilities.lazyLoad(exports, ["getModel", "getModelOutput"], () => require("./getModel"));
13
+ exports.Model = null;
14
+ utilities.lazyLoad(exports, ["Model"], () => require("./model"));
10
15
  const _module = {
11
16
  version: utilities.getVersion(),
12
17
  construct: (name, type, urn) => {
13
18
  switch (type) {
14
19
  case "scaleway:inference/deployment:Deployment":
15
20
  return new exports.Deployment(name, undefined, { urn });
21
+ case "scaleway:inference/model:Model":
22
+ return new exports.Model(name, undefined, { urn });
16
23
  default:
17
24
  throw new Error(`unknown resource type ${type}`);
18
25
  }
19
26
  },
20
27
  };
21
28
  pulumi.runtime.registerResourceModule("scaleway", "inference/deployment", _module);
29
+ pulumi.runtime.registerResourceModule("scaleway", "inference/model", _module);
22
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../inference/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAK7B,QAAA,UAAU,GAA6C,IAAW,CAAC;AAChF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;AAG3E,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,0CAA0C;gBAC3C,OAAO,IAAI,kBAAU,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACxD;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,UAAU,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../inference/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAK7B,QAAA,UAAU,GAA6C,IAAW,CAAC;AAChF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;AAG9D,QAAA,QAAQ,GAAyC,IAAW,CAAC;AAC7D,QAAA,cAAc,GAA+C,IAAW,CAAC;AACtF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,UAAU,EAAC,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;AAI3E,QAAA,KAAK,GAAmC,IAAW,CAAC;AACjE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;AAGjE,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,0CAA0C;gBAC3C,OAAO,IAAI,kBAAU,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACxD,KAAK,gCAAgC;gBACjC,OAAO,IAAI,aAAK,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACnD;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,UAAU,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAA;AAClF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAA"}
@@ -0,0 +1,220 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * The scaleway.inference.Model resource allows you to upload and manage inference models in the Scaleway Inference ecosystem. Once registered, a model can be used in any scaleway.inference.Deployment resource.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ### Basic
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as scaleway from "@pulumiverse/scaleway";
14
+ *
15
+ * const test = new scaleway.inference.Model("test", {
16
+ * name: "my-awesome-model",
17
+ * url: "https://huggingface.co/agentica-org/DeepCoder-14B-Preview",
18
+ * secret: "my-secret-token",
19
+ * });
20
+ * ```
21
+ *
22
+ * ### Deploy your own model on your managed inference
23
+ *
24
+ * ```typescript
25
+ * import * as pulumi from "@pulumi/pulumi";
26
+ * import * as scaleway from "@pulumiverse/scaleway";
27
+ *
28
+ * const myModel = new scaleway.inference.Model("my_model", {
29
+ * name: "my-awesome-model",
30
+ * url: "https://huggingface.co/agentica-org/DeepCoder-14B-Preview",
31
+ * secret: "my-secret-token",
32
+ * });
33
+ * const myDeployment = new scaleway.inference.Deployment("my_deployment", {
34
+ * name: "test-inference-deployment-basic",
35
+ * nodeType: "H100",
36
+ * modelId: myModel.id,
37
+ * publicEndpoint: {
38
+ * isEnabled: true,
39
+ * },
40
+ * acceptEula: true,
41
+ * });
42
+ * ```
43
+ *
44
+ * ## Import
45
+ *
46
+ * Models can be imported using, `{region}/{id}`, as shown below:
47
+ *
48
+ * bash
49
+ *
50
+ * ```sh
51
+ * $ pulumi import scaleway:inference/model:Model my_model fr-par/11111111-1111-1111-1111-111111111111
52
+ * ```
53
+ */
54
+ export declare class Model extends pulumi.CustomResource {
55
+ /**
56
+ * Get an existing Model resource's state with the given name, ID, and optional extra
57
+ * properties used to qualify the lookup.
58
+ *
59
+ * @param name The _unique_ name of the resulting resource.
60
+ * @param id The _unique_ provider ID of the resource to lookup.
61
+ * @param state Any extra arguments used during the lookup.
62
+ * @param opts Optional settings to control the behavior of the CustomResource.
63
+ */
64
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ModelState, opts?: pulumi.CustomResourceOptions): Model;
65
+ /**
66
+ * Returns true if the given object is an instance of Model. This is designed to work even
67
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
68
+ */
69
+ static isInstance(obj: any): obj is Model;
70
+ /**
71
+ * The date and time of the creation of the model
72
+ */
73
+ readonly createdAt: pulumi.Output<string>;
74
+ /**
75
+ * A textual description of the model (if available).
76
+ */
77
+ readonly description: pulumi.Output<string>;
78
+ /**
79
+ * Whether the model requires end-user license agreement acceptance before use.
80
+ */
81
+ readonly hasEula: pulumi.Output<boolean>;
82
+ /**
83
+ * The name of the model. This must be unique within the project.
84
+ */
85
+ readonly name: pulumi.Output<string>;
86
+ /**
87
+ * List of supported node types and their quantization options. Each entry contains:
88
+ */
89
+ readonly nodesSupports: pulumi.Output<outputs.inference.ModelNodesSupport[]>;
90
+ /**
91
+ * Size, in bits, of the model parameters.
92
+ */
93
+ readonly parameterSizeBits: pulumi.Output<number>;
94
+ /**
95
+ * `projectId`) The ID of the project the deployment is associated with.
96
+ */
97
+ readonly projectId: pulumi.Output<string>;
98
+ /**
99
+ * `region`) The region in which the deployment is created.
100
+ */
101
+ readonly region: pulumi.Output<string>;
102
+ /**
103
+ * Authentication token used to pull the model from a private or gated URL (e.g., a Hugging Face access token with read permission).
104
+ */
105
+ readonly secret: pulumi.Output<string | undefined>;
106
+ /**
107
+ * Total size, in bytes, of the model archive.
108
+ */
109
+ readonly sizeBytes: pulumi.Output<number>;
110
+ /**
111
+ * The current status of the model (e.g., ready, error, etc.).
112
+ */
113
+ readonly status: pulumi.Output<string>;
114
+ /**
115
+ * Tags associated with the model.
116
+ */
117
+ readonly tags: pulumi.Output<string[]>;
118
+ /**
119
+ * The date and time of the last update of the model
120
+ */
121
+ readonly updatedAt: pulumi.Output<string>;
122
+ /**
123
+ * The HTTPS source URL from which the model will be downloaded. This is typically a Hugging Face repository URL (e.g., https://huggingface.co/agentica-org/DeepCoder-14B-Preview). The URL must be publicly accessible or require valid credentials via `secret`
124
+ */
125
+ readonly url: pulumi.Output<string>;
126
+ /**
127
+ * Create a Model resource with the given unique name, arguments, and options.
128
+ *
129
+ * @param name The _unique_ name of the resource.
130
+ * @param args The arguments to use to populate this resource's properties.
131
+ * @param opts A bag of options that control this resource's behavior.
132
+ */
133
+ constructor(name: string, args: ModelArgs, opts?: pulumi.CustomResourceOptions);
134
+ }
135
+ /**
136
+ * Input properties used for looking up and filtering Model resources.
137
+ */
138
+ export interface ModelState {
139
+ /**
140
+ * The date and time of the creation of the model
141
+ */
142
+ createdAt?: pulumi.Input<string>;
143
+ /**
144
+ * A textual description of the model (if available).
145
+ */
146
+ description?: pulumi.Input<string>;
147
+ /**
148
+ * Whether the model requires end-user license agreement acceptance before use.
149
+ */
150
+ hasEula?: pulumi.Input<boolean>;
151
+ /**
152
+ * The name of the model. This must be unique within the project.
153
+ */
154
+ name?: pulumi.Input<string>;
155
+ /**
156
+ * List of supported node types and their quantization options. Each entry contains:
157
+ */
158
+ nodesSupports?: pulumi.Input<pulumi.Input<inputs.inference.ModelNodesSupport>[]>;
159
+ /**
160
+ * Size, in bits, of the model parameters.
161
+ */
162
+ parameterSizeBits?: pulumi.Input<number>;
163
+ /**
164
+ * `projectId`) The ID of the project the deployment is associated with.
165
+ */
166
+ projectId?: pulumi.Input<string>;
167
+ /**
168
+ * `region`) The region in which the deployment is created.
169
+ */
170
+ region?: pulumi.Input<string>;
171
+ /**
172
+ * Authentication token used to pull the model from a private or gated URL (e.g., a Hugging Face access token with read permission).
173
+ */
174
+ secret?: pulumi.Input<string>;
175
+ /**
176
+ * Total size, in bytes, of the model archive.
177
+ */
178
+ sizeBytes?: pulumi.Input<number>;
179
+ /**
180
+ * The current status of the model (e.g., ready, error, etc.).
181
+ */
182
+ status?: pulumi.Input<string>;
183
+ /**
184
+ * Tags associated with the model.
185
+ */
186
+ tags?: pulumi.Input<pulumi.Input<string>[]>;
187
+ /**
188
+ * The date and time of the last update of the model
189
+ */
190
+ updatedAt?: pulumi.Input<string>;
191
+ /**
192
+ * The HTTPS source URL from which the model will be downloaded. This is typically a Hugging Face repository URL (e.g., https://huggingface.co/agentica-org/DeepCoder-14B-Preview). The URL must be publicly accessible or require valid credentials via `secret`
193
+ */
194
+ url?: pulumi.Input<string>;
195
+ }
196
+ /**
197
+ * The set of arguments for constructing a Model resource.
198
+ */
199
+ export interface ModelArgs {
200
+ /**
201
+ * The name of the model. This must be unique within the project.
202
+ */
203
+ name?: pulumi.Input<string>;
204
+ /**
205
+ * `projectId`) The ID of the project the deployment is associated with.
206
+ */
207
+ projectId?: pulumi.Input<string>;
208
+ /**
209
+ * `region`) The region in which the deployment is created.
210
+ */
211
+ region?: pulumi.Input<string>;
212
+ /**
213
+ * Authentication token used to pull the model from a private or gated URL (e.g., a Hugging Face access token with read permission).
214
+ */
215
+ secret?: pulumi.Input<string>;
216
+ /**
217
+ * The HTTPS source URL from which the model will be downloaded. This is typically a Hugging Face repository URL (e.g., https://huggingface.co/agentica-org/DeepCoder-14B-Preview). The URL must be publicly accessible or require valid credentials via `secret`
218
+ */
219
+ url: pulumi.Input<string>;
220
+ }