aiservermanager 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/backend/dist/di/container.js +6 -3
  2. package/backend/dist/di/container.js.map +1 -1
  3. package/backend/dist/di/types.js +2 -2
  4. package/backend/dist/di/types.js.map +1 -1
  5. package/backend/dist/routes/gpuRoutes.js +0 -13
  6. package/backend/dist/routes/gpuRoutes.js.map +1 -1
  7. package/backend/dist/services/detectors/amdLinuxDetector.js +1 -1
  8. package/backend/dist/services/detectors/amdLinuxDetector.js.map +1 -1
  9. package/backend/dist/services/detectors/nvidiaSmiDetector.js +1 -1
  10. package/backend/dist/services/detectors/nvidiaSmiDetector.js.map +1 -1
  11. package/backend/dist/services/detectors/wmiDetector.js +1 -1
  12. package/backend/dist/services/detectors/wmiDetector.js.map +1 -1
  13. package/backend/dist/services/gpuService.js +19 -25
  14. package/backend/dist/services/gpuService.js.map +1 -1
  15. package/backend/dist/services/llamaAutocompleteService.js +5 -10
  16. package/backend/dist/services/llamaAutocompleteService.js.map +1 -1
  17. package/backend/dist/services/resolvers/gpuIndexResolver.js +3 -0
  18. package/backend/dist/services/resolvers/gpuIndexResolver.js.map +1 -0
  19. package/backend/dist/services/resolvers/listOrderIndexResolver.js +32 -0
  20. package/backend/dist/services/resolvers/listOrderIndexResolver.js.map +1 -0
  21. package/backend/dist/services/resolvers/sysfsRenderIndexResolver.js +113 -0
  22. package/backend/dist/services/resolvers/sysfsRenderIndexResolver.js.map +1 -0
  23. package/backend/public/browser/{chunk-URN45YIO.js → chunk-34LU6STA.js} +1 -1
  24. package/backend/public/browser/chunk-JGNPKRLU.js +4 -0
  25. package/backend/public/browser/index.html +1 -1
  26. package/backend/public/browser/{main-RLEKEBCZ.js → main-GL35HSF3.js} +36 -36
  27. package/package.json +1 -1
  28. package/backend/dist/services/gpuLabelManager.js +0 -112
  29. package/backend/dist/services/gpuLabelManager.js.map +0 -1
  30. package/backend/public/browser/chunk-M2HJXJRB.js +0 -4
@@ -13,7 +13,8 @@ const nvidiaSmiDetector_1 = require("../services/detectors/nvidiaSmiDetector");
13
13
  const amdLinuxDetector_1 = require("../services/detectors/amdLinuxDetector");
14
14
  const wmiDetector_1 = require("../services/detectors/wmiDetector");
15
15
  const lspciEnricher_1 = require("../services/enrichers/lspciEnricher");
16
- const gpuLabelManager_1 = require("../services/gpuLabelManager");
16
+ const sysfsRenderIndexResolver_1 = require("../services/resolvers/sysfsRenderIndexResolver");
17
+ const listOrderIndexResolver_1 = require("../services/resolvers/listOrderIndexResolver");
17
18
  const nvidiaSmiUsageProbe_1 = require("../services/probes/nvidiaSmiUsageProbe");
18
19
  const amdLinuxUsageProbe_1 = require("../services/probes/amdLinuxUsageProbe");
19
20
  const serviceManager_1 = require("../services/serviceManager");
