@azure/arm-aiinfraoptimization 0.0.0-stage → 1.0.0-beta.1

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 (178) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +114 -2
  3. package/dist/browser/aiInfraOptimizationClient.d.ts +18 -0
  4. package/dist/browser/aiInfraOptimizationClient.js +22 -0
  5. package/dist/browser/aiInfraOptimizationClient.js.map +1 -0
  6. package/dist/browser/api/aiInfraOptimizationContext.d.ts +22 -0
  7. package/dist/browser/api/aiInfraOptimizationContext.js +30 -0
  8. package/dist/browser/api/aiInfraOptimizationContext.js.map +1 -0
  9. package/dist/browser/api/index.d.ts +3 -0
  10. package/dist/browser/api/index.js +4 -0
  11. package/dist/browser/api/index.js.map +1 -0
  12. package/dist/browser/api/operations/index.d.ts +3 -0
  13. package/dist/browser/api/operations/index.js +4 -0
  14. package/dist/browser/api/operations/index.js.map +1 -0
  15. package/dist/browser/api/operations/operations.d.ts +10 -0
  16. package/dist/browser/api/operations/operations.js +37 -0
  17. package/dist/browser/api/operations/operations.js.map +1 -0
  18. package/dist/browser/api/operations/options.d.ts +5 -0
  19. package/dist/browser/api/operations/options.js +4 -0
  20. package/dist/browser/api/operations/options.js.map +1 -0
  21. package/dist/browser/api/recommendations/index.d.ts +3 -0
  22. package/dist/browser/api/recommendations/index.js +4 -0
  23. package/dist/browser/api/recommendations/index.js.map +1 -0
  24. package/dist/browser/api/recommendations/operations.d.ts +9 -0
  25. package/dist/browser/api/recommendations/operations.js +37 -0
  26. package/dist/browser/api/recommendations/operations.js.map +1 -0
  27. package/dist/browser/api/recommendations/options.d.ts +5 -0
  28. package/dist/browser/api/recommendations/options.js +4 -0
  29. package/dist/browser/api/recommendations/options.js.map +1 -0
  30. package/dist/browser/classic/index.d.ts +3 -0
  31. package/dist/browser/classic/index.js +4 -0
  32. package/dist/browser/classic/index.js.map +1 -0
  33. package/dist/browser/classic/operations/index.d.ts +11 -0
  34. package/dist/browser/classic/operations/index.js +14 -0
  35. package/dist/browser/classic/operations/index.js.map +1 -0
  36. package/dist/browser/classic/recommendations/index.d.ts +10 -0
  37. package/dist/browser/classic/recommendations/index.js +14 -0
  38. package/dist/browser/classic/recommendations/index.js.map +1 -0
  39. package/dist/browser/index.d.ts +15 -0
  40. package/dist/browser/index.js +8 -0
  41. package/dist/browser/index.js.map +1 -0
  42. package/dist/browser/logger.d.ts +2 -0
  43. package/dist/browser/logger.js +5 -0
  44. package/dist/browser/logger.js.map +1 -0
  45. package/dist/browser/models/index.d.ts +3 -0
  46. package/dist/browser/models/index.js +4 -0
  47. package/dist/browser/models/index.js.map +1 -0
  48. package/dist/browser/models/models.d.ts +652 -0
  49. package/dist/browser/models/models.js +447 -0
  50. package/dist/browser/models/models.js.map +1 -0
  51. package/dist/browser/package.json +8 -0
  52. package/dist/browser/static-helpers/cloudSettingHelpers.d.ts +22 -0
  53. package/dist/browser/static-helpers/cloudSettingHelpers.js +38 -0
  54. package/dist/browser/static-helpers/cloudSettingHelpers.js.map +1 -0
  55. package/dist/browser/static-helpers/pagingHelpers.d.ts +74 -0
  56. package/dist/browser/static-helpers/pagingHelpers.js +143 -0
  57. package/dist/browser/static-helpers/pagingHelpers.js.map +1 -0
  58. package/dist/browser/static-helpers/urlTemplate.d.ts +5 -0
  59. package/dist/browser/static-helpers/urlTemplate.js +202 -0
  60. package/dist/browser/static-helpers/urlTemplate.js.map +1 -0
  61. package/dist/commonjs/aiInfraOptimizationClient.d.ts +18 -0
  62. package/dist/commonjs/aiInfraOptimizationClient.js +46 -0
  63. package/dist/commonjs/aiInfraOptimizationClient.js.map +7 -0
  64. package/dist/commonjs/api/aiInfraOptimizationContext.d.ts +22 -0
  65. package/dist/commonjs/api/aiInfraOptimizationContext.js +61 -0
  66. package/dist/commonjs/api/aiInfraOptimizationContext.js.map +7 -0
  67. package/dist/commonjs/api/index.d.ts +3 -0
  68. package/dist/commonjs/api/index.js +28 -0
  69. package/dist/commonjs/api/index.js.map +7 -0
  70. package/dist/commonjs/api/operations/index.d.ts +3 -0
  71. package/dist/commonjs/api/operations/index.js +28 -0
  72. package/dist/commonjs/api/operations/index.js.map +7 -0
  73. package/dist/commonjs/api/operations/operations.d.ts +10 -0
  74. package/dist/commonjs/api/operations/operations.js +74 -0
  75. package/dist/commonjs/api/operations/operations.js.map +7 -0
  76. package/dist/commonjs/api/operations/options.d.ts +5 -0
  77. package/dist/commonjs/api/operations/options.js +16 -0
  78. package/dist/commonjs/api/operations/options.js.map +7 -0
  79. package/dist/commonjs/api/recommendations/index.d.ts +3 -0
  80. package/dist/commonjs/api/recommendations/index.js +28 -0
  81. package/dist/commonjs/api/recommendations/index.js.map +7 -0
  82. package/dist/commonjs/api/recommendations/operations.d.ts +9 -0
  83. package/dist/commonjs/api/recommendations/operations.js +68 -0
  84. package/dist/commonjs/api/recommendations/operations.js.map +7 -0
  85. package/dist/commonjs/api/recommendations/options.d.ts +5 -0
  86. package/dist/commonjs/api/recommendations/options.js +16 -0
  87. package/dist/commonjs/api/recommendations/options.js.map +7 -0
  88. package/dist/commonjs/classic/index.d.ts +3 -0
  89. package/dist/commonjs/classic/index.js +16 -0
  90. package/dist/commonjs/classic/index.js.map +7 -0
  91. package/dist/commonjs/classic/operations/index.d.ts +11 -0
  92. package/dist/commonjs/classic/operations/index.js +38 -0
  93. package/dist/commonjs/classic/operations/index.js.map +7 -0
  94. package/dist/commonjs/classic/recommendations/index.d.ts +10 -0
  95. package/dist/commonjs/classic/recommendations/index.js +38 -0
  96. package/dist/commonjs/classic/recommendations/index.js.map +7 -0
  97. package/dist/commonjs/index.d.ts +15 -0
  98. package/dist/commonjs/index.js +67 -0
  99. package/dist/commonjs/index.js.map +7 -0
  100. package/dist/commonjs/logger.d.ts +2 -0
  101. package/dist/commonjs/logger.js +29 -0
  102. package/dist/commonjs/logger.js.map +7 -0
  103. package/dist/commonjs/models/index.d.ts +3 -0
  104. package/dist/commonjs/models/index.js +56 -0
  105. package/dist/commonjs/models/index.js.map +7 -0
  106. package/dist/commonjs/models/models.d.ts +652 -0
  107. package/dist/commonjs/models/models.js +488 -0
  108. package/dist/commonjs/models/models.js.map +7 -0
  109. package/dist/commonjs/package.json +8 -0
  110. package/dist/commonjs/static-helpers/cloudSettingHelpers.d.ts +22 -0
  111. package/dist/commonjs/static-helpers/cloudSettingHelpers.js +52 -0
  112. package/dist/commonjs/static-helpers/cloudSettingHelpers.js.map +7 -0
  113. package/dist/commonjs/static-helpers/pagingHelpers.d.ts +74 -0
  114. package/dist/commonjs/static-helpers/pagingHelpers.js +143 -0
  115. package/dist/commonjs/static-helpers/pagingHelpers.js.map +7 -0
  116. package/dist/commonjs/static-helpers/urlTemplate.d.ts +5 -0
  117. package/dist/commonjs/static-helpers/urlTemplate.js +197 -0
  118. package/dist/commonjs/static-helpers/urlTemplate.js.map +7 -0
  119. package/dist/commonjs/tsdoc-metadata.json +11 -0
  120. package/dist/esm/aiInfraOptimizationClient.d.ts +18 -0
  121. package/dist/esm/aiInfraOptimizationClient.js +22 -0
  122. package/dist/esm/aiInfraOptimizationClient.js.map +1 -0
  123. package/dist/esm/api/aiInfraOptimizationContext.d.ts +22 -0
  124. package/dist/esm/api/aiInfraOptimizationContext.js +30 -0
  125. package/dist/esm/api/aiInfraOptimizationContext.js.map +1 -0
  126. package/dist/esm/api/index.d.ts +3 -0
  127. package/dist/esm/api/index.js +4 -0
  128. package/dist/esm/api/index.js.map +1 -0
  129. package/dist/esm/api/operations/index.d.ts +3 -0
  130. package/dist/esm/api/operations/index.js +4 -0
  131. package/dist/esm/api/operations/index.js.map +1 -0
  132. package/dist/esm/api/operations/operations.d.ts +10 -0
  133. package/dist/esm/api/operations/operations.js +37 -0
  134. package/dist/esm/api/operations/operations.js.map +1 -0
  135. package/dist/esm/api/operations/options.d.ts +5 -0
  136. package/dist/esm/api/operations/options.js +4 -0
  137. package/dist/esm/api/operations/options.js.map +1 -0
  138. package/dist/esm/api/recommendations/index.d.ts +3 -0
  139. package/dist/esm/api/recommendations/index.js +4 -0
  140. package/dist/esm/api/recommendations/index.js.map +1 -0
  141. package/dist/esm/api/recommendations/operations.d.ts +9 -0
  142. package/dist/esm/api/recommendations/operations.js +37 -0
  143. package/dist/esm/api/recommendations/operations.js.map +1 -0
  144. package/dist/esm/api/recommendations/options.d.ts +5 -0
  145. package/dist/esm/api/recommendations/options.js +4 -0
  146. package/dist/esm/api/recommendations/options.js.map +1 -0
  147. package/dist/esm/classic/index.d.ts +3 -0
  148. package/dist/esm/classic/index.js +4 -0
  149. package/dist/esm/classic/index.js.map +1 -0
  150. package/dist/esm/classic/operations/index.d.ts +11 -0
  151. package/dist/esm/classic/operations/index.js +14 -0
  152. package/dist/esm/classic/operations/index.js.map +1 -0
  153. package/dist/esm/classic/recommendations/index.d.ts +10 -0
  154. package/dist/esm/classic/recommendations/index.js +14 -0
  155. package/dist/esm/classic/recommendations/index.js.map +1 -0
  156. package/dist/esm/index.d.ts +15 -0
  157. package/dist/esm/index.js +8 -0
  158. package/dist/esm/index.js.map +1 -0
  159. package/dist/esm/logger.d.ts +2 -0
  160. package/dist/esm/logger.js +5 -0
  161. package/dist/esm/logger.js.map +1 -0
  162. package/dist/esm/models/index.d.ts +3 -0
  163. package/dist/esm/models/index.js +4 -0
  164. package/dist/esm/models/index.js.map +1 -0
  165. package/dist/esm/models/models.d.ts +652 -0
  166. package/dist/esm/models/models.js +447 -0
  167. package/dist/esm/models/models.js.map +1 -0
  168. package/dist/esm/package.json +8 -0
  169. package/dist/esm/static-helpers/cloudSettingHelpers.d.ts +22 -0
  170. package/dist/esm/static-helpers/cloudSettingHelpers.js +38 -0
  171. package/dist/esm/static-helpers/cloudSettingHelpers.js.map +1 -0
  172. package/dist/esm/static-helpers/pagingHelpers.d.ts +74 -0
  173. package/dist/esm/static-helpers/pagingHelpers.js +143 -0
  174. package/dist/esm/static-helpers/pagingHelpers.js.map +1 -0
  175. package/dist/esm/static-helpers/urlTemplate.d.ts +5 -0
  176. package/dist/esm/static-helpers/urlTemplate.js +202 -0
  177. package/dist/esm/static-helpers/urlTemplate.js.map +1 -0
  178. package/package.json +165 -3
