@meetkai/mka1 0.51.16 → 0.51.17
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.
- package/README.md +233 -227
- package/bin/mcp-server.js +1056 -544
- package/bin/mcp-server.js.map +25 -12
- package/dist/commonjs/funcs/servingAcceleratorsAvailability.d.ts +19 -0
- package/dist/commonjs/funcs/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/commonjs/funcs/servingAcceleratorsAvailability.js +140 -0
- package/dist/commonjs/funcs/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/commonjs/funcs/servingAcceleratorsGet.d.ts +19 -0
- package/dist/commonjs/funcs/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/commonjs/funcs/servingAcceleratorsGet.js +136 -0
- package/dist/commonjs/funcs/servingAcceleratorsGet.js.map +1 -0
- package/dist/commonjs/lib/config.d.ts +2 -2
- package/dist/commonjs/lib/config.js +2 -2
- package/dist/commonjs/mcp-server/mcp-server.js +1 -1
- package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
- package/dist/commonjs/mcp-server/server.js +5 -1
- package/dist/commonjs/mcp-server/server.js.map +1 -1
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsAvailability.d.ts +8 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsAvailability.js +64 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsGet.d.ts +8 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsGet.js +64 -0
- package/dist/commonjs/mcp-server/tools/servingAcceleratorsGet.js.map +1 -0
- package/dist/commonjs/models/components/acceleratoravailability.d.ts +62 -0
- package/dist/commonjs/models/components/acceleratoravailability.d.ts.map +1 -0
- package/dist/commonjs/models/components/acceleratoravailability.js +102 -0
- package/dist/commonjs/models/components/acceleratoravailability.js.map +1 -0
- package/dist/commonjs/models/components/acceleratoravailabilitybucket.d.ts +39 -0
- package/dist/commonjs/models/components/acceleratoravailabilitybucket.d.ts.map +1 -0
- package/dist/commonjs/models/components/acceleratoravailabilitybucket.js +80 -0
- package/dist/commonjs/models/components/acceleratoravailabilitybucket.js.map +1 -0
- package/dist/commonjs/models/components/acceleratorhourofdayslot.d.ts +33 -0
- package/dist/commonjs/models/components/acceleratorhourofdayslot.d.ts.map +1 -0
- package/dist/commonjs/models/components/acceleratorhourofdayslot.js +71 -0
- package/dist/commonjs/models/components/acceleratorhourofdayslot.js.map +1 -0
- package/dist/commonjs/models/components/acceleratorprovideravailability.d.ts +23 -0
- package/dist/commonjs/models/components/acceleratorprovideravailability.d.ts.map +1 -0
- package/dist/commonjs/models/components/acceleratorprovideravailability.js +61 -0
- package/dist/commonjs/models/components/acceleratorprovideravailability.js.map +1 -0
- package/dist/commonjs/models/components/acceleratortype.d.ts +61 -3
- package/dist/commonjs/models/components/acceleratortype.d.ts.map +1 -1
- package/dist/commonjs/models/components/acceleratortype.js +37 -3
- package/dist/commonjs/models/components/acceleratortype.js.map +1 -1
- package/dist/commonjs/models/components/acceleratorworkloadaffinity.d.ts +29 -0
- package/dist/commonjs/models/components/acceleratorworkloadaffinity.d.ts.map +1 -0
- package/dist/commonjs/models/components/acceleratorworkloadaffinity.js +61 -0
- package/dist/commonjs/models/components/acceleratorworkloadaffinity.js.map +1 -0
- package/dist/commonjs/models/components/affinityrating.d.ts +19 -0
- package/dist/commonjs/models/components/affinityrating.d.ts.map +1 -0
- package/dist/commonjs/models/components/affinityrating.js +53 -0
- package/dist/commonjs/models/components/affinityrating.js.map +1 -0
- package/dist/commonjs/models/components/availabilitypriceband.d.ts +24 -0
- package/dist/commonjs/models/components/availabilitypriceband.d.ts.map +1 -0
- package/dist/commonjs/models/components/availabilitypriceband.js +62 -0
- package/dist/commonjs/models/components/availabilitypriceband.js.map +1 -0
- package/dist/commonjs/models/components/deployment.d.ts +10 -0
- package/dist/commonjs/models/components/deployment.d.ts.map +1 -1
- package/dist/commonjs/models/components/deployment.js +6 -0
- package/dist/commonjs/models/components/deployment.js.map +1 -1
- package/dist/commonjs/models/components/deploymentacceleratorspec.d.ts +5 -5
- package/dist/commonjs/models/components/deploymentacceleratorspec.d.ts.map +1 -1
- package/dist/commonjs/models/components/deploymentacceleratorspec.js +6 -6
- package/dist/commonjs/models/components/deploymentacceleratorspec.js.map +1 -1
- package/dist/commonjs/models/components/finetunejob.d.ts +10 -0
- package/dist/commonjs/models/components/finetunejob.d.ts.map +1 -1
- package/dist/commonjs/models/components/finetunejob.js +6 -0
- package/dist/commonjs/models/components/finetunejob.js.map +1 -1
- package/dist/commonjs/models/components/index.d.ts +7 -0
- package/dist/commonjs/models/components/index.d.ts.map +1 -1
- package/dist/commonjs/models/components/index.js +7 -0
- package/dist/commonjs/models/components/index.js.map +1 -1
- package/dist/commonjs/models/operations/getaccelerator.d.ts +22 -0
- package/dist/commonjs/models/operations/getaccelerator.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getaccelerator.js +69 -0
- package/dist/commonjs/models/operations/getaccelerator.js.map +1 -0
- package/dist/commonjs/models/operations/getacceleratoravailability.d.ts +44 -0
- package/dist/commonjs/models/operations/getacceleratoravailability.d.ts.map +1 -0
- package/dist/commonjs/models/operations/getacceleratoravailability.js +84 -0
- package/dist/commonjs/models/operations/getacceleratoravailability.js.map +1 -0
- package/dist/commonjs/models/operations/index.d.ts +2 -0
- package/dist/commonjs/models/operations/index.d.ts.map +1 -1
- package/dist/commonjs/models/operations/index.js +2 -0
- package/dist/commonjs/models/operations/index.js.map +1 -1
- package/dist/commonjs/react-query/index.d.ts +2 -0
- package/dist/commonjs/react-query/index.d.ts.map +1 -1
- package/dist/commonjs/react-query/index.js +2 -0
- package/dist/commonjs/react-query/index.js.map +1 -1
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.core.d.ts +16 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.core.d.ts.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.core.js +37 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.core.js.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.d.ts +41 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.js +65 -0
- package/dist/commonjs/react-query/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.core.d.ts +15 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.core.d.ts.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.core.js +36 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.core.js.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.d.ts +39 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.js +60 -0
- package/dist/commonjs/react-query/servingAcceleratorsGet.js.map +1 -0
- package/dist/commonjs/sdk/accelerators.d.ts +14 -0
- package/dist/commonjs/sdk/accelerators.d.ts.map +1 -1
- package/dist/commonjs/sdk/accelerators.js +20 -0
- package/dist/commonjs/sdk/accelerators.js.map +1 -1
- package/dist/esm/funcs/servingAcceleratorsAvailability.d.ts +19 -0
- package/dist/esm/funcs/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/esm/funcs/servingAcceleratorsAvailability.js +104 -0
- package/dist/esm/funcs/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/esm/funcs/servingAcceleratorsGet.d.ts +19 -0
- package/dist/esm/funcs/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/esm/funcs/servingAcceleratorsGet.js +100 -0
- package/dist/esm/funcs/servingAcceleratorsGet.js.map +1 -0
- package/dist/esm/lib/config.d.ts +2 -2
- package/dist/esm/lib/config.js +2 -2
- package/dist/esm/mcp-server/mcp-server.js +1 -1
- package/dist/esm/mcp-server/server.d.ts.map +1 -1
- package/dist/esm/mcp-server/server.js +5 -1
- package/dist/esm/mcp-server/server.js.map +1 -1
- package/dist/esm/mcp-server/tools/servingAcceleratorsAvailability.d.ts +8 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsAvailability.js +28 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsGet.d.ts +8 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsGet.js +28 -0
- package/dist/esm/mcp-server/tools/servingAcceleratorsGet.js.map +1 -0
- package/dist/esm/models/components/acceleratoravailability.d.ts +62 -0
- package/dist/esm/models/components/acceleratoravailability.d.ts.map +1 -0
- package/dist/esm/models/components/acceleratoravailability.js +64 -0
- package/dist/esm/models/components/acceleratoravailability.js.map +1 -0
- package/dist/esm/models/components/acceleratoravailabilitybucket.d.ts +39 -0
- package/dist/esm/models/components/acceleratoravailabilitybucket.d.ts.map +1 -0
- package/dist/esm/models/components/acceleratoravailabilitybucket.js +42 -0
- package/dist/esm/models/components/acceleratoravailabilitybucket.js.map +1 -0
- package/dist/esm/models/components/acceleratorhourofdayslot.d.ts +33 -0
- package/dist/esm/models/components/acceleratorhourofdayslot.d.ts.map +1 -0
- package/dist/esm/models/components/acceleratorhourofdayslot.js +33 -0
- package/dist/esm/models/components/acceleratorhourofdayslot.js.map +1 -0
- package/dist/esm/models/components/acceleratorprovideravailability.d.ts +23 -0
- package/dist/esm/models/components/acceleratorprovideravailability.d.ts.map +1 -0
- package/dist/esm/models/components/acceleratorprovideravailability.js +23 -0
- package/dist/esm/models/components/acceleratorprovideravailability.js.map +1 -0
- package/dist/esm/models/components/acceleratortype.d.ts +61 -3
- package/dist/esm/models/components/acceleratortype.d.ts.map +1 -1
- package/dist/esm/models/components/acceleratortype.js +36 -2
- package/dist/esm/models/components/acceleratortype.js.map +1 -1
- package/dist/esm/models/components/acceleratorworkloadaffinity.d.ts +29 -0
- package/dist/esm/models/components/acceleratorworkloadaffinity.d.ts.map +1 -0
- package/dist/esm/models/components/acceleratorworkloadaffinity.js +23 -0
- package/dist/esm/models/components/acceleratorworkloadaffinity.js.map +1 -0
- package/dist/esm/models/components/affinityrating.d.ts +19 -0
- package/dist/esm/models/components/affinityrating.d.ts.map +1 -0
- package/dist/esm/models/components/affinityrating.js +17 -0
- package/dist/esm/models/components/affinityrating.js.map +1 -0
- package/dist/esm/models/components/availabilitypriceband.d.ts +24 -0
- package/dist/esm/models/components/availabilitypriceband.d.ts.map +1 -0
- package/dist/esm/models/components/availabilitypriceband.js +24 -0
- package/dist/esm/models/components/availabilitypriceband.js.map +1 -0
- package/dist/esm/models/components/deployment.d.ts +10 -0
- package/dist/esm/models/components/deployment.d.ts.map +1 -1
- package/dist/esm/models/components/deployment.js +6 -0
- package/dist/esm/models/components/deployment.js.map +1 -1
- package/dist/esm/models/components/deploymentacceleratorspec.d.ts +5 -5
- package/dist/esm/models/components/deploymentacceleratorspec.d.ts.map +1 -1
- package/dist/esm/models/components/deploymentacceleratorspec.js +5 -5
- package/dist/esm/models/components/deploymentacceleratorspec.js.map +1 -1
- package/dist/esm/models/components/finetunejob.d.ts +10 -0
- package/dist/esm/models/components/finetunejob.d.ts.map +1 -1
- package/dist/esm/models/components/finetunejob.js +6 -0
- package/dist/esm/models/components/finetunejob.js.map +1 -1
- package/dist/esm/models/components/index.d.ts +7 -0
- package/dist/esm/models/components/index.d.ts.map +1 -1
- package/dist/esm/models/components/index.js +7 -0
- package/dist/esm/models/components/index.js.map +1 -1
- package/dist/esm/models/operations/getaccelerator.d.ts +22 -0
- package/dist/esm/models/operations/getaccelerator.d.ts.map +1 -0
- package/dist/esm/models/operations/getaccelerator.js +31 -0
- package/dist/esm/models/operations/getaccelerator.js.map +1 -0
- package/dist/esm/models/operations/getacceleratoravailability.d.ts +44 -0
- package/dist/esm/models/operations/getacceleratoravailability.d.ts.map +1 -0
- package/dist/esm/models/operations/getacceleratoravailability.js +46 -0
- package/dist/esm/models/operations/getacceleratoravailability.js.map +1 -0
- package/dist/esm/models/operations/index.d.ts +2 -0
- package/dist/esm/models/operations/index.d.ts.map +1 -1
- package/dist/esm/models/operations/index.js +2 -0
- package/dist/esm/models/operations/index.js.map +1 -1
- package/dist/esm/react-query/index.d.ts +2 -0
- package/dist/esm/react-query/index.d.ts.map +1 -1
- package/dist/esm/react-query/index.js +2 -0
- package/dist/esm/react-query/index.js.map +1 -1
- package/dist/esm/react-query/servingAcceleratorsAvailability.core.d.ts +16 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.core.d.ts.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.core.js +32 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.core.js.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.d.ts +41 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.d.ts.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.js +55 -0
- package/dist/esm/react-query/servingAcceleratorsAvailability.js.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsGet.core.d.ts +15 -0
- package/dist/esm/react-query/servingAcceleratorsGet.core.d.ts.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsGet.core.js +31 -0
- package/dist/esm/react-query/servingAcceleratorsGet.core.js.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsGet.d.ts +39 -0
- package/dist/esm/react-query/servingAcceleratorsGet.d.ts.map +1 -0
- package/dist/esm/react-query/servingAcceleratorsGet.js +50 -0
- package/dist/esm/react-query/servingAcceleratorsGet.js.map +1 -0
- package/dist/esm/sdk/accelerators.d.ts +14 -0
- package/dist/esm/sdk/accelerators.d.ts.map +1 -1
- package/dist/esm/sdk/accelerators.js +20 -0
- package/dist/esm/sdk/accelerators.js.map +1 -1
- package/jsr.json +1 -1
- package/package.json +1 -1
- package/src/funcs/servingAcceleratorsAvailability.ts +205 -0
- package/src/funcs/servingAcceleratorsGet.ts +192 -0
- package/src/lib/config.ts +2 -2
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +5 -1
- package/src/mcp-server/tools/servingAcceleratorsAvailability.ts +38 -0
- package/src/mcp-server/tools/servingAcceleratorsGet.ts +37 -0
- package/src/models/components/acceleratoravailability.ts +146 -0
- package/src/models/components/acceleratoravailabilitybucket.ts +103 -0
- package/src/models/components/acceleratorhourofdayslot.ts +80 -0
- package/src/models/components/acceleratorprovideravailability.ts +66 -0
- package/src/models/components/acceleratortype.ts +85 -5
- package/src/models/components/acceleratorworkloadaffinity.ts +71 -0
- package/src/models/components/affinityrating.ts +28 -0
- package/src/models/components/availabilitypriceband.ts +62 -0
- package/src/models/components/deployment.ts +16 -0
- package/src/models/components/deploymentacceleratorspec.ts +13 -10
- package/src/models/components/finetunejob.ts +16 -0
- package/src/models/components/index.ts +7 -0
- package/src/models/operations/getaccelerator.ts +67 -0
- package/src/models/operations/getacceleratoravailability.ts +97 -0
- package/src/models/operations/index.ts +2 -0
- package/src/react-query/index.ts +2 -0
- package/src/react-query/servingAcceleratorsAvailability.core.ts +81 -0
- package/src/react-query/servingAcceleratorsAvailability.ts +161 -0
- package/src/react-query/servingAcceleratorsGet.core.ts +76 -0
- package/src/react-query/servingAcceleratorsGet.ts +143 -0
- package/src/sdk/accelerators.ts +36 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { servingAcceleratorsGet } from "../../funcs/servingAcceleratorsGet.js";
|
|
6
|
+
import * as operations from "../../models/operations/index.js";
|
|
7
|
+
import { formatResult, ToolDefinition } from "../tools.js";
|
|
8
|
+
|
|
9
|
+
const args = {
|
|
10
|
+
request: operations.GetAcceleratorRequest$inboundSchema,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export const tool$servingAcceleratorsGet: ToolDefinition<typeof args> = {
|
|
14
|
+
name: "serving-accelerators-get",
|
|
15
|
+
description: `Get an accelerator type
|
|
16
|
+
|
|
17
|
+
Retrieve one accelerator type from the curated catalog, including its workload affinity, placements, and live market fields when available.`,
|
|
18
|
+
args,
|
|
19
|
+
tool: async (client, args, ctx) => {
|
|
20
|
+
const [result, apiCall] = await servingAcceleratorsGet(
|
|
21
|
+
client,
|
|
22
|
+
args.request,
|
|
23
|
+
{ fetchOptions: { signal: ctx.signal } },
|
|
24
|
+
).$inspect();
|
|
25
|
+
|
|
26
|
+
if (!result.ok) {
|
|
27
|
+
return {
|
|
28
|
+
content: [{ type: "text", text: result.error.message }],
|
|
29
|
+
isError: true,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const value = result.value;
|
|
34
|
+
|
|
35
|
+
return formatResult(value, apiCall);
|
|
36
|
+
},
|
|
37
|
+
};
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v3";
|
|
6
|
+
import { remap as remap$ } from "../../lib/primitives.js";
|
|
7
|
+
import { safeParse } from "../../lib/schemas.js";
|
|
8
|
+
import { ClosedEnum } from "../../types/enums.js";
|
|
9
|
+
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
10
|
+
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
11
|
+
import {
|
|
12
|
+
AcceleratorAvailabilityBucket,
|
|
13
|
+
AcceleratorAvailabilityBucket$inboundSchema,
|
|
14
|
+
AcceleratorAvailabilityBucket$Outbound,
|
|
15
|
+
AcceleratorAvailabilityBucket$outboundSchema,
|
|
16
|
+
} from "./acceleratoravailabilitybucket.js";
|
|
17
|
+
import {
|
|
18
|
+
AcceleratorHourOfDaySlot,
|
|
19
|
+
AcceleratorHourOfDaySlot$inboundSchema,
|
|
20
|
+
AcceleratorHourOfDaySlot$Outbound,
|
|
21
|
+
AcceleratorHourOfDaySlot$outboundSchema,
|
|
22
|
+
} from "./acceleratorhourofdayslot.js";
|
|
23
|
+
import {
|
|
24
|
+
AcceleratorProviderAvailability,
|
|
25
|
+
AcceleratorProviderAvailability$inboundSchema,
|
|
26
|
+
AcceleratorProviderAvailability$Outbound,
|
|
27
|
+
AcceleratorProviderAvailability$outboundSchema,
|
|
28
|
+
} from "./acceleratorprovideravailability.js";
|
|
29
|
+
|
|
30
|
+
export const AcceleratorAvailabilityClass = {
|
|
31
|
+
Gpu: "gpu",
|
|
32
|
+
Cpu: "cpu",
|
|
33
|
+
} as const;
|
|
34
|
+
export type AcceleratorAvailabilityClass = ClosedEnum<
|
|
35
|
+
typeof AcceleratorAvailabilityClass
|
|
36
|
+
>;
|
|
37
|
+
|
|
38
|
+
export const Window = {
|
|
39
|
+
TwentyFourh: "24h",
|
|
40
|
+
Sevend: "7d",
|
|
41
|
+
Thirtyd: "30d",
|
|
42
|
+
} as const;
|
|
43
|
+
export type Window = ClosedEnum<typeof Window>;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Bucketed availability time series for one accelerator over a window, served exclusively from hourly rollups. Estimates are honest or absent — never extrapolated past observed polls.
|
|
47
|
+
*/
|
|
48
|
+
export type AcceleratorAvailability = {
|
|
49
|
+
/**
|
|
50
|
+
* Hourly buckets covering polled hours of the window, oldest first. Empty when no observation in the window carried this accelerator anywhere: an honest no-data answer, never a series of fabricated zeros.
|
|
51
|
+
*/
|
|
52
|
+
buckets: Array<AcceleratorAvailabilityBucket>;
|
|
53
|
+
/**
|
|
54
|
+
* Present only when the cluster does not anonymize providers; with anonymity on, only the cross-provider aggregate ships.
|
|
55
|
+
*/
|
|
56
|
+
byProvider?: Array<AcceleratorProviderAvailability> | undefined;
|
|
57
|
+
class: AcceleratorAvailabilityClass;
|
|
58
|
+
/**
|
|
59
|
+
* 24-slot UTC hour-of-day profile merged across the window. Empty when buckets is empty.
|
|
60
|
+
*/
|
|
61
|
+
hourOfDay: Array<AcceleratorHourOfDaySlot>;
|
|
62
|
+
name: string;
|
|
63
|
+
window: Window;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
/** @internal */
|
|
67
|
+
export const AcceleratorAvailabilityClass$inboundSchema: z.ZodNativeEnum<
|
|
68
|
+
typeof AcceleratorAvailabilityClass
|
|
69
|
+
> = z.nativeEnum(AcceleratorAvailabilityClass);
|
|
70
|
+
/** @internal */
|
|
71
|
+
export const AcceleratorAvailabilityClass$outboundSchema: z.ZodNativeEnum<
|
|
72
|
+
typeof AcceleratorAvailabilityClass
|
|
73
|
+
> = AcceleratorAvailabilityClass$inboundSchema;
|
|
74
|
+
|
|
75
|
+
/** @internal */
|
|
76
|
+
export const Window$inboundSchema: z.ZodNativeEnum<typeof Window> = z
|
|
77
|
+
.nativeEnum(Window);
|
|
78
|
+
/** @internal */
|
|
79
|
+
export const Window$outboundSchema: z.ZodNativeEnum<typeof Window> =
|
|
80
|
+
Window$inboundSchema;
|
|
81
|
+
|
|
82
|
+
/** @internal */
|
|
83
|
+
export const AcceleratorAvailability$inboundSchema: z.ZodType<
|
|
84
|
+
AcceleratorAvailability,
|
|
85
|
+
z.ZodTypeDef,
|
|
86
|
+
unknown
|
|
87
|
+
> = z.object({
|
|
88
|
+
buckets: z.array(AcceleratorAvailabilityBucket$inboundSchema),
|
|
89
|
+
by_provider: z.array(AcceleratorProviderAvailability$inboundSchema)
|
|
90
|
+
.optional(),
|
|
91
|
+
class: AcceleratorAvailabilityClass$inboundSchema,
|
|
92
|
+
hour_of_day: z.array(AcceleratorHourOfDaySlot$inboundSchema),
|
|
93
|
+
name: z.string(),
|
|
94
|
+
window: Window$inboundSchema,
|
|
95
|
+
}).transform((v) => {
|
|
96
|
+
return remap$(v, {
|
|
97
|
+
"by_provider": "byProvider",
|
|
98
|
+
"hour_of_day": "hourOfDay",
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
/** @internal */
|
|
102
|
+
export type AcceleratorAvailability$Outbound = {
|
|
103
|
+
buckets: Array<AcceleratorAvailabilityBucket$Outbound>;
|
|
104
|
+
by_provider?: Array<AcceleratorProviderAvailability$Outbound> | undefined;
|
|
105
|
+
class: string;
|
|
106
|
+
hour_of_day: Array<AcceleratorHourOfDaySlot$Outbound>;
|
|
107
|
+
name: string;
|
|
108
|
+
window: string;
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
/** @internal */
|
|
112
|
+
export const AcceleratorAvailability$outboundSchema: z.ZodType<
|
|
113
|
+
AcceleratorAvailability$Outbound,
|
|
114
|
+
z.ZodTypeDef,
|
|
115
|
+
AcceleratorAvailability
|
|
116
|
+
> = z.object({
|
|
117
|
+
buckets: z.array(AcceleratorAvailabilityBucket$outboundSchema),
|
|
118
|
+
byProvider: z.array(AcceleratorProviderAvailability$outboundSchema)
|
|
119
|
+
.optional(),
|
|
120
|
+
class: AcceleratorAvailabilityClass$outboundSchema,
|
|
121
|
+
hourOfDay: z.array(AcceleratorHourOfDaySlot$outboundSchema),
|
|
122
|
+
name: z.string(),
|
|
123
|
+
window: Window$outboundSchema,
|
|
124
|
+
}).transform((v) => {
|
|
125
|
+
return remap$(v, {
|
|
126
|
+
byProvider: "by_provider",
|
|
127
|
+
hourOfDay: "hour_of_day",
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
export function acceleratorAvailabilityToJSON(
|
|
132
|
+
acceleratorAvailability: AcceleratorAvailability,
|
|
133
|
+
): string {
|
|
134
|
+
return JSON.stringify(
|
|
135
|
+
AcceleratorAvailability$outboundSchema.parse(acceleratorAvailability),
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
export function acceleratorAvailabilityFromJSON(
|
|
139
|
+
jsonString: string,
|
|
140
|
+
): SafeParseResult<AcceleratorAvailability, SDKValidationError> {
|
|
141
|
+
return safeParse(
|
|
142
|
+
jsonString,
|
|
143
|
+
(x) => AcceleratorAvailability$inboundSchema.parse(JSON.parse(x)),
|
|
144
|
+
`Failed to parse 'AcceleratorAvailability' from JSON`,
|
|
145
|
+
);
|
|
146
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v3";
|
|
6
|
+
import { remap as remap$ } from "../../lib/primitives.js";
|
|
7
|
+
import { safeParse } from "../../lib/schemas.js";
|
|
8
|
+
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
9
|
+
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
10
|
+
import {
|
|
11
|
+
AvailabilityPriceBand,
|
|
12
|
+
AvailabilityPriceBand$inboundSchema,
|
|
13
|
+
AvailabilityPriceBand$Outbound,
|
|
14
|
+
AvailabilityPriceBand$outboundSchema,
|
|
15
|
+
} from "./availabilitypriceband.js";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* One hourly availability bucket for an accelerator, aggregated across anonymous providers.
|
|
19
|
+
*/
|
|
20
|
+
export type AcceleratorAvailabilityBucket = {
|
|
21
|
+
/**
|
|
22
|
+
* Fraction of successful capacity polls in the bucket at which matching capacity was available. Hours polled without any matching observation read 0.
|
|
23
|
+
*/
|
|
24
|
+
availabilityRatio: number;
|
|
25
|
+
/**
|
|
26
|
+
* UTC start of the hourly bucket.
|
|
27
|
+
*/
|
|
28
|
+
bucketStart: Date;
|
|
29
|
+
/**
|
|
30
|
+
* Successful poll observations that carried a matching configuration in this bucket (0 when the accelerator was absent for the whole hour).
|
|
31
|
+
*/
|
|
32
|
+
presentPolls: number;
|
|
33
|
+
/**
|
|
34
|
+
* Null when the bucket has no priced observations; prices are never extrapolated.
|
|
35
|
+
*/
|
|
36
|
+
priceBand?: AvailabilityPriceBand | null | undefined;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
/** @internal */
|
|
40
|
+
export const AcceleratorAvailabilityBucket$inboundSchema: z.ZodType<
|
|
41
|
+
AcceleratorAvailabilityBucket,
|
|
42
|
+
z.ZodTypeDef,
|
|
43
|
+
unknown
|
|
44
|
+
> = z.object({
|
|
45
|
+
availability_ratio: z.number(),
|
|
46
|
+
bucket_start: z.string().datetime({ offset: true }).transform(v =>
|
|
47
|
+
new Date(v)
|
|
48
|
+
),
|
|
49
|
+
present_polls: z.number().int(),
|
|
50
|
+
price_band: z.nullable(AvailabilityPriceBand$inboundSchema).optional(),
|
|
51
|
+
}).transform((v) => {
|
|
52
|
+
return remap$(v, {
|
|
53
|
+
"availability_ratio": "availabilityRatio",
|
|
54
|
+
"bucket_start": "bucketStart",
|
|
55
|
+
"present_polls": "presentPolls",
|
|
56
|
+
"price_band": "priceBand",
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
/** @internal */
|
|
60
|
+
export type AcceleratorAvailabilityBucket$Outbound = {
|
|
61
|
+
availability_ratio: number;
|
|
62
|
+
bucket_start: string;
|
|
63
|
+
present_polls: number;
|
|
64
|
+
price_band?: AvailabilityPriceBand$Outbound | null | undefined;
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/** @internal */
|
|
68
|
+
export const AcceleratorAvailabilityBucket$outboundSchema: z.ZodType<
|
|
69
|
+
AcceleratorAvailabilityBucket$Outbound,
|
|
70
|
+
z.ZodTypeDef,
|
|
71
|
+
AcceleratorAvailabilityBucket
|
|
72
|
+
> = z.object({
|
|
73
|
+
availabilityRatio: z.number(),
|
|
74
|
+
bucketStart: z.date().transform(v => v.toISOString()),
|
|
75
|
+
presentPolls: z.number().int(),
|
|
76
|
+
priceBand: z.nullable(AvailabilityPriceBand$outboundSchema).optional(),
|
|
77
|
+
}).transform((v) => {
|
|
78
|
+
return remap$(v, {
|
|
79
|
+
availabilityRatio: "availability_ratio",
|
|
80
|
+
bucketStart: "bucket_start",
|
|
81
|
+
presentPolls: "present_polls",
|
|
82
|
+
priceBand: "price_band",
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
export function acceleratorAvailabilityBucketToJSON(
|
|
87
|
+
acceleratorAvailabilityBucket: AcceleratorAvailabilityBucket,
|
|
88
|
+
): string {
|
|
89
|
+
return JSON.stringify(
|
|
90
|
+
AcceleratorAvailabilityBucket$outboundSchema.parse(
|
|
91
|
+
acceleratorAvailabilityBucket,
|
|
92
|
+
),
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
export function acceleratorAvailabilityBucketFromJSON(
|
|
96
|
+
jsonString: string,
|
|
97
|
+
): SafeParseResult<AcceleratorAvailabilityBucket, SDKValidationError> {
|
|
98
|
+
return safeParse(
|
|
99
|
+
jsonString,
|
|
100
|
+
(x) => AcceleratorAvailabilityBucket$inboundSchema.parse(JSON.parse(x)),
|
|
101
|
+
`Failed to parse 'AcceleratorAvailabilityBucket' from JSON`,
|
|
102
|
+
);
|
|
103
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v3";
|
|
6
|
+
import { remap as remap$ } from "../../lib/primitives.js";
|
|
7
|
+
import { safeParse } from "../../lib/schemas.js";
|
|
8
|
+
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
9
|
+
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* One slot of the 24-slot hour-of-day availability profile.
|
|
13
|
+
*/
|
|
14
|
+
export type AcceleratorHourOfDaySlot = {
|
|
15
|
+
/**
|
|
16
|
+
* Unweighted mean of the window's hourly availability ratios that fall on this hour of day. Meaningless when samples is 0.
|
|
17
|
+
*/
|
|
18
|
+
availabilityRatio: number;
|
|
19
|
+
/**
|
|
20
|
+
* UTC hour of day.
|
|
21
|
+
*/
|
|
22
|
+
hour: number;
|
|
23
|
+
/**
|
|
24
|
+
* Number of window buckets contributing to this slot. 0 means no evidence for this hour of day.
|
|
25
|
+
*/
|
|
26
|
+
samples: number;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/** @internal */
|
|
30
|
+
export const AcceleratorHourOfDaySlot$inboundSchema: z.ZodType<
|
|
31
|
+
AcceleratorHourOfDaySlot,
|
|
32
|
+
z.ZodTypeDef,
|
|
33
|
+
unknown
|
|
34
|
+
> = z.object({
|
|
35
|
+
availability_ratio: z.number(),
|
|
36
|
+
hour: z.number().int(),
|
|
37
|
+
samples: z.number().int(),
|
|
38
|
+
}).transform((v) => {
|
|
39
|
+
return remap$(v, {
|
|
40
|
+
"availability_ratio": "availabilityRatio",
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
/** @internal */
|
|
44
|
+
export type AcceleratorHourOfDaySlot$Outbound = {
|
|
45
|
+
availability_ratio: number;
|
|
46
|
+
hour: number;
|
|
47
|
+
samples: number;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
/** @internal */
|
|
51
|
+
export const AcceleratorHourOfDaySlot$outboundSchema: z.ZodType<
|
|
52
|
+
AcceleratorHourOfDaySlot$Outbound,
|
|
53
|
+
z.ZodTypeDef,
|
|
54
|
+
AcceleratorHourOfDaySlot
|
|
55
|
+
> = z.object({
|
|
56
|
+
availabilityRatio: z.number(),
|
|
57
|
+
hour: z.number().int(),
|
|
58
|
+
samples: z.number().int(),
|
|
59
|
+
}).transform((v) => {
|
|
60
|
+
return remap$(v, {
|
|
61
|
+
availabilityRatio: "availability_ratio",
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
export function acceleratorHourOfDaySlotToJSON(
|
|
66
|
+
acceleratorHourOfDaySlot: AcceleratorHourOfDaySlot,
|
|
67
|
+
): string {
|
|
68
|
+
return JSON.stringify(
|
|
69
|
+
AcceleratorHourOfDaySlot$outboundSchema.parse(acceleratorHourOfDaySlot),
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
export function acceleratorHourOfDaySlotFromJSON(
|
|
73
|
+
jsonString: string,
|
|
74
|
+
): SafeParseResult<AcceleratorHourOfDaySlot, SDKValidationError> {
|
|
75
|
+
return safeParse(
|
|
76
|
+
jsonString,
|
|
77
|
+
(x) => AcceleratorHourOfDaySlot$inboundSchema.parse(JSON.parse(x)),
|
|
78
|
+
`Failed to parse 'AcceleratorHourOfDaySlot' from JSON`,
|
|
79
|
+
);
|
|
80
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v3";
|
|
6
|
+
import { safeParse } from "../../lib/schemas.js";
|
|
7
|
+
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
8
|
+
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
9
|
+
import {
|
|
10
|
+
AcceleratorAvailabilityBucket,
|
|
11
|
+
AcceleratorAvailabilityBucket$inboundSchema,
|
|
12
|
+
AcceleratorAvailabilityBucket$Outbound,
|
|
13
|
+
AcceleratorAvailabilityBucket$outboundSchema,
|
|
14
|
+
} from "./acceleratoravailabilitybucket.js";
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Per-provider breakdown of the same buckets. Served only when the cluster does not anonymize providers.
|
|
18
|
+
*/
|
|
19
|
+
export type AcceleratorProviderAvailability = {
|
|
20
|
+
buckets: Array<AcceleratorAvailabilityBucket>;
|
|
21
|
+
provider: string;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
/** @internal */
|
|
25
|
+
export const AcceleratorProviderAvailability$inboundSchema: z.ZodType<
|
|
26
|
+
AcceleratorProviderAvailability,
|
|
27
|
+
z.ZodTypeDef,
|
|
28
|
+
unknown
|
|
29
|
+
> = z.object({
|
|
30
|
+
buckets: z.array(AcceleratorAvailabilityBucket$inboundSchema),
|
|
31
|
+
provider: z.string(),
|
|
32
|
+
});
|
|
33
|
+
/** @internal */
|
|
34
|
+
export type AcceleratorProviderAvailability$Outbound = {
|
|
35
|
+
buckets: Array<AcceleratorAvailabilityBucket$Outbound>;
|
|
36
|
+
provider: string;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
/** @internal */
|
|
40
|
+
export const AcceleratorProviderAvailability$outboundSchema: z.ZodType<
|
|
41
|
+
AcceleratorProviderAvailability$Outbound,
|
|
42
|
+
z.ZodTypeDef,
|
|
43
|
+
AcceleratorProviderAvailability
|
|
44
|
+
> = z.object({
|
|
45
|
+
buckets: z.array(AcceleratorAvailabilityBucket$outboundSchema),
|
|
46
|
+
provider: z.string(),
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
export function acceleratorProviderAvailabilityToJSON(
|
|
50
|
+
acceleratorProviderAvailability: AcceleratorProviderAvailability,
|
|
51
|
+
): string {
|
|
52
|
+
return JSON.stringify(
|
|
53
|
+
AcceleratorProviderAvailability$outboundSchema.parse(
|
|
54
|
+
acceleratorProviderAvailability,
|
|
55
|
+
),
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
export function acceleratorProviderAvailabilityFromJSON(
|
|
59
|
+
jsonString: string,
|
|
60
|
+
): SafeParseResult<AcceleratorProviderAvailability, SDKValidationError> {
|
|
61
|
+
return safeParse(
|
|
62
|
+
jsonString,
|
|
63
|
+
(x) => AcceleratorProviderAvailability$inboundSchema.parse(JSON.parse(x)),
|
|
64
|
+
`Failed to parse 'AcceleratorProviderAvailability' from JSON`,
|
|
65
|
+
);
|
|
66
|
+
}
|
|
@@ -14,20 +14,54 @@ import {
|
|
|
14
14
|
AcceleratorPriceBand$Outbound,
|
|
15
15
|
AcceleratorPriceBand$outboundSchema,
|
|
16
16
|
} from "./acceleratorpriceband.js";
|
|
17
|
+
import {
|
|
18
|
+
AcceleratorWorkloadAffinity,
|
|
19
|
+
AcceleratorWorkloadAffinity$inboundSchema,
|
|
20
|
+
AcceleratorWorkloadAffinity$Outbound,
|
|
21
|
+
AcceleratorWorkloadAffinity$outboundSchema,
|
|
22
|
+
} from "./acceleratorworkloadaffinity.js";
|
|
17
23
|
import {
|
|
18
24
|
Acquirability,
|
|
19
25
|
Acquirability$inboundSchema,
|
|
20
26
|
Acquirability$outboundSchema,
|
|
21
27
|
} from "./acquirability.js";
|
|
22
28
|
|
|
29
|
+
/**
|
|
30
|
+
* Coarse accelerator class. npu/tpu are reserved for future catalog entries.
|
|
31
|
+
*/
|
|
32
|
+
export const Class = {
|
|
33
|
+
Gpu: "gpu",
|
|
34
|
+
Cpu: "cpu",
|
|
35
|
+
} as const;
|
|
36
|
+
/**
|
|
37
|
+
* Coarse accelerator class. npu/tpu are reserved for future catalog entries.
|
|
38
|
+
*/
|
|
39
|
+
export type Class = ClosedEnum<typeof Class>;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Deprecated: use class. Retained for SDK compatibility until the next breaking conventions pass.
|
|
43
|
+
*
|
|
44
|
+
* @deprecated enum: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
45
|
+
*/
|
|
23
46
|
export const Kind = {
|
|
24
47
|
Gpu: "gpu",
|
|
25
48
|
Npu: "npu",
|
|
26
49
|
Tpu: "tpu",
|
|
27
50
|
Other: "other",
|
|
28
51
|
} as const;
|
|
52
|
+
/**
|
|
53
|
+
* Deprecated: use class. Retained for SDK compatibility until the next breaking conventions pass.
|
|
54
|
+
*
|
|
55
|
+
* @deprecated enum: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
56
|
+
*/
|
|
29
57
|
export type Kind = ClosedEnum<typeof Kind>;
|
|
30
58
|
|
|
59
|
+
export const Placements = {
|
|
60
|
+
Internal: "internal",
|
|
61
|
+
External: "external",
|
|
62
|
+
} as const;
|
|
63
|
+
export type Placements = ClosedEnum<typeof Placements>;
|
|
64
|
+
|
|
31
65
|
/**
|
|
32
66
|
* An offered accelerator type in the catalog.
|
|
33
67
|
*/
|
|
@@ -40,24 +74,52 @@ export type AcceleratorType = {
|
|
|
40
74
|
* Configurations acquirable now (0 when offered is false). Absent when live market data is unavailable.
|
|
41
75
|
*/
|
|
42
76
|
acquirableCount?: number | undefined;
|
|
77
|
+
/**
|
|
78
|
+
* Coarse accelerator class. npu/tpu are reserved for future catalog entries.
|
|
79
|
+
*/
|
|
80
|
+
class: Class;
|
|
81
|
+
/**
|
|
82
|
+
* Deprecated: use class. Retained for SDK compatibility until the next breaking conventions pass.
|
|
83
|
+
*
|
|
84
|
+
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
85
|
+
*/
|
|
43
86
|
kind?: Kind | undefined;
|
|
44
87
|
/**
|
|
45
|
-
* Max accelerators of this type per replica
|
|
88
|
+
* Max accelerators of this type per replica. For class cpu the unit is vCPUs: the maximum rentable vCPU count per replica.
|
|
46
89
|
*/
|
|
47
90
|
maxCount: number;
|
|
48
|
-
|
|
91
|
+
/**
|
|
92
|
+
* Per-accelerator memory in GB. Absent for class cpu: CPU capacity is sized per request (min_vcpus/min_mem_gb), not by a fixed module.
|
|
93
|
+
*/
|
|
94
|
+
memoryGb?: number | undefined;
|
|
49
95
|
name: string;
|
|
50
96
|
/**
|
|
51
97
|
* Whether any capacity acquirable right now matches this type. Absent when live market data is unavailable.
|
|
52
98
|
*/
|
|
53
99
|
offered?: boolean | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* Placements where this accelerator exists. All catalog entries are external (marketplace-acquired) today; internal arrives with private-cluster inventory.
|
|
102
|
+
*/
|
|
103
|
+
placements: Array<Placements>;
|
|
54
104
|
/**
|
|
55
105
|
* USD-per-hour price band across configurations acquirable now for an accelerator type.
|
|
56
106
|
*/
|
|
57
107
|
priceUsdHr?: AcceleratorPriceBand | undefined;
|
|
58
108
|
vendor: string;
|
|
109
|
+
/**
|
|
110
|
+
* Per-workload suitability ratings for an accelerator type, seeded from the training hardware matrix.
|
|
111
|
+
*/
|
|
112
|
+
workloadAffinity: AcceleratorWorkloadAffinity;
|
|
59
113
|
};
|
|
60
114
|
|
|
115
|
+
/** @internal */
|
|
116
|
+
export const Class$inboundSchema: z.ZodNativeEnum<typeof Class> = z.nativeEnum(
|
|
117
|
+
Class,
|
|
118
|
+
);
|
|
119
|
+
/** @internal */
|
|
120
|
+
export const Class$outboundSchema: z.ZodNativeEnum<typeof Class> =
|
|
121
|
+
Class$inboundSchema;
|
|
122
|
+
|
|
61
123
|
/** @internal */
|
|
62
124
|
export const Kind$inboundSchema: z.ZodNativeEnum<typeof Kind> = z.nativeEnum(
|
|
63
125
|
Kind,
|
|
@@ -66,6 +128,13 @@ export const Kind$inboundSchema: z.ZodNativeEnum<typeof Kind> = z.nativeEnum(
|
|
|
66
128
|
export const Kind$outboundSchema: z.ZodNativeEnum<typeof Kind> =
|
|
67
129
|
Kind$inboundSchema;
|
|
68
130
|
|
|
131
|
+
/** @internal */
|
|
132
|
+
export const Placements$inboundSchema: z.ZodNativeEnum<typeof Placements> = z
|
|
133
|
+
.nativeEnum(Placements);
|
|
134
|
+
/** @internal */
|
|
135
|
+
export const Placements$outboundSchema: z.ZodNativeEnum<typeof Placements> =
|
|
136
|
+
Placements$inboundSchema;
|
|
137
|
+
|
|
69
138
|
/** @internal */
|
|
70
139
|
export const AcceleratorType$inboundSchema: z.ZodType<
|
|
71
140
|
AcceleratorType,
|
|
@@ -74,32 +143,39 @@ export const AcceleratorType$inboundSchema: z.ZodType<
|
|
|
74
143
|
> = z.object({
|
|
75
144
|
acquirability: Acquirability$inboundSchema.optional(),
|
|
76
145
|
acquirable_count: z.number().int().optional(),
|
|
146
|
+
class: Class$inboundSchema,
|
|
77
147
|
kind: Kind$inboundSchema.default("gpu"),
|
|
78
148
|
max_count: z.number().int(),
|
|
79
|
-
memory_gb: z.number().int(),
|
|
149
|
+
memory_gb: z.number().int().optional(),
|
|
80
150
|
name: z.string(),
|
|
81
151
|
offered: z.boolean().optional(),
|
|
152
|
+
placements: z.array(Placements$inboundSchema),
|
|
82
153
|
price_usd_hr: AcceleratorPriceBand$inboundSchema.optional(),
|
|
83
154
|
vendor: z.string(),
|
|
155
|
+
workload_affinity: AcceleratorWorkloadAffinity$inboundSchema,
|
|
84
156
|
}).transform((v) => {
|
|
85
157
|
return remap$(v, {
|
|
86
158
|
"acquirable_count": "acquirableCount",
|
|
87
159
|
"max_count": "maxCount",
|
|
88
160
|
"memory_gb": "memoryGb",
|
|
89
161
|
"price_usd_hr": "priceUsdHr",
|
|
162
|
+
"workload_affinity": "workloadAffinity",
|
|
90
163
|
});
|
|
91
164
|
});
|
|
92
165
|
/** @internal */
|
|
93
166
|
export type AcceleratorType$Outbound = {
|
|
94
167
|
acquirability?: string | undefined;
|
|
95
168
|
acquirable_count?: number | undefined;
|
|
169
|
+
class: string;
|
|
96
170
|
kind: string;
|
|
97
171
|
max_count: number;
|
|
98
|
-
memory_gb
|
|
172
|
+
memory_gb?: number | undefined;
|
|
99
173
|
name: string;
|
|
100
174
|
offered?: boolean | undefined;
|
|
175
|
+
placements: Array<string>;
|
|
101
176
|
price_usd_hr?: AcceleratorPriceBand$Outbound | undefined;
|
|
102
177
|
vendor: string;
|
|
178
|
+
workload_affinity: AcceleratorWorkloadAffinity$Outbound;
|
|
103
179
|
};
|
|
104
180
|
|
|
105
181
|
/** @internal */
|
|
@@ -110,19 +186,23 @@ export const AcceleratorType$outboundSchema: z.ZodType<
|
|
|
110
186
|
> = z.object({
|
|
111
187
|
acquirability: Acquirability$outboundSchema.optional(),
|
|
112
188
|
acquirableCount: z.number().int().optional(),
|
|
189
|
+
class: Class$outboundSchema,
|
|
113
190
|
kind: Kind$outboundSchema.default("gpu"),
|
|
114
191
|
maxCount: z.number().int(),
|
|
115
|
-
memoryGb: z.number().int(),
|
|
192
|
+
memoryGb: z.number().int().optional(),
|
|
116
193
|
name: z.string(),
|
|
117
194
|
offered: z.boolean().optional(),
|
|
195
|
+
placements: z.array(Placements$outboundSchema),
|
|
118
196
|
priceUsdHr: AcceleratorPriceBand$outboundSchema.optional(),
|
|
119
197
|
vendor: z.string(),
|
|
198
|
+
workloadAffinity: AcceleratorWorkloadAffinity$outboundSchema,
|
|
120
199
|
}).transform((v) => {
|
|
121
200
|
return remap$(v, {
|
|
122
201
|
acquirableCount: "acquirable_count",
|
|
123
202
|
maxCount: "max_count",
|
|
124
203
|
memoryGb: "memory_gb",
|
|
125
204
|
priceUsdHr: "price_usd_hr",
|
|
205
|
+
workloadAffinity: "workload_affinity",
|
|
126
206
|
});
|
|
127
207
|
});
|
|
128
208
|
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod/v3";
|
|
6
|
+
import { safeParse } from "../../lib/schemas.js";
|
|
7
|
+
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
8
|
+
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
9
|
+
import {
|
|
10
|
+
AffinityRating,
|
|
11
|
+
AffinityRating$inboundSchema,
|
|
12
|
+
AffinityRating$outboundSchema,
|
|
13
|
+
} from "./affinityrating.js";
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Per-workload suitability ratings for an accelerator type, seeded from the training hardware matrix.
|
|
17
|
+
*/
|
|
18
|
+
export type AcceleratorWorkloadAffinity = {
|
|
19
|
+
/**
|
|
20
|
+
* How well an accelerator suits a workload class. Catalog data, not a scheduling guarantee.
|
|
21
|
+
*/
|
|
22
|
+
serving: AffinityRating;
|
|
23
|
+
/**
|
|
24
|
+
* How well an accelerator suits a workload class. Catalog data, not a scheduling guarantee.
|
|
25
|
+
*/
|
|
26
|
+
training: AffinityRating;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/** @internal */
|
|
30
|
+
export const AcceleratorWorkloadAffinity$inboundSchema: z.ZodType<
|
|
31
|
+
AcceleratorWorkloadAffinity,
|
|
32
|
+
z.ZodTypeDef,
|
|
33
|
+
unknown
|
|
34
|
+
> = z.object({
|
|
35
|
+
serving: AffinityRating$inboundSchema,
|
|
36
|
+
training: AffinityRating$inboundSchema,
|
|
37
|
+
});
|
|
38
|
+
/** @internal */
|
|
39
|
+
export type AcceleratorWorkloadAffinity$Outbound = {
|
|
40
|
+
serving: string;
|
|
41
|
+
training: string;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/** @internal */
|
|
45
|
+
export const AcceleratorWorkloadAffinity$outboundSchema: z.ZodType<
|
|
46
|
+
AcceleratorWorkloadAffinity$Outbound,
|
|
47
|
+
z.ZodTypeDef,
|
|
48
|
+
AcceleratorWorkloadAffinity
|
|
49
|
+
> = z.object({
|
|
50
|
+
serving: AffinityRating$outboundSchema,
|
|
51
|
+
training: AffinityRating$outboundSchema,
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
export function acceleratorWorkloadAffinityToJSON(
|
|
55
|
+
acceleratorWorkloadAffinity: AcceleratorWorkloadAffinity,
|
|
56
|
+
): string {
|
|
57
|
+
return JSON.stringify(
|
|
58
|
+
AcceleratorWorkloadAffinity$outboundSchema.parse(
|
|
59
|
+
acceleratorWorkloadAffinity,
|
|
60
|
+
),
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
export function acceleratorWorkloadAffinityFromJSON(
|
|
64
|
+
jsonString: string,
|
|
65
|
+
): SafeParseResult<AcceleratorWorkloadAffinity, SDKValidationError> {
|
|
66
|
+
return safeParse(
|
|
67
|
+
jsonString,
|
|
68
|
+
(x) => AcceleratorWorkloadAffinity$inboundSchema.parse(JSON.parse(x)),
|
|
69
|
+
`Failed to parse 'AcceleratorWorkloadAffinity' from JSON`,
|
|
70
|
+
);
|
|
71
|
+
}
|