@@ -52,8 +53,10 @@ function createContainer() {
52
53
  if (!isWindows) {
53
54
  container.bind(types_1.GPU_ENRICHER).to(lspciEnricher_1.LspciEnricher);
54
55
  }
55
- // GPU label manager — per-GPU user-defined text (gpu-label.conf)
56
- container.bind(types_1.GPU_LABEL_MANAGER).to(gpuLabelManager_1.GpuLabelManager).inSingletonScope();
56
+ // Index resolvers — assign the runtime device number (gpuIndex);
57
+ // first resolver that matches wins (sysfs on Linux, list order elsewhere)
58
+ container.bind(types_1.GPU_INDEX_RESOLVER).to(sysfsRenderIndexResolver_1.SysfsRenderIndexResolver);
59
+ container.bind(types_1.GPU_INDEX_RESOLVER).to(listOrderIndexResolver_1.ListOrderIndexResolver);
57
60
  // Usage probes — dynamic metrics (usage, temperature, vramUsed)
58
61
  container.bind(types_1.GPU_USAGE_PROBE).to(nvidiaSmiUsageProbe_1.NvidiaSmiUsageProbe);
59
62
  if (!isWindows) {
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../src/di/container.ts"],"names":[],"mappings":";;AAiDA,0CAmEC;AApHD,4BAA0B;AAC1B,yCAAsC;AACtC,mCAeiB;AACjB,yDAAsD;AAEtD,kFAA+E;AAC/E,sFAAmF;AACnF,uDAAoD;AACpD,6DAA0D;AAE1D,+EAA4E;AAC5E,6EAA0E;AAC1E,mEAAgE;AAEhE,uEAAoE;AAEpE,6FAA0F;AAC1F,yFAAsF;AAEtF,gFAA6E;AAC7E,8EAA2E;AAC3E,+DAA4D;AAE5D,qFAAkF;AAClF,+FAA4F;AAC5F,iFAA8E;AAC9E,qFAAkF;AAClF,mFAAgF;AAEhF,2FAAwF;AACxF,+FAA4F;AAE5F,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;AAE/C,SAAgB,eAAe;IAC7B,MAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;IAElC,iDAAiD;IACjD,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,CAAC,IAAI,CAAmB,yBAAiB,CAAC,CAAC,EAAE,CAAC,iDAAuB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACrG,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAmB,yBAAiB,CAAC,CAAC,EAAE,CAAC,6CAAqB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnG,CAAC;IAED,yDAAyD;IACzD,SAAS,CAAC,IAAI,CAAc,oBAAY,CAAC,CAAC,EAAE,CAAC,yBAAW,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAE7E,qDAAqD;IACrD,SAAS,CAAC,IAAI,CAAa,mBAAW,CAAC,CAAC,EAAE,CAAC,uBAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAE1E,oCAAoC;IACpC,SAAS,CAAC,IAAI,CAAgB,sBAAc,CAAC,CAAC,EAAE,CAAC,6BAAa,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEnF,sDAAsD;IACtD,SAAS,CAAC,IAAI,CAAc,oBAAY,CAAC,CAAC,EAAE,CAAC,qCAAiB,CAAC,CAAC;IAChE,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,CAAC,IAAI,CAAc,oBAAY,CAAC,CAAC,EAAE,CAAC,yBAAW,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAc,oBAAY,CAAC,CAAC,EAAE,CAAC,mCAAgB,CAAC,CAAC;IACjE,CAAC;IAED,6CAA6C;IAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAc,oBAAY,CAAC,CAAC,EAAE,CAAC,6BAAa,CAAC,CAAC;IAC9D,CAAC;IAED,iEAAiE;IACjE,0EAA0E;IAC1E,SAAS,CAAC,IAAI,CAAmB,0BAAkB,CAAC,CAAC,EAAE,CAAC,mDAAwB,CAAC,CAAC;IAClF,SAAS,CAAC,IAAI,CAAmB,0BAAkB,CAAC,CAAC,EAAE,CAAC,+CAAsB,CAAC,CAAC;IAEhF,gEAAgE;IAChE,SAAS,CAAC,IAAI,CAAgB,uBAAe,CAAC,CAAC,EAAE,CAAC,yCAAmB,CAAC,CAAC;IACvE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAgB,uBAAe,CAAC,CAAC,EAAE,CAAC,uCAAkB,CAAC,CAAC;IACxE,CAAC;IAED,kDAAkD;IAClD,SAAS,CAAC,IAAI,CAAoB,0BAAkB,CAAC,CAAC,EAAE,CAAC,yCAAmB,CAAC,CAAC;IAC9E,SAAS,CAAC,IAAI,CAAoB,0BAAkB,CAAC,CAAC,EAAE,CAAC,mDAAwB,CAAC,CAAC;IAEnF,iFAAiF;IACjF,SAAS,CAAC,IAAI,CAAiB,uBAAe,CAAC,CAAC,EAAE,CAAC,+BAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEtF,0EAA0E;IAC1E,SAAS,CAAC,IAAI,CAA0B,iCAAyB,CAAC,CAAC,EAAE,CAAC,iDAAuB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAElH,oFAAoF;IACpF,SAAS;SACN,IAAI,CAA4B,mCAA2B,CAAC;SAC5D,EAAE,CAAC,qDAAyB,CAAC;SAC7B,gBAAgB,EAAE,CAAC;IAEtB,gEAAgE;IAChE,SAAS,CAAC,IAAI,CAA2B,kCAA0B,CAAC,CAAC,EAAE,CAAC,mDAAwB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAErH,uDAAuD;IACvD,SAAS,CAAC,IAAI,CAAqB,4BAAoB,CAAC,CAAC,EAAE,CAAC,iDAAuB,CAAC,CAAC;IACrF,SAAS,CAAC,IAAI,CAAqB,4BAAoB,CAAC,CAAC,EAAE,CAAC,qDAAyB,CAAC,CAAC;IAEvF,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LLAMA_AUTOCOMPLETE_SERVICE = exports.MANAGED_SERVICES_CONTROLLER = exports.SERVICE_CONFIG_CONTROLLER = exports.SERVICE_CONTROLLER = exports.SERVICE_MANAGER = exports.GPU_LABEL_MANAGER = exports.GPU_USAGE_PROBE = exports.GPU_ENRICHER = exports.GPU_DETECTOR = exports.SYSTEM_INFO_PROVIDER = exports.SYSTEM_SERVICE = exports.GPU_SERVICE = exports.PASSWORD_VERIFIER = exports.AUTH_SERVICE = void 0;
3
+ exports.LLAMA_AUTOCOMPLETE_SERVICE = exports.MANAGED_SERVICES_CONTROLLER = exports.SERVICE_CONFIG_CONTROLLER = exports.SERVICE_CONTROLLER = exports.SERVICE_MANAGER = exports.GPU_INDEX_RESOLVER = exports.GPU_USAGE_PROBE = exports.GPU_ENRICHER = exports.GPU_DETECTOR = exports.SYSTEM_INFO_PROVIDER = exports.SYSTEM_SERVICE = exports.GPU_SERVICE = exports.PASSWORD_VERIFIER = exports.AUTH_SERVICE = void 0;
4
4
  /** Injection token constants for InversifyJS. */
5
5
  exports.AUTH_SERVICE = "AUTH_SERVICE";
6
6
  exports.PASSWORD_VERIFIER = "PASSWORD_VERIFIER";
@@ -10,7 +10,7 @@ exports.SYSTEM_INFO_PROVIDER = "SYSTEM_INFO_PROVIDER";
10
10
  exports.GPU_DETECTOR = "GPU_DETECTOR";
11
11
  exports.GPU_ENRICHER = "GPU_ENRICHER";
12
12
  exports.GPU_USAGE_PROBE = "GPU_USAGE_PROBE";
13
- exports.GPU_LABEL_MANAGER = "GPU_LABEL_MANAGER";
13
+ exports.GPU_INDEX_RESOLVER = "GPU_INDEX_RESOLVER";
14
14
  exports.SERVICE_MANAGER = "SERVICE_MANAGER";
15
15
  exports.SERVICE_CONTROLLER = "SERVICE_CONTROLLER";
16
16
  exports.SERVICE_CONFIG_CONTROLLER = "SERVICE_CONFIG_CONTROLLER";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/di/types.ts"],"names":[],"mappings":";;;AAAA,iDAAiD;AACpC,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AACxC,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AACxC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,kBAAkB,GAAG,oBAAoB,CAAC;AAC1C,QAAA,yBAAyB,GAAG,2BAA2B,CAAC;AACxD,QAAA,2BAA2B,GAAG,6BAA6B,CAAC;AAC5D,QAAA,0BAA0B,GAAG,4BAA4B,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/di/types.ts"],"names":[],"mappings":";;;AAAA,iDAAiD;AACpC,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AACxC,QAAA,WAAW,GAAG,aAAa,CAAC;AAC5B,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,YAAY,GAAG,cAAc,CAAC;AAC9B,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,kBAAkB,GAAG,oBAAoB,CAAC;AAC1C,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACpC,QAAA,kBAAkB,GAAG,oBAAoB,CAAC;AAC1C,QAAA,yBAAyB,GAAG,2BAA2B,CAAC;AACxD,QAAA,2BAA2B,GAAG,6BAA6B,CAAC;AAC5D,QAAA,0BAA0B,GAAG,4BAA4B,CAAC"}
@@ -30,19 +30,6 @@ function gpuRoutes(container) {
30
30
  res.status(500).json({ error: err instanceof Error ? err.message : "Unknown error" });
31
31
  }
32
32
  });
