@dhbw-cloud/llm-client 0.2.11 → 0.2.16

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/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { blockMachine, createKey, deleteFleetPackage, deleteKey, deleteTreeProject, deleteWorkspaceProject, forgetMachine, getFleet, getFleetInference, getFleetInventoryCsv, getFleetPackage, getFleetProfile, getFleetReadme, getGpuHours, getMe, getMyWorkspaceUsage, getProjectImageLog, getTreeCatalog, getUsage, getWorkspaceCatalog, getWorkspaceStorage, getWorkspaceUsage, listGpuServers, listKeys, listTreeProjects, listWorkspaceProjects, type Options, putTreeProject, rebuildProjectImage, setDefaultProject, stopGpuServer, unblockMachine, updateWorkspaceProject } from './sdk.gen';
2
- export type { AccessRole, BlockMachineData, BlockMachineError, BlockMachineErrors, BlockMachineResponse, BlockMachineResponses, ClientOptions, CreateKeyData, CreateKeyError, CreateKeyErrors, CreateKeyResponse, CreateKeyResponses, DeleteFleetPackageData, DeleteFleetPackageResponse, DeleteFleetPackageResponses, DeleteKeyData, DeleteKeyError, DeleteKeyErrors, DeleteKeyResponse, DeleteKeyResponses, DeleteTreeProjectData, DeleteTreeProjectError, DeleteTreeProjectErrors, DeleteTreeProjectResponse, DeleteTreeProjectResponses, DeleteWorkspaceProjectData, DeleteWorkspaceProjectError, DeleteWorkspaceProjectErrors, DeleteWorkspaceProjectResponse, DeleteWorkspaceProjectResponses, FleetFleetView, FleetPackageInfo, FleetPeerView, FleetProfile, ForgetMachineData, ForgetMachineError, ForgetMachineErrors, ForgetMachineResponse, ForgetMachineResponses, GetFleetData, GetFleetError, GetFleetErrors, GetFleetInferenceData, GetFleetInferenceError, GetFleetInferenceErrors, GetFleetInferenceResponse, GetFleetInferenceResponses, GetFleetInventoryCsvData, GetFleetInventoryCsvResponse, GetFleetInventoryCsvResponses, GetFleetPackageData, GetFleetPackageError, GetFleetPackageErrors, GetFleetPackageResponse, GetFleetPackageResponses, GetFleetProfileData, GetFleetProfileResponse, GetFleetProfileResponses, GetFleetReadmeData, GetFleetReadmeResponse, GetFleetReadmeResponses, GetFleetResponse, GetFleetResponses, GetGpuHoursData, GetGpuHoursError, GetGpuHoursErrors, GetGpuHoursResponse, GetGpuHoursResponses, GetMeData, GetMeError, GetMeErrors, GetMeResponse, GetMeResponses, GetMyWorkspaceUsageData, GetMyWorkspaceUsageError, GetMyWorkspaceUsageErrors, GetMyWorkspaceUsageResponse, GetMyWorkspaceUsageResponses, GetProjectImageLogData, GetProjectImageLogError, GetProjectImageLogErrors, GetProjectImageLogResponse, GetProjectImageLogResponses, GetTreeCatalogData, GetTreeCatalogError, GetTreeCatalogErrors, GetTreeCatalogResponse, GetTreeCatalogResponses, GetUsageData, GetUsageError, GetUsageErrors, GetUsageResponse, GetUsageResponses, GetWorkspaceCatalogData, GetWorkspaceCatalogError, GetWorkspaceCatalogErrors, GetWorkspaceCatalogResponse, GetWorkspaceCatalogResponses, GetWorkspaceStorageData, GetWorkspaceStorageError, GetWorkspaceStorageErrors, GetWorkspaceStorageResponse, GetWorkspaceStorageResponses, GetWorkspaceUsageData, GetWorkspaceUsageError, GetWorkspaceUsageErrors, GetWorkspaceUsageResponse, GetWorkspaceUsageResponses, GpuInferencePod, GpuInferencePool, GpuServer, KeysKeyView, KeysProjectUsage, KeysUsage, ListGpuServersData, ListGpuServersError, ListGpuServersErrors, ListGpuServersResponse, ListGpuServersResponses, ListKeysData, ListKeysError, ListKeysErrors, ListKeysResponse, ListKeysResponses, ListTreeProjectsData, ListTreeProjectsError, ListTreeProjectsErrors, ListTreeProjectsResponse, ListTreeProjectsResponses, ListWorkspaceProjectsData, ListWorkspaceProjectsResponse, ListWorkspaceProjectsResponses, PutTreeProjectData, PutTreeProjectError, PutTreeProjectErrors, PutTreeProjectResponse, PutTreeProjectResponses, RebuildProjectImageData, RebuildProjectImageError, RebuildProjectImageErrors, RebuildProjectImageResponse, RebuildProjectImageResponses, SetDefaultProjectData, SetDefaultProjectError, SetDefaultProjectErrors, SetDefaultProjectResponse, SetDefaultProjectResponses, StopGpuServerData, StopGpuServerError, StopGpuServerErrors, StopGpuServerResponse, StopGpuServerResponses, UnblockMachineData, UnblockMachineError, UnblockMachineErrors, UnblockMachineResponse, UnblockMachineResponses, UpdateWorkspaceProjectData, UpdateWorkspaceProjectError, UpdateWorkspaceProjectErrors, UpdateWorkspaceProjectResponse, UpdateWorkspaceProjectResponses, UsageGpuHour, UsageGpuHourPerson, UsageGpuReport, UsageReport, UsageTotal, WebserverBuildLogResponse, WebserverCreateKeyRequest, WebserverCreateKeyResponse, WebserverDefaultProjectRequest, WebserverDefaultProjectResponse, WebserverErrorResponse, WebserverMeResponse, WebserverTreeCatalog, WorkspaceBudget, WorkspaceBudgetStatus, WorkspaceConfig, WorkspaceImageBuild, WorkspaceLimits, WorkspaceMember, WorkspaceMine, WorkspaceProfile, WorkspaceProject, WorkspaceStorageDir, WorkspaceStorageReport, WorkspaceTreeBudget, WorkspaceTreeProject, WorkspaceTreeStatus, WorkspaceTreeUse, WorkspaceValkeyMemory } from './types.gen';
1
+ export { blockMachine, createKey, deleteFleetPackage, deleteGpuPool, deleteKey, deleteTreeProject, deleteWorkspaceProject, forgetMachine, getFleet, getFleetInference, getFleetInventoryCsv, getFleetPackage, getFleetProfile, getFleetReadme, getGpuFleet, getGpuHours, getMe, getMyWorkspaceUsage, getProjectImageLog, getTreeCatalog, getUsage, getWorkspaceCatalog, getWorkspaceStorage, getWorkspaceUsage, listGpuServers, listKeys, listTreeProjects, listWorkspaceProjects, type Options, putGpuNode, putGpuPool, putTreeProject, rebuildProjectImage, setDefaultProject, stopGpuServer, unblockMachine, updateWorkspaceProject } from './sdk.gen';
2
+ export type { AccessRole, BlockMachineData, BlockMachineError, BlockMachineErrors, BlockMachineResponse, BlockMachineResponses, ClientOptions, CreateKeyData, CreateKeyError, CreateKeyErrors, CreateKeyResponse, CreateKeyResponses, DeleteFleetPackageData, DeleteFleetPackageResponse, DeleteFleetPackageResponses, DeleteGpuPoolData, DeleteGpuPoolError, DeleteGpuPoolErrors, DeleteGpuPoolResponse, DeleteGpuPoolResponses, DeleteKeyData, DeleteKeyError, DeleteKeyErrors, DeleteKeyResponse, DeleteKeyResponses, DeleteTreeProjectData, DeleteTreeProjectError, DeleteTreeProjectErrors, DeleteTreeProjectResponse, DeleteTreeProjectResponses, DeleteWorkspaceProjectData, DeleteWorkspaceProjectError, DeleteWorkspaceProjectErrors, DeleteWorkspaceProjectResponse, DeleteWorkspaceProjectResponses, FleetFleetView, FleetPackageInfo, FleetPeerView, FleetProfile, ForgetMachineData, ForgetMachineError, ForgetMachineErrors, ForgetMachineResponse, ForgetMachineResponses, GetFleetData, GetFleetError, GetFleetErrors, GetFleetInferenceData, GetFleetInferenceError, GetFleetInferenceErrors, GetFleetInferenceResponse, GetFleetInferenceResponses, GetFleetInventoryCsvData, GetFleetInventoryCsvResponse, GetFleetInventoryCsvResponses, GetFleetPackageData, GetFleetPackageError, GetFleetPackageErrors, GetFleetPackageResponse, GetFleetPackageResponses, GetFleetProfileData, GetFleetProfileResponse, GetFleetProfileResponses, GetFleetReadmeData, GetFleetReadmeResponse, GetFleetReadmeResponses, GetFleetResponse, GetFleetResponses, GetGpuFleetData, GetGpuFleetError, GetGpuFleetErrors, GetGpuFleetResponse, GetGpuFleetResponses, GetGpuHoursData, GetGpuHoursError, GetGpuHoursErrors, GetGpuHoursResponse, GetGpuHoursResponses, GetMeData, GetMeError, GetMeErrors, GetMeResponse, GetMeResponses, GetMyWorkspaceUsageData, GetMyWorkspaceUsageError, GetMyWorkspaceUsageErrors, GetMyWorkspaceUsageResponse, GetMyWorkspaceUsageResponses, GetProjectImageLogData, GetProjectImageLogError, GetProjectImageLogErrors, GetProjectImageLogResponse, GetProjectImageLogResponses, GetTreeCatalogData, GetTreeCatalogError, GetTreeCatalogErrors, GetTreeCatalogResponse, GetTreeCatalogResponses, GetUsageData, GetUsageError, GetUsageErrors, GetUsageResponse, GetUsageResponses, GetWorkspaceCatalogData, GetWorkspaceCatalogError, GetWorkspaceCatalogErrors, GetWorkspaceCatalogResponse, GetWorkspaceCatalogResponses, GetWorkspaceStorageData, GetWorkspaceStorageError, GetWorkspaceStorageErrors, GetWorkspaceStorageResponse, GetWorkspaceStorageResponses, GetWorkspaceUsageData, GetWorkspaceUsageError, GetWorkspaceUsageErrors, GetWorkspaceUsageResponse, GetWorkspaceUsageResponses, GpuClassInfo, GpuGpuNode, GpuInferencePod, GpuInferencePool, GpuNodeAssignment, GpuPool, GpuServer, GpuTier, KeysKeyView, KeysProjectUsage, KeysUsage, ListGpuServersData, ListGpuServersError, ListGpuServersErrors, ListGpuServersResponse, ListGpuServersResponses, ListKeysData, ListKeysError, ListKeysErrors, ListKeysResponse, ListKeysResponses, ListTreeProjectsData, ListTreeProjectsError, ListTreeProjectsErrors, ListTreeProjectsResponse, ListTreeProjectsResponses, ListWorkspaceProjectsData, ListWorkspaceProjectsResponse, ListWorkspaceProjectsResponses, PutGpuNodeData, PutGpuNodeError, PutGpuNodeErrors, PutGpuNodeResponse, PutGpuNodeResponses, PutGpuPoolData, PutGpuPoolError, PutGpuPoolErrors, PutGpuPoolResponse, PutGpuPoolResponses, PutTreeProjectData, PutTreeProjectError, PutTreeProjectErrors, PutTreeProjectResponse, PutTreeProjectResponses, RebuildProjectImageData, RebuildProjectImageError, RebuildProjectImageErrors, RebuildProjectImageResponse, RebuildProjectImageResponses, SetDefaultProjectData, SetDefaultProjectError, SetDefaultProjectErrors, SetDefaultProjectResponse, SetDefaultProjectResponses, StopGpuServerData, StopGpuServerError, StopGpuServerErrors, StopGpuServerResponse, StopGpuServerResponses, UnblockMachineData, UnblockMachineError, UnblockMachineErrors, UnblockMachineResponse, UnblockMachineResponses, UpdateWorkspaceProjectData, UpdateWorkspaceProjectError, UpdateWorkspaceProjectErrors, UpdateWorkspaceProjectResponse, UpdateWorkspaceProjectResponses, UsageGpuHour, UsageGpuHourPerson, UsageGpuReport, UsageReport, UsageTotal, WebserverBuildLogResponse, WebserverCreateKeyRequest, WebserverCreateKeyResponse, WebserverDefaultProjectRequest, WebserverDefaultProjectResponse, WebserverErrorResponse, WebserverGpuFleetResponse, WebserverGpuNodeRequest, WebserverGpuPoolRequest, WebserverMeResponse, WebserverTreeCatalog, WorkspaceBase, WorkspaceBudget, WorkspaceBudgetStatus, WorkspaceConfig, WorkspaceGpuClass, WorkspaceImageBuild, WorkspaceLimits, WorkspaceMember, WorkspaceMine, WorkspaceProfile, WorkspaceProject, WorkspaceStorageDir, WorkspaceStorageReport, WorkspaceTreeBudget, WorkspaceTreeProject, WorkspaceTreeStatus, WorkspaceTreeUse, WorkspaceValkeyMemory } from './types.gen';
package/dist/index.mjs CHANGED
@@ -837,6 +837,34 @@ var unblockMachine = (options) => (options.client ?? client).post({
837
837
  url: "/v1/fleet/{serial}/unblock",
838
838
  ...options
839
839
  });
