@atomic-chat/core 0.5.1 → 0.13.6
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 +46 -5
- package/dist/core/atomic-core.js +25 -0
- package/dist/core/atomic-core.js.map +1 -1
- package/dist/core/create.js +523 -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 +38 -0
- package/dist/core/prism.js +43 -0
- package/dist/core/prism.js.map +1 -0
- package/dist/core/public-server.d.ts +7 -0
- package/dist/core/public-server.js +5 -2
- 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/tensorrt-llm.d.ts +169 -0
- package/dist/core/tensorrt-llm.js +428 -0
- package/dist/core/tensorrt-llm.js.map +1 -0
- package/dist/core/types.d.ts +43 -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 +71 -0
- package/dist/decision/process.js +142 -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 +7 -4
- package/dist/diffusion/args.js +31 -7
- package/dist/diffusion/args.js.map +1 -1
- package/dist/diffusion/compat.d.ts +1 -1
- package/dist/diffusion/compat.js +6 -2
- package/dist/diffusion/compat.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 +64 -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 +21 -1
- package/dist/diffusion/tracker.js +43 -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/validate.js +2 -2
- package/dist/diffusion/validate.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/diffusion/workflow.d.ts +8 -2
- package/dist/diffusion/workflow.js +13 -5
- package/dist/diffusion/workflow.js.map +1 -1
- package/dist/downloads/downloader.d.ts +22 -0
- package/dist/downloads/downloader.js +57 -2
- package/dist/downloads/downloader.js.map +1 -1
- package/dist/downloads/protocol.d.ts +3 -8
- package/dist/downloads/protocol.js.map +1 -1
- package/dist/downloads/segmented.d.ts +40 -0
- package/dist/downloads/segmented.js +170 -0
- package/dist/downloads/segmented.js.map +1 -0
- 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 +70 -0
- package/dist/embedding/process.js +140 -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 +28 -0
- package/dist/models/compatibility/inspect.js +90 -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 +62 -0
- package/dist/models/compatibility/service.js +138 -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 +57 -0
- package/dist/models/gguf/tensors.js +239 -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 +283 -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 +284 -0
- package/dist/runtime/managed-text/lifecycle.js +896 -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 +33 -0
- package/dist/runtime/managed-text/readiness.js +88 -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 +16 -0
- package/dist/runtime/shared/ports.js +42 -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 +247 -0
- package/dist/runtime/tensorrt-llm/adapter.js +1028 -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 +22 -0
- package/dist/runtime/tensorrt-llm/check.js.map +1 -0
- package/dist/runtime/tensorrt-llm/compatibility.d.ts +124 -0
- package/dist/runtime/tensorrt-llm/compatibility.js +213 -0
- package/dist/runtime/tensorrt-llm/compatibility.js.map +1 -0
- package/dist/runtime/tensorrt-llm/cuda-graphs.d.ts +32 -0
- package/dist/runtime/tensorrt-llm/cuda-graphs.js +33 -0
- package/dist/runtime/tensorrt-llm/cuda-graphs.js.map +1 -0
- package/dist/runtime/tensorrt-llm/delete.d.ts +15 -0
- package/dist/runtime/tensorrt-llm/delete.js +60 -0
- package/dist/runtime/tensorrt-llm/delete.js.map +1 -0
- package/dist/runtime/tensorrt-llm/engine.d.ts +3 -0
- package/dist/runtime/tensorrt-llm/engine.js +30 -0
- package/dist/runtime/tensorrt-llm/engine.js.map +1 -0
- package/dist/runtime/tensorrt-llm/guest-files.d.ts +8 -0
- package/dist/runtime/tensorrt-llm/guest-files.js +49 -0
- package/dist/runtime/tensorrt-llm/guest-files.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 +41 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js +48 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js.map +1 -0
- package/dist/runtime/tensorrt-llm/location.d.ts +20 -0
- package/dist/runtime/tensorrt-llm/location.js +48 -0
- package/dist/runtime/tensorrt-llm/location.js.map +1 -0
- package/dist/runtime/tensorrt-llm/model-dir.d.ts +38 -0
- package/dist/runtime/tensorrt-llm/model-dir.js +137 -0
- package/dist/runtime/tensorrt-llm/model-dir.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/quant-format.d.ts +65 -0
- package/dist/runtime/tensorrt-llm/quant-format.js +189 -0
- package/dist/runtime/tensorrt-llm/quant-format.js.map +1 -0
- package/dist/runtime/tensorrt-llm/registry.d.ts +26 -0
- package/dist/runtime/tensorrt-llm/registry.js +68 -0
- package/dist/runtime/tensorrt-llm/registry.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/runtime.d.ts +130 -0
- package/dist/runtime/tensorrt-llm/runtime.js +395 -0
- package/dist/runtime/tensorrt-llm/runtime.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 +16 -1
- 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 +172 -10
- 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 +18 -0
- package/dist/server/public/gates.js +41 -14
- package/dist/server/public/gates.js.map +1 -1
- package/dist/server/public/index.d.ts +6 -2
- package/dist/server/public/index.js +23 -7
- 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 +91 -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 +2 -2
- 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
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
* under `<data>/diffusion/models/`. Port of `install.rs` in `tauri-plugin-atomic-diffusion` (app
|
|
4
4
|
* commit `767ff6350`).
|
|
5
5
|
*
|
|
6
|
-
* The download
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* The download, the extraction and the removal of a build are the engine-builds module's
|
|
7
|
+
* (`src/engine-builds/`, change `move-sdcpp-mlx-install-to-core`). This module keeps what both
|
|
8
|
+
* share with image generation: the install record and its marker, the probe that a tree is
|
|
9
|
+
* stable-diffusion.cpp, the listing a load picks its build from, and the model-file store.
|
|
9
10
|
*/
|
|
10
|
-
import type { DiffusionBackendInstallRecord, DiffusionModelFile
|
|
11
|
+
import type { AtomicCoreError, DiffusionBackendInstallRecord, DiffusionModelFile } from '../contracts/index.js';
|
|
12
|
+
import type { ExitInfo } from '../runtime/llamacpp/index.js';
|
|
11
13
|
export declare const OWNER_MARKER = ".atomic-owned";
|
|
12
14
|
export declare const INSTALL_RECORD = "install.json";
|
|
13
15
|
/**
|
|
@@ -36,20 +38,42 @@ export declare function writeInstallRecord(dir: string, record: DiffusionBackend
|
|
|
36
38
|
export declare function readInstallRecord(dir: string): Promise<DiffusionBackendInstallRecord | undefined>;
|
|
37
39
|
export declare function isOwned(dir: string): Promise<boolean>;
|
|
38
40
|
export declare function probeOutputIsSdcpp(text: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* The verdict on a finished `--help` run: nothing when the output is stable-diffusion.cpp's,
|
|
43
|
+
* otherwise the error to raise. A binary the OS loader could not start is a missing runtime, not
|
|
44
|
+
* the wrong program, so the exit code and the loader's own words are read before the output is.
|
|
45
|
+
*/
|
|
46
|
+
export declare function probeVerdict(binary: string, text: string, exit: ExitInfo, platform: NodeJS.Platform): AtomicCoreError | undefined;
|
|
39
47
|
/**
|
|
40
48
|
* Run `<binary> --help` and check that the output is stable-diffusion.cpp's. A spawn failure is
|
|
41
49
|
* retried (a scanner may still be holding the file); a binary that never answers is killed.
|
|
42
50
|
*/
|
|
43
51
|
export declare function probeBinary(binary: string, deps?: InstallDeps): Promise<void>;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
52
|
+
export interface HelpProbeOptions {
|
|
53
|
+
platform: NodeJS.Platform;
|
|
54
|
+
timeoutMs: number;
|
|
55
|
+
deps: Pick<InstallDeps, 'env' | 'spawnRetryDelayMs' | 'log'>;
|
|
56
|
+
/** The `ENGINE_INSTALL_FAILED` message for a binary that never answers, and for one that never starts. */
|
|
57
|
+
noResponse: string;
|
|
58
|
+
couldNotStart: string;
|
|
59
|
+
}
|
|
48
60
|
/**
|
|
49
|
-
*
|
|
50
|
-
*
|
|
61
|
+
* Run `<binary> --help` from its own folder and answer how it exited and what it printed. A spawn
|
|
62
|
+
* failure is retried (a scanner may still be holding the freshly written file); a binary that never
|
|
63
|
+
* answers is killed. Shared by every engine probe (sd.cpp here, `mlx-server` in `engine-builds/`).
|
|
51
64
|
*/
|
|
52
|
-
export declare function
|
|
65
|
+
export declare function runHelpProbe(binary: string, options: HelpProbeOptions): Promise<{
|
|
66
|
+
exit: ExitInfo;
|
|
67
|
+
text: string;
|
|
68
|
+
}>;
|
|
69
|
+
/**
|
|
70
|
+
* An unpacked tree made runnable and checked: `sd-server` present, the executables marked as such,
|
|
71
|
+
* and `sd-cli` (else `sd-server`) answering `--help` as stable-diffusion.cpp. Throws
|
|
72
|
+
* `ENGINE_INSTALL_FAILED` otherwise.
|
|
73
|
+
*/
|
|
74
|
+
export declare function prepareSdcppTree(dir: string, deps?: InstallDeps): Promise<void>;
|
|
75
|
+
/** Every `<root>/<tag>/<backendId>/install.json` with its marker and its server binary, newest first. */
|
|
76
|
+
export declare function listInstalledBackends(backendsRoot: string, platform?: NodeJS.Platform): Promise<DiffusionBackendInstallRecord[]>;
|
|
53
77
|
/**
|
|
54
78
|
* Regular files under the models root, recursively, with `/`-separated relative paths. Hidden files
|
|
55
79
|
* and in-flight downloads are skipped.
|
|
@@ -3,14 +3,15 @@
|
|
|
3
3
|
* under `<data>/diffusion/models/`. Port of `install.rs` in `tauri-plugin-atomic-diffusion` (app
|
|
4
4
|
* commit `767ff6350`).
|
|
5
5
|
*
|
|
6
|
-
* The download
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* The download, the extraction and the removal of a build are the engine-builds module's
|
|
7
|
+
* (`src/engine-builds/`, change `move-sdcpp-mlx-install-to-core`). This module keeps what both
|
|
8
|
+
* share with image generation: the install record and its marker, the probe that a tree is
|
|
9
|
+
* stable-diffusion.cpp, the listing a load picks its build from, and the model-file store.
|
|
9
10
|
*/
|
|
10
11
|
import { chmod, mkdir, readdir, readFile, rm, rmdir, stat, writeFile } from 'node:fs/promises';
|
|
11
12
|
import { dirname, join, relative, sep } from 'node:path';
|
|
12
13
|
import { buildProcessEnv, spawnManaged } from '../runtime/shared/index.js';
|
|
13
|
-
import { locate
|
|
14
|
+
import { locate } from './containment.js';
|
|
14
15
|
import { diffusionError, ioError } from './errors.js';
|
|
15
16
|
export const OWNER_MARKER = '.atomic-owned';
|
|
16
17
|
export const INSTALL_RECORD = 'install.json';
|
|
@@ -26,6 +27,20 @@ export const PROBE_TIMEOUT_MS = 120_000;
|
|
|
26
27
|
export const PROBE_SPAWN_ATTEMPTS = 3;
|
|
27
28
|
export const PROBE_SPAWN_RETRY_DELAY_MS = 1_000;
|
|
28
29
|
const PROBE_MARKERS = ['stable-diffusion.cpp', '--cfg-scale'];
|
|
30
|
+
/**
|
|
31
|
+
* NTSTATUS codes a Windows process ends with when the loader gives up before `main`, so it prints
|
|
32
|
+
* nothing of its own. Upstream's Windows ROCm archive, for one, imports `amdhip64_7.dll` and
|
|
33
|
+
* `hipblas.dll` from an installed HIP SDK without shipping them.
|
|
34
|
+
*/
|
|
35
|
+
const WINDOWS_LOADER_FAILURES = new Map([
|
|
36
|
+
[0xc000_0135, 'STATUS_DLL_NOT_FOUND'],
|
|
37
|
+
[0xc000_0138, 'STATUS_ORDINAL_NOT_FOUND'],
|
|
38
|
+
[0xc000_0139, 'STATUS_ENTRYPOINT_NOT_FOUND'],
|
|
39
|
+
[0xc000_007b, 'STATUS_INVALID_IMAGE_FORMAT'],
|
|
40
|
+
[0xc000_0142, 'STATUS_DLL_INIT_FAILED'],
|
|
41
|
+
]);
|
|
42
|
+
/** What glibc's `ld.so` and macOS `dyld` print when a library is missing, lowercase. */
|
|
43
|
+
const LOADER_MARKERS = ['error while loading shared libraries', 'library not loaded'];
|
|
29
44
|
export function serverBinaryName(platform) {
|
|
30
45
|
return platform === 'win32' ? 'sd-server.exe' : 'sd-server';
|
|
31
46
|
}
|
|
@@ -102,8 +117,34 @@ export function probeOutputIsSdcpp(text) {
|
|
|
102
117
|
const lower = text.toLowerCase();
|
|
103
118
|
return PROBE_MARKERS.some((marker) => lower.includes(marker));
|
|
104
119
|
}
|
|
105
|
-
|
|
106
|
-
|
|
120
|
+
/** `exit code 1`, `exit code 0xC0000135 (STATUS_DLL_NOT_FOUND)`, `signal SIGSEGV`. */
|
|
121
|
+
function describeProbeExit(exit, platform) {
|
|
122
|
+
if (exit.code === null)
|
|
123
|
+
return exit.signal === null ? 'unknown status' : `signal ${String(exit.signal)}`;
|
|
124
|
+
const code = exit.code >>> 0;
|
|
125
|
+
if (platform !== 'win32' || code < 0x8000_0000)
|
|
126
|
+
return `exit code ${exit.code}`;
|
|
127
|
+
const name = WINDOWS_LOADER_FAILURES.get(code);
|
|
128
|
+
return `exit code 0x${code.toString(16).toUpperCase()}${name ? ` (${name})` : ''}`;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* The verdict on a finished `--help` run: nothing when the output is stable-diffusion.cpp's,
|
|
132
|
+
* otherwise the error to raise. A binary the OS loader could not start is a missing runtime, not
|
|
133
|
+
* the wrong program, so the exit code and the loader's own words are read before the output is.
|
|
134
|
+
*/
|
|
135
|
+
export function probeVerdict(binary, text, exit, platform) {
|
|
136
|
+
if (probeOutputIsSdcpp(text))
|
|
137
|
+
return undefined;
|
|
138
|
+
const output = [...text].slice(0, 800).join('');
|
|
139
|
+
const status = `${binary}: ${describeProbeExit(exit, platform)}`;
|
|
140
|
+
const lower = text.toLowerCase();
|
|
141
|
+
const loaderFailed = (platform === 'win32' && exit.code !== null && WINDOWS_LOADER_FAILURES.has(exit.code >>> 0)) ||
|
|
142
|
+
LOADER_MARKERS.some((marker) => lower.includes(marker));
|
|
143
|
+
if (loaderFailed)
|
|
144
|
+
return diffusionError('ENGINE_INSTALL_FAILED', 'The image engine could not load a library it needs.', output.trim() === '' ? status : `${status}\n${output}`);
|
|
145
|
+
if (text.trim() === '')
|
|
146
|
+
return diffusionError('ENGINE_INSTALL_FAILED', 'The image engine exited without printing anything.', status);
|
|
147
|
+
return diffusionError('ENGINE_INSTALL_FAILED', 'The downloaded binary is not stable-diffusion.cpp.', output);
|
|
107
148
|
}
|
|
108
149
|
/**
|
|
109
150
|
* Run `<binary> --help` and check that the output is stable-diffusion.cpp's. A spawn failure is
|
|
@@ -126,6 +167,24 @@ export async function probeBinary(binary, deps = {}) {
|
|
|
126
167
|
}
|
|
127
168
|
}
|
|
128
169
|
async function probeOnce(binary, platform, timeoutMs, deps) {
|
|
170
|
+
const { exit, text } = await runHelpProbe(binary, {
|
|
171
|
+
platform,
|
|
172
|
+
timeoutMs,
|
|
173
|
+
deps,
|
|
174
|
+
noResponse: 'The image engine did not respond to --help.',
|
|
175
|
+
couldNotStart: 'The image engine could not be started.',
|
|
176
|
+
});
|
|
177
|
+
const verdict = probeVerdict(binary, text, exit, platform);
|
|
178
|
+
if (verdict)
|
|
179
|
+
throw verdict;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Run `<binary> --help` from its own folder and answer how it exited and what it printed. A spawn
|
|
183
|
+
* failure is retried (a scanner may still be holding the freshly written file); a binary that never
|
|
184
|
+
* answers is killed. Shared by every engine probe (sd.cpp here, `mlx-server` in `engine-builds/`).
|
|
185
|
+
*/
|
|
186
|
+
export async function runHelpProbe(binary, options) {
|
|
187
|
+
const { platform, timeoutMs, deps } = options;
|
|
129
188
|
const { env, cwd } = buildProcessEnv({
|
|
130
189
|
platform,
|
|
131
190
|
baseEnv: deps.env ?? process.env,
|
|
@@ -143,12 +202,12 @@ async function probeOnce(binary, platform, timeoutMs, deps) {
|
|
|
143
202
|
clearTimeout(timer);
|
|
144
203
|
if (outcome === 'timeout') {
|
|
145
204
|
await proc.terminate(0);
|
|
146
|
-
throw diffusionError('ENGINE_INSTALL_FAILED',
|
|
205
|
+
throw diffusionError('ENGINE_INSTALL_FAILED', options.noResponse, `${binary} timed out after ${Math.round(timeoutMs / 1000)}s`);
|
|
147
206
|
}
|
|
148
207
|
const failure = proc.spawnFailure();
|
|
149
208
|
if (failure) {
|
|
150
209
|
if (attempt >= PROBE_SPAWN_ATTEMPTS)
|
|
151
|
-
throw
|
|
210
|
+
throw diffusionError('ENGINE_INSTALL_FAILED', options.couldNotStart, `${binary}: ${failure.message}`);
|
|
152
211
|
deps.log?.('warn', `engine probe did not start (attempt ${attempt}/${PROBE_SPAWN_ATTEMPTS}): ${failure.message}`);
|
|
153
212
|
await sleep(deps.spawnRetryDelayMs ?? PROBE_SPAWN_RETRY_DELAY_MS);
|
|
154
213
|
continue;
|
|
@@ -156,20 +215,16 @@ async function probeOnce(binary, platform, timeoutMs, deps) {
|
|
|
156
215
|
// Give the pipes a tick to flush their last lines.
|
|
157
216
|
await sleep(10);
|
|
158
217
|
const { stdout, stderr } = proc.output();
|
|
159
|
-
|
|
160
|
-
if (probeOutputIsSdcpp(text))
|
|
161
|
-
return;
|
|
162
|
-
throw diffusionError('ENGINE_INSTALL_FAILED', 'The downloaded binary is not stable-diffusion.cpp.', [...text].slice(0, 800).join(''));
|
|
218
|
+
return { exit: outcome, text: stdout + stderr };
|
|
163
219
|
}
|
|
164
220
|
}
|
|
165
|
-
/**
|
|
166
|
-
|
|
221
|
+
/**
|
|
222
|
+
* An unpacked tree made runnable and checked: `sd-server` present, the executables marked as such,
|
|
223
|
+
* and `sd-cli` (else `sd-server`) answering `--help` as stable-diffusion.cpp. Throws
|
|
224
|
+
* `ENGINE_INSTALL_FAILED` otherwise.
|
|
225
|
+
*/
|
|
226
|
+
export async function prepareSdcppTree(dir, deps = {}) {
|
|
167
227
|
const platform = deps.platform ?? process.platform;
|
|
168
|
-
const { dir } = args;
|
|
169
|
-
if (!(await isDirectory(dir)))
|
|
170
|
-
throw diffusionError('ENGINE_INSTALL_FAILED', 'The engine directory does not exist.', dir);
|
|
171
|
-
if ((await locate(dir, backendsRoot, platform)) === 'outside')
|
|
172
|
-
throw diffusionError('INVALID_REQUEST', 'The engine directory is outside the diffusion backends folder.', dir);
|
|
173
228
|
const server = join(dir, serverBinaryName(platform));
|
|
174
229
|
if (!(await isFile(server)))
|
|
175
230
|
throw diffusionError('ENGINE_INSTALL_FAILED', 'The archive did not contain sd-server.', server);
|
|
@@ -179,17 +234,6 @@ export async function finalizeBackendInstall(backendsRoot, args, deps = {}) {
|
|
|
179
234
|
// Some release layouts ship a bare `sd` too.
|
|
180
235
|
await setExecutable(join(dir, platform === 'win32' ? 'sd.exe' : 'sd'), deps);
|
|
181
236
|
await probeBinary((await isFile(cli)) ? cli : server, deps);
|
|
182
|
-
const record = {
|
|
183
|
-
tag: args.tag,
|
|
184
|
-
backendId: args.backendId,
|
|
185
|
-
backend: args.backend,
|
|
186
|
-
engine: args.engine,
|
|
187
|
-
sha256: args.sha256 ?? null,
|
|
188
|
-
installedAtMs: (deps.now ?? Date.now)(),
|
|
189
|
-
dir,
|
|
190
|
-
};
|
|
191
|
-
await writeInstallRecord(dir, record);
|
|
192
|
-
return record;
|
|
193
237
|
}
|
|
194
238
|
/** Every `<root>/<tag>/<backendId>/install.json` with its marker and its server binary, newest first. */
|
|
195
239
|
export async function listInstalledBackends(backendsRoot, platform = process.platform) {
|
|
@@ -210,25 +254,6 @@ export async function listInstalledBackends(backendsRoot, platform = process.pla
|
|
|
210
254
|
return out.sort((a, b) => b.installedAtMs - a.installedAtMs);
|
|
211
255
|
}
|
|
212
256
|
const isEmptyDir = (dir) => readdir(dir).then((names) => names.length === 0, () => false);
|
|
213
|
-
/**
|
|
214
|
-
* Delete an installed tree. Refuses trees without the ownership marker and anything outside the
|
|
215
|
-
* backends root; whether the tree is in use is the caller's question.
|
|
216
|
-
*/
|
|
217
|
-
export async function removeBackend(backendsRoot, dir, platform = process.platform) {
|
|
218
|
-
if ((await locate(dir, backendsRoot, platform)) !== 'inside')
|
|
219
|
-
throw diffusionError('INVALID_REQUEST', 'That directory is not a diffusion backend install.', dir);
|
|
220
|
-
if (!(await isDirectory(dir)))
|
|
221
|
-
return;
|
|
222
|
-
if (!(await isOwned(dir)))
|
|
223
|
-
throw diffusionError('INVALID_REQUEST', 'Refusing to delete a directory Atomic Chat did not install.', `${dir} has no ${OWNER_MARKER} marker`);
|
|
224
|
-
await rm(dir, { recursive: true, force: true }).catch((error) => {
|
|
225
|
-
throw ioError('Could not remove the engine directory.', error);
|
|
226
|
-
});
|
|
227
|
-
// Drop the now-empty `<tag>` parent so the listing stays tidy.
|
|
228
|
-
const parent = dirname(dir);
|
|
229
|
-
if (!(await samePath(parent, backendsRoot, platform)) && (await isEmptyDir(parent)))
|
|
230
|
-
await rmdir(parent).catch(() => { });
|
|
231
|
-
}
|
|
232
257
|
/**
|
|
233
258
|
* Regular files under the models root, recursively, with `/`-separated relative paths. Hidden files
|
|
234
259
|
* and in-flight downloads are skipped.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/diffusion/install.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/diffusion/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,12 +3,14 @@
|
|
|
3
3
|
* with a single poll loop, cancel ladder, crash handling and CPU fallback. A kind owns everything
|
|
4
4
|
* that names its request, its record, its engine route and its files; the runner owns the rest.
|
|
5
5
|
*/
|
|
6
|
-
import type { DiffusionErrorBody, DiffusionModality, ImageJobProgress, ImageJobState } from '../contracts/index.js';
|
|
6
|
+
import type { DiffusionErrorBody, DiffusionModality, ImageJobProgress, ImageJobState, VideoEstimate } from '../contracts/index.js';
|
|
7
7
|
import type { JobDeps } from './jobs.js';
|
|
8
8
|
import type { DiffusionEmitter } from './session.js';
|
|
9
|
-
import type { JobKindId } from './state.js';
|
|
9
|
+
import type { JobKindId, JobRecord } from './state.js';
|
|
10
|
+
import type { DecodeTiles } from './tracker.js';
|
|
10
11
|
import type { ResolvedInputs, ServerCapabilities, ServerSpec } from './types.js';
|
|
11
12
|
import type { ValidateDeps } from './validate.js';
|
|
13
|
+
import type { VideoDecodeTiling, VideoForecast } from './video-estimate.js';
|
|
12
14
|
/** The fields the runner reads and writes on any job record, whatever its kind. */
|
|
13
15
|
export interface JobCommon<Item, Progress> {
|
|
14
16
|
id: string;
|
|
@@ -29,8 +31,27 @@ export interface SaveContext<Req> {
|
|
|
29
31
|
/** The seed the job ran with (the batch seed for images). */
|
|
30
32
|
seed: number;
|
|
31
33
|
startedAt: number;
|
|
34
|
+
/** When the decode began (the last sampling step), when the tracker saw it. */
|
|
35
|
+
decodeStartedAt?: number | undefined;
|
|
32
36
|
}
|
|
33
37
|
export type Emit = DiffusionEmitter;
|
|
38
|
+
/**
|
|
39
|
+
* What a kind works out before its job starts: the video estimate, the forecast behind it, and how
|
|
40
|
+
* the clip's VAE decode is tiled.
|
|
41
|
+
*/
|
|
42
|
+
export interface JobPlan {
|
|
43
|
+
/** On the record from the first event. */
|
|
44
|
+
estimate?: VideoEstimate;
|
|
45
|
+
/** Kept on the record for the live progress; never sent. */
|
|
46
|
+
forecast?: VideoForecast;
|
|
47
|
+
/** Kept on the record for the request body; absent: the pixel-frame threshold decides. */
|
|
48
|
+
decodeTiling?: VideoDecodeTiling;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Turns the tracker's snapshot, and the decode's tile pass when there is one, into the wire progress
|
|
52
|
+
* at `now`; one per job, so it may keep state.
|
|
53
|
+
*/
|
|
54
|
+
export type ProgressModel<Progress> = (snapshot: ImageJobProgress, now: number, decodeTiles?: DecodeTiles) => Progress;
|
|
34
55
|
export interface JobKind<Req, Job extends JobCommon<Item, Progress>, Item, Progress, Decoded> {
|
|
35
56
|
id: JobKindId;
|
|
36
57
|
/** The loaded model must be of this modality, or the job is refused before anything runs. */
|
|
@@ -48,17 +69,22 @@ export interface JobKind<Req, Job extends JobCommon<Item, Progress>, Item, Progr
|
|
|
48
69
|
failed: string;
|
|
49
70
|
};
|
|
50
71
|
validate(request: Req, spec: ServerSpec, deps: ValidateDeps): Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
|
|
72
|
+
/** What to know before the job starts, once the request is valid. Never rejects: a failure is no plan. */
|
|
73
|
+
prepare?(deps: JobDeps, request: Req, spec: ServerSpec): Promise<JobPlan | undefined>;
|
|
74
|
+
/** The record as it is inserted: inline bytes blanked, nothing started, the plan's estimate on it. */
|
|
75
|
+
newJob(id: string, spec: ServerSpec, request: Req, now: number, plan?: JobPlan): Job;
|
|
53
76
|
resolveInputs(request: Req, deps: Pick<JobDeps, 'readSource'>): Promise<ResolvedInputs>;
|
|
54
|
-
|
|
77
|
+
/** The engine's request body; `plan` is what the job's record kept of its plan. */
|
|
78
|
+
buildBody(request: Req, spec: ServerSpec, seed: number, inputs: ResolvedInputs, plan?: Pick<JobPlan, 'decodeTiling'>): Record<string, unknown>;
|
|
55
79
|
/** Steps and images the progress tracker counts. */
|
|
56
80
|
trackerShape(request: Req): {
|
|
57
81
|
steps: number;
|
|
58
82
|
batch: number;
|
|
59
83
|
};
|
|
60
|
-
/** The
|
|
61
|
-
|
|
84
|
+
/** The job's progress model, made when the runner starts it (`startedAt`), across every attempt. */
|
|
85
|
+
progressModel(record: JobRecord, startedAt: number): ProgressModel<Progress>;
|
|
86
|
+
/** While generating, progress goes out at least this often (ms) besides every change; absent: on change only. */
|
|
87
|
+
heartbeatMs?: number;
|
|
62
88
|
emitJob(emit: Emit, job: Job): void;
|
|
63
89
|
emitProgress(emit: Emit, jobId: string, progress: Progress): void;
|
|
64
90
|
/** Whether the engine promised to interrupt a running generation of this kind. */
|
package/dist/diffusion/jobs.d.ts
CHANGED
|
@@ -13,9 +13,10 @@ import type { DiffusionCancelResult, DiffusionErrorBody, ImageGenerateRequest, I
|
|
|
13
13
|
import type { Gallery } from './gallery.js';
|
|
14
14
|
import type { SdHttpClient } from './http.js';
|
|
15
15
|
import type { VideoGallery } from './video-gallery.js';
|
|
16
|
-
import type { JobCommon, JobKind } from './job-kind.js';
|
|
16
|
+
import type { JobCommon, JobKind, JobPlan } from './job-kind.js';
|
|
17
17
|
import type { AsyncMutex } from './mutex.js';
|
|
18
18
|
import type { SessionDeps } from './session.js';
|
|
19
|
+
import type { ServerSpec } from './types.js';
|
|
19
20
|
export { decodeImages, resolveInputs, withoutSources } from './image-job.js';
|
|
20
21
|
export declare const IMG_GEN_PATH = "/sdcpp/v1/img_gen";
|
|
21
22
|
export declare const VID_GEN_PATH = "/sdcpp/v1/vid_gen";
|
|
@@ -41,6 +42,10 @@ export interface JobDeps extends SessionDeps {
|
|
|
41
42
|
drawSeed: () => number;
|
|
42
43
|
readSource: (path: string) => Promise<Buffer>;
|
|
43
44
|
isFile: (path: string) => Promise<boolean>;
|
|
45
|
+
/** The estimate a video job carries from its first event; absent: video jobs start without one. */
|
|
46
|
+
planVideo?: (request: VideoGenerateRequest, spec: ServerSpec) => Promise<JobPlan | undefined>;
|
|
47
|
+
/** A clip landed in the video gallery (the estimate's history is stale). */
|
|
48
|
+
videoSaved?: () => void;
|
|
44
49
|
}
|
|
45
50
|
export interface JobOutcome<J = ImageJob> {
|
|
46
51
|
job: J;
|
package/dist/diffusion/jobs.js
CHANGED
|
@@ -17,7 +17,7 @@ import { IMAGE_JOB_KIND } from './image-job.js';
|
|
|
17
17
|
import { VIDEO_JOB_KIND } from './video-job.js';
|
|
18
18
|
import { classifyExit, diagnosticTail, GpuFaultWatch } from './progress.js';
|
|
19
19
|
import { describeExit, exitCodeOf } from './server-process.js';
|
|
20
|
-
import { loadFromSpec, stopKeepingSpec, takeDownSession } from './session.js';
|
|
20
|
+
import { loadFromSpec, stopKeepingSpec, takeDownSession, withOffloadFallback } from './session.js';
|
|
21
21
|
import { isTerminalJobState } from './state.js';
|
|
22
22
|
import { ProgressTracker } from './tracker.js';
|
|
23
23
|
export { decodeImages, resolveInputs, withoutSources } from './image-job.js';
|
|
@@ -58,8 +58,8 @@ function setJobState(deps, id, next) {
|
|
|
58
58
|
if (changed)
|
|
59
59
|
emitJob(deps, id);
|
|
60
60
|
}
|
|
61
|
-
function setProgress(deps, id, kind, tracker) {
|
|
62
|
-
const progress =
|
|
61
|
+
function setProgress(deps, id, kind, tracker, model) {
|
|
62
|
+
const progress = model(tracker.snapshot(), deps.now(), tracker.decodeTiles());
|
|
63
63
|
deps.state.updateJob(id, (record) => (record.job.progress = progress));
|
|
64
64
|
kind.emitProgress(deps.emit, id, progress);
|
|
65
65
|
}
|
|
@@ -97,6 +97,7 @@ export async function startJob(deps, kind, request) {
|
|
|
97
97
|
if (spec.modality !== kind.modality)
|
|
98
98
|
throw diffusionError('MODEL_INCOMPATIBLE', kind.messages.wrongModel, spec.modelId);
|
|
99
99
|
await kind.validate(request, spec, { isFile: deps.isFile });
|
|
100
|
+
const plan = await kind.prepare?.(deps, request, spec);
|
|
100
101
|
const id = randomUUID().replaceAll('-', '');
|
|
101
102
|
if (state.activeJobId !== undefined)
|
|
102
103
|
throw diffusionError('JOB_BUSY', kind.messages.busy, state.activeJobId);
|
|
@@ -104,8 +105,10 @@ export async function startJob(deps, kind, request) {
|
|
|
104
105
|
state.clearIdle();
|
|
105
106
|
const record = {
|
|
106
107
|
kind: kind.id,
|
|
107
|
-
job: kind.newJob(id, spec, request, deps.now()),
|
|
108
|
+
job: kind.newJob(id, spec, request, deps.now(), plan),
|
|
108
109
|
cancel: { requested: false },
|
|
110
|
+
...(plan?.forecast ? { forecast: plan.forecast } : {}),
|
|
111
|
+
...(plan?.decodeTiling ? { decodeTiling: plan.decodeTiling } : {}),
|
|
109
112
|
};
|
|
110
113
|
state.insertJob(record);
|
|
111
114
|
emitJob(deps, id);
|
|
@@ -197,31 +200,47 @@ async function execute(deps, kind, id, request, cancel) {
|
|
|
197
200
|
const seed = seedOf(request, deps);
|
|
198
201
|
const inputs = await kind.resolveInputs(request, deps);
|
|
199
202
|
const started = deps.now();
|
|
200
|
-
|
|
203
|
+
const record = deps.state.record(id);
|
|
204
|
+
if (!record)
|
|
205
|
+
throw internalError('job record vanished');
|
|
206
|
+
// One model for the whole job, so a fallback retry keeps its fraction and its slowdown flag.
|
|
207
|
+
const model = kind.progressModel(record, started);
|
|
208
|
+
let retriedOnCpu = false;
|
|
209
|
+
for (;;) {
|
|
201
210
|
const view = await ensureSession(deps, cancel);
|
|
202
211
|
kind.preflight?.(deps.state.session?.server.capabilities);
|
|
203
|
-
const body = kind.buildBody(request, view.spec, seed, inputs);
|
|
204
|
-
const attempt = await runAttempt(deps, kind, id, request, view, body, seed, cancel, started);
|
|
212
|
+
const body = kind.buildBody(request, view.spec, seed, inputs, record);
|
|
213
|
+
const attempt = await runAttempt(deps, kind, id, request, view, body, seed, cancel, started, model);
|
|
205
214
|
if (attempt.kind === 'done')
|
|
206
215
|
return attempt.outcome;
|
|
207
|
-
if (
|
|
216
|
+
if (attempt.kind === 'retry-with-offload') {
|
|
217
|
+
// Only returned while the spec has a fallback, and taking it drops it: this runs once per load.
|
|
218
|
+
const fallback = withOffloadFallback(view.spec) ?? view.spec;
|
|
219
|
+
deps.log('warn', `out of memory under ${view.spec.offload} offload; restarting sd-server under ${fallback.offload}`);
|
|
220
|
+
await replaceSession(deps, () => fallback, 'offload-fallback', cancel);
|
|
221
|
+
continue;
|
|
222
|
+
}
|
|
223
|
+
if (retriedOnCpu)
|
|
208
224
|
throw diffusionError('ENGINE_CRASHED', 'sd-server crashed again on the CPU backend.');
|
|
225
|
+
retriedOnCpu = true;
|
|
209
226
|
deps.log('warn', 'ggml abort on the device backend; restarting sd-server on the CPU backend');
|
|
227
|
+
// On the CPU backend the offload flags move nothing, so there is no fallback left to take.
|
|
228
|
+
const { offloadFallback: _unused, ...device } = view.spec;
|
|
210
229
|
const spec = {
|
|
211
|
-
...
|
|
230
|
+
...device,
|
|
212
231
|
extraArgs: cpuBackendExtraArgs(view.spec.extraArgs),
|
|
213
232
|
cpuFallback: true,
|
|
214
233
|
};
|
|
215
234
|
await replaceSession(deps, () => spec, 'cpu-fallback', cancel);
|
|
216
235
|
}
|
|
217
236
|
}
|
|
218
|
-
async function runAttempt(deps, kind, id, request, view, body, seed, cancel, started) {
|
|
237
|
+
async function runAttempt(deps, kind, id, request, view, body, seed, cancel, started, model) {
|
|
219
238
|
if (cancel.requested)
|
|
220
239
|
throw cancelledError();
|
|
221
240
|
const lines = [];
|
|
222
241
|
deps.state.session?.server.setLineListener((line) => lines.push(line));
|
|
223
242
|
try {
|
|
224
|
-
return await pollJob(deps, kind, id, request, view, body, seed, cancel, started, lines);
|
|
243
|
+
return await pollJob(deps, kind, id, request, view, body, seed, cancel, started, lines, model);
|
|
225
244
|
}
|
|
226
245
|
finally {
|
|
227
246
|
deps.state.session?.server.setLineListener(undefined);
|
|
@@ -243,7 +262,7 @@ async function afterTransportError(deps, cancel, what, error) {
|
|
|
243
262
|
throw internalError(`The image server did not accept the ${what}.`, serverFailure(error));
|
|
244
263
|
}
|
|
245
264
|
const clip = (text, limit) => [...text].slice(0, limit).join('');
|
|
246
|
-
async function pollJob(deps, kind, id, request, view, body, seed, cancel, started, lines) {
|
|
265
|
+
async function pollJob(deps, kind, id, request, view, body, seed, cancel, started, lines, model) {
|
|
247
266
|
const { http, state, timings } = deps;
|
|
248
267
|
const submitted = await http
|
|
249
268
|
.post(`${view.baseUrl}${kind.submitPath}`, body, timings.submitTimeoutMs)
|
|
@@ -276,6 +295,20 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
276
295
|
gpu.onLine(line);
|
|
277
296
|
}
|
|
278
297
|
};
|
|
298
|
+
// Progress goes out on every change and, for a kind with a heartbeat, whenever waiting for the
|
|
299
|
+
// next poll would leave the last one older than the heartbeat while the job generates.
|
|
300
|
+
let reportedAt = Number.NEGATIVE_INFINITY;
|
|
301
|
+
const report = () => {
|
|
302
|
+
const changed = tracker.takeDirty();
|
|
303
|
+
const now = deps.now();
|
|
304
|
+
const due = kind.heartbeatMs !== undefined &&
|
|
305
|
+
state.record(id)?.job.state === 'generating' &&
|
|
306
|
+
now + timings.pollIntervalMs - reportedAt > kind.heartbeatMs;
|
|
307
|
+
if (!changed && !due)
|
|
308
|
+
return;
|
|
309
|
+
setProgress(deps, id, kind, tracker, model);
|
|
310
|
+
reportedAt = now;
|
|
311
|
+
};
|
|
279
312
|
// Metal stays in its error state after an address fault, so every retry on this process would
|
|
280
313
|
// fail at once: retire it, keep the spec, and the next job respawns a clean server.
|
|
281
314
|
const retireAfterGpuFault = async () => {
|
|
@@ -288,8 +321,7 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
288
321
|
};
|
|
289
322
|
for (;;) {
|
|
290
323
|
drain();
|
|
291
|
-
|
|
292
|
-
setProgress(deps, id, kind, tracker);
|
|
324
|
+
report();
|
|
293
325
|
const live = liveness(state);
|
|
294
326
|
if (live.kind === 'gone') {
|
|
295
327
|
if (cancel.requested)
|
|
@@ -303,6 +335,8 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
303
335
|
if (isGgmlUnsupportedOpAbort(text) && !view.spec.cpuFallback)
|
|
304
336
|
return { kind: 'retry-on-cpu' };
|
|
305
337
|
const code = classifyExit(text, exitCodeOf(live.exit));
|
|
338
|
+
if (code === 'OUT_OF_MEMORY' && withOffloadFallback(view.spec))
|
|
339
|
+
return { kind: 'retry-with-offload' };
|
|
306
340
|
const error = diffusionError(code, code === 'OUT_OF_MEMORY'
|
|
307
341
|
? 'sd-server ran out of memory while generating.'
|
|
308
342
|
: `sd-server exited during generation (${describeExit(live.exit)}).`, text);
|
|
@@ -352,11 +386,22 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
352
386
|
break;
|
|
353
387
|
case 'completed': {
|
|
354
388
|
setJobState(deps, id, 'generating');
|
|
389
|
+
// What the engine logged up to now, and the decode it finished, before the phase moves on.
|
|
390
|
+
drain();
|
|
391
|
+
tracker.finishDecode();
|
|
392
|
+
report();
|
|
355
393
|
tracker.setPhase('saving');
|
|
356
|
-
setProgress(deps, id, kind, tracker);
|
|
394
|
+
setProgress(deps, id, kind, tracker, model);
|
|
357
395
|
await retireAfterGpuFault();
|
|
358
396
|
const decoded = kind.decode(job);
|
|
359
|
-
const { items, bytes } = await kind.save(deps, {
|
|
397
|
+
const { items, bytes } = await kind.save(deps, {
|
|
398
|
+
id,
|
|
399
|
+
request,
|
|
400
|
+
spec: view.spec,
|
|
401
|
+
seed,
|
|
402
|
+
startedAt: started,
|
|
403
|
+
decodeStartedAt: tracker.decodeStartedAt(),
|
|
404
|
+
}, decoded);
|
|
360
405
|
const record = state.anyJob(id);
|
|
361
406
|
if (!record)
|
|
362
407
|
throw internalError('job record vanished');
|
|
@@ -372,6 +417,8 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
372
417
|
const said = diagnosticTail(tracker.logLines(), 12, 1200);
|
|
373
418
|
const outOfMemory = classifyExit(`${message}\n${said}`, undefined) === 'OUT_OF_MEMORY';
|
|
374
419
|
deps.log('warn', `sd-server failed the job (${code}: ${message}):\n${said}`);
|
|
420
|
+
if (outOfMemory && withOffloadFallback(view.spec))
|
|
421
|
+
return { kind: 'retry-with-offload' };
|
|
375
422
|
throw diffusionError(outOfMemory ? 'OUT_OF_MEMORY' : 'INTERNAL', outOfMemory ? kind.messages.outOfMemory : kind.messages.failed, `${code}: ${message}\n${said}`);
|
|
376
423
|
}
|
|
377
424
|
case 'cancelled':
|
|
@@ -379,8 +426,7 @@ async function pollJob(deps, kind, id, request, view, body, seed, cancel, starte
|
|
|
379
426
|
default:
|
|
380
427
|
break;
|
|
381
428
|
}
|
|
382
|
-
|
|
383
|
-
setProgress(deps, id, kind, tracker);
|
|
429
|
+
report();
|
|
384
430
|
await deps.sleep(timings.pollIntervalMs);
|
|
385
431
|
}
|
|
386
432
|
}
|