33
- /** Save the user-defined label for a GPU (identified by pciBusId). */
34
- router.put("/gpu-label/:pciBusId", (req, res) => {
35
- try {
36
- const { pciBusId } = req.params;
37
- const gpuLabel = typeof req.body?.gpuLabel === "string" ? req.body.gpuLabel.trim() : "";
38
- const gpuService = container.get(types_1.GPU_SERVICE);
39
- gpuService.setGpuLabel(pciBusId, gpuLabel);
40
- res.json({ ok: true });
41
- }
42
- catch (err) {
43
- res.status(500).json({ error: err instanceof Error ? err.message : "Unknown error" });
44
- }
45
- });
46
33
  return router;
47
34
  }
48
35
  //# sourceMappingURL=gpuRoutes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gpuRoutes.js","sourceRoot":"","sources":["../../src/routes/gpuRoutes.ts"],"names":[],"mappings":";;AAMA,4BA0CC;AAhDD,qCAAiC;AAEjC,uCAA0D;AAI1D,SAAwB,SAAS,CAAC,SAAoB;IACpD,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,oDAAoD;IACpD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAa,mBAAW,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,sEAAsE;IACtE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QACvC,IAAI,CAAC;YACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG;gBAClC,SAAS,CAAC,GAAG,CAAa,mBAAW,CAAC;gBACtC,SAAS,CAAC,GAAG,CAAgB,sBAAc,CAAC;aAC7C,CAAC;YACF,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACjG,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,sEAAsE;IACtE,MAAM,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC9C,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAChC,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAa,mBAAW,CAAC,CAAC;YAC1D,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"gpuRoutes.js","sourceRoot":"","sources":["../../src/routes/gpuRoutes.ts"],"names":[],"mappings":";;AAMA,4BA6BC;AAnCD,qCAAiC;AAEjC,uCAA0D;AAI1D,SAAwB,SAAS,CAAC,SAAoB;IACpD,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,oDAAoD;IACpD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAa,mBAAW,CAAC,CAAC;YAC1D,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,sEAAsE;IACtE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QACvC,IAAI,CAAC;YACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG;gBAClC,SAAS,CAAC,GAAG,CAAa,mBAAW,CAAC;gBACtC,SAAS,CAAC,GAAG,CAAgB,sBAAc,CAAC;aAC7C,CAAC;YACF,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACjG,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -85,7 +85,7 @@ let AmdLinuxDetector = class AmdLinuxDetector {
