@atomic-chat/core 0.5.1 → 0.13.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -0
- package/dist/app-daemon.js +20 -67
- package/dist/app-daemon.js.map +1 -1
- package/dist/backend/advisor/advisor.d.ts +132 -0
- package/dist/backend/advisor/advisor.js +537 -0
- package/dist/backend/advisor/advisor.js.map +1 -0
- package/dist/backend/advisor/index.d.ts +6 -0
- package/dist/backend/advisor/index.js +7 -0
- package/dist/backend/advisor/index.js.map +1 -0
- package/dist/backend/advisor/policy.d.ts +81 -0
- package/dist/backend/advisor/policy.js +154 -0
- package/dist/backend/advisor/policy.js.map +1 -0
- package/dist/backend/catalog/archive.d.ts +21 -7
- package/dist/backend/catalog/archive.js +57 -17
- package/dist/backend/catalog/archive.js.map +1 -1
- package/dist/backend/catalog/bundled-manifest-baseline.js +42 -26
- package/dist/backend/catalog/bundled-manifest-baseline.js.map +1 -1
- package/dist/backend/catalog/cuda-family.d.ts +12 -2
- package/dist/backend/catalog/cuda-family.js +30 -7
- package/dist/backend/catalog/cuda-family.js.map +1 -1
- package/dist/backend/catalog/index.d.ts +5 -0
- package/dist/backend/catalog/index.js +5 -0
- package/dist/backend/catalog/index.js.map +1 -1
- package/dist/backend/catalog/manifest.d.ts +5 -3
- package/dist/backend/catalog/manifest.js +12 -9
- package/dist/backend/catalog/manifest.js.map +1 -1
- package/dist/backend/catalog/migrate.d.ts +8 -6
- package/dist/backend/catalog/migrate.js +26 -15
- package/dist/backend/catalog/migrate.js.map +1 -1
- package/dist/backend/catalog/prism-catalog.d.ts +42 -0
- package/dist/backend/catalog/prism-catalog.js +101 -0
- package/dist/backend/catalog/prism-catalog.js.map +1 -0
- package/dist/backend/catalog/prism-manifest-baseline.d.ts +2 -0
- package/dist/backend/catalog/prism-manifest-baseline.js +11 -0
- package/dist/backend/catalog/prism-manifest-baseline.js.map +1 -0
- package/dist/backend/catalog/prism-manifest-baseline.json +134 -0
- package/dist/backend/catalog/prism-manifest.d.ts +90 -0
- package/dist/backend/catalog/prism-manifest.js +171 -0
- package/dist/backend/catalog/prism-manifest.js.map +1 -0
- package/dist/backend/catalog/turboquant-catalog.d.ts +60 -0
- package/dist/backend/catalog/turboquant-catalog.js +162 -0
- package/dist/backend/catalog/turboquant-catalog.js.map +1 -0
- package/dist/backend/catalog/turboquant-index.d.ts +104 -0
- package/dist/backend/catalog/turboquant-index.js +260 -0
- package/dist/backend/catalog/turboquant-index.js.map +1 -0
- package/dist/backend/index.d.ts +1 -0
- package/dist/backend/index.js +1 -0
- package/dist/backend/index.js.map +1 -1
- package/dist/backend/install/runtime-backend.d.ts +6 -6
- package/dist/backend/install/runtime-backend.js +23 -20
- package/dist/backend/install/runtime-backend.js.map +1 -1
- package/dist/backend/install/service.d.ts +106 -5
- package/dist/backend/install/service.js +247 -21
- package/dist/backend/install/service.js.map +1 -1
- package/dist/backend/installed/bundled.d.ts +19 -0
- package/dist/backend/installed/bundled.js +45 -0
- package/dist/backend/installed/bundled.js.map +1 -0
- package/dist/backend/installed/index.d.ts +1 -0
- package/dist/backend/installed/index.js +1 -0
- package/dist/backend/installed/index.js.map +1 -1
- package/dist/backend/installed/installed.js +3 -0
- package/dist/backend/installed/installed.js.map +1 -1
- package/dist/backend/optimal/optimal-cache.d.ts +27 -8
- package/dist/backend/optimal/optimal-cache.js +38 -19
- package/dist/backend/optimal/optimal-cache.js.map +1 -1
- package/dist/backend/optimal/optimal-store.js +1 -1
- package/dist/backend/optimal/optimal-store.js.map +1 -1
- package/dist/backend/select/categories.d.ts +2 -1
- package/dist/backend/select/categories.js +8 -1
- package/dist/backend/select/categories.js.map +1 -1
- package/dist/backend/select/features.d.ts +13 -5
- package/dist/backend/select/features.js +36 -6
- package/dist/backend/select/features.js.map +1 -1
- package/dist/backend/select/index.d.ts +2 -0
- package/dist/backend/select/index.js +2 -0
- package/dist/backend/select/index.js.map +1 -1
- package/dist/backend/select/prism.d.ts +54 -0
- package/dist/backend/select/prism.js +212 -0
- package/dist/backend/select/prism.js.map +1 -0
- package/dist/backend/select/recovery.d.ts +4 -2
- package/dist/backend/select/recovery.js +17 -5
- package/dist/backend/select/recovery.js.map +1 -1
- package/dist/backend/select/tiers.d.ts +20 -11
- package/dist/backend/select/tiers.js +49 -11
- package/dist/backend/select/tiers.js.map +1 -1
- package/dist/backend/select/turboquant-tiers.d.ts +45 -0
- package/dist/backend/select/turboquant-tiers.js +114 -0
- package/dist/backend/select/turboquant-tiers.js.map +1 -0
- package/dist/backend/types.d.ts +6 -69
- package/dist/cli/commands/backends.d.ts +10 -0
- package/dist/cli/commands/backends.js +142 -0
- package/dist/cli/commands/backends.js.map +1 -0
- package/dist/cli/commands/hardware.d.ts +13 -0
- package/dist/cli/commands/hardware.js +71 -0
- package/dist/cli/commands/hardware.js.map +1 -0
- package/dist/cli/commands/host-step.d.ts +28 -0
- package/dist/cli/commands/host-step.js +67 -0
- package/dist/cli/commands/host-step.js.map +1 -0
- package/dist/cli/commands/index.d.ts +4 -1
- package/dist/cli/commands/index.js +4 -1
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/serve.js +4 -4
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/shared.d.ts +6 -1
- package/dist/cli/commands/shared.js +7 -0
- package/dist/cli/commands/shared.js.map +1 -1
- package/dist/cli/io.d.ts +11 -0
- package/dist/cli/io.js +28 -3
- package/dist/cli/io.js.map +1 -1
- package/dist/cli/launch.js +2 -2
- package/dist/cli/launch.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +11 -1
- package/dist/cli/main.js.map +1 -1
- package/dist/client/control-client.d.ts +128 -7
- package/dist/client/control-client.js +211 -12
- package/dist/client/control-client.js.map +1 -1
- package/dist/cloud/registry.js +9 -1
- package/dist/cloud/registry.js.map +1 -1
- package/dist/config/paths.d.ts +137 -0
- package/dist/config/paths.js +163 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/contracts/backend-advisor.d.ts +225 -0
- package/dist/contracts/backend-advisor.js +14 -0
- package/dist/contracts/backend-advisor.js.map +1 -0
- package/dist/contracts/control-api.d.ts +7 -1
- package/dist/contracts/control-api.js +7 -1
- package/dist/contracts/control-api.js.map +1 -1
- package/dist/contracts/decision.d.ts +394 -0
- package/dist/contracts/decision.js +69 -0
- package/dist/contracts/decision.js.map +1 -0
- package/dist/contracts/diffusion.d.ts +62 -9
- package/dist/contracts/embedding.d.ts +103 -0
- package/dist/contracts/embedding.js +24 -0
- package/dist/contracts/embedding.js.map +1 -0
- package/dist/contracts/engine-builds.d.ts +108 -0
- package/dist/contracts/engine-builds.js +11 -0
- package/dist/contracts/engine-builds.js.map +1 -0
- package/dist/contracts/engines.d.ts +157 -0
- package/dist/contracts/engines.js +50 -0
- package/dist/contracts/engines.js.map +1 -0
- package/dist/contracts/environment.d.ts +774 -0
- package/dist/contracts/environment.js +116 -0
- package/dist/contracts/environment.js.map +1 -0
- package/dist/contracts/errors.d.ts +43 -2
- package/dist/contracts/errors.js +41 -0
- package/dist/contracts/errors.js.map +1 -1
- package/dist/contracts/events.d.ts +82 -4
- package/dist/contracts/hardware.d.ts +79 -6
- package/dist/contracts/hardware.js +9 -5
- package/dist/contracts/hardware.js.map +1 -1
- package/dist/contracts/index.d.ts +8 -0
- package/dist/contracts/index.js +8 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/model-compatibility.d.ts +97 -0
- package/dist/contracts/model-compatibility.js +6 -0
- package/dist/contracts/model-compatibility.js.map +1 -0
- package/dist/contracts/model-setup.d.ts +115 -0
- package/dist/contracts/model-setup.js +33 -0
- package/dist/contracts/model-setup.js.map +1 -0
- package/dist/contracts/model-yml.d.ts +14 -0
- package/dist/contracts/model-yml.js +1 -0
- package/dist/contracts/model-yml.js.map +1 -1
- package/dist/contracts/session.d.ts +45 -2
- package/dist/contracts/session.js +14 -1
- package/dist/contracts/session.js.map +1 -1
- package/dist/contracts/settings.d.ts +44 -1
- package/dist/contracts/settings.js.map +1 -1
- package/dist/core/atomic-core.d.ts +44 -5
- package/dist/core/atomic-core.js +24 -0
- package/dist/core/atomic-core.js.map +1 -1
- package/dist/core/create.js +517 -23
- package/dist/core/create.js.map +1 -1
- package/dist/core/gpu/index.d.ts +6 -0
- package/dist/core/gpu/index.js +7 -0
- package/dist/core/gpu/index.js.map +1 -0
- package/dist/core/gpu/policy.d.ts +68 -0
- package/dist/core/gpu/policy.js +99 -0
- package/dist/core/gpu/policy.js.map +1 -0
- package/dist/core/gpu/residency.d.ts +44 -0
- package/dist/core/gpu/residency.js +101 -0
- package/dist/core/gpu/residency.js.map +1 -0
- package/dist/core/gpu-residency.d.ts +39 -0
- package/dist/core/gpu-residency.js +32 -0
- package/dist/core/gpu-residency.js.map +1 -0
- package/dist/core/index.d.ts +1 -1
- package/dist/core/managed-engines.d.ts +207 -0
- package/dist/core/managed-engines.js +579 -0
- package/dist/core/managed-engines.js.map +1 -0
- package/dist/core/managed-environment.d.ts +72 -0
- package/dist/core/managed-environment.js +218 -0
- package/dist/core/managed-environment.js.map +1 -0
- package/dist/core/model-setup/index.d.ts +4 -0
- package/dist/core/model-setup/index.js +5 -0
- package/dist/core/model-setup/index.js.map +1 -0
- package/dist/core/model-setup/plan.d.ts +56 -0
- package/dist/core/model-setup/plan.js +158 -0
- package/dist/core/model-setup/plan.js.map +1 -0
- package/dist/core/model-setup/service.d.ts +92 -0
- package/dist/core/model-setup/service.js +329 -0
- package/dist/core/model-setup/service.js.map +1 -0
- package/dist/core/model-setup/store.d.ts +29 -0
- package/dist/core/model-setup/store.js +116 -0
- package/dist/core/model-setup/store.js.map +1 -0
- package/dist/core/model-setup/wiring.d.ts +59 -0
- package/dist/core/model-setup/wiring.js +132 -0
- package/dist/core/model-setup/wiring.js.map +1 -0
- package/dist/core/prism.d.ts +36 -0
- package/dist/core/prism.js +42 -0
- package/dist/core/prism.js.map +1 -0
- package/dist/core/public-server.d.ts +7 -0
- package/dist/core/public-server.js +2 -0
- package/dist/core/public-server.js.map +1 -1
- package/dist/core/sessions.d.ts +6 -1
- package/dist/core/sessions.js +18 -14
- package/dist/core/sessions.js.map +1 -1
- package/dist/core/types.d.ts +27 -1
- package/dist/core/types.js.map +1 -1
- package/dist/decision/args.d.ts +110 -0
- package/dist/decision/args.js +126 -0
- package/dist/decision/args.js.map +1 -0
- package/dist/decision/backoff.d.ts +25 -0
- package/dist/decision/backoff.js +33 -0
- package/dist/decision/backoff.js.map +1 -0
- package/dist/decision/engine-candidates.d.ts +52 -0
- package/dist/decision/engine-candidates.js +138 -0
- package/dist/decision/engine-candidates.js.map +1 -0
- package/dist/decision/engine-fallback.d.ts +41 -0
- package/dist/decision/engine-fallback.js +57 -0
- package/dist/decision/engine-fallback.js.map +1 -0
- package/dist/decision/engine-version.d.ts +27 -0
- package/dist/decision/engine-version.js +54 -0
- package/dist/decision/engine-version.js.map +1 -0
- package/dist/decision/engine.d.ts +114 -0
- package/dist/decision/engine.js +253 -0
- package/dist/decision/engine.js.map +1 -0
- package/dist/decision/http.d.ts +36 -0
- package/dist/decision/http.js +73 -0
- package/dist/decision/http.js.map +1 -0
- package/dist/decision/index.d.ts +20 -0
- package/dist/decision/index.js +21 -0
- package/dist/decision/index.js.map +1 -0
- package/dist/decision/model-facts.d.ts +32 -0
- package/dist/decision/model-facts.js +40 -0
- package/dist/decision/model-facts.js.map +1 -0
- package/dist/decision/outcome.d.ts +35 -0
- package/dist/decision/outcome.js +105 -0
- package/dist/decision/outcome.js.map +1 -0
- package/dist/decision/process.d.ts +67 -0
- package/dist/decision/process.js +133 -0
- package/dist/decision/process.js.map +1 -0
- package/dist/decision/readiness.d.ts +74 -0
- package/dist/decision/readiness.js +165 -0
- package/dist/decision/readiness.js.map +1 -0
- package/dist/decision/request.d.ts +11 -0
- package/dist/decision/request.js +56 -0
- package/dist/decision/request.js.map +1 -0
- package/dist/decision/service.d.ts +202 -0
- package/dist/decision/service.js +711 -0
- package/dist/decision/service.js.map +1 -0
- package/dist/decision/upstream-version.d.ts +23 -0
- package/dist/decision/upstream-version.js +34 -0
- package/dist/decision/upstream-version.js.map +1 -0
- package/dist/decision/wiring.d.ts +67 -0
- package/dist/decision/wiring.js +101 -0
- package/dist/decision/wiring.js.map +1 -0
- package/dist/diffusion/args.d.ts +4 -2
- package/dist/diffusion/args.js +10 -3
- package/dist/diffusion/args.js.map +1 -1
- package/dist/diffusion/image-job.js +1 -1
- package/dist/diffusion/image-job.js.map +1 -1
- package/dist/diffusion/install.d.ts +35 -11
- package/dist/diffusion/install.js +74 -49
- package/dist/diffusion/install.js.map +1 -1
- package/dist/diffusion/job-kind.d.ts +33 -7
- package/dist/diffusion/jobs.d.ts +6 -1
- package/dist/diffusion/jobs.js +60 -18
- package/dist/diffusion/jobs.js.map +1 -1
- package/dist/diffusion/parse.d.ts +1 -2
- package/dist/diffusion/parse.js +1 -13
- package/dist/diffusion/parse.js.map +1 -1
- package/dist/diffusion/progress.js +3 -0
- package/dist/diffusion/progress.js.map +1 -1
- package/dist/diffusion/server-process.d.ts +6 -0
- package/dist/diffusion/server-process.js +3 -2
- package/dist/diffusion/server-process.js.map +1 -1
- package/dist/diffusion/service.d.ts +52 -6
- package/dist/diffusion/service.js +215 -40
- package/dist/diffusion/service.js.map +1 -1
- package/dist/diffusion/session.d.ts +27 -3
- package/dist/diffusion/session.js +108 -17
- package/dist/diffusion/session.js.map +1 -1
- package/dist/diffusion/state.d.ts +19 -1
- package/dist/diffusion/state.js +10 -0
- package/dist/diffusion/state.js.map +1 -1
- package/dist/diffusion/tracker.d.ts +15 -1
- package/dist/diffusion/tracker.js +32 -6
- package/dist/diffusion/tracker.js.map +1 -1
- package/dist/diffusion/types.d.ts +7 -0
- package/dist/diffusion/types.js +11 -0
- package/dist/diffusion/types.js.map +1 -1
- package/dist/diffusion/video-estimate.d.ts +214 -0
- package/dist/diffusion/video-estimate.js +402 -0
- package/dist/diffusion/video-estimate.js.map +1 -0
- package/dist/diffusion/video-eta.d.ts +90 -0
- package/dist/diffusion/video-eta.js +248 -0
- package/dist/diffusion/video-eta.js.map +1 -0
- package/dist/diffusion/video-history.d.ts +45 -0
- package/dist/diffusion/video-history.js +121 -0
- package/dist/diffusion/video-history.js.map +1 -0
- package/dist/diffusion/video-job.d.ts +13 -5
- package/dist/diffusion/video-job.js +42 -15
- package/dist/diffusion/video-job.js.map +1 -1
- package/dist/diffusion/video-recipe.js +3 -0
- package/dist/diffusion/video-recipe.js.map +1 -1
- package/dist/diffusion/video-tiling.d.ts +54 -0
- package/dist/diffusion/video-tiling.js +70 -0
- package/dist/diffusion/video-tiling.js.map +1 -0
- package/dist/diffusion/wiring.d.ts +14 -1
- package/dist/diffusion/wiring.js +7 -0
- package/dist/diffusion/wiring.js.map +1 -1
- package/dist/downloads/protocol.d.ts +3 -8
- package/dist/downloads/protocol.js.map +1 -1
- package/dist/embedding/args.d.ts +39 -0
- package/dist/embedding/args.js +46 -0
- package/dist/embedding/args.js.map +1 -0
- package/dist/embedding/engine.d.ts +50 -0
- package/dist/embedding/engine.js +100 -0
- package/dist/embedding/engine.js.map +1 -0
- package/dist/embedding/ffmpeg.d.ts +18 -0
- package/dist/embedding/ffmpeg.js +63 -0
- package/dist/embedding/ffmpeg.js.map +1 -0
- package/dist/embedding/index.d.ts +16 -0
- package/dist/embedding/index.js +17 -0
- package/dist/embedding/index.js.map +1 -0
- package/dist/embedding/model-facts.d.ts +51 -0
- package/dist/embedding/model-facts.js +84 -0
- package/dist/embedding/model-facts.js.map +1 -0
- package/dist/embedding/process.d.ts +66 -0
- package/dist/embedding/process.js +131 -0
- package/dist/embedding/process.js.map +1 -0
- package/dist/embedding/readiness.d.ts +56 -0
- package/dist/embedding/readiness.js +114 -0
- package/dist/embedding/readiness.js.map +1 -0
- package/dist/embedding/request.d.ts +43 -0
- package/dist/embedding/request.js +285 -0
- package/dist/embedding/request.js.map +1 -0
- package/dist/embedding/service.d.ts +152 -0
- package/dist/embedding/service.js +602 -0
- package/dist/embedding/service.js.map +1 -0
- package/dist/embedding/wiring.d.ts +51 -0
- package/dist/embedding/wiring.js +79 -0
- package/dist/embedding/wiring.js.map +1 -0
- package/dist/engine-builds/builds.d.ts +54 -0
- package/dist/engine-builds/builds.js +151 -0
- package/dist/engine-builds/builds.js.map +1 -0
- package/dist/engine-builds/index.d.ts +10 -0
- package/dist/engine-builds/index.js +11 -0
- package/dist/engine-builds/index.js.map +1 -0
- package/dist/engine-builds/install.d.ts +42 -0
- package/dist/engine-builds/install.js +100 -0
- package/dist/engine-builds/install.js.map +1 -0
- package/dist/engine-builds/manifest.d.ts +121 -0
- package/dist/engine-builds/manifest.js +254 -0
- package/dist/engine-builds/manifest.js.map +1 -0
- package/dist/engine-builds/order.d.ts +24 -0
- package/dist/engine-builds/order.js +44 -0
- package/dist/engine-builds/order.js.map +1 -0
- package/dist/engine-builds/select.d.ts +123 -0
- package/dist/engine-builds/select.js +223 -0
- package/dist/engine-builds/select.js.map +1 -0
- package/dist/engine-builds/service.d.ts +123 -0
- package/dist/engine-builds/service.js +392 -0
- package/dist/engine-builds/service.js.map +1 -0
- package/dist/engines/descriptor-order.d.ts +28 -0
- package/dist/engines/descriptor-order.js +60 -0
- package/dist/engines/descriptor-order.js.map +1 -0
- package/dist/engines/engine-build.d.ts +23 -0
- package/dist/engines/engine-build.js +58 -0
- package/dist/engines/engine-build.js.map +1 -0
- package/dist/engines/index.d.ts +10 -0
- package/dist/engines/index.js +11 -0
- package/dist/engines/index.js.map +1 -0
- package/dist/engines/llamacpp.d.ts +71 -0
- package/dist/engines/llamacpp.js +176 -0
- package/dist/engines/llamacpp.js.map +1 -0
- package/dist/engines/managed.d.ts +49 -0
- package/dist/engines/managed.js +88 -0
- package/dist/engines/managed.js.map +1 -0
- package/dist/engines/service.d.ts +46 -0
- package/dist/engines/service.js +61 -0
- package/dist/engines/service.js.map +1 -0
- package/dist/engines/versions.d.ts +65 -0
- package/dist/engines/versions.js +259 -0
- package/dist/engines/versions.js.map +1 -0
- package/dist/hardware/cpu-flags.d.ts +44 -0
- package/dist/hardware/cpu-flags.js +206 -0
- package/dist/hardware/cpu-flags.js.map +1 -0
- package/dist/hardware/drm-sysfs.d.ts +51 -0
- package/dist/hardware/drm-sysfs.js +67 -0
- package/dist/hardware/drm-sysfs.js.map +1 -0
- package/dist/hardware/facts.d.ts +42 -0
- package/dist/hardware/facts.js +92 -0
- package/dist/hardware/facts.js.map +1 -0
- package/dist/hardware/index.d.ts +19 -3
- package/dist/hardware/index.js +19 -3
- package/dist/hardware/index.js.map +1 -1
- package/dist/hardware/merge.d.ts +55 -0
- package/dist/hardware/merge.js +141 -0
- package/dist/hardware/merge.js.map +1 -0
- package/dist/hardware/nvidia-smi.d.ts +43 -0
- package/dist/hardware/nvidia-smi.js +118 -0
- package/dist/hardware/nvidia-smi.js.map +1 -0
- package/dist/hardware/probe-common.d.ts +72 -0
- package/dist/hardware/probe-common.js +106 -0
- package/dist/hardware/probe-common.js.map +1 -0
- package/dist/hardware/probe-darwin.d.ts +20 -0
- package/dist/hardware/probe-darwin.js +76 -0
- package/dist/hardware/probe-darwin.js.map +1 -0
- package/dist/hardware/probe-linux.d.ts +9 -0
- package/dist/hardware/probe-linux.js +133 -0
- package/dist/hardware/probe-linux.js.map +1 -0
- package/dist/hardware/probe-windows.d.ts +7 -0
- package/dist/hardware/probe-windows.js +50 -0
- package/dist/hardware/probe-windows.js.map +1 -0
- package/dist/hardware/probe.d.ts +16 -0
- package/dist/hardware/probe.js +65 -0
- package/dist/hardware/probe.js.map +1 -0
- package/dist/hardware/service.d.ts +60 -0
- package/dist/hardware/service.js +114 -0
- package/dist/hardware/service.js.map +1 -0
- package/dist/hardware/vulkan.d.ts +47 -0
- package/dist/hardware/vulkan.js +148 -0
- package/dist/hardware/vulkan.js.map +1 -0
- package/dist/hardware/windows-video.d.ts +97 -0
- package/dist/hardware/windows-video.js +214 -0
- package/dist/hardware/windows-video.js.map +1 -0
- package/dist/host/app-daemon.d.ts +47 -0
- package/dist/host/app-daemon.js +146 -0
- package/dist/host/app-daemon.js.map +1 -0
- package/dist/host/index.d.ts +5 -3
- package/dist/host/index.js +5 -3
- package/dist/host/index.js.map +1 -1
- package/dist/host/log-file.d.ts +74 -0
- package/dist/host/log-file.js +214 -0
- package/dist/host/log-file.js.map +1 -0
- package/dist/host/recipes/enable-wsl.d.ts +63 -0
- package/dist/host/recipes/enable-wsl.js +73 -0
- package/dist/host/recipes/enable-wsl.js.map +1 -0
- package/dist/host/recipes/executor-io-windows.d.ts +69 -0
- package/dist/host/recipes/executor-io-windows.js +235 -0
- package/dist/host/recipes/executor-io-windows.js.map +1 -0
- package/dist/host/recipes/executor-io.d.ts +80 -0
- package/dist/host/recipes/executor-io.js +211 -0
- package/dist/host/recipes/executor-io.js.map +1 -0
- package/dist/host/recipes/executor.d.ts +81 -0
- package/dist/host/recipes/executor.js +678 -0
- package/dist/host/recipes/executor.js.map +1 -0
- package/dist/host/recipes/guest-executor.d.ts +29 -0
- package/dist/host/recipes/guest-executor.js +76 -0
- package/dist/host/recipes/guest-executor.js.map +1 -0
- package/dist/host/recipes/index.d.ts +16 -0
- package/dist/host/recipes/index.js +17 -0
- package/dist/host/recipes/index.js.map +1 -0
- package/dist/host/recipes/install-container-runtime.d.ts +389 -0
- package/dist/host/recipes/install-container-runtime.js +796 -0
- package/dist/host/recipes/install-container-runtime.js.map +1 -0
- package/dist/host/recipes/openpgp.d.ts +23 -0
- package/dist/host/recipes/openpgp.js +153 -0
- package/dist/host/recipes/openpgp.js.map +1 -0
- package/dist/host/recipes/request-file.d.ts +96 -0
- package/dist/host/recipes/request-file.js +103 -0
- package/dist/host/recipes/request-file.js.map +1 -0
- package/dist/lock/process-journal.d.ts +5 -2
- package/dist/lock/process-journal.js.map +1 -1
- package/dist/models/capabilities.d.ts +7 -0
- package/dist/models/capabilities.js +17 -1
- package/dist/models/capabilities.js.map +1 -1
- package/dist/models/compatibility/index.d.ts +10 -0
- package/dist/models/compatibility/index.js +11 -0
- package/dist/models/compatibility/index.js.map +1 -0
- package/dist/models/compatibility/inspect.d.ts +19 -0
- package/dist/models/compatibility/inspect.js +59 -0
- package/dist/models/compatibility/inspect.js.map +1 -0
- package/dist/models/compatibility/resolve.d.ts +59 -0
- package/dist/models/compatibility/resolve.js +219 -0
- package/dist/models/compatibility/resolve.js.map +1 -0
- package/dist/models/compatibility/rules-baseline.d.ts +2 -0
- package/dist/models/compatibility/rules-baseline.js +10 -0
- package/dist/models/compatibility/rules-baseline.js.map +1 -0
- package/dist/models/compatibility/rules-baseline.json +292 -0
- package/dist/models/compatibility/rules-service.d.ts +36 -0
- package/dist/models/compatibility/rules-service.js +109 -0
- package/dist/models/compatibility/rules-service.js.map +1 -0
- package/dist/models/compatibility/rules.d.ts +81 -0
- package/dist/models/compatibility/rules.js +164 -0
- package/dist/models/compatibility/rules.js.map +1 -0
- package/dist/models/compatibility/service.d.ts +59 -0
- package/dist/models/compatibility/service.js +137 -0
- package/dist/models/compatibility/service.js.map +1 -0
- package/dist/models/decision-checkpoint.d.ts +22 -0
- package/dist/models/decision-checkpoint.js +33 -0
- package/dist/models/decision-checkpoint.js.map +1 -0
- package/dist/models/gguf/classify.d.ts +27 -1
- package/dist/models/gguf/classify.js +78 -2
- package/dist/models/gguf/classify.js.map +1 -1
- package/dist/models/gguf/index.d.ts +1 -0
- package/dist/models/gguf/index.js +1 -0
- package/dist/models/gguf/index.js.map +1 -1
- package/dist/models/gguf/tensors.d.ts +56 -0
- package/dist/models/gguf/tensors.js +236 -0
- package/dist/models/gguf/tensors.js.map +1 -0
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.js +2 -0
- package/dist/models/index.js.map +1 -1
- package/dist/router/resolve.d.ts +7 -1
- package/dist/router/resolve.js +14 -1
- package/dist/router/resolve.js.map +1 -1
- package/dist/runtime/container/argv.d.ts +88 -0
- package/dist/runtime/container/argv.js +406 -0
- package/dist/runtime/container/argv.js.map +1 -0
- package/dist/runtime/container/docker-binary.d.ts +4 -0
- package/dist/runtime/container/docker-binary.js +34 -0
- package/dist/runtime/container/docker-binary.js.map +1 -0
- package/dist/runtime/container/env.d.ts +17 -0
- package/dist/runtime/container/env.js +52 -0
- package/dist/runtime/container/env.js.map +1 -0
- package/dist/runtime/container/exec.d.ts +27 -0
- package/dist/runtime/container/exec.js +79 -0
- package/dist/runtime/container/exec.js.map +1 -0
- package/dist/runtime/container/execution-journal.d.ts +55 -0
- package/dist/runtime/container/execution-journal.js +167 -0
- package/dist/runtime/container/execution-journal.js.map +1 -0
- package/dist/runtime/container/heartbeat.d.ts +47 -0
- package/dist/runtime/container/heartbeat.js +78 -0
- package/dist/runtime/container/heartbeat.js.map +1 -0
- package/dist/runtime/container/index.d.ts +30 -0
- package/dist/runtime/container/index.js +31 -0
- package/dist/runtime/container/index.js.map +1 -0
- package/dist/runtime/container/operations.d.ts +40 -0
- package/dist/runtime/container/operations.js +233 -0
- package/dist/runtime/container/operations.js.map +1 -0
- package/dist/runtime/container/pull.d.ts +48 -0
- package/dist/runtime/container/pull.js +280 -0
- package/dist/runtime/container/pull.js.map +1 -0
- package/dist/runtime/container/reconcile.d.ts +34 -0
- package/dist/runtime/container/reconcile.js +79 -0
- package/dist/runtime/container/reconcile.js.map +1 -0
- package/dist/runtime/container/types.d.ts +124 -0
- package/dist/runtime/container/types.js +2 -0
- package/dist/runtime/container/types.js.map +1 -0
- package/dist/runtime/container/watchdog.d.ts +114 -0
- package/dist/runtime/container/watchdog.js +418 -0
- package/dist/runtime/container/watchdog.js.map +1 -0
- package/dist/runtime/container/wiring.d.ts +78 -0
- package/dist/runtime/container/wiring.js +92 -0
- package/dist/runtime/container/wiring.js.map +1 -0
- package/dist/runtime/container/wsl-exec.d.ts +13 -0
- package/dist/runtime/container/wsl-exec.js +18 -0
- package/dist/runtime/container/wsl-exec.js.map +1 -0
- package/dist/runtime/environment/cached-document.d.ts +128 -0
- package/dist/runtime/environment/cached-document.js +218 -0
- package/dist/runtime/environment/cached-document.js.map +1 -0
- package/dist/runtime/environment/canonical-json.d.ts +78 -0
- package/dist/runtime/environment/canonical-json.js +86 -0
- package/dist/runtime/environment/canonical-json.js.map +1 -0
- package/dist/runtime/environment/descriptor-provider.d.ts +121 -0
- package/dist/runtime/environment/descriptor-provider.js +159 -0
- package/dist/runtime/environment/descriptor-provider.js.map +1 -0
- package/dist/runtime/environment/descriptor.d.ts +35 -0
- package/dist/runtime/environment/descriptor.js +239 -0
- package/dist/runtime/environment/descriptor.js.map +1 -0
- package/dist/runtime/environment/diagnostics.d.ts +50 -0
- package/dist/runtime/environment/diagnostics.js +114 -0
- package/dist/runtime/environment/diagnostics.js.map +1 -0
- package/dist/runtime/environment/document-fields.d.ts +39 -0
- package/dist/runtime/environment/document-fields.js +96 -0
- package/dist/runtime/environment/document-fields.js.map +1 -0
- package/dist/runtime/environment/environment-manifest-provider.d.ts +65 -0
- package/dist/runtime/environment/environment-manifest-provider.js +89 -0
- package/dist/runtime/environment/environment-manifest-provider.js.map +1 -0
- package/dist/runtime/environment/environment-manifest.d.ts +35 -0
- package/dist/runtime/environment/environment-manifest.js +131 -0
- package/dist/runtime/environment/environment-manifest.js.map +1 -0
- package/dist/runtime/environment/guest-host.d.ts +43 -0
- package/dist/runtime/environment/guest-host.js +88 -0
- package/dist/runtime/environment/guest-host.js.map +1 -0
- package/dist/runtime/environment/host-exec.d.ts +38 -0
- package/dist/runtime/environment/host-exec.js +145 -0
- package/dist/runtime/environment/host-exec.js.map +1 -0
- package/dist/runtime/environment/host-step-failure.d.ts +33 -0
- package/dist/runtime/environment/host-step-failure.js +34 -0
- package/dist/runtime/environment/host-step-failure.js.map +1 -0
- package/dist/runtime/environment/index.d.ts +56 -0
- package/dist/runtime/environment/index.js +57 -0
- package/dist/runtime/environment/index.js.map +1 -0
- package/dist/runtime/environment/installations.d.ts +25 -0
- package/dist/runtime/environment/installations.js +70 -0
- package/dist/runtime/environment/installations.js.map +1 -0
- package/dist/runtime/environment/inventory.d.ts +42 -0
- package/dist/runtime/environment/inventory.js +57 -0
- package/dist/runtime/environment/inventory.js.map +1 -0
- package/dist/runtime/environment/linux-blockers.d.ts +130 -0
- package/dist/runtime/environment/linux-blockers.js +251 -0
- package/dist/runtime/environment/linux-blockers.js.map +1 -0
- package/dist/runtime/environment/linux-docker-facts.d.ts +200 -0
- package/dist/runtime/environment/linux-docker-facts.js +342 -0
- package/dist/runtime/environment/linux-docker-facts.js.map +1 -0
- package/dist/runtime/environment/linux-docker-network.d.ts +80 -0
- package/dist/runtime/environment/linux-docker-network.js +195 -0
- package/dist/runtime/environment/linux-docker-network.js.map +1 -0
- package/dist/runtime/environment/linux-host.d.ts +22 -0
- package/dist/runtime/environment/linux-host.js +98 -0
- package/dist/runtime/environment/linux-host.js.map +1 -0
- package/dist/runtime/environment/linux-plan.d.ts +126 -0
- package/dist/runtime/environment/linux-plan.js +392 -0
- package/dist/runtime/environment/linux-plan.js.map +1 -0
- package/dist/runtime/environment/linux-probe.d.ts +245 -0
- package/dist/runtime/environment/linux-probe.js +315 -0
- package/dist/runtime/environment/linux-probe.js.map +1 -0
- package/dist/runtime/environment/linux-provisioner.d.ts +102 -0
- package/dist/runtime/environment/linux-provisioner.js +734 -0
- package/dist/runtime/environment/linux-provisioner.js.map +1 -0
- package/dist/runtime/environment/provisioner-descriptors.d.ts +17 -0
- package/dist/runtime/environment/provisioner-descriptors.js +62 -0
- package/dist/runtime/environment/provisioner-descriptors.js.map +1 -0
- package/dist/runtime/environment/recovery.d.ts +74 -0
- package/dist/runtime/environment/recovery.js +121 -0
- package/dist/runtime/environment/recovery.js.map +1 -0
- package/dist/runtime/environment/rootfs-download.d.ts +2 -0
- package/dist/runtime/environment/rootfs-download.js +47 -0
- package/dist/runtime/environment/rootfs-download.js.map +1 -0
- package/dist/runtime/environment/service.d.ts +280 -0
- package/dist/runtime/environment/service.js +776 -0
- package/dist/runtime/environment/service.js.map +1 -0
- package/dist/runtime/environment/state.d.ts +163 -0
- package/dist/runtime/environment/state.js +479 -0
- package/dist/runtime/environment/state.js.map +1 -0
- package/dist/runtime/environment/store-models.d.ts +19 -0
- package/dist/runtime/environment/store-models.js +30 -0
- package/dist/runtime/environment/store-models.js.map +1 -0
- package/dist/runtime/environment/store.d.ts +210 -0
- package/dist/runtime/environment/store.js +438 -0
- package/dist/runtime/environment/store.js.map +1 -0
- package/dist/runtime/environment/windows-environment-record.d.ts +48 -0
- package/dist/runtime/environment/windows-environment-record.js +89 -0
- package/dist/runtime/environment/windows-environment-record.js.map +1 -0
- package/dist/runtime/environment/windows-forwarding.d.ts +27 -0
- package/dist/runtime/environment/windows-forwarding.js +84 -0
- package/dist/runtime/environment/windows-forwarding.js.map +1 -0
- package/dist/runtime/environment/windows-guest-setup.d.ts +48 -0
- package/dist/runtime/environment/windows-guest-setup.js +157 -0
- package/dist/runtime/environment/windows-guest-setup.js.map +1 -0
- package/dist/runtime/environment/windows-host.d.ts +46 -0
- package/dist/runtime/environment/windows-host.js +163 -0
- package/dist/runtime/environment/windows-host.js.map +1 -0
- package/dist/runtime/environment/windows-plan.d.ts +78 -0
- package/dist/runtime/environment/windows-plan.js +216 -0
- package/dist/runtime/environment/windows-plan.js.map +1 -0
- package/dist/runtime/environment/windows-probe.d.ts +135 -0
- package/dist/runtime/environment/windows-probe.js +261 -0
- package/dist/runtime/environment/windows-probe.js.map +1 -0
- package/dist/runtime/environment/windows-provisioner.d.ts +113 -0
- package/dist/runtime/environment/windows-provisioner.js +782 -0
- package/dist/runtime/environment/windows-provisioner.js.map +1 -0
- package/dist/runtime/environment/wiring.d.ts +117 -0
- package/dist/runtime/environment/wiring.js +354 -0
- package/dist/runtime/environment/wiring.js.map +1 -0
- package/dist/runtime/foundation-models/runtime.d.ts +8 -0
- package/dist/runtime/foundation-models/runtime.js +5 -2
- package/dist/runtime/foundation-models/runtime.js.map +1 -1
- package/dist/runtime/llamacpp/args.d.ts +10 -1
- package/dist/runtime/llamacpp/args.js +43 -7
- package/dist/runtime/llamacpp/args.js.map +1 -1
- package/dist/runtime/llamacpp/fit-margin.d.ts +46 -0
- package/dist/runtime/llamacpp/fit-margin.js +47 -0
- package/dist/runtime/llamacpp/fit-margin.js.map +1 -0
- package/dist/runtime/llamacpp/index.d.ts +1 -0
- package/dist/runtime/llamacpp/index.js +1 -0
- package/dist/runtime/llamacpp/index.js.map +1 -1
- package/dist/runtime/llamacpp/load-plan.d.ts +23 -1
- package/dist/runtime/llamacpp/load-plan.js +82 -1
- package/dist/runtime/llamacpp/load-plan.js.map +1 -1
- package/dist/runtime/llamacpp/policy.d.ts +16 -0
- package/dist/runtime/llamacpp/policy.js +20 -0
- package/dist/runtime/llamacpp/policy.js.map +1 -1
- package/dist/runtime/llamacpp/probe.d.ts +21 -1
- package/dist/runtime/llamacpp/probe.js +32 -6
- package/dist/runtime/llamacpp/probe.js.map +1 -1
- package/dist/runtime/llamacpp/runtime.d.ts +56 -1
- package/dist/runtime/llamacpp/runtime.js +142 -15
- package/dist/runtime/llamacpp/runtime.js.map +1 -1
- package/dist/runtime/managed-engines/index.d.ts +8 -0
- package/dist/runtime/managed-engines/index.js +9 -0
- package/dist/runtime/managed-engines/index.js.map +1 -0
- package/dist/runtime/managed-engines/runtime.d.ts +140 -0
- package/dist/runtime/managed-engines/runtime.js +402 -0
- package/dist/runtime/managed-engines/runtime.js.map +1 -0
- package/dist/runtime/managed-engines/spec.d.ts +70 -0
- package/dist/runtime/managed-engines/spec.js +39 -0
- package/dist/runtime/managed-engines/spec.js.map +1 -0
- package/dist/runtime/managed-models/check.d.ts +50 -0
- package/dist/runtime/managed-models/check.js +157 -0
- package/dist/runtime/managed-models/check.js.map +1 -0
- package/dist/runtime/managed-models/compatibility.d.ts +256 -0
- package/dist/runtime/managed-models/compatibility.js +594 -0
- package/dist/runtime/managed-models/compatibility.js.map +1 -0
- package/dist/runtime/managed-models/delete.d.ts +15 -0
- package/dist/runtime/managed-models/delete.js +60 -0
- package/dist/runtime/managed-models/delete.js.map +1 -0
- package/dist/runtime/managed-models/guest-files.d.ts +8 -0
- package/dist/runtime/managed-models/guest-files.js +49 -0
- package/dist/runtime/managed-models/guest-files.js.map +1 -0
- package/dist/runtime/managed-models/index.d.ts +17 -0
- package/dist/runtime/managed-models/index.js +18 -0
- package/dist/runtime/managed-models/index.js.map +1 -0
- package/dist/runtime/managed-models/location.d.ts +22 -0
- package/dist/runtime/managed-models/location.js +53 -0
- package/dist/runtime/managed-models/location.js.map +1 -0
- package/dist/runtime/managed-models/migrate.d.ts +30 -0
- package/dist/runtime/managed-models/migrate.js +119 -0
- package/dist/runtime/managed-models/migrate.js.map +1 -0
- package/dist/runtime/managed-models/model-dir.d.ts +36 -0
- package/dist/runtime/managed-models/model-dir.js +136 -0
- package/dist/runtime/managed-models/model-dir.js.map +1 -0
- package/dist/runtime/managed-models/quant-format.d.ts +71 -0
- package/dist/runtime/managed-models/quant-format.js +299 -0
- package/dist/runtime/managed-models/quant-format.js.map +1 -0
- package/dist/runtime/managed-models/registry.d.ts +26 -0
- package/dist/runtime/managed-models/registry.js +66 -0
- package/dist/runtime/managed-models/registry.js.map +1 -0
- package/dist/runtime/managed-text/adapter.d.ts +266 -0
- package/dist/runtime/managed-text/adapter.js +96 -0
- package/dist/runtime/managed-text/adapter.js.map +1 -0
- package/dist/runtime/managed-text/backend-target.d.ts +3 -0
- package/dist/runtime/managed-text/backend-target.js +52 -0
- package/dist/runtime/managed-text/backend-target.js.map +1 -0
- package/dist/runtime/managed-text/deployment.d.ts +14 -0
- package/dist/runtime/managed-text/deployment.js +32 -0
- package/dist/runtime/managed-text/deployment.js.map +1 -0
- package/dist/runtime/managed-text/engine-cache.d.ts +15 -0
- package/dist/runtime/managed-text/engine-cache.js +64 -0
- package/dist/runtime/managed-text/engine-cache.js.map +1 -0
- package/dist/runtime/managed-text/gateway.d.ts +158 -0
- package/dist/runtime/managed-text/gateway.js +535 -0
- package/dist/runtime/managed-text/gateway.js.map +1 -0
- package/dist/runtime/managed-text/generation-defaults.d.ts +23 -0
- package/dist/runtime/managed-text/generation-defaults.js +51 -0
- package/dist/runtime/managed-text/generation-defaults.js.map +1 -0
- package/dist/runtime/managed-text/index.d.ts +26 -0
- package/dist/runtime/managed-text/index.js +27 -0
- package/dist/runtime/managed-text/index.js.map +1 -0
- package/dist/runtime/managed-text/lifecycle.d.ts +276 -0
- package/dist/runtime/managed-text/lifecycle.js +859 -0
- package/dist/runtime/managed-text/lifecycle.js.map +1 -0
- package/dist/runtime/managed-text/load-policy.d.ts +47 -0
- package/dist/runtime/managed-text/load-policy.js +111 -0
- package/dist/runtime/managed-text/load-policy.js.map +1 -0
- package/dist/runtime/managed-text/mount-source.d.ts +14 -0
- package/dist/runtime/managed-text/mount-source.js +18 -0
- package/dist/runtime/managed-text/mount-source.js.map +1 -0
- package/dist/runtime/managed-text/readiness.d.ts +13 -0
- package/dist/runtime/managed-text/readiness.js +24 -0
- package/dist/runtime/managed-text/readiness.js.map +1 -0
- package/dist/runtime/managed-text/request-rules.d.ts +18 -0
- package/dist/runtime/managed-text/request-rules.js +62 -0
- package/dist/runtime/managed-text/request-rules.js.map +1 -0
- package/dist/runtime/managed-text/types.d.ts +88 -0
- package/dist/runtime/managed-text/types.js +12 -0
- package/dist/runtime/managed-text/types.js.map +1 -0
- package/dist/runtime/managed-text/wsl-deployment.d.ts +24 -0
- package/dist/runtime/managed-text/wsl-deployment.js +70 -0
- package/dist/runtime/managed-text/wsl-deployment.js.map +1 -0
- package/dist/runtime/mlx/errors.d.ts +6 -1
- package/dist/runtime/mlx/errors.js +7 -2
- package/dist/runtime/mlx/errors.js.map +1 -1
- package/dist/runtime/mlx/runtime.d.ts +36 -1
- package/dist/runtime/mlx/runtime.js +85 -4
- package/dist/runtime/mlx/runtime.js.map +1 -1
- package/dist/runtime/shared/backend-output.d.ts +23 -0
- package/dist/runtime/shared/backend-output.js +32 -0
- package/dist/runtime/shared/backend-output.js.map +1 -0
- package/dist/runtime/shared/bounded-output.d.ts +24 -0
- package/dist/runtime/shared/bounded-output.js +63 -0
- package/dist/runtime/shared/bounded-output.js.map +1 -0
- package/dist/runtime/shared/external-sessions.js +9 -1
- package/dist/runtime/shared/external-sessions.js.map +1 -1
- package/dist/runtime/shared/gpu-occupancy.d.ts +60 -0
- package/dist/runtime/shared/gpu-occupancy.js +10 -0
- package/dist/runtime/shared/gpu-occupancy.js.map +1 -0
- package/dist/runtime/shared/index.d.ts +4 -0
- package/dist/runtime/shared/index.js +4 -0
- package/dist/runtime/shared/index.js.map +1 -1
- package/dist/runtime/shared/local-runtime.d.ts +35 -0
- package/dist/runtime/shared/ports.d.ts +6 -0
- package/dist/runtime/shared/ports.js +12 -1
- package/dist/runtime/shared/ports.js.map +1 -1
- package/dist/runtime/shared/process.d.ts +11 -0
- package/dist/runtime/shared/process.js +20 -0
- package/dist/runtime/shared/process.js.map +1 -1
- package/dist/runtime/shared/redact-args.d.ts +7 -0
- package/dist/runtime/shared/redact-args.js +26 -0
- package/dist/runtime/shared/redact-args.js.map +1 -0
- package/dist/runtime/shared/sidecar.d.ts +15 -0
- package/dist/runtime/shared/sidecar.js +43 -8
- package/dist/runtime/shared/sidecar.js.map +1 -1
- package/dist/runtime/tensorrt-llm/adapter.d.ts +250 -0
- package/dist/runtime/tensorrt-llm/adapter.js +1011 -0
- package/dist/runtime/tensorrt-llm/adapter.js.map +1 -0
- package/dist/runtime/tensorrt-llm/check.d.ts +12 -0
- package/dist/runtime/tensorrt-llm/check.js +21 -0
- package/dist/runtime/tensorrt-llm/check.js.map +1 -0
- package/dist/runtime/tensorrt-llm/compatibility.d.ts +100 -0
- package/dist/runtime/tensorrt-llm/compatibility.js +181 -0
- package/dist/runtime/tensorrt-llm/compatibility.js.map +1 -0
- package/dist/runtime/tensorrt-llm/engine.d.ts +3 -0
- package/dist/runtime/tensorrt-llm/engine.js +24 -0
- package/dist/runtime/tensorrt-llm/engine.js.map +1 -0
- package/dist/runtime/tensorrt-llm/host-facts.d.ts +55 -0
- package/dist/runtime/tensorrt-llm/host-facts.js +87 -0
- package/dist/runtime/tensorrt-llm/host-facts.js.map +1 -0
- package/dist/runtime/tensorrt-llm/index.d.ts +30 -0
- package/dist/runtime/tensorrt-llm/index.js +31 -0
- package/dist/runtime/tensorrt-llm/index.js.map +1 -0
- package/dist/runtime/tensorrt-llm/installation.d.ts +23 -0
- package/dist/runtime/tensorrt-llm/installation.js +53 -0
- package/dist/runtime/tensorrt-llm/installation.js.map +1 -0
- package/dist/runtime/tensorrt-llm/kv-cache.d.ts +25 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js +28 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js.map +1 -0
- package/dist/runtime/tensorrt-llm/prelaunch.d.ts +20 -0
- package/dist/runtime/tensorrt-llm/prelaunch.js +168 -0
- package/dist/runtime/tensorrt-llm/prelaunch.js.map +1 -0
- package/dist/runtime/tensorrt-llm/route-policy.d.ts +19 -0
- package/dist/runtime/tensorrt-llm/route-policy.js +17 -0
- package/dist/runtime/tensorrt-llm/route-policy.js.map +1 -0
- package/dist/runtime/tensorrt-llm/settings.d.ts +7 -0
- package/dist/runtime/tensorrt-llm/settings.js +48 -0
- package/dist/runtime/tensorrt-llm/settings.js.map +1 -0
- package/dist/runtime/vllm/adapter.d.ts +46 -0
- package/dist/runtime/vllm/adapter.js +425 -0
- package/dist/runtime/vllm/adapter.js.map +1 -0
- package/dist/runtime/vllm/engine.d.ts +16 -0
- package/dist/runtime/vllm/engine.js +37 -0
- package/dist/runtime/vllm/engine.js.map +1 -0
- package/dist/runtime/vllm/index.d.ts +11 -0
- package/dist/runtime/vllm/index.js +12 -0
- package/dist/runtime/vllm/index.js.map +1 -0
- package/dist/runtime/vllm/memory.d.ts +69 -0
- package/dist/runtime/vllm/memory.js +123 -0
- package/dist/runtime/vllm/memory.js.map +1 -0
- package/dist/runtime/vllm/settings.d.ts +52 -0
- package/dist/runtime/vllm/settings.js +151 -0
- package/dist/runtime/vllm/settings.js.map +1 -0
- package/dist/runtime/wsl/guest-paths.d.ts +33 -0
- package/dist/runtime/wsl/guest-paths.js +83 -0
- package/dist/runtime/wsl/guest-paths.js.map +1 -0
- package/dist/runtime/wsl/guest-scope.d.ts +14 -0
- package/dist/runtime/wsl/guest-scope.js +98 -0
- package/dist/runtime/wsl/guest-scope.js.map +1 -0
- package/dist/runtime/wsl/index.d.ts +12 -0
- package/dist/runtime/wsl/index.js +13 -0
- package/dist/runtime/wsl/index.js.map +1 -0
- package/dist/runtime/wsl/keeper.d.ts +29 -0
- package/dist/runtime/wsl/keeper.js +48 -0
- package/dist/runtime/wsl/keeper.js.map +1 -0
- package/dist/runtime/wsl/transport.d.ts +106 -0
- package/dist/runtime/wsl/transport.js +181 -0
- package/dist/runtime/wsl/transport.js.map +1 -0
- package/dist/server/control/index.d.ts +1 -1
- package/dist/server/control/router.js +15 -0
- package/dist/server/control/router.js.map +1 -1
- package/dist/server/control/routes/backends.js +26 -0
- package/dist/server/control/routes/backends.js.map +1 -1
- package/dist/server/control/routes/decision.d.ts +10 -0
- package/dist/server/control/routes/decision.js +43 -0
- package/dist/server/control/routes/decision.js.map +1 -0
- package/dist/server/control/routes/diffusion-video.js +4 -0
- package/dist/server/control/routes/diffusion-video.js.map +1 -1
- package/dist/server/control/routes/diffusion.d.ts +1 -1
- package/dist/server/control/routes/diffusion.js +4 -9
- package/dist/server/control/routes/diffusion.js.map +1 -1
- package/dist/server/control/routes/embedding.d.ts +9 -0
- package/dist/server/control/routes/embedding.js +43 -0
- package/dist/server/control/routes/embedding.js.map +1 -0
- package/dist/server/control/routes/engine-builds.d.ts +14 -0
- package/dist/server/control/routes/engine-builds.js +82 -0
- package/dist/server/control/routes/engine-builds.js.map +1 -0
- package/dist/server/control/routes/engines.d.ts +17 -0
- package/dist/server/control/routes/engines.js +152 -0
- package/dist/server/control/routes/engines.js.map +1 -0
- package/dist/server/control/routes/environments.d.ts +16 -0
- package/dist/server/control/routes/environments.js +207 -0
- package/dist/server/control/routes/environments.js.map +1 -0
- package/dist/server/control/routes/hardware.d.ts +1 -1
- package/dist/server/control/routes/hardware.js +11 -6
- package/dist/server/control/routes/hardware.js.map +1 -1
- package/dist/server/control/routes/model-setups.d.ts +11 -0
- package/dist/server/control/routes/model-setups.js +55 -0
- package/dist/server/control/routes/model-setups.js.map +1 -0
- package/dist/server/control/routes/models.d.ts +3 -2
- package/dist/server/control/routes/models.js +45 -2
- package/dist/server/control/routes/models.js.map +1 -1
- package/dist/server/control/types.d.ts +167 -9
- package/dist/server/control/types.js.map +1 -1
- package/dist/server/http.d.ts +9 -1
- package/dist/server/http.js +51 -1
- package/dist/server/http.js.map +1 -1
- package/dist/server/public/decision-preview.d.ts +17 -0
- package/dist/server/public/decision-preview.js +119 -0
- package/dist/server/public/decision-preview.js.map +1 -0
- package/dist/server/public/decision.d.ts +32 -0
- package/dist/server/public/decision.js +135 -0
- package/dist/server/public/decision.js.map +1 -0
- package/dist/server/public/embedding.d.ts +31 -0
- package/dist/server/public/embedding.js +126 -0
- package/dist/server/public/embedding.js.map +1 -0
- package/dist/server/public/errors.d.ts +2 -1
- package/dist/server/public/errors.js +5 -2
- package/dist/server/public/errors.js.map +1 -1
- package/dist/server/public/forward.js +75 -3
- package/dist/server/public/forward.js.map +1 -1
- package/dist/server/public/gates.d.ts +13 -0
- package/dist/server/public/gates.js +37 -14
- package/dist/server/public/gates.js.map +1 -1
- package/dist/server/public/index.d.ts +5 -2
- package/dist/server/public/index.js +14 -1
- package/dist/server/public/index.js.map +1 -1
- package/dist/server/public/listing.d.ts +13 -2
- package/dist/server/public/listing.js +33 -9
- package/dist/server/public/listing.js.map +1 -1
- package/dist/server/public/policy.d.ts +9 -0
- package/dist/server/public/policy.js +68 -0
- package/dist/server/public/policy.js.map +1 -0
- package/dist/server/public/responses.js +10 -0
- package/dist/server/public/responses.js.map +1 -1
- package/dist/server/public/trace.d.ts +2 -2
- package/dist/server/public/trace.js +6 -2
- package/dist/server/public/trace.js.map +1 -1
- package/dist/server/public/types.d.ts +84 -1
- package/dist/settings/decision.d.ts +15 -0
- package/dist/settings/decision.js +88 -0
- package/dist/settings/decision.js.map +1 -0
- package/dist/settings/embedding.d.ts +12 -0
- package/dist/settings/embedding.js +82 -0
- package/dist/settings/embedding.js.map +1 -0
- package/dist/settings/index.d.ts +2 -0
- package/dist/settings/index.js +2 -0
- package/dist/settings/index.js.map +1 -1
- package/dist/settings/schema/atomic-prism.json +433 -0
- package/dist/settings/schema/tensorrt-llm.json +253 -0
- package/dist/settings/schema/vllm.json +273 -0
- package/dist/settings/schema.js +58 -0
- package/dist/settings/schema.js.map +1 -1
- package/dist/settings/store.d.ts +13 -2
- package/dist/settings/store.js +44 -0
- package/dist/settings/store.js.map +1 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +1 -0
- package/dist/util/index.js.map +1 -1
- package/dist/util/result.d.ts +19 -0
- package/dist/util/result.js +15 -0
- package/dist/util/result.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/src/settings/schema/atomic-prism.json +433 -0
- package/src/settings/schema/tensorrt-llm.json +253 -0
- package/src/settings/schema/vllm.json +273 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `tensorrt-llm` provider (openspec change `add-tensorrt-llm-linux`).
|
|
3
|
+
*
|
|
4
|
+
* `compatibility.ts` is TensorRT-LLM's memory rule and checkpoint quirks plugged into the shared
|
|
5
|
+
* check skeleton (`../managed-models/`, change `add-vllm-runtime`), behind
|
|
6
|
+
* `POST /atomic/v1/models/tensorrt-llm/check` (spec `tensorrt-llm-models`); the shared naming rule
|
|
7
|
+
* and the GPU-selection rule the load path reuses are re-exported from there. `adapter.ts` (task 2.13) is the `ManagedTextAdapter`
|
|
8
|
+
* the engine-neutral load lifecycle (`../managed-text/`) plugs into. Task 2.14 adds the provider
|
|
9
|
+
* itself: `runtime.ts` (the `LocalRuntime`), `settings.ts` (stored settings → adapter settings),
|
|
10
|
+
* `route-policy.ts` (what the public server must refuse or map for a session), `installation.ts`
|
|
11
|
+
* (the ready installation and its pinned descriptor), `host-facts.ts` (cards, SELinux and
|
|
12
|
+
* `MemAvailable`/`MemTotal`, per load) and `model-dir.ts` (the single-model lookup `runtime.ts`'s
|
|
13
|
+
* load path uses). Task 2.16 wires the pure check in: `registry.ts` (the full model listing scan),
|
|
14
|
+
* `check.ts` (the route handler behind `compatibility.ts`'s pure verdict) and `prelaunch.ts` (the
|
|
15
|
+
* file-and-compatibility re-check `runtime.ts`'s load path runs before a container is created).
|
|
16
|
+
* Task 2.24 adds `delete.ts`: a deleted model's engine caches and folder, with the bytes freed.
|
|
17
|
+
*
|
|
18
|
+
* Public API of this module is exported from this file only.
|
|
19
|
+
*/
|
|
20
|
+
export * from './compatibility.js';
|
|
21
|
+
export * from '../managed-models/quant-format.js';
|
|
22
|
+
export * from './adapter.js';
|
|
23
|
+
export * from './kv-cache.js';
|
|
24
|
+
export * from './settings.js';
|
|
25
|
+
export * from './route-policy.js';
|
|
26
|
+
export * from './installation.js';
|
|
27
|
+
export * from './host-facts.js';
|
|
28
|
+
export * from './check.js';
|
|
29
|
+
export * from './prelaunch.js';
|
|
30
|
+
export * from './engine.js';
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,cAAc,oBAAoB,CAAA;AAClC,cAAc,mCAAmC,CAAA;AACjD,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PlatformImage, RuntimeDescriptor, RuntimeInstallation } from '../../contracts/index.js';
|
|
2
|
+
import type { InstallationStore, RuntimeDescriptorProvider } from '../environment/index.js';
|
|
3
|
+
export type ContainerPlatform = 'linux/amd64' | 'linux/arm64';
|
|
4
|
+
/** `process.arch` to the descriptor's image key; null for a CPU no image is published for. */
|
|
5
|
+
export declare function containerPlatformFor(arch: string): ContainerPlatform | null;
|
|
6
|
+
export interface ReadyInstallation {
|
|
7
|
+
installation: RuntimeInstallation;
|
|
8
|
+
descriptor: RuntimeDescriptor;
|
|
9
|
+
/** The descriptor's image for this host's platform, pinned by digest. */
|
|
10
|
+
image: PlatformImage;
|
|
11
|
+
}
|
|
12
|
+
export interface ResolveReadyInstallationDeps {
|
|
13
|
+
/** The setup operation's installation records (`InstallationStore`); a torn or foreign file is skipped there. */
|
|
14
|
+
installations: Pick<InstallationStore, 'list'>;
|
|
15
|
+
descriptors: Pick<RuntimeDescriptorProvider, 'forInstallation'>;
|
|
16
|
+
/** This host's container platform; null when the CPU has no published image. */
|
|
17
|
+
platform: ContainerPlatform | null;
|
|
18
|
+
/** The managed engine the load is for (change `add-vllm-runtime`); `tensorrt-llm` when omitted. */
|
|
19
|
+
engineId?: string;
|
|
20
|
+
/** That engine in messages; defaults to its known name, else its id. */
|
|
21
|
+
label?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function resolveReadyInstallation(deps: ResolveReadyInstallationDeps): Promise<ReadyInstallation>;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which TensorRT-LLM installation a load runs (spec `tensorrt-llm-runtime`, "Загрузка без готовой
|
|
3
|
+
* установки"; design D7): only a `ready` one, only with the descriptor it was pinned to
|
|
4
|
+
* (`active_descriptor_id`, read from the descriptor cache — never fetched, so a release published
|
|
5
|
+
* since cannot change what runs), and only with that descriptor's image for this host's CPU. Anything
|
|
6
|
+
* short of that refuses the load with `MANAGED_ADAPTER_UNAVAILABLE` before a container exists.
|
|
7
|
+
*
|
|
8
|
+
* The installations themselves are read by the setup operation's own store (`InstallationStore`,
|
|
9
|
+
* `../environment/installations.ts`): the records under the shared per-user root that both scopes
|
|
10
|
+
* read, so a setup finished by the app is `ready` for the CLI core too. There is one reader of that
|
|
11
|
+
* format; this file only decides which of its installations a load may run.
|
|
12
|
+
*/
|
|
13
|
+
import { AtomicCoreError } from '../../contracts/index.js';
|
|
14
|
+
/** The engine a load needs an installation of when the caller names none (the descriptor's own `engine_id`). */
|
|
15
|
+
const ENGINE_ID = 'tensorrt-llm';
|
|
16
|
+
const LABELS = { 'tensorrt-llm': 'TensorRT-LLM' };
|
|
17
|
+
/** `process.arch` to the descriptor's image key; null for a CPU no image is published for. */
|
|
18
|
+
export function containerPlatformFor(arch) {
|
|
19
|
+
if (arch === 'x64')
|
|
20
|
+
return 'linux/amd64';
|
|
21
|
+
if (arch === 'arm64')
|
|
22
|
+
return 'linux/arm64';
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
function unavailable(message, details) {
|
|
26
|
+
return new AtomicCoreError('MANAGED_ADAPTER_UNAVAILABLE', message, details);
|
|
27
|
+
}
|
|
28
|
+
export async function resolveReadyInstallation(deps) {
|
|
29
|
+
const engineId = deps.engineId ?? ENGINE_ID;
|
|
30
|
+
const label = deps.label ?? LABELS[engineId] ?? engineId;
|
|
31
|
+
const ours = (await deps.installations.list())
|
|
32
|
+
.map((record) => record.installation)
|
|
33
|
+
.filter((i) => i.engine_id === engineId);
|
|
34
|
+
const ready = ours.find((i) => i.status === 'ready' && i.active_descriptor_id !== null);
|
|
35
|
+
if (ready === undefined) {
|
|
36
|
+
const status = ours.map((i) => `${i.installation_id}: ${i.status}`).join(', ');
|
|
37
|
+
throw unavailable(ours.length === 0
|
|
38
|
+
? `The ${label} engine is not installed; set it up before loading a model.`
|
|
39
|
+
: `The ${label} engine is not ready; finish or repair its setup before loading a model.`, status === '' ? undefined : status);
|
|
40
|
+
}
|
|
41
|
+
const resolved = await deps.descriptors.forInstallation(ready.active_descriptor_id);
|
|
42
|
+
if (resolved.kind !== 'available')
|
|
43
|
+
throw resolved.error;
|
|
44
|
+
const { descriptor } = resolved;
|
|
45
|
+
if (descriptor.engine_id !== engineId) {
|
|
46
|
+
throw new AtomicCoreError('MANAGED_METADATA_INVALID', 'The installation is pinned to a descriptor of another engine.', `${descriptor.descriptor_id}: ${descriptor.engine_id}`);
|
|
47
|
+
}
|
|
48
|
+
if (deps.platform === null) {
|
|
49
|
+
throw unavailable(`${label} publishes no image for this CPU architecture.`);
|
|
50
|
+
}
|
|
51
|
+
return { installation: ready, descriptor, image: descriptor.image[deps.platform] };
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=installation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"installation.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/installation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAI1D,gHAAgH;AAChH,MAAM,SAAS,GAAG,cAAc,CAAA;AAChC,MAAM,MAAM,GAA2B,EAAE,cAAc,EAAE,cAAc,EAAE,CAAA;AAIzE,8FAA8F;AAC9F,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,aAAa,CAAA;IACxC,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,aAAa,CAAA;IAC1C,OAAO,IAAI,CAAA;AACb,CAAC;AAqBD,SAAS,WAAW,CAAC,OAAe,EAAE,OAAgB;IACpD,OAAO,IAAI,eAAe,CAAC,6BAA6B,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAkC;IAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAA;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAA;IACxD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;SAC3C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC;SACpC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC,oBAAoB,KAAK,IAAI,CAAC,CAAA;IACvF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,eAAe,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9E,MAAM,WAAW,CACf,IAAI,CAAC,MAAM,KAAK,CAAC;YACf,CAAC,CAAC,OAAO,KAAK,6DAA6D;YAC3E,CAAC,CAAC,OAAO,KAAK,0EAA0E,EAC1F,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CACnC,CAAA;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,oBAA8B,CAAC,CAAA;IAC7F,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW;QAAE,MAAM,QAAQ,CAAC,KAAK,CAAA;IACvD,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAA;IAC/B,IAAI,UAAU,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,eAAe,CACvB,0BAA0B,EAC1B,+DAA+D,EAC/D,GAAG,UAAU,CAAC,aAAa,KAAK,UAAU,CAAC,SAAS,EAAE,CACvD,CAAA;IACH,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,WAAW,CAAC,GAAG,KAAK,gDAAgD,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;AACpF,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The KV-cache numbers the launch (`adapter.ts`) and the memory check (`compatibility.ts`) must agree
|
|
3
|
+
* on, in one module both import: the pure policy never reaches into the adapter (and through it the
|
|
4
|
+
* managed-text lifecycle) for a constant.
|
|
5
|
+
*/
|
|
6
|
+
/** The one default KV-cache fraction: the launch passes it (`adapter.ts`'s `buildTensorrtLlmLaunch`, through the validated settings), the model check
|
|
7
|
+
* and the pre-launch check size their reserve with it (`compatibility.ts`'s `kvCacheReserveBytes`,
|
|
8
|
+
* through the same validated settings), and `src/settings/schema/tensorrt-llm.json` stores it
|
|
9
|
+
* (pinned equal by `settings.test.ts`). Below `trtllm-serve`'s own 0.9 on purpose: at 0.9 an 8 GB
|
|
10
|
+
* card ran out of memory on the engine's non-KV allocations after the KV cache took its share
|
|
11
|
+
* (budget table `_no_capture_init_kv_cache: 3.50 / 0.35`); 0.85 failed too, 0.8 loaded (docs/decisions/2026-09-29-tensorrt-llm-kv-cache-fraction-0-8-and-oom-read-from-the-whole-log.md). */
|
|
12
|
+
export declare const TENSORRT_LLM_DEFAULT_KV_CACHE_FREE_FRACTION = 0.8;
|
|
13
|
+
/**
|
|
14
|
+
* How many full contexts the KV cache holds on a unified-memory card: one full-context request plus
|
|
15
|
+
* a concurrent one. A starting value, not a measurement (docs/decisions/2026-09-29-tensorrt-llm-
|
|
16
|
+
* unified-memory-kv-cache-bounded-by-tokens.md).
|
|
17
|
+
*/
|
|
18
|
+
export declare const TENSORRT_LLM_UNIFIED_KV_CONTEXTS = 2;
|
|
19
|
+
/**
|
|
20
|
+
* The `kv_cache_config.max_tokens` a unified-memory launch writes, and the token count its memory
|
|
21
|
+
* check reserves KV for. On a unified-memory card (GB10/DGX Spark) "free GPU memory" is the system's
|
|
22
|
+
* free RAM, so `--kv_cache_free_gpu_memory_fraction` alone would hand most of the machine's memory to
|
|
23
|
+
* the KV cache whatever the context length; this bounds it to what the configured context needs.
|
|
24
|
+
*/
|
|
25
|
+
export declare function tensorrtLlmUnifiedKvMaxTokens(contextLength: number): number;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The KV-cache numbers the launch (`adapter.ts`) and the memory check (`compatibility.ts`) must agree
|
|
3
|
+
* on, in one module both import: the pure policy never reaches into the adapter (and through it the
|
|
4
|
+
* managed-text lifecycle) for a constant.
|
|
5
|
+
*/
|
|
6
|
+
/** The one default KV-cache fraction: the launch passes it (`adapter.ts`'s `buildTensorrtLlmLaunch`, through the validated settings), the model check
|
|
7
|
+
* and the pre-launch check size their reserve with it (`compatibility.ts`'s `kvCacheReserveBytes`,
|
|
8
|
+
* through the same validated settings), and `src/settings/schema/tensorrt-llm.json` stores it
|
|
9
|
+
* (pinned equal by `settings.test.ts`). Below `trtllm-serve`'s own 0.9 on purpose: at 0.9 an 8 GB
|
|
10
|
+
* card ran out of memory on the engine's non-KV allocations after the KV cache took its share
|
|
11
|
+
* (budget table `_no_capture_init_kv_cache: 3.50 / 0.35`); 0.85 failed too, 0.8 loaded (docs/decisions/2026-09-29-tensorrt-llm-kv-cache-fraction-0-8-and-oom-read-from-the-whole-log.md). */
|
|
12
|
+
export const TENSORRT_LLM_DEFAULT_KV_CACHE_FREE_FRACTION = 0.8;
|
|
13
|
+
/**
|
|
14
|
+
* How many full contexts the KV cache holds on a unified-memory card: one full-context request plus
|
|
15
|
+
* a concurrent one. A starting value, not a measurement (docs/decisions/2026-09-29-tensorrt-llm-
|
|
16
|
+
* unified-memory-kv-cache-bounded-by-tokens.md).
|
|
17
|
+
*/
|
|
18
|
+
export const TENSORRT_LLM_UNIFIED_KV_CONTEXTS = 2;
|
|
19
|
+
/**
|
|
20
|
+
* The `kv_cache_config.max_tokens` a unified-memory launch writes, and the token count its memory
|
|
21
|
+
* check reserves KV for. On a unified-memory card (GB10/DGX Spark) "free GPU memory" is the system's
|
|
22
|
+
* free RAM, so `--kv_cache_free_gpu_memory_fraction` alone would hand most of the machine's memory to
|
|
23
|
+
* the KV cache whatever the context length; this bounds it to what the configured context needs.
|
|
24
|
+
*/
|
|
25
|
+
export function tensorrtLlmUnifiedKvMaxTokens(contextLength) {
|
|
26
|
+
return contextLength * TENSORRT_LLM_UNIFIED_KV_CONTEXTS;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=kv-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kv-cache.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/kv-cache.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;8LAK8L;AAC9L,MAAM,CAAC,MAAM,2CAA2C,GAAG,GAAG,CAAA;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAA;AAEjD;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,aAAqB;IACjE,OAAO,aAAa,GAAG,gCAAgC,CAAA;AACzD,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { GpuFacts, RuntimeDescriptor } from '../../contracts/index.js';
|
|
2
|
+
import type { HostMemory, ManagedCheckEngine, ResolvedCheckpoint } from '../managed-models/compatibility.js';
|
|
3
|
+
import type { ManagedModel } from '../managed-models/model-dir.js';
|
|
4
|
+
export interface VerifyModelFilesOptions {
|
|
5
|
+
/** The card this load is about to use; already resolved (and possibly substituted) by the caller. */
|
|
6
|
+
gpuId: string;
|
|
7
|
+
/** The engine's hooks for the shared check (its memory rule, its checkpoint quirks). */
|
|
8
|
+
engine: ManagedCheckEngine;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The pre-`stopPrevious` half of the pre-launch check: files, architecture, format and compute
|
|
12
|
+
* capability — never memory (see the file banner). Throws `MODEL_FILE_NOT_FOUND`/`MODEL_FILE_CORRUPT`
|
|
13
|
+
* for a missing or resized checkpoint file, or the pure check's own error
|
|
14
|
+
* (`MODEL_INCOMPATIBLE`/`MANAGED_METADATA_INVALID`/`MANAGED_PREREQUISITE_BLOCKED`) for a checkpoint
|
|
15
|
+
* that no longer checks out. On success, returns the `ResolvedCheckpoint` `checkModelMemory` needs
|
|
16
|
+
* for the memory half — including `config.json`'s own verified `architectures`, which is what
|
|
17
|
+
* `runtime.ts` now looks the descriptor's `model_families` entry up by (finding 5), never
|
|
18
|
+
* `model.yml`'s possibly-stale copy.
|
|
19
|
+
*/
|
|
20
|
+
export declare function verifyModelFilesAndCompatibility(model: Pick<ManagedModel, 'dir' | 'repository' | 'revision' | 'files'>, descriptor: RuntimeDescriptor, gpus: readonly GpuFacts[], hostMemory: HostMemory, options: VerifyModelFilesOptions): Promise<ResolvedCheckpoint>;
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The pre-launch check `TensorrtLlmRuntime.load` runs once `deps.model` has resolved an installed
|
|
3
|
+
* model (task 2.16, spec `tensorrt-llm-models`, "Проверка файлов при загрузке"): every file
|
|
4
|
+
* `model.yml` recorded is still on disk at its declared size — a shard deleted after download is
|
|
5
|
+
* refused by name, the way a corrupt GGUF already is for llama.cpp (`MODEL_FILE_NOT_FOUND`/
|
|
6
|
+
* `MODEL_FILE_CORRUPT`, `../llamacpp/load-plan.ts`'s own convention, reused here) — and the
|
|
7
|
+
* compatibility verdict is recomputed against `config.json` and `hf_quant_config.json` exactly as
|
|
8
|
+
* they sit in the model's directory right now, not as `model.yml` last recorded them, and against
|
|
9
|
+
* the card this load is about to use (its `gpu_id` is passed in, already resolved and possibly
|
|
10
|
+
* substituted by the caller — this never re-picks a card).
|
|
11
|
+
*
|
|
12
|
+
* `verifyModelFilesAndCompatibility` below is everything above the memory line only — files,
|
|
13
|
+
* architecture, format, compute capability — and returns a `ResolvedCheckpoint`
|
|
14
|
+
* (`compatibility.ts`) rather than a final verdict, on purpose: memory is checked separately, later,
|
|
15
|
+
* by `checkModelMemory` (re-exported from `compatibility.ts`) called from `runtime.ts`'s
|
|
16
|
+
* `beforeCreate` hook, once `stopPrevious` has actually freed the card (task 2.16w round 1, finding
|
|
17
|
+
* 1 (Critical) — reading free memory here, before eviction, would refuse a same-card model switch
|
|
18
|
+
* outright on a single-GPU host). No container exists before either call; a failure in either never
|
|
19
|
+
* creates one.
|
|
20
|
+
*
|
|
21
|
+
* `hf_quant_config.json` is read whenever it exists on disk (finding 4), independent of whether
|
|
22
|
+
* `model.yml`'s own `files` list happens to mention it — `model.yml` is a record the app/CLI wrote
|
|
23
|
+
* when the download finished, and can be stale or incomplete in ways the file itself on disk is not.
|
|
24
|
+
*
|
|
25
|
+
* Direct `node:fs/promises`, no injected `exec`/`readFile`: reading the model's own checkpoint
|
|
26
|
+
* directory is local disk I/O, the same convention `model-dir.ts` already uses for `model.yml`
|
|
27
|
+
* itself — nothing here is a shell command or a network call that would need faking on a non-Linux
|
|
28
|
+
* test host.
|
|
29
|
+
*/
|
|
30
|
+
import { open, readFile, stat } from 'node:fs/promises';
|
|
31
|
+
import { join } from 'node:path';
|
|
32
|
+
import { AtomicCoreError } from '../../contracts/index.js';
|
|
33
|
+
import { checkCheckpointFiles, normalizeWeightNames, safetensorsHeaderLength, safetensorsTensorNames, weightSafetensorsFiles, } from '../managed-models/compatibility.js';
|
|
34
|
+
const CONFIG_FILE = 'config.json';
|
|
35
|
+
const HF_QUANT_CONFIG_FILE = 'hf_quant_config.json';
|
|
36
|
+
/** A `model.yml` file path, joined onto the model directory; refuses one that would climb out of it. */
|
|
37
|
+
function safeJoin(dir, relativePath) {
|
|
38
|
+
const segments = relativePath.split('/');
|
|
39
|
+
if (segments.some((segment) => segment === '' || segment === '.' || segment === '..')) {
|
|
40
|
+
throw new AtomicCoreError('MANAGED_METADATA_INVALID', `model.yml names an unsafe file path: ${relativePath}`, relativePath);
|
|
41
|
+
}
|
|
42
|
+
return join(dir, ...segments);
|
|
43
|
+
}
|
|
44
|
+
async function fileSizeOnDisk(path) {
|
|
45
|
+
try {
|
|
46
|
+
return (await stat(path)).size;
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/** Every file `model.yml` lists, present at its recorded size; a violation refuses by name. */
|
|
53
|
+
async function assertFilesOnDisk(dir, files) {
|
|
54
|
+
for (const file of files) {
|
|
55
|
+
const path = safeJoin(dir, file.path);
|
|
56
|
+
const size = await fileSizeOnDisk(path);
|
|
57
|
+
if (size === undefined) {
|
|
58
|
+
throw new AtomicCoreError('MODEL_FILE_NOT_FOUND', `The model is missing a file recorded in model.yml: ${file.path}`, path);
|
|
59
|
+
}
|
|
60
|
+
if (size !== file.size) {
|
|
61
|
+
throw new AtomicCoreError('MODEL_FILE_CORRUPT', `${file.path} is ${size} bytes on disk, but model.yml recorded ${file.size}.`, path);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/** `null` when the file does not exist; throws `MANAGED_METADATA_INVALID` for one that exists but is not a JSON object. */
|
|
66
|
+
async function readJsonObjectFile(path) {
|
|
67
|
+
let text;
|
|
68
|
+
try {
|
|
69
|
+
text = await readFile(path, 'utf8');
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
let parsed;
|
|
75
|
+
try {
|
|
76
|
+
parsed = JSON.parse(text);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
throw new AtomicCoreError('MANAGED_METADATA_INVALID', `${path} is not valid JSON.`, String(error));
|
|
80
|
+
}
|
|
81
|
+
if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
82
|
+
throw new AtomicCoreError('MANAGED_METADATA_INVALID', `${path} is not a JSON object.`, path);
|
|
83
|
+
}
|
|
84
|
+
return parsed;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The tensor names in one `.safetensors` file's own header (8-byte little-endian length, then JSON):
|
|
88
|
+
* what the file really holds, unlike `model.safetensors.index.json`, which a repository can ship
|
|
89
|
+
* stale or copied from another model (PrimeIntellect/GLM-0.5B: an 18k-name index over a 429-tensor
|
|
90
|
+
* file). `undefined` for a file that does not shape up as safetensors — the shape checks are then
|
|
91
|
+
* skipped, never failed on a header this core cannot read.
|
|
92
|
+
*/
|
|
93
|
+
async function tensorNamesOnDisk(path) {
|
|
94
|
+
const handle = await open(path, 'r').catch(() => undefined);
|
|
95
|
+
if (handle === undefined)
|
|
96
|
+
return undefined;
|
|
97
|
+
try {
|
|
98
|
+
const prefix = Buffer.alloc(8);
|
|
99
|
+
if ((await handle.read(prefix, 0, 8, 0)).bytesRead !== 8)
|
|
100
|
+
return undefined;
|
|
101
|
+
const length = safetensorsHeaderLength(prefix);
|
|
102
|
+
if (length === undefined)
|
|
103
|
+
return undefined;
|
|
104
|
+
const header = Buffer.alloc(length);
|
|
105
|
+
if ((await handle.read(header, 0, length, 8)).bytesRead !== length)
|
|
106
|
+
return undefined;
|
|
107
|
+
return safetensorsTensorNames(JSON.parse(header.toString('utf8')));
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
finally {
|
|
113
|
+
await handle.close();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** Every weight file's tensor names, folded; `undefined` when there is none or any header is unreadable. */
|
|
117
|
+
async function weightNamesOnDisk(dir, files) {
|
|
118
|
+
const weights = weightSafetensorsFiles(files);
|
|
119
|
+
if (weights.length === 0)
|
|
120
|
+
return undefined;
|
|
121
|
+
const names = [];
|
|
122
|
+
for (const file of weights) {
|
|
123
|
+
const own = await tensorNamesOnDisk(safeJoin(dir, file.path));
|
|
124
|
+
if (own === undefined)
|
|
125
|
+
return undefined;
|
|
126
|
+
names.push(...own);
|
|
127
|
+
}
|
|
128
|
+
return normalizeWeightNames(names);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* The pre-`stopPrevious` half of the pre-launch check: files, architecture, format and compute
|
|
132
|
+
* capability — never memory (see the file banner). Throws `MODEL_FILE_NOT_FOUND`/`MODEL_FILE_CORRUPT`
|
|
133
|
+
* for a missing or resized checkpoint file, or the pure check's own error
|
|
134
|
+
* (`MODEL_INCOMPATIBLE`/`MANAGED_METADATA_INVALID`/`MANAGED_PREREQUISITE_BLOCKED`) for a checkpoint
|
|
135
|
+
* that no longer checks out. On success, returns the `ResolvedCheckpoint` `checkModelMemory` needs
|
|
136
|
+
* for the memory half — including `config.json`'s own verified `architectures`, which is what
|
|
137
|
+
* `runtime.ts` now looks the descriptor's `model_families` entry up by (finding 5), never
|
|
138
|
+
* `model.yml`'s possibly-stale copy.
|
|
139
|
+
*/
|
|
140
|
+
export async function verifyModelFilesAndCompatibility(model, descriptor, gpus, hostMemory, options) {
|
|
141
|
+
await assertFilesOnDisk(model.dir, model.files);
|
|
142
|
+
const configJson = await readJsonObjectFile(join(model.dir, CONFIG_FILE));
|
|
143
|
+
if (configJson === null) {
|
|
144
|
+
throw new AtomicCoreError('MODEL_FILE_NOT_FOUND', 'The model has no config.json in its directory.', join(model.dir, CONFIG_FILE));
|
|
145
|
+
}
|
|
146
|
+
// Read whenever the file is actually there, independent of model.yml's own files list (finding 4).
|
|
147
|
+
const hfQuantConfigJson = await readJsonObjectFile(join(model.dir, HF_QUANT_CONFIG_FILE));
|
|
148
|
+
// The same tensor names the download-time check gets from the app, so a checkpoint downloaded
|
|
149
|
+
// before that check knew to look (or by an older app) is refused here, before any container.
|
|
150
|
+
const weightNames = await weightNamesOnDisk(model.dir, model.files);
|
|
151
|
+
const input = {
|
|
152
|
+
repository: model.repository ?? '',
|
|
153
|
+
revision: model.revision ?? '',
|
|
154
|
+
config_json: configJson,
|
|
155
|
+
hf_quant_config_json: hfQuantConfigJson,
|
|
156
|
+
files: model.files,
|
|
157
|
+
gpu_id: options.gpuId,
|
|
158
|
+
...(weightNames === undefined ? {} : { weight_names: weightNames }),
|
|
159
|
+
};
|
|
160
|
+
const result = checkCheckpointFiles(input, descriptor, gpus, hostMemory, options.engine);
|
|
161
|
+
if (!result.ok) {
|
|
162
|
+
// `FilesCheckResult`'s own type guarantees `result.verdict.verdict` is the failed branch here.
|
|
163
|
+
const { code, message, details } = result.verdict.verdict.error;
|
|
164
|
+
throw new AtomicCoreError(code, message, details);
|
|
165
|
+
}
|
|
166
|
+
return result.resolved;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=prelaunch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prelaunch.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/prelaunch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the public server (`:1337`) must know about a `tensorrt-llm` session to route it honestly
|
|
3
|
+
* (spec `tensorrt-llm-runtime`, "Возможности модели объявляются, а не угадываются" and "Переполнение
|
|
4
|
+
* контекста без авто-роста"; design D9): only the routes the adapter declares, tool calls only when
|
|
5
|
+
* the pinned descriptor names a parser for the model's family, and `trtllm-serve`'s context-overflow
|
|
6
|
+
* text mapped to OpenAI's `context_length_exceeded` — never a context increase and a replay.
|
|
7
|
+
*/
|
|
8
|
+
import type { SessionRoutePolicy } from '../shared/index.js';
|
|
9
|
+
import type { ManagedTextCapabilities } from '../managed-text/index.js';
|
|
10
|
+
/**
|
|
11
|
+
* `capabilities` are the loaded session's own, `limits` the context and output cap it was loaded
|
|
12
|
+
* with. `null` — a session the core did not start and so cannot describe (one the app registered as
|
|
13
|
+
* external) — keeps the route declaration and the error mapping but leaves tool calls and JSON
|
|
14
|
+
* output to the engine: refusing them would guess just as much as allowing.
|
|
15
|
+
*/
|
|
16
|
+
export declare function tensorrtLlmRoutePolicy(capabilities: ManagedTextCapabilities | null, limits?: {
|
|
17
|
+
contextLength: number;
|
|
18
|
+
maxOutputTokens: number;
|
|
19
|
+
} | null): SessionRoutePolicy;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TENSORRT_LLM_ROUTES, mapTensorrtLlmContextLengthError } from './adapter.js';
|
|
2
|
+
/**
|
|
3
|
+
* `capabilities` are the loaded session's own, `limits` the context and output cap it was loaded
|
|
4
|
+
* with. `null` — a session the core did not start and so cannot describe (one the app registered as
|
|
5
|
+
* external) — keeps the route declaration and the error mapping but leaves tool calls and JSON
|
|
6
|
+
* output to the engine: refusing them would guess just as much as allowing.
|
|
7
|
+
*/
|
|
8
|
+
export function tensorrtLlmRoutePolicy(capabilities, limits = null) {
|
|
9
|
+
return {
|
|
10
|
+
routes: TENSORRT_LLM_ROUTES,
|
|
11
|
+
tools: capabilities?.tools ?? true,
|
|
12
|
+
structuredOutput: capabilities?.structured_output ?? true,
|
|
13
|
+
mapError: mapTensorrtLlmContextLengthError,
|
|
14
|
+
...(limits === null ? {} : limits),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=route-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-policy.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/route-policy.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAA;AAEpF;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAA4C,EAC5C,SAAoE,IAAI;IAExE,OAAO;QACL,MAAM,EAAE,mBAAmB;QAC3B,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,IAAI;QAClC,gBAAgB,EAAE,YAAY,EAAE,iBAAiB,IAAI,IAAI;QACzD,QAAQ,EAAE,gCAAgC;QAC1C,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;KACnC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TensorrtLlmSettings } from './adapter.js';
|
|
2
|
+
/**
|
|
3
|
+
* Stored values, overlaid by a load's own overrides (the control API's `overrides`), reduced to this
|
|
4
|
+
* provider's keys and validated. Anything else in either object — another provider's key, a stray
|
|
5
|
+
* field a client sent — is ignored rather than passed to the engine.
|
|
6
|
+
*/
|
|
7
|
+
export declare function tensorrtLlmSettings(stored: Record<string, unknown>, overrides?: Record<string, unknown>): TensorrtLlmSettings;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `tensorrt-llm` provider settings as the settings store holds them (`src/settings/schema/
|
|
3
|
+
* tensorrt-llm.json`, task 2.14) turned into what the adapter validates (`TensorrtLlmSettings`). The
|
|
4
|
+
* store keeps "not set" as a value a settings form can show — `gpu_id: ''`, `load_timeout_seconds:
|
|
5
|
+
* 0` — while the adapter spells it `null`; this is the one place that translates between the two.
|
|
6
|
+
* Validation itself is the adapter's (`validateTensorrtLlmSettings`), so a load is refused with
|
|
7
|
+
* `INVALID_ARGUMENT` before any container exists (spec "Настройки MUST валидироваться схемой до
|
|
8
|
+
* запуска контейнера").
|
|
9
|
+
*/
|
|
10
|
+
import { validateTensorrtLlmSettings } from './adapter.js';
|
|
11
|
+
import { GENERATION_DEFAULT_KEYS } from '../managed-text/generation-defaults.js';
|
|
12
|
+
const KEYS = [
|
|
13
|
+
'gpu_id',
|
|
14
|
+
'context_length',
|
|
15
|
+
'max_output_tokens',
|
|
16
|
+
'kv_cache_free_gpu_memory_fraction',
|
|
17
|
+
'max_batch_size',
|
|
18
|
+
'kv_cache_max_tokens',
|
|
19
|
+
'cuda_graphs',
|
|
20
|
+
'kv_cache_dtype',
|
|
21
|
+
'load_timeout_seconds',
|
|
22
|
+
'enable_prefix_caching',
|
|
23
|
+
'overlap_scheduler',
|
|
24
|
+
'capacity_scheduler_policy',
|
|
25
|
+
'dtype',
|
|
26
|
+
...Object.values(GENERATION_DEFAULT_KEYS),
|
|
27
|
+
];
|
|
28
|
+
/**
|
|
29
|
+
* Stored values, overlaid by a load's own overrides (the control API's `overrides`), reduced to this
|
|
30
|
+
* provider's keys and validated. Anything else in either object — another provider's key, a stray
|
|
31
|
+
* field a client sent — is ignored rather than passed to the engine.
|
|
32
|
+
*/
|
|
33
|
+
export function tensorrtLlmSettings(stored, overrides = {}) {
|
|
34
|
+
const merged = {};
|
|
35
|
+
for (const key of KEYS) {
|
|
36
|
+
const value = key in overrides ? overrides[key] : stored[key];
|
|
37
|
+
if (value !== undefined)
|
|
38
|
+
merged[key] = value;
|
|
39
|
+
}
|
|
40
|
+
if (typeof merged['gpu_id'] === 'string' && merged['gpu_id'].trim() === '')
|
|
41
|
+
merged['gpu_id'] = null;
|
|
42
|
+
if (merged['load_timeout_seconds'] === 0)
|
|
43
|
+
merged['load_timeout_seconds'] = null;
|
|
44
|
+
if (merged['kv_cache_max_tokens'] === 0)
|
|
45
|
+
merged['kv_cache_max_tokens'] = null;
|
|
46
|
+
return validateTensorrtLlmSettings(merged);
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/runtime/tensorrt-llm/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAA;AAE1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAA;AAEhF,MAAM,IAAI,GAAG;IACX,QAAQ;IACR,gBAAgB;IAChB,mBAAmB;IACnB,mCAAmC;IACnC,gBAAgB;IAChB,qBAAqB;IACrB,aAAa;IACb,gBAAgB;IAChB,sBAAsB;IACtB,uBAAuB;IACvB,mBAAmB;IACnB,2BAA2B;IAC3B,OAAO;IACP,GAAG,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC;CACjC,CAAA;AAEV;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA+B,EAC/B,YAAqC,EAAE;IAEvC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC7D,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAC9C,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IACnG,IAAI,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAAE,MAAM,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAA;IAC/E,IAAI,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC;QAAE,MAAM,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAA;IAC7E,OAAO,2BAA2B,CAAC,MAAM,CAAC,CAAA;AAC5C,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { ModelFamilySupport } from '../../contracts/index.js';
|
|
2
|
+
import { type ManagedExitClassification, type ManagedLaunchContext, type ManagedEngineLaunch, type ManagedRoute, type ManagedTextAdapter, type ManagedTextCapabilities } from '../managed-text/index.js';
|
|
3
|
+
import { type VllmSettings } from './settings.js';
|
|
4
|
+
/** The port `vllm serve` listens on inside its container. */
|
|
5
|
+
export declare const VLLM_CONTAINER_PORT = 8000;
|
|
6
|
+
/** Below this much card memory, `cuda_graphs: auto` runs eager: graphs cost memory a small card needs. */
|
|
7
|
+
export declare const VLLM_CUDA_GRAPHS_MIN_VRAM_BYTES: number;
|
|
8
|
+
/** What core decides for a launch from the card as it stands right before the container (design D9). */
|
|
9
|
+
export interface VllmLaunchPlan {
|
|
10
|
+
/** `--kv-cache-memory-bytes` from the KV cache size setting; `null` lets vLLM size it within its share. */
|
|
11
|
+
kvCacheMemoryBytes: number | null;
|
|
12
|
+
/** `--gpu-memory-utilization`: what vLLM's start-up check compares the card's free memory against. */
|
|
13
|
+
gpuMemoryUtilization: number;
|
|
14
|
+
/**
|
|
15
|
+
* The checkpoint has a vision or audio part: `--limit-mm-per-prompt` then reserves nothing for it.
|
|
16
|
+
* A text-only model gets no multimodal flag at all.
|
|
17
|
+
*/
|
|
18
|
+
multimodal: boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare function buildVllmLaunch(context: ManagedLaunchContext<VllmSettings>): ManagedEngineLaunch;
|
|
21
|
+
/** A base for engine start-up, imports and the first graph compilation; more per GiB of weights. */
|
|
22
|
+
export declare const VLLM_READINESS_BASE_MS: number;
|
|
23
|
+
export declare const VLLM_READINESS_PER_GIB_MS = 20000;
|
|
24
|
+
export declare function vllmReadinessTimeoutMs(weightBytes: number, settings: VllmSettings): number;
|
|
25
|
+
export declare function classifyVllmExit(log: string, exitCode: number | null): ManagedExitClassification;
|
|
26
|
+
export declare function vllmCapabilities(context: {
|
|
27
|
+
settings: VllmSettings;
|
|
28
|
+
family: ModelFamilySupport | null;
|
|
29
|
+
}): ManagedTextCapabilities;
|
|
30
|
+
export declare const VLLM_ROUTES: readonly ManagedRoute[];
|
|
31
|
+
export declare const VLLM_REWRITABLE_ROUTES: readonly ManagedRoute[];
|
|
32
|
+
/**
|
|
33
|
+
* Caps the output a request asks for at `max_output_tokens` (one key, as the client sent it); a
|
|
34
|
+
* request that asks for none is capped by vLLM's launch default instead. Refuses what the session cannot do with `:1337`'s own wording
|
|
35
|
+
* and code: tools without a parser, structured output the family does not declare, images.
|
|
36
|
+
*/
|
|
37
|
+
export declare function vllmRewriteRequestBody(route: string, body: unknown, settings: VllmSettings, capabilities?: ManagedTextCapabilities): unknown;
|
|
38
|
+
/** vLLM's context overflow as OpenAI's `context_length_exceeded`; anything else relayed as it is. */
|
|
39
|
+
export declare function mapVllmContextLengthError(status: number, body: string): object | null;
|
|
40
|
+
/**
|
|
41
|
+
* Reasoning parsers that may file a no-thinking reply under `reasoning_content` (design D8: the same
|
|
42
|
+
* hook as TensorRT-LLM's; the live run of task 6.1 confirms which of vLLM 0.31's do).
|
|
43
|
+
*/
|
|
44
|
+
export declare const VLLM_REASONING_AT_START_PARSERS: ReadonlySet<string>;
|
|
45
|
+
export declare function vllmRewriteResponseFor(route: string, requestBody: unknown, family: ModelFamilySupport | null): ((json: Record<string, unknown>) => Record<string, unknown>) | null;
|
|
46
|
+
export declare const vllmAdapter: ManagedTextAdapter<VllmSettings>;
|