@@ -0,0 +1,652 @@
1
+ /** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */
2
+ export interface _OperationListResult {
3
+ /** The Operation items on this page */
4
+ value: Operation[];
5
+ /** The link to the next page of items */
6
+ nextLink?: string;
7
+ }
8
+ export declare function _operationListResultDeserializer(item: any): _OperationListResult;
9
+ export declare function operationArrayDeserializer(result: Array<Operation>): any[];
10
+ /** Details of a REST API operation, returned from the Resource Provider Operations API */
11
+ export interface Operation {
12
+ /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" */
13
+ readonly name?: string;
14
+ /** Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure Resource Manager/control-plane operations. */
15
+ readonly isDataAction?: boolean;
16
+ /** Localized display information for this particular operation. */
17
+ display?: OperationDisplay;
18
+ /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */
19
+ readonly origin?: Origin;
20
+ /** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */
21
+ readonly actionType?: ActionType;
22
+ }
23
+ export declare function operationDeserializer(item: any): Operation;
24
+ /** Localized display information for an operation. */
25
+ export interface OperationDisplay {
26
+ /** The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". */
27
+ readonly provider?: string;
28
+ /** The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". */
29
+ readonly resource?: string;
30
+ /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". */
31
+ readonly operation?: string;
32
+ /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */
33
+ readonly description?: string;
34
+ }
35
+ export declare function operationDisplayDeserializer(item: any): OperationDisplay;
36
+ /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */
37
+ export declare enum KnownOrigin {
38
+ /** Indicates the operation is initiated by a user. */
39
+ User = "user",
40
+ /** Indicates the operation is initiated by a system. */
41
+ System = "system",
42
+ /** Indicates the operation is initiated by a user or system. */
43
+ UserSystem = "user,system"
44
+ }
45
+ /**
46
+ * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" \
47
+ * {@link KnownOrigin} can be used interchangeably with Origin,
48
+ * this enum contains the known values that the service supports.
49
+ * ### Known values supported by the service
50
+ * **user**: Indicates the operation is initiated by a user. \
51
+ * **system**: Indicates the operation is initiated by a system. \
52
+ * **user,system**: Indicates the operation is initiated by a user or system.
53
+ */
54
+ export type Origin = string;
55
+ /** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */
56
+ export declare enum KnownActionType {
57
+ /** Actions are for internal-only APIs. */
58
+ Internal = "Internal"
59
+ }
60
+ /**
61
+ * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. \
62
+ * {@link KnownActionType} can be used interchangeably with ActionType,
63
+ * this enum contains the known values that the service supports.
64
+ * ### Known values supported by the service
65
+ * **Internal**: Actions are for internal-only APIs.
66
+ */
67
+ export type ActionType = string;
68
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */
69
+ export interface ErrorResponse {
70
+ /** The error object. */
71
+ error?: ErrorDetail;
72
+ }
73
+ export declare function errorResponseDeserializer(item: any): ErrorResponse;
74
+ /** The error detail. */
75
+ export interface ErrorDetail {
76
+ /** The error code. */
77
+ readonly code?: string;
78
+ /** The error message. */
79
+ readonly message?: string;
80
+ /** The error target. */
81
+ readonly target?: string;
82
+ /** The error details. */
83
+ readonly details?: ErrorDetail[];
84
+ /** The error additional info. */
85
+ readonly additionalInfo?: ErrorAdditionalInfo[];
86
+ }
87
+ export declare function errorDetailDeserializer(item: any): ErrorDetail;
88
+ export declare function errorDetailArrayDeserializer(result: Array<ErrorDetail>): any[];
89
+ export declare function errorAdditionalInfoArrayDeserializer(result: Array<ErrorAdditionalInfo>): any[];
90
+ /** The resource management error additional info. */
91
+ export interface ErrorAdditionalInfo {
92
+ /** The additional info type. */
93
+ readonly type?: string;
94
+ /** The additional info. */
95
+ readonly info?: any;
96
+ }
97
+ export declare function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo;
98
+ /** The parameters used to request an Azure virtual machine size recommendation for an AI workload. */
99
+ export interface RecommendVmSkuRequest {
100
+ /** Model identity, sizing inputs, and optional maximum model context length. */
101
+ model?: RecommendVmSkuModel;
102
+ /** Inference request concurrency and token shape assumptions. */
103
+ workload?: RecommendVmSkuWorkload;
104
+ /** Deployment scale and Azure virtual machine procurement option. */
105
+ deployment?: RecommendVmSkuDeployment;
106
+ /** Ranking preference and optional deployment-wide hourly cost limit. */
107
+ optimization?: RecommendVmSkuOptimization;
108
+ /** The Azure virtual machine candidate set. When supplied, only these virtual machine sizes are ranked. Entries must be non-blank and unique, compared case-insensitively. */
109
+ targetVmSizes?: string[];
110
+ /** The subscription-scoped lookups to include in the recommendation. */
111
+ subscriptionOptions?: RecommendVmSkuSubscriptionOptions;
112
+ }
113
+ export declare function recommendVmSkuRequestSerializer(item: RecommendVmSkuRequest): any;
114
+ /** Model inputs used for metadata resolution and memory sizing. */
115
+ export interface RecommendVmSkuModel {
116
+ /** The Hugging Face model identifier, for example `meta-llama/Llama-3.1-70B-Instruct`. */
117
+ huggingFaceModelId?: string;
118
+ /** The logical total model parameter count, including all mixture-of-experts experts. May be supplied with or without a model identifier. */
119
+ parameterCount?: number;
120
+ /** The precision the model weights are served at. Matched case-insensitively. */
121
+ weightPrecision?: WeightPrecision;
122
+ /** The model layer count, used for architecture-aware key-value cache sizing. Supply all architecture fields together with a parameter count. */
123
+ numLayers?: number;
124
+ /** The model key-value head count, used for architecture-aware key-value cache sizing. Supply all architecture fields together with a parameter count. */
125
+ numKeyValueHeads?: number;
126
+ /** The attention head dimension, used for architecture-aware key-value cache sizing. Supply all architecture fields together with a parameter count. */
127
+ headDim?: number;
128
+ /** The maximum context length the model supports, in tokens. Used only as an upper bound for the sizing context length when Hugging Face metadata provides no usable maximum. */
129
+ maxContextLength?: number;
130
+ }
131
+ export declare function recommendVmSkuModelSerializer(item: RecommendVmSkuModel): any;
132
+ /** The precision a model's weights are served at. */
133
+ export declare enum KnownWeightPrecision {
134
+ /** 32-bit floating point. */
135
+ FP32 = "FP32",
136
+ /** 16-bit floating point. */
137
+ FP16 = "FP16",
138
+ /** 16-bit brain floating point. */
139
+ BF16 = "BF16",
140
+ /** 8-bit floating point. */
141
+ FP8 = "FP8",
142
+ /** 8-bit integer. */
143
+ INT8 = "INT8",
144
+ /** 4-bit integer. */
145
+ INT4 = "INT4",
146
+ /** 4-bit floating point. */
147
+ FP4 = "FP4"
148
+ }
149
+ /**
150
+ * The precision a model's weights are served at. \
151
+ * {@link KnownWeightPrecision} can be used interchangeably with WeightPrecision,
152
+ * this enum contains the known values that the service supports.
153
+ * ### Known values supported by the service
154
+ * **FP32**: 32-bit floating point. \
155
+ * **FP16**: 16-bit floating point. \
156
+ * **BF16**: 16-bit brain floating point. \
157
+ * **FP8**: 8-bit floating point. \
158
+ * **INT8**: 8-bit integer. \
159
+ * **INT4**: 4-bit integer. \
160
+ * **FP4**: 4-bit floating point.
161
+ */
162
+ export type WeightPrecision = string;
163
+ /** Inference workload assumptions that affect memory sizing. */
164
+ export interface RecommendVmSkuWorkload {
165
+ /** The maximum number of simultaneous inference requests handled by each deployment replica. */
166
+ maxConcurrentRequestsPerReplica?: number;
167
+ /** The prompt and output token budget used for key-value cache sizing. */
168
+ tokenBudget?: RecommendVmSkuTokenBudget;
169
+ }
170
+ export declare function recommendVmSkuWorkloadSerializer(item: RecommendVmSkuWorkload): any;
171
+ /** The per-request token budget used to size the inference key-value cache. */
172
+ export interface RecommendVmSkuTokenBudget {
173
+ /** The number of prompt, or input, tokens per inference request. Must be supplied together with `maxOutputTokens`, and the two must total from 1 through 131072. */
174
+ promptTokens?: number;
175
+ /** The maximum number of generated output tokens per inference request. Must be supplied together with `promptTokens`, and the two must total from 1 through 131072. */
176
+ maxOutputTokens?: number;
177
+ }
178
+ export declare function recommendVmSkuTokenBudgetSerializer(item: RecommendVmSkuTokenBudget): any;
179
+ /** Deployment scale and procurement inputs. */
180
+ export interface RecommendVmSkuDeployment {
181
+ /** The number of deployment replicas used for cost, quota, and placement calculations. */
182
+ replicaCount?: number;
183
+ /** The Azure virtual machine procurement option. */
184
+ procurementOption?: ProcurementOption;
185
+ }
186
+ export declare function recommendVmSkuDeploymentSerializer(item: RecommendVmSkuDeployment): any;
187
+ /** The Azure virtual machine procurement option. */
188
+ export declare enum KnownProcurementOption {
189
+ /** Use standard on-demand capacity. */
190
+ OnDemand = "OnDemand",
191
+ /** Use interruptible Spot capacity. */
192
+ Spot = "Spot"
193
+ }
194
+ /**
195
+ * The Azure virtual machine procurement option. \
196
+ * {@link KnownProcurementOption} can be used interchangeably with ProcurementOption,
197
+ * this enum contains the known values that the service supports.
198
+ * ### Known values supported by the service
199
+ * **OnDemand**: Use standard on-demand capacity. \
200
+ * **Spot**: Use interruptible Spot capacity.
201
+ */
202
+ export type ProcurementOption = string;
203
+ /** Ranking preference and optional deployment-wide hourly cost limit. */
204
+ export interface RecommendVmSkuOptimization {
205
+ /** The preference used to rank the recommended options. */
206
+ rankingPreference?: RankingPreference;
207
+ /** The deployment-wide hourly cost ceiling. */
208
+ maxDeploymentCostPerHour?: RecommendVmSkuHourlyCost;
209
+ }
210
+ export declare function recommendVmSkuOptimizationSerializer(item: RecommendVmSkuOptimization): any;
211
+ /** The preference used to rank the recommended options. */
212
+ export declare enum KnownRankingPreference {
213
+ /** Rank the options by deployment cost. */
214
+ Cost = "Cost",
215
+ /** Rank the options by inference latency. */
216
+ Latency = "Latency"
217
+ }
218
+ /**
219
+ * The preference used to rank the recommended options. \
220
+ * {@link KnownRankingPreference} can be used interchangeably with RankingPreference,
221
+ * this enum contains the known values that the service supports.
222
+ * ### Known values supported by the service
223
+ * **Cost**: Rank the options by deployment cost. \
224
+ * **Latency**: Rank the options by inference latency.
225
+ */
226
+ export type RankingPreference = string;
227
+ /** A currency-qualified deployment-wide hourly cost. */
228
+ export interface RecommendVmSkuHourlyCost {
229
+ /** The maximum cost per hour for the whole deployment. Must be greater than zero when supplied. */
230
+ amount?: number;
231
+ /** The ISO 4217 currency code the amount is expressed in. The recommendation service currently supports `USD`. */
232
+ currencyCode?: string;
233
+ }
234
+ export declare function recommendVmSkuHourlyCostSerializer(item: RecommendVmSkuHourlyCost): any;
235
+ /** The subscription-scoped lookups to include in the recommendation. */
236
+ export interface RecommendVmSkuSubscriptionOptions {
237
+ /** Whether to evaluate subscription quota for candidate virtual machine sizes. */
238
+ includeQuota?: boolean;
239
+ /** Whether to query placement scores for candidate virtual machine sizes with available quota. */
240
+ includePlacement?: boolean;
241
+ /** Whether to fetch subscription-scoped virtual machine pricing. */
242
+ includePricing?: boolean;
243
+ }
244
+ export declare function recommendVmSkuSubscriptionOptionsSerializer(item: RecommendVmSkuSubscriptionOptions): any;
245
+ /** The recommended Azure virtual machine sizes for the workload, with the sizing calculation they were derived from. */
246
+ export interface RecommendVmSkuResponse {
247
+ /** The recommended virtual machine size options, ordered from the best to the worst match. */
248
+ options: RecommendVmSkuOption[];
249
+ /** The resolved workload sizing shared by every option. */
250
+ sizing: RecommendVmSkuSizing;
251
+ }
252
+ export declare function recommendVmSkuResponseDeserializer(item: any): RecommendVmSkuResponse;
253
+ export declare function recommendVmSkuOptionArrayDeserializer(result: Array<RecommendVmSkuOption>): any[];
254
+ /** One ranked virtual machine size recommendation. */
255
+ export interface RecommendVmSkuOption {
256
+ /** The Azure virtual machine size name, for example `Standard_NC24ads_A100_v4`. */
257
+ vmSize: string;
258
+ /** The rank of this option within the response, where 1 is the best match. */
259
+ recommendationRank: number;
260
+ /** How ready this option is to deploy. */
261
+ readiness: RecommendVmSkuReadiness;
262
+ /** The deployment topology for this option. */
263
+ topology: RecommendVmSkuTopology;
264
+ /** The deployment cost for this option. */
265
+ cost: RecommendVmSkuCost;
266
+ /** The subscription quota evidence for this option. Returned only when `subscriptionOptions.includeQuota` is set. */
267
+ quota?: RecommendVmSkuQuota;
268
+ /** The capacity placement evidence for this option. Returned only when `subscriptionOptions.includePlacement` is set. */
269
+ placement?: RecommendVmSkuPlacement;
270
+ /** Whether the Azure Machine Learning model catalog recommends this virtual machine size for the model. */
271
+ azureMlRecommended?: boolean;
272
+ /** The external benchmark evidence selected for this option. */
273
+ benchmark?: RecommendVmSkuBenchmark;
274
+ /** A URL to the Azure documentation page for this virtual machine size. */
275
+ documentationUrl?: string;
276
+ /** The advisory deployment throughput and per-request latency estimate for this option. */
277
+ performanceEstimate?: RecommendVmSkuPerformanceEstimate;
278
+ }
279
+ export declare function recommendVmSkuOptionDeserializer(item: any): RecommendVmSkuOption;
280
+ /** How ready a recommended option is to deploy. */
281
+ export interface RecommendVmSkuReadiness {
282
+ /** The current actionability of the recommendation. */
283
+ status: ReadinessStatus;
284
+ /** A human-readable explanation of the readiness status. */
285
+ reason: string;
286
+ }
287
+ export declare function recommendVmSkuReadinessDeserializer(item: any): RecommendVmSkuReadiness;
288
+ /** The current actionability of a recommended option. */
289
+ export declare enum KnownReadinessStatus {
290
+ /** The option can be attempted without a known prerequisite action. */
291
+ ReadyToAttempt = "ReadyToAttempt",
292
+ /** The option requires a quota increase before deployment. */
293
+ QuotaIncreaseRequired = "QuotaIncreaseRequired",
294
+ /** The option requires an external verification before deployment. */
295
+ VerificationRequired = "VerificationRequired",
296
+ /** The option is not available to the subscription in the requested region. */
297
+ Unavailable = "Unavailable"
298
+ }
299
+ /**
300
+ * The current actionability of a recommended option. \
301
+ * {@link KnownReadinessStatus} can be used interchangeably with ReadinessStatus,
302
+ * this enum contains the known values that the service supports.
303
+ * ### Known values supported by the service
304
+ * **ReadyToAttempt**: The option can be attempted without a known prerequisite action. \
305
+ * **QuotaIncreaseRequired**: The option requires a quota increase before deployment. \
306
+ * **VerificationRequired**: The option requires an external verification before deployment. \
307
+ * **Unavailable**: The option is not available to the subscription in the requested region.
308
+ */
309
+ export type ReadinessStatus = string;
310
+ /** The deployment topology for one virtual machine size option. */
311
+ export interface RecommendVmSkuTopology {
312
+ /** The estimated number of virtual machine nodes required for a single replica. */
313
+ estimatedNodeCountPerReplica: number;
314
+ /** The estimated total number of virtual machine nodes across all replicas. */
315
+ estimatedTotalNodeCount: number;
316
+ /** The accelerator hardware available in each virtual machine. */
317
+ accelerator: RecommendVmSkuAccelerator;
318
+ }
319
+ export declare function recommendVmSkuTopologyDeserializer(item: any): RecommendVmSkuTopology;
320
+ /** The accelerator hardware available in each virtual machine. */
321
+ export interface RecommendVmSkuAccelerator {
322
+ /** The accelerator model name, for example `A100` or `H100`. */
323
+ model: string;
324
+ /** The number of accelerator devices in each virtual machine. */
325
+ countPerVm: number;
326
+ /** The memory capacity of a single accelerator device, in gibibytes. */
327
+ memoryGiBPerAccelerator: number;
328
+ }
329
+ export declare function recommendVmSkuAcceleratorDeserializer(item: any): RecommendVmSkuAccelerator;
330
+ /** The deployment cost for one virtual machine size option. */
331
+ export interface RecommendVmSkuCost {
332
+ /** The ISO 4217 currency code all amounts in this object are expressed in. */
333
+ currencyCode: string;
334
+ /** The price per hour for a single virtual machine, in the stated currency. */
335
+ vmHourly: number;
336
+ /** The price per hour for the whole deployment, in the stated currency. */
337
+ deploymentHourly: number;
338
+ /** The source the price was resolved from. */
339
+ source: CostSource;
340
+ /** The date and time the price was observed. */
341
+ priceAsOf?: Date;
342
+ /** The error that prevented subscription-scoped pricing from being resolved, if any. */
343
+ error?: RecommendVmSkuStageError;
344
+ }
345
+ export declare function recommendVmSkuCostDeserializer(item: any): RecommendVmSkuCost;
346
+ /** The source a price was resolved from. */
347
+ export declare enum KnownCostSource {
348
+ /** The price came from the public Azure retail catalog. */
349
+ AzureRetail = "AzureRetail",
350
+ /** The price came from the caller's Azure subscription. */
351
+ AzureSubscription = "AzureSubscription",
352
+ /** The price is fixed illustrative data for a contract preview. */
353
+ StaticPreview = "StaticPreview"
354
+ }
355
+ /**
356
+ * The source a price was resolved from. \
357
+ * {@link KnownCostSource} can be used interchangeably with CostSource,
358
+ * this enum contains the known values that the service supports.
359
+ * ### Known values supported by the service
360
+ * **AzureRetail**: The price came from the public Azure retail catalog. \
361
+ * **AzureSubscription**: The price came from the caller's Azure subscription. \
362
+ * **StaticPreview**: The price is fixed illustrative data for a contract preview.
363
+ */
364
+ export type CostSource = string;
365
+ /** An error from an optional subscription-scoped recommendation stage. */
366
+ export interface RecommendVmSkuStageError {
367
+ /** The reason the stage did not complete. */
368
+ code: StageErrorCode;
369
+ /** A human-readable description of the error. */
370
+ message: string;
371
+ }
372
+ export declare function recommendVmSkuStageErrorDeserializer(item: any): RecommendVmSkuStageError;
373
+ /** The reason an optional subscription-scoped stage did not complete. */
374
+ export declare enum KnownStageErrorCode {
375
+ /** The stage exceeded its deadline. */
376
+ TimedOut = "TimedOut",
377
+ /** The stage was throttled. */
378
+ Throttled = "Throttled",
379
+ /** The service reached its active caller partition capacity. */
380
+ PartitionCapacityExceeded = "PartitionCapacityExceeded",
381
+ /** A downstream dependency call failed. */
382
+ DependencyError = "DependencyError",
383
+ /** Required downstream data was unavailable. */
384
+ DataUnavailable = "DataUnavailable",
385
+ /** The optional evaluation call budget was exhausted. */
386
+ EvaluationBudgetExceeded = "EvaluationBudgetExceeded"
387
+ }
388
+ /**
389
+ * The reason an optional subscription-scoped stage did not complete. \
390
+ * {@link KnownStageErrorCode} can be used interchangeably with StageErrorCode,
391
+ * this enum contains the known values that the service supports.
392
+ * ### Known values supported by the service
393
+ * **TimedOut**: The stage exceeded its deadline. \
394
+ * **Throttled**: The stage was throttled. \
395
+ * **PartitionCapacityExceeded**: The service reached its active caller partition capacity. \
396
+ * **DependencyError**: A downstream dependency call failed. \
397
+ * **DataUnavailable**: Required downstream data was unavailable. \
398
+ * **EvaluationBudgetExceeded**: The optional evaluation call budget was exhausted.
399
+ */
400
+ export type StageErrorCode = string;
401
+ /** The subscription quota evidence for one virtual machine size option. */
402
+ export interface RecommendVmSkuQuota {
403
+ /** Whether subscription quota is sufficient for the requested deployment. */
404
+ status: QuotaStatus;
405
+ /** A human-readable explanation of the quota status. */
406
+ reason?: string;
407
+ /** The error that prevented quota from being evaluated, if any. */
408
+ error?: RecommendVmSkuStageError;
409
+ /** The maximum number of replicas that can be deployed with the available quota. */
410
+ maxAvailableReplicaCount?: number;
411
+ /** The quota increase required before this option can be deployed. */
412
+ increase?: RecommendVmSkuQuotaIncrease;
413
+ }
414
+ export declare function recommendVmSkuQuotaDeserializer(item: any): RecommendVmSkuQuota;
415
+ /** Whether subscription quota is sufficient for a requested deployment. */
416
+ export declare enum KnownQuotaStatus {
417
+ /** Quota is sufficient for the requested replicas. */
418
+ Available = "Available",
419
+ /** Quota is insufficient for the requested replicas. */
420
+ Unavailable = "Unavailable",
421
+ /** Quota could not be determined. */
422
+ Unknown = "Unknown"
423
+ }
424
+ /**
425
+ * Whether subscription quota is sufficient for a requested deployment. \
426
+ * {@link KnownQuotaStatus} can be used interchangeably with QuotaStatus,
427
+ * this enum contains the known values that the service supports.
428
+ * ### Known values supported by the service
429
+ * **Available**: Quota is sufficient for the requested replicas. \
430
+ * **Unavailable**: Quota is insufficient for the requested replicas. \
431
+ * **Unknown**: Quota could not be determined.
432
+ */
433
+ export type QuotaStatus = string;
434
+ /** The quota limits to raise before retrying a deployment. */
435
+ export interface RecommendVmSkuQuotaIncrease {
436
+ /** The individual quota limits that block the requested deployment. */
437
+ limits: RecommendVmSkuQuotaLimit[];
438
+ /** A URL to the Azure portal page for submitting the quota increase. */
439
+ portalUrl: string;
440
+ }
441
+ export declare function recommendVmSkuQuotaIncreaseDeserializer(item: any): RecommendVmSkuQuotaIncrease;
442
+ export declare function recommendVmSkuQuotaLimitArrayDeserializer(result: Array<RecommendVmSkuQuotaLimit>): any[];
443
+ /** One quota limit that blocks the requested deployment. */
444
+ export interface RecommendVmSkuQuotaLimit {
445
+ /** The name of the quota to raise. */
446
+ name: string;
447
+ /** The current usage against the quota. */
448
+ currentUsage: number;
449
+ /** The current quota limit. */
450
+ currentLimit: number;
451
+ /** The quota limit required to deploy the workload. */
452
+ requiredLimit: number;
453
+ }
454
+ export declare function recommendVmSkuQuotaLimitDeserializer(item: any): RecommendVmSkuQuotaLimit;
455
+ /** The capacity placement evidence for one virtual machine size option. */
456
+ export interface RecommendVmSkuPlacement {
457
+ /** The outcome of the placement query. */
458
+ status: PlacementStatus;
459
+ /** A human-readable explanation of the placement status. */
460
+ reason?: string;
461
+ /** The error that prevented placement from being evaluated, if any. */
462
+ error?: RecommendVmSkuStageError;
463
+ /** The availability zones recommended for the deployment, in preference order. */
464
+ recommendedAvailabilityZones?: string[];
465
+ }
466
+ export declare function recommendVmSkuPlacementDeserializer(item: any): RecommendVmSkuPlacement;
467
+ /** The outcome of a capacity placement query. */
468
+ export declare enum KnownPlacementStatus {
469
+ /** The placement check completed successfully. */
470
+ Evaluated = "Evaluated",
471
+ /** The placement check failed. */
472
+ Failed = "Failed",
473
+ /** The placement check was not run. */
474
+ NotEvaluated = "NotEvaluated",
475
+ /** The placement check is not supported for this option. */
476
+ Unsupported = "Unsupported"
477
+ }
478
+ /**
479
+ * The outcome of a capacity placement query. \
480
+ * {@link KnownPlacementStatus} can be used interchangeably with PlacementStatus,
481
+ * this enum contains the known values that the service supports.
482
+ * ### Known values supported by the service
483
+ * **Evaluated**: The placement check completed successfully. \
484
+ * **Failed**: The placement check failed. \
485
+ * **NotEvaluated**: The placement check was not run. \
486
+ * **Unsupported**: The placement check is not supported for this option.
487
+ */
488
+ export type PlacementStatus = string;
489
+ /** The external benchmark evidence selected for one virtual machine size option. */
490
+ export interface RecommendVmSkuBenchmark {
491
+ /** How closely the benchmark evidence matches the recommended topology. */
492
+ level: BenchmarkLevel;
493
+ /** The model size class the benchmark covers, for example `70b`. */
494
+ modelClass: string;
495
+ /** The benchmark scenario, for example `Server` or `Offline`. */
496
+ scenario: string;
497
+ /** The number of submitters that published results for this configuration. */
498
+ submitterCount: number;
499
+ /** The identifier of the selected benchmark submission. */
500
+ submissionId?: string;
501
+ /** The model the benchmark was measured on. */
502
+ benchmarkModel?: string;
503
+ /** The organization that published the benchmark submission. */
504
+ submitter?: string;
505
+ /** The system the benchmark was measured on. */
506
+ system?: string;
507
+ /** The throughput observed in the benchmark submission. */
508
+ throughput?: number;
509
+ /** The unit the observed throughput is expressed in, for example `Tokens/s`. */
510
+ throughputUnit?: string;
511
+ /** The serving software the benchmark was measured with. */
512
+ software?: string;
513
+ /** The operating system the benchmark was measured on. */
514
+ operatingSystem?: string;
515
+ /** The weight data types used in the benchmark submission. */
516
+ weightDataTypes?: string;
517
+ /** The 99th-percentile time to first token observed in the benchmark, in milliseconds. */
518
+ p99TtftMs?: number;
519
+ /** The 99th-percentile time per output token observed in the benchmark, in milliseconds. */
520
+ p99TpotMs?: number;
521
+ }
522
+ export declare function recommendVmSkuBenchmarkDeserializer(item: any): RecommendVmSkuBenchmark;
523
+ /** How closely benchmark evidence matches a recommended topology. */
524
+ export declare enum KnownBenchmarkLevel {
525
+ /** The accelerator family has benchmark evidence at a different topology. */
526
+ Benchmarked = "Benchmarked",
527
+ /** The benchmark matches the recommended node and accelerator counts. */
528
+ TopologyMatched = "TopologyMatched"
529
+ }
530
+ /**
531
+ * How closely benchmark evidence matches a recommended topology. \
532
+ * {@link KnownBenchmarkLevel} can be used interchangeably with BenchmarkLevel,
533
+ * this enum contains the known values that the service supports.
534
+ * ### Known values supported by the service
535
+ * **Benchmarked**: The accelerator family has benchmark evidence at a different topology. \
536
+ * **TopologyMatched**: The benchmark matches the recommended node and accelerator counts.
537
+ */
538
+ export type BenchmarkLevel = string;
539
+ /** An advisory deployment throughput and per-request latency estimate. */
540
+ export interface RecommendVmSkuPerformanceEstimate {
541
+ /** The estimated number of output tokens generated per second across the whole deployment. */
542
+ deploymentOutputTokensPerSecond: number;
543
+ /** The estimated time to first token for a single request, in milliseconds. */
544
+ ttftMs: number;
545
+ }
546
+ export declare function recommendVmSkuPerformanceEstimateDeserializer(item: any): RecommendVmSkuPerformanceEstimate;
547
+ /** The resolved workload sizing shared by every recommended option. */
548
+ export interface RecommendVmSkuSizing {
549
+ /** The resolved model identity and weight precision. */
550
+ model: RecommendVmSkuSizingModel;
551
+ /** The resolved per-replica workload inputs used for memory sizing. */
552
+ workload: RecommendVmSkuSizingWorkload;
553
+ /** The memory calculation shared by every returned option. */
554
+ memory: RecommendVmSkuMemory;
555
+ /** The sources used for the sizing calculation. */
556
+ basis: RecommendVmSkuSizingBasis;
557
+ }
558
+ export declare function recommendVmSkuSizingDeserializer(item: any): RecommendVmSkuSizing;
559
+ /** The resolved model identity and weight precision. */
560
+ export interface RecommendVmSkuSizingModel {
561
+ /** The logical total model parameter count used for sizing. */
562
+ parameterCount: number;
563
+ /** The precision the model weights were sized at. */
564
+ weightPrecision: WeightPrecision;
565
+ /** The Hugging Face model identifier the sizing metadata was resolved from. */
566
+ huggingFaceModelId?: string;
567
+ }
568
+ export declare function recommendVmSkuSizingModelDeserializer(item: any): RecommendVmSkuSizingModel;
569
+ /** The resolved per-replica workload inputs used for memory sizing. */
570
+ export interface RecommendVmSkuSizingWorkload {
571
+ /** The maximum number of simultaneous inference requests handled by each replica. */
572
+ maxConcurrentRequestsPerReplica: number;
573
+ /** The context length, in tokens, used to size the key-value cache: the sum of `promptTokens` and `maxOutputTokens` when a token budget is supplied, otherwise the service default. */
574
+ contextLength: number;
575
+ }
576
+ export declare function recommendVmSkuSizingWorkloadDeserializer(item: any): RecommendVmSkuSizingWorkload;
577
+ /** The memory calculation shared by every returned option. */
578
+ export interface RecommendVmSkuMemory {
579
+ /** The memory required for the model weights, in gibibytes. */
580
+ modelWeightsGiB: number;
581
+ /** The key-value cache memory required for a single concurrent request, in gibibytes. */
582
+ kvCacheGiBPerRequest: number;
583
+ /** The key-value cache memory required for all concurrent requests on a replica, in gibibytes. */
584
+ kvCacheGiBTotal: number;
585
+ /** The combined model-weight and key-value cache memory required per replica, in gibibytes. */
586
+ modelAndKvCacheGiB: number;
587
+ }
588
+ export declare function recommendVmSkuMemoryDeserializer(item: any): RecommendVmSkuMemory;
589
+ /** The sources used for the sizing calculation. */
590
+ export interface RecommendVmSkuSizingBasis {
591
+ /** Where the model parameter count was resolved from. */
592
+ parameterCountSource: ParameterCountSource;
593
+ /** How the model weight memory was calculated. */
594
+ modelWeightsCalculation: ModelWeightsCalculation;
595
+ /** Where the context length was resolved from. */
596
+ contextLengthSource: ContextLengthSource;
597
+ }
598
+ export declare function recommendVmSkuSizingBasisDeserializer(item: any): RecommendVmSkuSizingBasis;
599
+ /** Where a model parameter count was resolved from. */
600
+ export declare enum KnownParameterCountSource {
601
+ /** The parameter count was supplied in the request. */
602
+ Request = "Request",
603
+ /** The parameter count was resolved from Hugging Face metadata. */
604
+ HuggingFace = "HuggingFace"
605
+ }
606
+ /**
607
+ * Where a model parameter count was resolved from. \
608
+ * {@link KnownParameterCountSource} can be used interchangeably with ParameterCountSource,
609
+ * this enum contains the known values that the service supports.
610
+ * ### Known values supported by the service
611
+ * **Request**: The parameter count was supplied in the request. \
612
+ * **HuggingFace**: The parameter count was resolved from Hugging Face metadata.
613
+ */
614
+ export type ParameterCountSource = string;
615
+ /** How model weight memory was calculated. */
616
+ export declare enum KnownModelWeightsCalculation {
617
+ /** The memory was calculated from the published model artifact size. */
618
+ ArtifactSize = "ArtifactSize",
619
+ /** The memory was estimated from the model parameter count. */
620
+ EstimatedFromParameterCount = "EstimatedFromParameterCount"
621
+ }
622
+ /**
623
+ * How model weight memory was calculated. \
624
+ * {@link KnownModelWeightsCalculation} can be used interchangeably with ModelWeightsCalculation,
625
+ * this enum contains the known values that the service supports.
626
+ * ### Known values supported by the service
627
+ * **ArtifactSize**: The memory was calculated from the published model artifact size. \
628
+ * **EstimatedFromParameterCount**: The memory was estimated from the model parameter count.
629
+ */
630
+ export type ModelWeightsCalculation = string;
631
+ /** Where a context length was resolved from. */
632
+ export declare enum KnownContextLengthSource {
633
+ /** The context length is the sum of the request's `workload.tokenBudget.promptTokens` and `maxOutputTokens`. */
634
+ Request = "Request",
635
+ /** No token budget was supplied, so the service default context length was used. */
636
+ Default = "Default"
637
+ }
638
+ /**
639
+ * Where a context length was resolved from. \
640
+ * {@link KnownContextLengthSource} can be used interchangeably with ContextLengthSource,
641
+ * this enum contains the known values that the service supports.
642
+ * ### Known values supported by the service
643
+ * **Request**: The context length is the sum of the request's `workload.tokenBudget.promptTokens` and `maxOutputTokens`. \
644
+ * **Default**: No token budget was supplied, so the service default context length was used.
645
+ */
646
+ export type ContextLengthSource = string;
647
+ /** The available API versions. */
648
+ export declare enum KnownVersions {
649
+ /** The 2026-06-01-preview API version. */
650
+ V20260601Preview = "2026-06-01-preview"
651
+ }
652
+ //# sourceMappingURL=models.d.ts.map