85
85
  vendor: "AMD",
86
86
  brand: "RADEON",
87
87
  name: `AMD GPU ${index}`,
88
- gpuLabel: "",
88
+ gpuIndex: 0,
89
89
  vramTotal: 0,
90
90
  pciBusId: "",
91
91
  };
@@ -1 +1 @@
1
- {"version":3,"file":"amdLinuxDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/amdLinuxDetector.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAuC;AAEvC,uDAAoD;AAGpD;;;;;;;;;GASG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IACnB,cAAc,GAAmB,IAAI,CAAC;IAE9C;QACE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CAAC,mCAAmC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChC,qBAAS,CAAC,QAAQ,CAAC,mCAAmC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC3E,qBAAS,CAAC,QAAQ,CAAC,oCAAoC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC5E,qBAAS,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACpE,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAEzC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAErC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,IAAI,GAAc,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,SAAS,CAAC,GAAW;QAC3B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,IAA6B;QAC/C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;aACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aACnC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,OAAO,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,SAAS,CACf,KAAa,EACb,OAAe,EACf,WAAoC,EACpC,OAAuC,EACvC,OAAuC;QAEvC,MAAM,GAAG,GAAY;YACnB,KAAK;YACL,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,WAAW,KAAK,EAAE;YACxB,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,EAAE;SACb,CAAC;QAEF,eAAe;QACf,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAwC,CAAC;QAC7E,IAAI,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7C,CAAC;QAED,0BAA0B;QAC1B,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAwC,CAAC;YACxE,MAAM,UAAU,GAAG,OAAO,EAAE,CAAC,uBAAuB,CAAC,CAAC;YACtD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAwC,CAAC;YACxE,MAAM,MAAM,GAAG,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;gBACvC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5B,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrB,CAAC;gBACD,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC;YACrB,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAhHY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;;GACA,gBAAgB,CAgH5B"}
1
+ {"version":3,"file":"amdLinuxDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/amdLinuxDetector.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,7 @@ let NvidiaSmiDetector = class NvidiaSmiDetector {
50
50
  vendor: "NVIDIA",
51
51
  brand: "NVIDIA",
52
52
  name,
53
- gpuLabel: "",
53
+ gpuIndex: 0,
54
54
  vramTotal: Math.round(vramTotalMiB / 1024),
55
55
  pciBusId: busId,
56
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"nvidiaSmiDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/nvidiaSmiDetector.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yCAAuC;AAEvC,uDAAoD;AAGpD;;;;GAIG;AAEI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IACpB,cAAc,GAAmB,IAAI,CAAC;IAE9C,KAAK,CAAC,WAAW;QACf,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CAAC,4DAA4D,EAAE;YACpG,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CACrC,yFAAyF,EACzF,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAErC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAEO,QAAQ,CAAC,GAAW;QAC1B,MAAM,IAAI,GAAc,EAAE,CAAC;QAE3B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YAE/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAErB,uFAAuF;YACvF,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAI,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC7B,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,QAAQ;gBACf,IAAI;gBACJ,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC1C,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAtDY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,sBAAU,GAAE;GACA,iBAAiB,CAsD7B"}
1
+ {"version":3,"file":"nvidiaSmiDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/nvidiaSmiDetector.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yCAAuC;AAEvC,uDAAoD;AAGpD;;;;GAIG;AAEI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IACpB,cAAc,GAAmB,IAAI,CAAC;IAE9C,KAAK,CAAC,WAAW;QACf,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CAAC,4DAA4D,EAAE;YACpG,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CACrC,yFAAyF,EACzF,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAErC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAEO,QAAQ,CAAC,GAAW;QAC1B,MAAM,IAAI,GAAc,EAAE,CAAC;QAE3B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS;YAE/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAErB,uFAAuF;YACvF,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAI,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC7B,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,QAAQ;gBACf,IAAI;gBACJ,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC1C,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAtDY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,sBAAU,GAAE;GACA,iBAAiB,CAsD7B"}
@@ -88,7 +88,7 @@ let WmiDetector = class WmiDetector {
88
88
  vendor: classifyVendor(name),
89
89
  brand: resolveBrand(name),
90
90
  name,
91
- gpuLabel: "",
91
+ gpuIndex: 0,
92
92
  vramTotal: Math.round(vramBytes / (1024 * 1024 * 1024)),
93
93
  pciBusId: data.pci ?? data.PNPDeviceID ?? "",
94
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"wmiDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/wmiDetector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wmiDetector.js","sourceRoot":"","sources":["../../../src/services/detectors/wmiDetector.ts"],"names":[],"mappings":"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"}
@@ -15,12 +15,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.GpuService = void 0;
16
16
  const inversify_1 = require("inversify");