840
+ var getGpuFleet = (options) => (options?.client ?? client).get({
841
+ security: [{ name: "Authorization", type: "apiKey" }],
842
+ url: "/v1/gpu/fleet",
843
+ ...options
844
+ });
845
+ var putGpuNode = (options) => (options.client ?? client).put({
846
+ security: [{ name: "Authorization", type: "apiKey" }],
847
+ url: "/v1/gpu/fleet/nodes/{name}",
848
+ ...options,
849
+ headers: {
850
+ "Content-Type": "application/json",
851
+ ...options.headers
852
+ }
853
+ });
854
+ var deleteGpuPool = (options) => (options.client ?? client).delete({
855
+ security: [{ name: "Authorization", type: "apiKey" }],
856
+ url: "/v1/gpu/fleet/pools/{id}",
857
+ ...options
858
+ });
859
+ var putGpuPool = (options) => (options.client ?? client).put({
860
+ security: [{ name: "Authorization", type: "apiKey" }],
861
+ url: "/v1/gpu/fleet/pools/{id}",
862
+ ...options,
863
+ headers: {
864
+ "Content-Type": "application/json",
865
+ ...options.headers
866
+ }
867
+ });
840
868
  var listGpuServers = (options) => (options?.client ?? client).get({
841
869
  security: [{ name: "Authorization", type: "apiKey" }],
842
870
  url: "/v1/gpu/servers",
@@ -968,6 +996,7 @@ export {
968
996
  client,
969
997
  createKey,
970
998
  deleteFleetPackage,
999
+ deleteGpuPool,
971
1000
  deleteKey,
972
1001
  deleteTreeProject,
973
1002
  deleteWorkspaceProject,
@@ -978,6 +1007,7 @@ export {
978
1007
  getFleetPackage,
979
1008
  getFleetProfile,
980
1009
  getFleetReadme,
1010
+ getGpuFleet,
981
1011
  getGpuHours,
982
1012
  getMe,
983
1013
  getMyWorkspaceUsage,
@@ -991,6 +1021,8 @@ export {
991
1021
  listKeys,
992
1022
  listTreeProjects,
993
1023
  listWorkspaceProjects,
1024
+ putGpuNode,
1025
+ putGpuPool,
994
1026
  putTreeProject,
995
1027
  rebuildProjectImage,
996
1028
  setDefaultProject,
package/dist/sdk.gen.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Client, ClientMeta, Options as Options2, RequestResult, TDataShape } from './client';
2
- import type { BlockMachineData, BlockMachineErrors, BlockMachineResponses, CreateKeyData, CreateKeyErrors, CreateKeyResponses, DeleteFleetPackageData, DeleteFleetPackageResponses, DeleteKeyData, DeleteKeyErrors, DeleteKeyResponses, DeleteTreeProjectData, DeleteTreeProjectErrors, DeleteTreeProjectResponses, DeleteWorkspaceProjectData, DeleteWorkspaceProjectErrors, DeleteWorkspaceProjectResponses, ForgetMachineData, ForgetMachineErrors, ForgetMachineResponses, GetFleetData, GetFleetErrors, GetFleetInferenceData, GetFleetInferenceErrors, GetFleetInferenceResponses, GetFleetInventoryCsvData, GetFleetInventoryCsvResponses, GetFleetPackageData, GetFleetPackageErrors, GetFleetPackageResponses, GetFleetProfileData, GetFleetProfileResponses, GetFleetReadmeData, GetFleetReadmeResponses, GetFleetResponses, GetGpuHoursData, GetGpuHoursErrors, GetGpuHoursResponses, GetMeData, GetMeErrors, GetMeResponses, GetMyWorkspaceUsageData, GetMyWorkspaceUsageErrors, GetMyWorkspaceUsageResponses, GetProjectImageLogData, GetProjectImageLogErrors, GetProjectImageLogResponses, GetTreeCatalogData, GetTreeCatalogErrors, GetTreeCatalogResponses, GetUsageData, GetUsageErrors, GetUsageResponses, GetWorkspaceCatalogData, GetWorkspaceCatalogErrors, GetWorkspaceCatalogResponses, GetWorkspaceStorageData, GetWorkspaceStorageErrors, GetWorkspaceStorageResponses, GetWorkspaceUsageData, GetWorkspaceUsageErrors, GetWorkspaceUsageResponses, ListGpuServersData, ListGpuServersErrors, ListGpuServersResponses, ListKeysData, ListKeysErrors, ListKeysResponses, ListTreeProjectsData, ListTreeProjectsErrors, ListTreeProjectsResponses, ListWorkspaceProjectsData, ListWorkspaceProjectsResponses, PutTreeProjectData, PutTreeProjectErrors, PutTreeProjectResponses, RebuildProjectImageData, RebuildProjectImageErrors, RebuildProjectImageResponses, SetDefaultProjectData, SetDefaultProjectErrors, SetDefaultProjectResponses, StopGpuServerData, StopGpuServerErrors, StopGpuServerResponses, UnblockMachineData, UnblockMachineErrors, UnblockMachineResponses, UpdateWorkspaceProjectData, UpdateWorkspaceProjectErrors, UpdateWorkspaceProjectResponses } from './types.gen';
2
+ import type { BlockMachineData, BlockMachineErrors, BlockMachineResponses, CreateKeyData, CreateKeyErrors, CreateKeyResponses, DeleteFleetPackageData, DeleteFleetPackageResponses, DeleteGpuPoolData, DeleteGpuPoolErrors, DeleteGpuPoolResponses, DeleteKeyData, DeleteKeyErrors, DeleteKeyResponses, DeleteTreeProjectData, DeleteTreeProjectErrors, DeleteTreeProjectResponses, DeleteWorkspaceProjectData, DeleteWorkspaceProjectErrors, DeleteWorkspaceProjectResponses, ForgetMachineData, ForgetMachineErrors, ForgetMachineResponses, GetFleetData, GetFleetErrors, GetFleetInferenceData, GetFleetInferenceErrors, GetFleetInferenceResponses, GetFleetInventoryCsvData, GetFleetInventoryCsvResponses, GetFleetPackageData, GetFleetPackageErrors, GetFleetPackageResponses, GetFleetProfileData, GetFleetProfileResponses, GetFleetReadmeData, GetFleetReadmeResponses, GetFleetResponses, GetGpuFleetData, GetGpuFleetErrors, GetGpuFleetResponses, GetGpuHoursData, GetGpuHoursErrors, GetGpuHoursResponses, GetMeData, GetMeErrors, GetMeResponses, GetMyWorkspaceUsageData, GetMyWorkspaceUsageErrors, GetMyWorkspaceUsageResponses, GetProjectImageLogData, GetProjectImageLogErrors, GetProjectImageLogResponses, GetTreeCatalogData, GetTreeCatalogErrors, GetTreeCatalogResponses, GetUsageData, GetUsageErrors, GetUsageResponses, GetWorkspaceCatalogData, GetWorkspaceCatalogErrors, GetWorkspaceCatalogResponses, GetWorkspaceStorageData, GetWorkspaceStorageErrors, GetWorkspaceStorageResponses, GetWorkspaceUsageData, GetWorkspaceUsageErrors, GetWorkspaceUsageResponses, ListGpuServersData, ListGpuServersErrors, ListGpuServersResponses, ListKeysData, ListKeysErrors, ListKeysResponses, ListTreeProjectsData, ListTreeProjectsErrors, ListTreeProjectsResponses, ListWorkspaceProjectsData, ListWorkspaceProjectsResponses, PutGpuNodeData, PutGpuNodeErrors, PutGpuNodeResponses, PutGpuPoolData, PutGpuPoolErrors, PutGpuPoolResponses, PutTreeProjectData, PutTreeProjectErrors, PutTreeProjectResponses, RebuildProjectImageData, RebuildProjectImageErrors, RebuildProjectImageResponses, SetDefaultProjectData, SetDefaultProjectErrors, SetDefaultProjectResponses, StopGpuServerData, StopGpuServerErrors, StopGpuServerResponses, UnblockMachineData, UnblockMachineErrors, UnblockMachineResponses, UpdateWorkspaceProjectData, UpdateWorkspaceProjectErrors, UpdateWorkspaceProjectResponses } from './types.gen';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -63,6 +63,30 @@ export declare const blockMachine: <ThrowOnError extends boolean = false>(option
63
63
  * Unblock a machine
64
64
  */
65
65
  export declare const unblockMachine: <ThrowOnError extends boolean = false>(options: Options<UnblockMachineData, ThrowOnError>) => RequestResult<UnblockMachineResponses, UnblockMachineErrors, ThrowOnError>;
66
+ /**
67
+ * GPU administration
68
+ *
69
+ * For admins: the GPU nodes of the cluster (type, GPU memory, ready) with their pool and tier, the pools, the tiers and the GPU classes. A node without pool runs no workspaces and no jobs. The tree grants classes (ws-gpus-<class>, ws-gpu-hours-<class>), so new nodes of an existing class need nothing there.
70
+ */
71
+ export declare const getGpuFleet: <ThrowOnError extends boolean = false>(options?: Options<GetGpuFleetData, ThrowOnError>) => RequestResult<GetGpuFleetResponses, GetGpuFleetErrors, ThrowOnError>;
72
+ /**
73
+ * Assign a GPU node
74
+ *
75
+ * For admins: puts a GPU node into a pool and tier (the class is created on first use) or, with an empty pool, takes it out. The cluster follows within a minute: node labels and the Kueue queues of the classes. Running pods stay where they are.
76
+ */
77
+ export declare const putGpuNode: <ThrowOnError extends boolean = false>(options: Options<PutGpuNodeData, ThrowOnError>) => RequestResult<PutGpuNodeResponses, PutGpuNodeErrors, ThrowOnError>;
78
+ /**
79
+ * Delete a GPU pool
80
+ *
81
+ * For admins: only a pool without classes (never used by a node) can go.
82
+ */
83
+ export declare const deleteGpuPool: <ThrowOnError extends boolean = false>(options: Options<DeleteGpuPoolData, ThrowOnError>) => RequestResult<DeleteGpuPoolResponses, DeleteGpuPoolErrors, ThrowOnError>;
84
+ /**
85
+ * Create or rename a GPU pool
86
+ *
87
+ * For admins: a pool is who GPUs are for — "allgemein", or GPUs of one group, granted in the tree only to that group's budgets. The id is fixed once created (it becomes part of the tree resources).
88
+ */
89
+ export declare const putGpuPool: <ThrowOnError extends boolean = false>(options: Options<PutGpuPoolData, ThrowOnError>) => RequestResult<PutGpuPoolResponses, PutGpuPoolErrors, ThrowOnError>;
66
90
  /**
67
91
  * My JupyterHub servers
68
92
  */
@@ -79,6 +79,54 @@ export type FleetProfile = {
79
79
  weight?: number;
80
80
  wiredLimitMb?: number;
81
81
  };
82
+ export type GpuClassInfo = {
83
+ /**
84
+ * GPUs of the ready, schedulable assigned nodes
85
+ */
86
+ gpus?: number;
87
+ id?: string;
88
+ name?: string;
89
+ /**
90
+ * assigned nodes, ready or not
91
+ */
92
+ nodes?: number;
93
+ pool?: string;
94
+ pool_name?: string;
95
+ /**
96
+ * GPU types of its nodes, e.g. "NVIDIA-L40S-12Q"
97
+ */
98
+ products?: string;
99
+ /**
100
+ * the id from before pools this class took over
101
+ */
102
+ replaces?: string;
103
+ tier?: string;
104
+ tier_name?: string;
105
+ };
106
+ export type GpuGpuNode = {
107
+ /**
108
+ * Assignment; nil = not assigned: it runs no workspaces and no jobs.
109
+ */
110
+ assignment?: GpuNodeAssignment;
111
+ class?: string;
112
+ cpu?: number;
113
+ gpus?: number;
114
+ /**
115
+ * GPU memory per GPU
116
+ */
117
+ memory_gb?: number;
118
+ memory_gi?: number;
119
+ name?: string;
120
+ product?: string;
121
+ /**
122
+ * ready and schedulable
123
+ */
124
+ ready?: boolean;
125
+ /**
126
+ * SuggestedTier is the tier its GPU memory suggests.
127
+ */
128
+ suggested_tier?: string;
129
+ };
82
130
  export type GpuInferencePod = {
83
131
  gpu_class?: string;
84
132
  model?: string;
@@ -101,6 +149,27 @@ export type GpuInferencePool = {
101
149
  pods?: Array<GpuInferencePod>;
102
150
  url?: string;
103
151
  };
152
+ export type GpuNodeAssignment = {
153
+ available_until?: string;
154
+ /**
155
+ * GapModel: the inference gap filler on this node, a key of the configured models; "" = the tier's default, "-" = none.
156
+ */
157
+ gap_model?: string;
158
+ node?: string;
159
+ pool?: string;
160
+ tier?: string;
161
+ updated_at?: string;
162
+ updated_by?: string;
163
+ };
164
+ export type GpuPool = {
165
+ created_at?: string;
166
+ id?: string;
167
+ /**
168
+ * idle GPUs of this pool may be used by the other pools of the tier (not yet in effect)
169
+ */
170
+ lend?: boolean;
171
+ name?: string;
172
+ };
104
173
  export type GpuServer = {
105
174
  image?: string;
106
175
  name?: string;
@@ -109,6 +178,14 @@ export type GpuServer = {
109
178
  ready?: boolean;
110
179
  url?: string;
111
180
  };
181
+ export type GpuTier = {
182
+ id?: string;
183
+ /**
184
+ * a node is suggested this tier from this much GPU memory on
185
+ */
186
+ min_gb?: number;
187
+ name?: string;
188
+ };
112
189
  export type KeysKeyView = {
113
190
  budget?: number;
114
191
  budget_duration?: string;
@@ -203,6 +280,10 @@ export type UsageTotal = {
203
280
  days?: number;
204
281
  gpu_class?: string;
205
282
  gpu_hours?: number;
283
+ /**
284
+ * GPUProduct is the GPU type used (nvidia.com/gpu.product of the node).
285
+ */
286
+ gpu_product?: string;
206
287
  /**
207
288
  * sum over days of the day's home size
208
289
  */
@@ -249,6 +330,32 @@ export type WebserverErrorResponse = {
249
330
  */
250
331
  error?: string;
251
332
  };
333
+ export type WebserverGpuFleetResponse = {
334
+ classes?: Array<GpuClassInfo>;
335
+ /**
336
+ * Models are the gap filler models a node can run (keys), TierModels the default of each tier.
337
+ */
338
+ models?: Array<string>;
339
+ nodes?: Array<GpuGpuNode>;
340
+ pools?: Array<GpuPool>;
341
+ tier_models?: {
342
+ [key: string]: string;
343
+ };
344
+ tiers?: Array<GpuTier>;
345
+ };
346
+ export type WebserverGpuNodeRequest = {
347
+ available_until?: string;
348
+ /**
349
+ * GapModel: inference gap filler; "" = the tier's default, "-" = none.
350
+ */
351
+ gap_model?: string;
352
+ pool?: string;
353
+ tier?: string;
354
+ };
355
+ export type WebserverGpuPoolRequest = {
356
+ lend?: boolean;
357
+ name?: string;
358
+ };
252
359
  export type WebserverMeResponse = {
253
360
  /**
254
361
  * ActingAs is the person this request acted for (the e-mail above); empty without X-Act-As.
@@ -280,12 +387,19 @@ export type WebserverMeResponse = {
280
387
  workspace_projects?: number;
281
388
  };
282
389
  export type WebserverTreeCatalog = {
283
- gpuClasses?: Array<string>;
390
+ bases?: Array<WorkspaceBase>;
391
+ gpuClasses?: Array<WorkspaceGpuClass>;
284
392
  llm_base_models?: Array<string>;
285
393
  llm_default_rpm?: number;
286
394
  llm_default_tpm?: number;
287
395
  profiles?: Array<WorkspaceProfile>;
288
396
  };
397
+ export type WorkspaceBase = {
398
+ default?: boolean;
399
+ id?: string;
400
+ image?: string;
401
+ name?: string;
402
+ };
289
403
  export type WorkspaceBudget = {
290
404
  amount?: number;
291
405
  /**
@@ -311,9 +425,28 @@ export type WorkspaceBudgetStatus = {
311
425
  window?: '24h' | '7d' | '30d' | 'total';
312
426
  };
313
427
  export type WorkspaceConfig = {
314
- gpuClasses?: Array<string>;
428
+ bases?: Array<WorkspaceBase>;
429
+ gpuClasses?: Array<WorkspaceGpuClass>;
315
430
  profiles?: Array<WorkspaceProfile>;
316
431
  };
432
+ export type WorkspaceGpuClass = {
433
+ /**
434
+ * GPUs of its ready nodes right now
435
+ */
436
+ gpus?: number;
437
+ id?: string;
438
+ name?: string;
439
+ nodes?: number;
440
+ pool?: string;
441
+ pool_name?: string;
442
+ products?: string;
443
+ /**
444
+ * Replaces is the id from before pools this class took over; the tree renames its resources once.
445
+ */
446
+ replaces?: string;
447
+ tier?: string;
448
+ tier_name?: string;
449
+ };
317
450
  export type WorkspaceImageBuild = {
318
451
  branch?: string;
319
452
  commit?: string;
@@ -338,7 +471,7 @@ export type WorkspaceLimits = {
338
471
  servers_per_person?: number;
339
472
  };
340
473
  export type WorkspaceMember = {
341
- role?: 'member' | 'manager';
474
+ role?: 'reader' | 'member' | 'manager';
342
475
  token?: string;
343
476
  };
344
477
  export type WorkspaceMine = {
@@ -355,10 +488,6 @@ export type WorkspaceMine = {
355
488
  * after this day nobody can start in the project
356
489
  */
357
490
  ends_at?: string;
358
- /**
359
- * W3: any image, with or without GPU (profiles free, free-gpu)
360
- */
361
- free_images?: boolean;
362
491
  gpu_classes?: Array<string>;
363
492
  /**
364
493
  * GPUsByClass is how many GPUs of a class the whole project may use at the same time; a class without an entry has no such limit.
@@ -367,13 +496,21 @@ export type WorkspaceMine = {
367
496
  [key: string]: number;
368
497
  };
369
498
  id?: number;
499
+ /**
500
+ * The project's environment, run by every profile but the free images (docs/bauplan.md 10.12; Service.EffectiveImage): ImageBase is the chosen base (Config.Bases, empty = the default). ProjectImage is a finished image derived from a base (label BaseLabel), or, with ImageGitURL, the last successful build from that repository on ImageBase; empty = the base itself.
501
+ */
502
+ image_base?: string;
370
503
  /**
371
504
  * ImageBuild is the state of the project image's build from Git (ImageGitURL); nil = none.
372
505
  */
373
506
  image_build?: WorkspaceImageBuild;
507
+ /**
508
+ * ImageDerived tells whether an existing ProjectImage is derived from a base (label BaseLabel, looked up on saving). Any image may be the project's; one that is not derived runs as it is (its own jupyterhub-singleuser), without the GPU kernel (Derived).
509
+ */
510
+ image_derived?: boolean;
374
511
  image_git_ref?: string;
375
512
  /**
376
- * ImageGitURL builds ProjectImage from a public repository (requirements.txt, environment.yml, apt.txt, postBuild) on notebook-base, rebuilt on its new releases; ImageGitRef is a branch, tag or commit (empty = default branch).
513
+ * ImageGitURL builds ProjectImage from a public repository (requirements.txt, environment.yml, apt.txt, postBuild) on ImageBase, rebuilt on its new releases; ImageGitRef is a branch, tag or commit (empty = default branch).
377
514
  */
378
515
  image_git_url?: string;
379
516
  limits?: WorkspaceLimits;
@@ -393,11 +530,8 @@ export type WorkspaceMine = {
393
530
  members?: Array<WorkspaceMember>;
394
531
  name?: string;
395
532
  profiles?: Array<string>;
396
- /**
397
- * ProjectImage is the image of the profiles "CPU + GPU-Kernel" and "Projekt-Image (GPU)" instead of notebook-base (docs/bauplan.md 10.12): a finished image derived from notebook-base (label BaseLabel), or, with ImageGitURL, the last successful build from that repository; empty = notebook-base.
398
- */
399
533
  project_image?: string;
400
- role?: 'member' | 'manager' | 'admin';
534
+ role?: 'reader' | 'member' | 'manager' | 'admin';
401
535
  /**
402
536
  * short name, also the pod label dhbw.cloud/project
403
537
  */
@@ -414,7 +548,7 @@ export type WorkspaceMine = {
414
548
  updated_by?: string;
415
549
  };
416
550
  export type WorkspaceProfile = {
417
- gpu_class?: string;
551
+ gpu?: boolean;
418
552
  name?: string;
419
553
  slug?: string;
420
554
  };
@@ -431,10 +565,6 @@ export type WorkspaceProject = {
431
565
  * after this day nobody can start in the project
432
566
  */
433
567
  ends_at?: string;
434
- /**
435
- * W3: any image, with or without GPU (profiles free, free-gpu)
436
- */
437
- free_images?: boolean;
438
568
  gpu_classes?: Array<string>;
439
569
  /**
440
570
  * GPUsByClass is how many GPUs of a class the whole project may use at the same time; a class without an entry has no such limit.
@@ -443,9 +573,17 @@ export type WorkspaceProject = {
443
573
  [key: string]: number;
444
574
  };
445
575
  id?: number;
576
+ /**
577
+ * The project's environment, run by every profile but the free images (docs/bauplan.md 10.12; Service.EffectiveImage): ImageBase is the chosen base (Config.Bases, empty = the default). ProjectImage is a finished image derived from a base (label BaseLabel), or, with ImageGitURL, the last successful build from that repository on ImageBase; empty = the base itself.
578
+ */
579
+ image_base?: string;
580
+ /**
581
+ * ImageDerived tells whether an existing ProjectImage is derived from a base (label BaseLabel, looked up on saving). Any image may be the project's; one that is not derived runs as it is (its own jupyterhub-singleuser), without the GPU kernel (Derived).
582
+ */
583
+ image_derived?: boolean;
446
584
  image_git_ref?: string;
447
585
  /**
448
- * ImageGitURL builds ProjectImage from a public repository (requirements.txt, environment.yml, apt.txt, postBuild) on notebook-base, rebuilt on its new releases; ImageGitRef is a branch, tag or commit (empty = default branch).
586
+ * ImageGitURL builds ProjectImage from a public repository (requirements.txt, environment.yml, apt.txt, postBuild) on ImageBase, rebuilt on its new releases; ImageGitRef is a branch, tag or commit (empty = default branch).
449
587
  */
450
588
  image_git_url?: string;
451
589
  limits?: WorkspaceLimits;
@@ -465,9 +603,6 @@ export type WorkspaceProject = {
465
603
  members?: Array<WorkspaceMember>;
466
604
  name?: string;
467
605
  profiles?: Array<string>;
468
- /**
469
- * ProjectImage is the image of the profiles "CPU + GPU-Kernel" and "Projekt-Image (GPU)" instead of notebook-base (docs/bauplan.md 10.12): a finished image derived from notebook-base (label BaseLabel), or, with ImageGitURL, the last successful build from that repository; empty = notebook-base.
470
- */
471
606
  project_image?: string;
472
607
  /**
473
608
  * short name, also the pod label dhbw.cloud/project
@@ -760,6 +895,119 @@ export type UnblockMachineResponses = {
760
895
  204: void;
761
896
  };
762
897
  export type UnblockMachineResponse = UnblockMachineResponses[keyof UnblockMachineResponses];
898
+ export type GetGpuFleetData = {
899
+ body?: never;
900
+ path?: never;
901
+ query?: never;
902
+ url: '/v1/gpu/fleet';
903
+ };
904
+ export type GetGpuFleetErrors = {
905
+ /**
906
+ * Forbidden
907
+ */
908
+ 403: WebserverErrorResponse;
909
+ };
910
+ export type GetGpuFleetError = GetGpuFleetErrors[keyof GetGpuFleetErrors];
911
+ export type GetGpuFleetResponses = {
912
+ /**
913
+ * OK
914
+ */
915
+ 200: WebserverGpuFleetResponse;
916
+ };
917
+ export type GetGpuFleetResponse = GetGpuFleetResponses[keyof GetGpuFleetResponses];
918
+ export type PutGpuNodeData = {
919
+ /**
920
+ * assignment
921
+ */
922
+ body: WebserverGpuNodeRequest;
923
+ path: {
924
+ /**
925
+ * node name
926
+ */
927
+ name: string;
928
+ };
929
+ query?: never;
930
+ url: '/v1/gpu/fleet/nodes/{name}';
931
+ };
932
+ export type PutGpuNodeErrors = {
933
+ /**
934
+ * Bad Request
935
+ */
936
+ 400: WebserverErrorResponse;
937
+ /**
938
+ * Forbidden
939
+ */
940
+ 403: WebserverErrorResponse;
941
+ };
942
+ export type PutGpuNodeError = PutGpuNodeErrors[keyof PutGpuNodeErrors];
943
+ export type PutGpuNodeResponses = {
944
+ /**
945
+ * OK
946
+ */
947
+ 200: WebserverGpuFleetResponse;
948
+ };
949
+ export type PutGpuNodeResponse = PutGpuNodeResponses[keyof PutGpuNodeResponses];
950
+ export type DeleteGpuPoolData = {
951
+ body?: never;
952
+ path: {
953
+ /**
954
+ * pool id
955
+ */
956
+ id: string;
957
+ };
958
+ query?: never;
959
+ url: '/v1/gpu/fleet/pools/{id}';
960
+ };
961
+ export type DeleteGpuPoolErrors = {
962
+ /**
963
+ * Bad Request
964
+ */
965
+ 400: WebserverErrorResponse;
966
+ /**
967
+ * Forbidden
968
+ */
969
+ 403: WebserverErrorResponse;
970
+ };
971
+ export type DeleteGpuPoolError = DeleteGpuPoolErrors[keyof DeleteGpuPoolErrors];
972
+ export type DeleteGpuPoolResponses = {
973
+ /**
974
+ * OK
975
+ */
976
+ 200: WebserverGpuFleetResponse;
977
+ };
978
+ export type DeleteGpuPoolResponse = DeleteGpuPoolResponses[keyof DeleteGpuPoolResponses];
979
+ export type PutGpuPoolData = {
980
+ /**
981
+ * pool
982
+ */
983
+ body: WebserverGpuPoolRequest;
984
+ path: {
985
+ /**
986
+ * pool id (2–20 lower-case letters or digits)
987
+ */
988
+ id: string;
989
+ };
990
+ query?: never;
991
+ url: '/v1/gpu/fleet/pools/{id}';
992
+ };
993
+ export type PutGpuPoolErrors = {
994
+ /**
995
+ * Bad Request
996
+ */
997
+ 400: WebserverErrorResponse;
998
+ /**
999
+ * Forbidden
1000
+ */
1001
+ 403: WebserverErrorResponse;
1002
+ };
1003
+ export type PutGpuPoolError = PutGpuPoolErrors[keyof PutGpuPoolErrors];
1004
+ export type PutGpuPoolResponses = {
1005
+ /**
1006
+ * OK
1007
+ */
1008
+ 200: WebserverGpuFleetResponse;
1009
+ };
1010
+ export type PutGpuPoolResponse = PutGpuPoolResponses[keyof PutGpuPoolResponses];
763
1011
  export type ListGpuServersData = {
764
1012
  body?: never;
765
1013
  path?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dhbw-cloud/llm-client",
3
- "version": "0.2.11",
3
+ "version": "0.2.16",
4
4
  "description": "Generated TypeScript client for the DHBW Cloud llm-management-api.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",