@dhbw-cloud/llm-client 0.2.11 → 0.2.14

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,50 @@ 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
+ tier?: string;
100
+ tier_name?: string;
101
+ };
102
+ export type GpuGpuNode = {
103
+ /**
104
+ * Assignment; nil = not assigned: it runs no workspaces and no jobs.
105
+ */
106
+ assignment?: GpuNodeAssignment;
107
+ class?: string;
108
+ cpu?: number;
109
+ gpus?: number;
110
+ /**
111
+ * GPU memory per GPU
112
+ */
113
+ memory_gb?: number;
114
+ memory_gi?: number;
115
+ name?: string;
116
+ product?: string;
117
+ /**
118
+ * ready and schedulable
119
+ */
120
+ ready?: boolean;
121
+ /**
122
+ * SuggestedTier is the tier its GPU memory suggests.
123
+ */
124
+ suggested_tier?: string;
125
+ };
82
126
  export type GpuInferencePod = {
83
127
  gpu_class?: string;
84
128
  model?: string;
@@ -101,6 +145,27 @@ export type GpuInferencePool = {
101
145
  pods?: Array<GpuInferencePod>;
102
146
  url?: string;
103
147
  };
148
+ export type GpuNodeAssignment = {
149
+ available_until?: string;
150
+ /**
151
+ * GapModel: the inference gap filler on this node; "" = the tier's default, "-" = none (not yet in effect, the gap fillers still come from the inventory).
152
+ */
153
+ gap_model?: string;
154
+ node?: string;
155
+ pool?: string;
156
+ tier?: string;
157
+ updated_at?: string;
158
+ updated_by?: string;
159
+ };
160
+ export type GpuPool = {
161
+ created_at?: string;
162
+ id?: string;
163
+ /**
164
+ * idle GPUs of this pool may be used by the other pools of the tier (not yet in effect)
165
+ */
166
+ lend?: boolean;
167
+ name?: string;
168
+ };
104
169
  export type GpuServer = {
105
170
  image?: string;
106
171
  name?: string;
@@ -109,6 +174,14 @@ export type GpuServer = {
109
174
  ready?: boolean;
110
175
  url?: string;
111
176
  };
177
+ export type GpuTier = {
178
+ id?: string;
179
+ /**
180
+ * a node is suggested this tier from this much GPU memory on
181
+ */
182
+ min_gb?: number;
183
+ name?: string;
184
+ };
112
185
  export type KeysKeyView = {
113
186
  budget?: number;
114
187
  budget_duration?: string;
@@ -249,6 +322,25 @@ export type WebserverErrorResponse = {
249
322
  */
250
323
  error?: string;
251
324
  };
325
+ export type WebserverGpuFleetResponse = {
326
+ classes?: Array<GpuClassInfo>;
327
+ nodes?: Array<GpuGpuNode>;
328
+ pools?: Array<GpuPool>;
329
+ tiers?: Array<GpuTier>;
330
+ };
331
+ export type WebserverGpuNodeRequest = {
332
+ available_until?: string;
333
+ /**
334
+ * GapModel: inference gap filler; "" = the tier's default, "-" = none.
335
+ */
336
+ gap_model?: string;
337
+ pool?: string;
338
+ tier?: string;
339
+ };
340
+ export type WebserverGpuPoolRequest = {
341
+ lend?: boolean;
342
+ name?: string;
343
+ };
252
344
  export type WebserverMeResponse = {
253
345
  /**
254
346
  * ActingAs is the person this request acted for (the e-mail above); empty without X-Act-As.
@@ -280,12 +372,19 @@ export type WebserverMeResponse = {
280
372
  workspace_projects?: number;
281
373
  };
282
374
  export type WebserverTreeCatalog = {
283
- gpuClasses?: Array<string>;
375
+ bases?: Array<WorkspaceBase>;
376
+ gpuClasses?: Array<WorkspaceGpuClass>;
284
377
  llm_base_models?: Array<string>;
285
378
  llm_default_rpm?: number;
286
379
  llm_default_tpm?: number;
287
380
  profiles?: Array<WorkspaceProfile>;
288
381
  };
382
+ export type WorkspaceBase = {
383
+ default?: boolean;
384
+ id?: string;
385
+ image?: string;
386
+ name?: string;
387
+ };
289
388
  export type WorkspaceBudget = {
290
389
  amount?: number;
291
390
  /**
@@ -311,9 +410,24 @@ export type WorkspaceBudgetStatus = {
311
410
  window?: '24h' | '7d' | '30d' | 'total';
312
411
  };
313
412
  export type WorkspaceConfig = {
314
- gpuClasses?: Array<string>;
413
+ bases?: Array<WorkspaceBase>;
414
+ gpuClasses?: Array<WorkspaceGpuClass>;
315
415
  profiles?: Array<WorkspaceProfile>;
316
416
  };
417
+ export type WorkspaceGpuClass = {
418
+ /**
419
+ * GPUs of its ready nodes right now
420
+ */
421
+ gpus?: number;
422
+ id?: string;
423
+ name?: string;
424
+ nodes?: number;
425
+ pool?: string;
426
+ pool_name?: string;
427
+ products?: string;
428
+ tier?: string;
429
+ tier_name?: string;
430
+ };
317
431
  export type WorkspaceImageBuild = {
318
432
  branch?: string;
319
433
  commit?: string;
@@ -338,7 +452,7 @@ export type WorkspaceLimits = {
338
452
  servers_per_person?: number;
339
453
  };
340
454
  export type WorkspaceMember = {
341
- role?: 'member' | 'manager';
455
+ role?: 'reader' | 'member' | 'manager';
342
456
  token?: string;
343
457
  };
344
458
  export type WorkspaceMine = {
@@ -355,10 +469,6 @@ export type WorkspaceMine = {
355
469
  * after this day nobody can start in the project
356
470
  */
357
471
  ends_at?: string;
358
- /**
359
- * W3: any image, with or without GPU (profiles free, free-gpu)
360
- */
361
- free_images?: boolean;
362
472
  gpu_classes?: Array<string>;
363
473
  /**
364
474
  * 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 +477,21 @@ export type WorkspaceMine = {
367
477
  [key: string]: number;
368
478
  };
369
479
  id?: number;
480
+ /**
481
+ * 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.
482
+ */
483
+ image_base?: string;
370
484
  /**
371
485
  * ImageBuild is the state of the project image's build from Git (ImageGitURL); nil = none.
372
486
  */
373
487
  image_build?: WorkspaceImageBuild;
488
+ /**
489
+ * 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).
490
+ */
491
+ image_derived?: boolean;
374
492
  image_git_ref?: string;
375
493
  /**
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).
494
+ * 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
495
  */
378
496
  image_git_url?: string;
379
497
  limits?: WorkspaceLimits;
@@ -393,11 +511,8 @@ export type WorkspaceMine = {
393
511
  members?: Array<WorkspaceMember>;
394
512
  name?: string;
395
513
  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
514
  project_image?: string;
400
- role?: 'member' | 'manager' | 'admin';
515
+ role?: 'reader' | 'member' | 'manager' | 'admin';
401
516
  /**
402
517
  * short name, also the pod label dhbw.cloud/project
403
518
  */
@@ -414,7 +529,7 @@ export type WorkspaceMine = {
414
529
  updated_by?: string;
415
530
  };
416
531
  export type WorkspaceProfile = {
417
- gpu_class?: string;
532
+ gpu?: boolean;
418
533
  name?: string;
419
534
  slug?: string;
420
535
  };
@@ -431,10 +546,6 @@ export type WorkspaceProject = {
431
546
  * after this day nobody can start in the project
432
547
  */
433
548
  ends_at?: string;
434
- /**
435
- * W3: any image, with or without GPU (profiles free, free-gpu)
436
- */
437
- free_images?: boolean;
438
549
  gpu_classes?: Array<string>;
439
550
  /**
440
551
  * 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 +554,17 @@ export type WorkspaceProject = {
443
554
  [key: string]: number;
444
555
  };
445
556
  id?: number;
557
+ /**
558
+ * 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.
559
+ */
560
+ image_base?: string;
561
+ /**
562
+ * 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).
563
+ */
564
+ image_derived?: boolean;
446
565
  image_git_ref?: string;
447
566
  /**
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).
567
+ * 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
568
  */
450
569
  image_git_url?: string;
451
570
  limits?: WorkspaceLimits;
@@ -465,9 +584,6 @@ export type WorkspaceProject = {
465
584
  members?: Array<WorkspaceMember>;
466
585
  name?: string;
467
586
  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
587
  project_image?: string;
472
588
  /**
473
589
  * short name, also the pod label dhbw.cloud/project
@@ -760,6 +876,119 @@ export type UnblockMachineResponses = {
760
876
  204: void;
761
877
  };
762
878
  export type UnblockMachineResponse = UnblockMachineResponses[keyof UnblockMachineResponses];
879
+ export type GetGpuFleetData = {
880
+ body?: never;
881
+ path?: never;
882
+ query?: never;
883
+ url: '/v1/gpu/fleet';
884
+ };
885
+ export type GetGpuFleetErrors = {
886
+ /**
887
+ * Forbidden
888
+ */
889
+ 403: WebserverErrorResponse;
890
+ };
891
+ export type GetGpuFleetError = GetGpuFleetErrors[keyof GetGpuFleetErrors];
892
+ export type GetGpuFleetResponses = {
893
+ /**
894
+ * OK
895
+ */
896
+ 200: WebserverGpuFleetResponse;
897
+ };
898
+ export type GetGpuFleetResponse = GetGpuFleetResponses[keyof GetGpuFleetResponses];
899
+ export type PutGpuNodeData = {
900
+ /**
901
+ * assignment
902
+ */
903
+ body: WebserverGpuNodeRequest;
904
+ path: {
905
+ /**
906
+ * node name
907
+ */
908
+ name: string;
909
+ };
910
+ query?: never;
911
+ url: '/v1/gpu/fleet/nodes/{name}';
912
+ };
913
+ export type PutGpuNodeErrors = {
914
+ /**
915
+ * Bad Request
916
+ */
917
+ 400: WebserverErrorResponse;
918
+ /**
919
+ * Forbidden
920
+ */
921
+ 403: WebserverErrorResponse;
922
+ };
923
+ export type PutGpuNodeError = PutGpuNodeErrors[keyof PutGpuNodeErrors];
924
+ export type PutGpuNodeResponses = {
925
+ /**
926
+ * OK
927
+ */
928
+ 200: WebserverGpuFleetResponse;
929
+ };
930
+ export type PutGpuNodeResponse = PutGpuNodeResponses[keyof PutGpuNodeResponses];
931
+ export type DeleteGpuPoolData = {
932
+ body?: never;
933
+ path: {
934
+ /**
935
+ * pool id
936
+ */
937
+ id: string;
938
+ };
939
+ query?: never;
940
+ url: '/v1/gpu/fleet/pools/{id}';
941
+ };
942
+ export type DeleteGpuPoolErrors = {
943
+ /**
944
+ * Bad Request
945
+ */
946
+ 400: WebserverErrorResponse;
947
+ /**
948
+ * Forbidden
949
+ */
950
+ 403: WebserverErrorResponse;
951
+ };
952
+ export type DeleteGpuPoolError = DeleteGpuPoolErrors[keyof DeleteGpuPoolErrors];
953
+ export type DeleteGpuPoolResponses = {
954
+ /**
955
+ * OK
956
+ */
957
+ 200: WebserverGpuFleetResponse;
958
+ };
959
+ export type DeleteGpuPoolResponse = DeleteGpuPoolResponses[keyof DeleteGpuPoolResponses];
960
+ export type PutGpuPoolData = {
961
+ /**
962
+ * pool
963
+ */
964
+ body: WebserverGpuPoolRequest;
965
+ path: {
966
+ /**
967
+ * pool id (2–20 lower-case letters or digits)
968
+ */
969
+ id: string;
970
+ };
971
+ query?: never;
972
+ url: '/v1/gpu/fleet/pools/{id}';
973
+ };
974
+ export type PutGpuPoolErrors = {
975
+ /**
976
+ * Bad Request
977
+ */
978
+ 400: WebserverErrorResponse;
979
+ /**
980
+ * Forbidden
981
+ */
982
+ 403: WebserverErrorResponse;
983
+ };
984
+ export type PutGpuPoolError = PutGpuPoolErrors[keyof PutGpuPoolErrors];
985
+ export type PutGpuPoolResponses = {
986
+ /**
987
+ * OK
988
+ */
989
+ 200: WebserverGpuFleetResponse;
990
+ };
991
+ export type PutGpuPoolResponse = PutGpuPoolResponses[keyof PutGpuPoolResponses];
763
992
  export type ListGpuServersData = {
764
993
  body?: never;
765
994
  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.14",
4
4
  "description": "Generated TypeScript client for the DHBW Cloud llm-management-api.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",