17
17
  const types_1 = require("../di/types");
18
- const gpuLabelManager_1 = require("./gpuLabelManager");
19
18
  const gpuDedup_1 = require("./helpers/gpuDedup");
20
19
  /**
21
20
  * Orchestrates GPU detection and usage polling.
22
21
  *
23
- * Bootstrap (runs once): detectors → dedup → enrichers → saved GPU labels.
22
+ * Bootstrap (runs once): detectors → dedup → enrichers → index resolvers → sort.
24
23
  * Usage polling (every request): probes → GpuUsage[].
25
24
  *
26
25
  * Two access patterns:
@@ -31,13 +30,13 @@ let GpuService = class GpuService {
31
30
  detectors;
32
31
  enrichers;
33
32
  probes;
34
- gpuLabelManager;
33
+ indexResolvers;
35
34
  cachedGpus = null;
36
- constructor(detectors, enrichers, probes, gpuLabelManager) {
35
+ constructor(detectors, enrichers, probes, indexResolvers) {
37
36
  this.detectors = detectors;
38
37
  this.enrichers = enrichers;
39
38
  this.probes = probes;
40
- this.gpuLabelManager = gpuLabelManager;
39
+ this.indexResolvers = indexResolvers;
41
40
  }
42
41
  /**
43
42
  * Return static GPU info (bootstraps on first call, then caches).
@@ -60,33 +59,28 @@ let GpuService = class GpuService {
60
59
  return this.runProbes(staticGpus);
61
60
  }
62
61
  /**
63
- * Full pipeline: detectors → dedup → enrichers → saved GPU labels.
62
+ * Full pipeline: detectors → dedup → enrichers → index resolvers → sort.
64
63
  */
65
64
  async bootstrap() {
66
65
  const gpus = await this.runDetectors();
67
66
  const deduped = (0, gpuDedup_1.deduplicateGpus)(gpus);
68
67
  await this.runEnrichers(deduped);
69
- this.applySavedGpuLabels(deduped);
68
+ await this.resolveIndices(deduped);
69
+ deduped.sort((a, b) => a.gpuIndex - b.gpuIndex);
70
70
  return deduped;
71
71
  }
72
- /** Overwrite gpu.gpuLabel with user-defined values from the config file. */
73
- applySavedGpuLabels(gpus) {
74
- const saved = this.gpuLabelManager.getAll();
75
- for (const gpu of gpus) {
76
- if (gpu.pciBusId && saved[gpu.pciBusId] !== undefined) {
77
- gpu.gpuLabel = saved[gpu.pciBusId];
78
- }
79
- }
80
- }
81
72
  /**
82
- * Persist the user-defined label for a GPU (identified by pciBusId)
83
- * and refresh the cached entry so a running backend serves the new value.
73
+ * Assign the runtime device number (gpuIndex) via the first resolver
74
+ * that matches at least one GPU.
84
75
  */
85
- setGpuLabel(pciBusId, gpuLabel) {
86
- this.gpuLabelManager.set(pciBusId, gpuLabel);
87
- const gpu = this.cachedGpus?.find((g) => g.pciBusId === pciBusId);
88
- if (gpu) {
89
- gpu.gpuLabel = gpuLabel.trim();
76
+ async resolveIndices(gpus) {
77
+ if (gpus.length === 0)
78
+ return;
79
+ for (const resolver of this.indexResolvers) {
80
+ if (!(await resolver.isAvailable()))
81
+ continue;
82
+ if ((await resolver.resolve(gpus)) > 0)
83
+ break;
90
84
  }
91
85
  }
92
86
  async runDetectors() {
@@ -125,7 +119,7 @@ exports.GpuService = GpuService = __decorate([
125
119
  __param(0, (0, inversify_1.multiInject)(types_1.GPU_DETECTOR)),
126
120
  __param(1, (0, inversify_1.multiInject)(types_1.GPU_ENRICHER)),
127
121
  __param(2, (0, inversify_1.multiInject)(types_1.GPU_USAGE_PROBE)),
128
- __param(3, (0, inversify_1.inject)(types_1.GPU_LABEL_MANAGER)),
129
- __metadata("design:paramtypes", [Array, Array, Array, gpuLabelManager_1.GpuLabelManager])
122
+ __param(3, (0, inversify_1.multiInject)(types_1.GPU_INDEX_RESOLVER)),
123
+ __metadata("design:paramtypes", [Array, Array, Array, Array])
130
124
  ], GpuService);
131
125
  //# sourceMappingURL=gpuService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gpuService.js","sourceRoot":"","sources":["../../src/services/gpuService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gpuService.js","sourceRoot":"","sources":["../../src/services/gpuService.ts"],"names":[],"mappings":"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"}
@@ -124,22 +124,17 @@ function getNetworkHosts() {
124
124
  }
125
125
  return [...new Set([...ips, "0.0.0.0", "127.0.0.1"])];
126
126
  }
127
- /** Resolve device names from GPU static info (user-defined GPU label text). */
127
+ /**
128
+ * Resolve device names from GPU static info — runtime device number per
129
+ * vendor ("rocm0", "cuda1", ...), as used in llama.cpp --device.
130
+ */
128
131
  function getDeviceNamesFromGpu(gpuService) {
129
132
  if (!gpuService)
130
133
  return [];
131
134
  const cachedGpus = gpuService.cachedGpus;
132
135
  if (!cachedGpus)
133
136
  return [];
134
- const devices = [];
135
- for (const gpu of cachedGpus) {
136
- for (const d of gpu.gpuLabel.split(",")) {
137
- const name = d.trim();
138
- if (name)
139
- devices.push(name);
140
- }
141
- }
142
- return devices;
137
+ return cachedGpus.map((gpu) => `${gpu.vendor === "AMD" ? "rocm" : "cuda"}${gpu.gpuIndex}`);
143
138
  }
144
139
  /**
145
140
  * Run `<binary> --list-devices` and parse device names from output.
@@ -1 +1 @@
1
- {"version":3,"file":"llamaAutocompleteService.js","sourceRoot":"","sources":["../../src/services/llamaAutocompleteService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llamaAutocompleteService.js","sourceRoot":"","sources":["../../src/services/llamaAutocompleteService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=gpuIndexResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpuIndexResolver.js","sourceRoot":"","sources":["../../../src/services/resolvers/gpuIndexResolver.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.ListOrderIndexResolver = void 0;
10
+ const inversify_1 = require("inversify");
11
+ /**
12
+ * Fallback resolver: assigns gpuIndex sequentially (0, 1, 2, ...) in
13
+ * detector list order. Platform-agnostic — used when no system-specific
14
+ * resolver matches (e.g. Windows, where the detector order already follows
15
+ * the runtime device order).
16
+ */
17
+ let ListOrderIndexResolver = class ListOrderIndexResolver {
18
+ async isAvailable() {
19
+ return true;
20
+ }
21
+ async resolve(gpus) {
22
+ gpus.forEach((gpu, i) => {
23
+ gpu.gpuIndex = i;
24
+ });
25
+ return gpus.length;
26
+ }
27
+ };
28
+ exports.ListOrderIndexResolver = ListOrderIndexResolver;
29
+ exports.ListOrderIndexResolver = ListOrderIndexResolver = __decorate([
30
+ (0, inversify_1.injectable)()
31
+ ], ListOrderIndexResolver);
32
+ //# sourceMappingURL=listOrderIndexResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listOrderIndexResolver.js","sourceRoot":"","sources":["../../../src/services/resolvers/listOrderIndexResolver.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yCAAuC;AAIvC;;;;;GAKG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IACjC,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAe;QAC3B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACtB,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF,CAAA;AAXY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CAWlC"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.SysfsRenderIndexResolver = void 0;
43
+ const fs = __importStar(require("fs"));
44
+ const inversify_1 = require("inversify");
45
+ const ExecTools_1 = require("../../helpers/ExecTools");
46
+ /**
47
+ * Lists DRM cards that own a render node, with their PCI address:
48
+ *
49
+ * card1 0000:c3:00.0
50
+ * card2 0000:c6:00.0
51
+ *
52
+ * Vendor-agnostic: works for any GPU with a DRM render node (AMD, NVIDIA, ...).
53
+ * - Connector entries (card1-DP-1) resolve to the drm card dir, not a PCI
54
+ * device, so they fail the render-node check below.
55
+ * - BMC/iGPU cards without a render node (e.g. ASPEED VGA) are skipped.
56
+ * - Card numbers are assigned by the kernel in device probe order — the same
57
+ * order KFD registers its agents — so card order == HIP order.
58
+ *
59
+ * Linux only.
60
+ */
61
+ const LIST_RENDER_CARDS = `
62
+ for c in /sys/class/drm/card[0-9]*; do
63
+ d=$(readlink -f "$c/device" 2>/dev/null) || continue
64
+ ls "$d"/drm/renderD* >/dev/null 2>&1 || continue
65
+ printf '%s %s\\n' "$(basename "$c")" "$(basename "$d")"
66
+ done
67
+ `;
68
+ let SysfsRenderIndexResolver = class SysfsRenderIndexResolver {
69
+ async isAvailable() {
70
+ return process.platform === "linux" && fs.existsSync("/sys/class/drm");
71
+ }
72
+ async resolve(gpus) {
73
+ if (gpus.length === 0)
74
+ return 0;
75
+ const result = await ExecTools_1.ExecTools.safeExec(LIST_RENDER_CARDS, { timeout: 5000 });
76
+ if (!result.stdout.trim())
77
+ return 0;
78
+ const byPci = new Map();
79
+ for (const gpu of gpus) {
80
+ if (gpu.pciBusId)
81
+ byPci.set(normalizePci(gpu.pciBusId), gpu);
82
+ }
83
+ let index = 0;
84
+ for (const { pci } of this.parseLines(result.stdout)) {
85
+ const gpu = byPci.get(normalizePci(pci));
86
+ if (!gpu)
87
+ continue; // render card not in the detected list (iGPU, etc.)
88
+ gpu.gpuIndex = index++;
89
+ }
90
+ return index;
91
+ }
92
+ /** "cardN <pci>" lines, sorted by numeric card number (probe order). */
93
+ parseLines(raw) {
94
+ const cards = [];
95
+ for (const line of raw.trim().split("\n")) {
96
+ const [name, pci] = line.split(/\s+/);
97
+ const card = parseInt((name ?? "").replace("card", ""), 10);
98
+ if (name === undefined || pci === undefined || Number.isNaN(card))
99
+ continue;
100
+ cards.push({ card, pci });
101
+ }
102
+ return cards.sort((a, b) => a.card - b.card);
103
+ }
104
+ };
105
+ exports.SysfsRenderIndexResolver = SysfsRenderIndexResolver;
106
+ exports.SysfsRenderIndexResolver = SysfsRenderIndexResolver = __decorate([
107
+ (0, inversify_1.injectable)()
108
+ ], SysfsRenderIndexResolver);
109
+ /** "0000:c3:00.0" → "C3:00.0" — strip domain prefix, uppercase (detector format). */
110
+ function normalizePci(raw) {
111
+ return raw.trim().toUpperCase().replace(/^0+:/, "");
112
+ }
113
+ //# sourceMappingURL=sysfsRenderIndexResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sysfsRenderIndexResolver.js","sourceRoot":"","sources":["../../../src/services/resolvers/sysfsRenderIndexResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,yCAAuC;AAEvC,uDAAoD;AAGpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,iBAAiB,GAAG;;;;;;CAMzB,CAAC;AAGK,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,KAAK,CAAC,WAAW;QACf,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAe;QAC3B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,MAAM,qBAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAmB,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,CAAC,QAAQ;gBAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG;gBAAE,SAAS,CAAC,oDAAoD;YACxE,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAE,CAAC;QACzB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wEAAwE;IAChE,UAAU,CAAC,GAAW;QAC5B,MAAM,KAAK,GAAoC,EAAE,CAAC;QAElD,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5D,IAAI,IAAI,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC5E,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;AAvCY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,sBAAU,GAAE;GACA,wBAAwB,CAuCpC;AAED,qFAAqF;AACrF,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC"}
@@ -1 +1 @@
1
- import{Ac as j,Bc as k,Cc as l,Dc as m,Ec as n,Fc as o,Gc as p,Hc as q,Ic as r,Jc as s,Kc as t,Lc as u,Mc as v,Nc as w,Oc as x,rc as a,sc as b,tc as c,uc as d,vc as e,wc as f,xc as g,yc as h,zc as i}from"./chunk-M2HJXJRB.js";export{l as AnimationDriver,k as NoopAnimationDriver,u as \u0275Animation,q as \u0275AnimationEngine,w as \u0275AnimationRenderer,x as \u0275AnimationRendererFactory,m as \u0275AnimationStyleNormalizer,v as \u0275BaseAnimationRenderer,f as \u0275ENTER_CLASSNAME,g as \u0275LEAVE_CLASSNAME,n as \u0275NoopAnimationStyleNormalizer,p as \u0275TransitionAnimationPlayer,s as \u0275WebAnimationsDriver,r as \u0275WebAnimationsPlayer,o as \u0275WebAnimationsStyleNormalizer,j as \u0275allowPreviousPlayerStylesMerge,i as \u0275camelCaseToDashCase,d as \u0275containsElement,t as \u0275createEngine,a as \u0275getParentElement,e as \u0275invokeQuery,h as \u0275normalizeKeyframes,b as \u0275validateStyleProperty,c as \u0275validateWebAnimatableStyleProperty};
1
+ import{Ac as k,Bc as l,Cc as m,Dc as n,Ec as o,Fc as p,Gc as q,Hc as r,Ic as s,Jc as t,Kc as u,Lc as v,Mc as w,Nc as x,qc as a,rc as b,sc as c,tc as d,uc as e,vc as f,wc as g,xc as h,yc as i,zc as j}from"./chunk-JGNPKRLU.js";export{l as AnimationDriver,k as NoopAnimationDriver,u as \u0275Animation,q as \u0275AnimationEngine,w as \u0275AnimationRenderer,x as \u0275AnimationRendererFactory,m as \u0275AnimationStyleNormalizer,v as \u0275BaseAnimationRenderer,f as \u0275ENTER_CLASSNAME,g as \u0275LEAVE_CLASSNAME,n as \u0275NoopAnimationStyleNormalizer,p as \u0275TransitionAnimationPlayer,s as \u0275WebAnimationsDriver,r as \u0275WebAnimationsPlayer,o as \u0275WebAnimationsStyleNormalizer,j as \u0275allowPreviousPlayerStylesMerge,i as \u0275camelCaseToDashCase,d as \u0275containsElement,t as \u0275createEngine,a as \u0275getParentElement,e as \u0275invokeQuery,h as \u0275normalizeKeyframes,b as \u0275validateStyleProperty,c as \u0275validateWebAnimatableStyleProperty};