@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
package/dist/server/http.js
CHANGED
|
@@ -87,7 +87,15 @@ export function sendJson(res, status, body) {
|
|
|
87
87
|
});
|
|
88
88
|
res.end(payload);
|
|
89
89
|
}
|
|
90
|
-
/**
|
|
90
|
+
/**
|
|
91
|
+
* HTTP status for a core error code. Anything unmapped is a 500: an unknown failure is not the
|
|
92
|
+
* caller's fault.
|
|
93
|
+
*
|
|
94
|
+
* The managed runtime's conflicts are all 409: somebody else is changing it, the caller computed
|
|
95
|
+
* their request from a state it has left, consent is missing or no longer covers the plan, or the
|
|
96
|
+
* machine is not in a position to continue yet. An engine this build has no adapter for is 422 — the
|
|
97
|
+
* request was understood and well formed, and the answer is still no.
|
|
98
|
+
*/
|
|
91
99
|
export function statusForCode(code) {
|
|
92
100
|
switch (code) {
|
|
93
101
|
case 'UNAUTHORIZED':
|
|
@@ -104,18 +112,43 @@ export function statusForCode(code) {
|
|
|
104
112
|
case 'ENGINE_MISSING':
|
|
105
113
|
case 'MODEL_MISSING':
|
|
106
114
|
case 'SIDE_FILE_MISSING':
|
|
115
|
+
case 'MANAGED_OPERATION_NOT_FOUND':
|
|
116
|
+
case 'MODEL_SETUP_NOT_FOUND':
|
|
107
117
|
return 404;
|
|
108
118
|
case 'CORE_ALREADY_RUNNING':
|
|
109
119
|
case 'AUTH_CANCELLED':
|
|
110
120
|
case 'MODEL_LOAD_CANCELLED':
|
|
111
121
|
case 'REMOTE_ACCESS_SERVER_STOPPED':
|
|
112
122
|
case 'REMOTE_ACCESS_OPERATION_IN_PROGRESS':
|
|
123
|
+
case 'ENGINE_INSTALL_IN_PROGRESS':
|
|
113
124
|
case 'REMOTE_ACCESS_STOP_FAILED':
|
|
114
125
|
case 'JOB_BUSY':
|
|
115
126
|
case 'BACKEND_IN_USE':
|
|
116
127
|
case 'NOT_CONFIGURED':
|
|
117
128
|
case 'CANCELLED':
|
|
118
129
|
case 'ENGINE_UPDATE_REQUIRED':
|
|
130
|
+
case 'MANAGED_OPERATION_CONFLICT':
|
|
131
|
+
case 'MANAGED_REVISION_CONFLICT':
|
|
132
|
+
case 'MANAGED_CONSENT_REQUIRED':
|
|
133
|
+
case 'MANAGED_PLAN_CHANGED':
|
|
134
|
+
case 'MANAGED_RECEIPT_CONFLICT':
|
|
135
|
+
case 'MANAGED_RESOURCE_IN_USE':
|
|
136
|
+
case 'MANAGED_IDENTITY_MISMATCH':
|
|
137
|
+
case 'MANAGED_STOP_UNCONFIRMED':
|
|
138
|
+
case 'MANAGED_ELEVATION_DECLINED':
|
|
139
|
+
case 'MANAGED_PREREQUISITE_BLOCKED':
|
|
140
|
+
case 'MANAGED_RELOGIN_REQUIRED':
|
|
141
|
+
case 'MANAGED_REBOOT_REQUIRED':
|
|
142
|
+
case 'GPU_BUSY':
|
|
143
|
+
case 'SESSION_GENERATION_STALE':
|
|
144
|
+
case 'DECISION_NOT_CONFIGURED':
|
|
145
|
+
case 'DECISION_ENGINE_UNSUPPORTED':
|
|
146
|
+
case 'DECISION_CHECKPOINT_INCOMPLETE':
|
|
147
|
+
case 'DECISION_MODEL_NOT_CHAT':
|
|
148
|
+
case 'EMBEDDING_NOT_CONFIGURED':
|
|
149
|
+
case 'EMBEDDING_ENGINE_UNSUPPORTED':
|
|
150
|
+
case 'EMBEDDING_MODEL_NOT_EMBEDDING':
|
|
151
|
+
case 'MODEL_SETUP_PLAN_STALE':
|
|
119
152
|
return 409;
|
|
120
153
|
case 'QUEUE_FULL':
|
|
121
154
|
return 429;
|
|
@@ -124,15 +157,32 @@ export function statusForCode(code) {
|
|
|
124
157
|
case 'AUTH_FAILED':
|
|
125
158
|
case 'UPSTREAM_ERROR':
|
|
126
159
|
return 502;
|
|
160
|
+
// `MANAGED_HOST_STEP_INVALID`/`MANAGED_METADATA_INVALID` are a descriptor or plan this core
|
|
161
|
+
// refused because a *caller* sent it something malformed
|
|
162
|
+
// (`src/runtime/environment/descriptor.ts`'s parser). Deliberately not shared with an on-disk
|
|
163
|
+
// operation record this core itself cannot read: that is never the caller's fault, so
|
|
164
|
+
// `OperationStore`'s own corruption case (`store.ts`'s `corrupt()`) raises `IO_ERROR` instead
|
|
165
|
+
// and falls through to the 500 below, rather than answering a client mistake and this store's
|
|
166
|
+
// own corruption with the same 400.
|
|
127
167
|
case 'INVALID_ARGUMENT':
|
|
128
168
|
case 'INVALID_REQUEST':
|
|
129
169
|
case 'INVALID_DIMENSIONS':
|
|
130
170
|
case 'UNSUPPORTED_WORKFLOW':
|
|
131
171
|
case 'UNSUPPORTED_BACKEND':
|
|
132
172
|
case 'MODEL_INCOMPATIBLE':
|
|
173
|
+
case 'MANAGED_HOST_STEP_INVALID':
|
|
174
|
+
case 'MANAGED_METADATA_INVALID':
|
|
133
175
|
return 400;
|
|
176
|
+
// Understood, well-formed, and asking for an engine this build has no adapter for, or asking a
|
|
177
|
+
// provider to run a file it cannot (or a file nothing runs any more).
|
|
178
|
+
case 'MANAGED_ADAPTER_UNAVAILABLE':
|
|
179
|
+
case 'MODEL_ENGINE_INCOMPATIBLE':
|
|
180
|
+
case 'MODEL_FORMAT_LEGACY':
|
|
181
|
+
return 422;
|
|
134
182
|
case 'CORE_NOT_RUNNING':
|
|
135
183
|
case 'FOUNDATION_MODELS_UNAVAILABLE':
|
|
184
|
+
case 'DECISION_UNAVAILABLE':
|
|
185
|
+
case 'EMBEDDING_UNAVAILABLE':
|
|
136
186
|
return 503;
|
|
137
187
|
case 'MODEL_LOAD_TIMED_OUT':
|
|
138
188
|
case 'SERVER_START_TIMED_OUT':
|
package/dist/server/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/server/http.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/server/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The request inspector's view of a decision exchange. A decision body has no messages and its
|
|
3
|
+
* answer no generated text, so the chat readers in `telemetry.ts` find nothing in either: the
|
|
4
|
+
* prompt preview is the `state` with the question names, the reply preview one line per answer.
|
|
5
|
+
*
|
|
6
|
+
* Built from a parse of a copy; the bytes the client and the engine see are never touched. Same
|
|
7
|
+
* privacy rule as `telemetry.ts`: only while the API screen is open, never logged.
|
|
8
|
+
*/
|
|
9
|
+
import type { PromptPreview, TelemetryFields } from './telemetry.js';
|
|
10
|
+
/** `state` as text (a string as is, anything else as compact JSON), then the question names. */
|
|
11
|
+
export declare function decisionPromptPreview(body: Buffer): PromptPreview;
|
|
12
|
+
/**
|
|
13
|
+
* The finish fields of a decision answer: `answers` (systemone) or `scores` (router) as the reply
|
|
14
|
+
* preview, `usage.input_tokens` as the prompt tokens. An error envelope or a body that is not JSON
|
|
15
|
+
* gives no preview; the status already tells the story.
|
|
16
|
+
*/
|
|
17
|
+
export declare function decisionReplyFields(body: Buffer): TelemetryFields;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The request inspector's view of a decision exchange. A decision body has no messages and its
|
|
3
|
+
* answer no generated text, so the chat readers in `telemetry.ts` find nothing in either: the
|
|
4
|
+
* prompt preview is the `state` with the question names, the reply preview one line per answer.
|
|
5
|
+
*
|
|
6
|
+
* Built from a parse of a copy; the bytes the client and the engine see are never touched. Same
|
|
7
|
+
* privacy rule as `telemetry.ts`: only while the API screen is open, never logged.
|
|
8
|
+
*/
|
|
9
|
+
import { isJsonObject } from '../shims/index.js';
|
|
10
|
+
import { PREVIEW_MAX_CHARS } from './telemetry.js';
|
|
11
|
+
function parse(bytes) {
|
|
12
|
+
try {
|
|
13
|
+
return JSON.parse(bytes.toString('utf8'));
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function capped(text) {
|
|
20
|
+
const chars = [...text];
|
|
21
|
+
return { text: chars.slice(0, PREVIEW_MAX_CHARS).join(''), chars: chars.length };
|
|
22
|
+
}
|
|
23
|
+
const num = (value) => typeof value === 'number' && Number.isFinite(value) ? value : undefined;
|
|
24
|
+
const fixed = (value) => value.toFixed(2);
|
|
25
|
+
/** `state` as text (a string as is, anything else as compact JSON), then the question names. */
|
|
26
|
+
export function decisionPromptPreview(body) {
|
|
27
|
+
const out = { text: null, chars: null, message_count: null, has_non_text_parts: false };
|
|
28
|
+
const json = parse(body);
|
|
29
|
+
if (!isJsonObject(json))
|
|
30
|
+
return out;
|
|
31
|
+
const lines = [];
|
|
32
|
+
if (typeof json.task === 'string')
|
|
33
|
+
lines.push(json.task);
|
|
34
|
+
if (json.state !== undefined)
|
|
35
|
+
lines.push(typeof json.state === 'string' ? json.state : JSON.stringify(json.state));
|
|
36
|
+
if (isJsonObject(json.questions)) {
|
|
37
|
+
const names = Object.keys(json.questions);
|
|
38
|
+
if (names.length > 0)
|
|
39
|
+
lines.push(`Questions: ${names.join(', ')}`);
|
|
40
|
+
}
|
|
41
|
+
if (Array.isArray(json.candidates)) {
|
|
42
|
+
const ids = json.candidates.map((c) => (isJsonObject(c) && typeof c.id === 'string' ? c.id : '?'));
|
|
43
|
+
if (ids.length > 0)
|
|
44
|
+
lines.push(`Candidates: ${ids.join(', ')}`);
|
|
45
|
+
}
|
|
46
|
+
if (lines.length === 0)
|
|
47
|
+
return out;
|
|
48
|
+
const preview = capped(lines.join('\n\n'));
|
|
49
|
+
out.text = preview.text;
|
|
50
|
+
out.chars = preview.chars;
|
|
51
|
+
return out;
|
|
52
|
+
}
|
|
53
|
+
/** One answer as `name: value`, with the winning choice's probability. */
|
|
54
|
+
function answerLine(name, answer) {
|
|
55
|
+
if (!isJsonObject(answer))
|
|
56
|
+
return undefined;
|
|
57
|
+
if (typeof answer.choice === 'string') {
|
|
58
|
+
const p = isJsonObject(answer.probabilities) ? num(answer.probabilities[answer.choice]) : undefined;
|
|
59
|
+
return `${name}: ${answer.choice}${p === undefined ? '' : ` (${fixed(p)})`}`;
|
|
60
|
+
}
|
|
61
|
+
const noul = num(answer.noul);
|
|
62
|
+
if (noul !== undefined)
|
|
63
|
+
return `${name}: ${fixed(noul)}`;
|
|
64
|
+
const score = num(answer.score);
|
|
65
|
+
if (score !== undefined)
|
|
66
|
+
return `${name}: ${fixed(score)}`;
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The finish fields of a decision answer: `answers` (systemone) or `scores` (router) as the reply
|
|
71
|
+
* preview, `usage.input_tokens` as the prompt tokens. An error envelope or a body that is not JSON
|
|
72
|
+
* gives no preview; the status already tells the story.
|
|
73
|
+
*/
|
|
74
|
+
export function decisionReplyFields(body) {
|
|
75
|
+
const fields = {
|
|
76
|
+
ttft_ms: null,
|
|
77
|
+
prompt_tokens: null,
|
|
78
|
+
completion_tokens: null,
|
|
79
|
+
total_tokens: null,
|
|
80
|
+
tokens_estimated: false,
|
|
81
|
+
prompt_per_second: null,
|
|
82
|
+
predicted_per_second: null,
|
|
83
|
+
finish_reason: null,
|
|
84
|
+
reply_preview: null,
|
|
85
|
+
reply_chars: null,
|
|
86
|
+
};
|
|
87
|
+
const json = parse(body);
|
|
88
|
+
if (!isJsonObject(json))
|
|
89
|
+
return fields;
|
|
90
|
+
const lines = [];
|
|
91
|
+
if (isJsonObject(json.answers)) {
|
|
92
|
+
for (const [name, answer] of Object.entries(json.answers)) {
|
|
93
|
+
const line = answerLine(name, answer);
|
|
94
|
+
if (line)
|
|
95
|
+
lines.push(line);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
if (Array.isArray(json.scores)) {
|
|
99
|
+
for (const score of json.scores) {
|
|
100
|
+
if (!isJsonObject(score) || typeof score.id !== 'string')
|
|
101
|
+
continue;
|
|
102
|
+
const p = num(score.p_success);
|
|
103
|
+
lines.push(`${score.id}: ${p === undefined ? '?' : fixed(p)}`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (lines.length > 0) {
|
|
107
|
+
const preview = capped(lines.join('\n'));
|
|
108
|
+
fields.reply_preview = preview.text;
|
|
109
|
+
fields.reply_chars = preview.chars;
|
|
110
|
+
}
|
|
111
|
+
const tokens = isJsonObject(json.usage) ? num(json.usage.input_tokens) : undefined;
|
|
112
|
+
if (tokens !== undefined) {
|
|
113
|
+
fields.prompt_tokens = tokens;
|
|
114
|
+
fields.completion_tokens = 0;
|
|
115
|
+
fields.total_tokens = tokens;
|
|
116
|
+
}
|
|
117
|
+
return fields;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=decision-preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision-preview.js","sourceRoot":"","sources":["../../../src/server/public/decision-preview.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAGlD,SAAS,KAAK,CAAC,KAAa;IAC1B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAc,CAAA;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,IAAY;IAC1B,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAA;IACvB,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,CAAA;AAClF,CAAC;AAED,MAAM,GAAG,GAAG,CAAC,KAA4B,EAAsB,EAAE,CAC/D,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;AAEzE,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAEjD,gGAAgG;AAChG,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,GAAG,GAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAA;IACtG,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAA;IACnC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAC1B,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACtF,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACpE,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAClG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC1C,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IACvB,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IACzB,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,0EAA0E;AAC1E,SAAS,UAAU,CAAC,IAAY,EAAE,MAAiB;IACjD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IAC3C,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnG,OAAO,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;IAC9E,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,CAAA;IACxD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC/B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE,CAAA;IAC1D,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,IAAI;QACb,aAAa,EAAE,IAAI;QACnB,iBAAiB,EAAE,IAAI;QACvB,YAAY,EAAE,IAAI;QAClB,gBAAgB,EAAE,KAAK;QACvB,iBAAiB,EAAE,IAAI;QACvB,oBAAoB,EAAE,IAAI;QAC1B,aAAa,EAAE,IAAI;QACnB,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,IAAI;KAClB,CAAA;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAA;IACtC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YACrC,IAAI,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;gBAAE,SAAQ;YAClE,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACxC,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAA;QACnC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,KAAK,CAAA;IACpC,CAAC;IACD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAClF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,CAAC,aAAa,GAAG,MAAM,CAAA;QAC7B,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAAA;QAC5B,MAAM,CAAC,YAAY,GAAG,MAAM,CAAA;IAC9B,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `POST /v1/systemone` and `POST /v1/router/score`: the decision model's own API, passed through to
|
|
3
|
+
* the decision process byte for byte.
|
|
4
|
+
*
|
|
5
|
+
* Not through `serveForward`: that route needs a string `model` to pick a chat session, and the
|
|
6
|
+
* decision API makes `model` optional. Not parsed and re-serialized either: JSON through JavaScript
|
|
7
|
+
* loses `1.0` vs `1` (the engine renders them differently in the prompt), integers past 2^53, and the
|
|
8
|
+
* order of number-like keys, and the engine's answer is only as calibrated as its input is exact. So
|
|
9
|
+
* the request body goes out as the client sent it, with the process's own key instead of the client's,
|
|
10
|
+
* and the engine's answer (its error envelope included) comes back unchanged.
|
|
11
|
+
*
|
|
12
|
+
* When the module cannot answer, the route says why in the engine's own envelope, with 503, so a
|
|
13
|
+
* client handles one shape: `{"error": {"code", "type", "reason": "UNAVAILABLE", "message"}}`. A
|
|
14
|
+
* route the running engine does not serve (the router on upstream llama.cpp) gets 501 with
|
|
15
|
+
* `"reason": "UNSUPPORTED_ENDPOINT"` in the same envelope.
|
|
16
|
+
*/
|
|
17
|
+
import type { Exchange } from './exchange.js';
|
|
18
|
+
/** Public path (after the prefix) → the decision process's path. */
|
|
19
|
+
export declare const DECISION_ROUTES: Readonly<Record<string, string>>;
|
|
20
|
+
/**
|
|
21
|
+
* The public cap on a decision body. The engine refuses more than 1 MiB itself, with its own
|
|
22
|
+
* `BODY_TOO_LARGE` envelope; up to this size the body is passed on so the client gets that answer.
|
|
23
|
+
*/
|
|
24
|
+
export declare const MAX_DECISION_BODY_BYTES: number;
|
|
25
|
+
/** How long a request waits for a module that is enabled but not running to start. */
|
|
26
|
+
export declare const DECISION_START_WAIT_MS = 30000;
|
|
27
|
+
export declare const DECISION_BACKEND_LABEL = "atomic-decision";
|
|
28
|
+
/** The engine's error envelope, for the answers the core writes itself. */
|
|
29
|
+
export declare function decisionErrorBody(status: number, reason: string, message: string, type: string): string;
|
|
30
|
+
/** Read the body up to `limit`; past it, drain (so Bun delivers the refusal) and answer `undefined`. */
|
|
31
|
+
export declare function readCapped(ex: Exchange, limit: number): Promise<Buffer | undefined>;
|
|
32
|
+
export declare function serveDecision(ex: Exchange, waitMs?: number): Promise<void>;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `POST /v1/systemone` and `POST /v1/router/score`: the decision model's own API, passed through to
|
|
3
|
+
* the decision process byte for byte.
|
|
4
|
+
*
|
|
5
|
+
* Not through `serveForward`: that route needs a string `model` to pick a chat session, and the
|
|
6
|
+
* decision API makes `model` optional. Not parsed and re-serialized either: JSON through JavaScript
|
|
7
|
+
* loses `1.0` vs `1` (the engine renders them differently in the prompt), integers past 2^53, and the
|
|
8
|
+
* order of number-like keys, and the engine's answer is only as calibrated as its input is exact. So
|
|
9
|
+
* the request body goes out as the client sent it, with the process's own key instead of the client's,
|
|
10
|
+
* and the engine's answer (its error envelope included) comes back unchanged.
|
|
11
|
+
*
|
|
12
|
+
* When the module cannot answer, the route says why in the engine's own envelope, with 503, so a
|
|
13
|
+
* client handles one shape: `{"error": {"code", "type", "reason": "UNAVAILABLE", "message"}}`. A
|
|
14
|
+
* route the running engine does not serve (the router on upstream llama.cpp) gets 501 with
|
|
15
|
+
* `"reason": "UNSUPPORTED_ENDPOINT"` in the same envelope.
|
|
16
|
+
*/
|
|
17
|
+
import { decisionPromptPreview, decisionReplyFields } from './decision-preview.js';
|
|
18
|
+
import { answer, clientGone, connectTimeoutMs, header } from './exchange.js';
|
|
19
|
+
import { pipeBody, relay, relayedHeaders, sendUpstream, UpstreamUnreachable } from './wire.js';
|
|
20
|
+
/** Public path (after the prefix) → the decision process's path. */
|
|
21
|
+
export const DECISION_ROUTES = {
|
|
22
|
+
'/systemone': '/v1/systemone',
|
|
23
|
+
'/router/score': '/v1/router/score',
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* The public cap on a decision body. The engine refuses more than 1 MiB itself, with its own
|
|
27
|
+
* `BODY_TOO_LARGE` envelope; up to this size the body is passed on so the client gets that answer.
|
|
28
|
+
*/
|
|
29
|
+
export const MAX_DECISION_BODY_BYTES = 8 * 1024 * 1024;
|
|
30
|
+
/** How long a request waits for a module that is enabled but not running to start. */
|
|
31
|
+
export const DECISION_START_WAIT_MS = 30_000;
|
|
32
|
+
export const DECISION_BACKEND_LABEL = 'atomic-decision';
|
|
33
|
+
const JSON_HEADERS = [['Content-Type', 'application/json']];
|
|
34
|
+
/** The engine's error envelope, for the answers the core writes itself. */
|
|
35
|
+
export function decisionErrorBody(status, reason, message, type) {
|
|
36
|
+
return JSON.stringify({ error: { code: status, type, reason, message } });
|
|
37
|
+
}
|
|
38
|
+
/** Read the body up to `limit`; past it, drain (so Bun delivers the refusal) and answer `undefined`. */
|
|
39
|
+
export async function readCapped(ex, limit) {
|
|
40
|
+
const chunks = [];
|
|
41
|
+
let size = 0;
|
|
42
|
+
for await (const chunk of ex.req) {
|
|
43
|
+
const buf = chunk;
|
|
44
|
+
size += buf.length;
|
|
45
|
+
if (size > limit) {
|
|
46
|
+
chunks.length = 0;
|
|
47
|
+
if (size > limit * 8) {
|
|
48
|
+
ex.req.destroy();
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
chunks.push(buf);
|
|
54
|
+
}
|
|
55
|
+
return size > limit ? undefined : Buffer.concat(chunks);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* `relay` with a copy of the bytes kept on the side for the inspector's reply preview. The fields
|
|
59
|
+
* are stashed when the body ends, before the response closes and the trace reads them.
|
|
60
|
+
*/
|
|
61
|
+
async function relayInspected(ex, upstream) {
|
|
62
|
+
const chunks = [];
|
|
63
|
+
async function* tap() {
|
|
64
|
+
for await (const chunk of upstream.body) {
|
|
65
|
+
chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
|
|
66
|
+
yield chunk;
|
|
67
|
+
}
|
|
68
|
+
ex.trace.stash(decisionReplyFields(Buffer.concat(chunks)));
|
|
69
|
+
}
|
|
70
|
+
ex.res.writeHead(upstream.status, relayedHeaders(upstream, ex.cors).flat());
|
|
71
|
+
await pipeBody(ex.res, tap(), () => upstream.body.destroy());
|
|
72
|
+
}
|
|
73
|
+
function unavailableAnswer(ex, message) {
|
|
74
|
+
ex.trace.errorKind = 'local_model_unreachable';
|
|
75
|
+
answer(ex, 503, decisionErrorBody(503, 'UNAVAILABLE', message, 'unavailable_error'), JSON_HEADERS);
|
|
76
|
+
}
|
|
77
|
+
export async function serveDecision(ex, waitMs = DECISION_START_WAIT_MS) {
|
|
78
|
+
const upstreamPath = DECISION_ROUTES[ex.path];
|
|
79
|
+
ex.trace.backend = DECISION_BACKEND_LABEL;
|
|
80
|
+
const body = ex.body ?? (await readCapped(ex, MAX_DECISION_BODY_BYTES));
|
|
81
|
+
if (body === undefined) {
|
|
82
|
+
ex.trace.errorKind = 'bad_request';
|
|
83
|
+
return answer(ex, 413, decisionErrorBody(413, 'BODY_TOO_LARGE', `The request body is over ${MAX_DECISION_BODY_BYTES} bytes.`, 'invalid_request_error'), JSON_HEADERS);
|
|
84
|
+
}
|
|
85
|
+
const backend = ex.deps.decision;
|
|
86
|
+
if (!backend)
|
|
87
|
+
return unavailableAnswer(ex, 'The decision model is not available in this core.');
|
|
88
|
+
ex.trace.modelId = backend.modelId?.() ?? null;
|
|
89
|
+
if (ex.trace.inspecting)
|
|
90
|
+
ex.trace.announce(undefined, undefined, decisionPromptPreview(body));
|
|
91
|
+
// One signal for the whole exchange: a client that leaves while the module starts frees the handler.
|
|
92
|
+
const gone = clientGone(ex);
|
|
93
|
+
const target = await backend.acquire(waitMs, gone);
|
|
94
|
+
if (!target.ok)
|
|
95
|
+
return unavailableAnswer(ex, `The decision model is not available (${target.reason}). ${target.message}`);
|
|
96
|
+
// Upstream llama.cpp serves `/v1/systemone` only: the router is the fork's, so say that instead of
|
|
97
|
+
// relaying the engine's bare 404.
|
|
98
|
+
if (target.endpoints !== undefined && !target.endpoints.includes(upstreamPath)) {
|
|
99
|
+
target.release();
|
|
100
|
+
ex.trace.errorKind = 'local_model_error';
|
|
101
|
+
return answer(ex, 501, decisionErrorBody(501, 'UNSUPPORTED_ENDPOINT', `The running decision model does not serve ${upstreamPath}.`, 'not_supported_error'), JSON_HEADERS);
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
let upstream;
|
|
105
|
+
try {
|
|
106
|
+
upstream = await sendUpstream(`http://127.0.0.1:${target.port}${upstreamPath}`, {
|
|
107
|
+
method: 'POST',
|
|
108
|
+
headers: [
|
|
109
|
+
['Content-Type', header(ex.req, 'content-type') ?? 'application/json'],
|
|
110
|
+
['Accept', 'application/json'],
|
|
111
|
+
['Authorization', `Bearer ${target.apiKey}`],
|
|
112
|
+
],
|
|
113
|
+
body,
|
|
114
|
+
connectTimeoutMs: connectTimeoutMs(ex),
|
|
115
|
+
signal: gone,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
if (!(error instanceof UpstreamUnreachable))
|
|
120
|
+
throw error;
|
|
121
|
+
return unavailableAnswer(ex, `The decision model did not answer: ${error.message}`);
|
|
122
|
+
}
|
|
123
|
+
ex.trace.upstreamStatus = upstream.status;
|
|
124
|
+
if (upstream.status >= 400)
|
|
125
|
+
ex.trace.errorKind = 'local_model_error';
|
|
126
|
+
if (ex.trace.inspecting)
|
|
127
|
+
await relayInspected(ex, upstream);
|
|
128
|
+
else
|
|
129
|
+
await relay(ex.res, upstream, ex.cors);
|
|
130
|
+
}
|
|
131
|
+
finally {
|
|
132
|
+
target.release();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=decision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decision.js","sourceRoot":"","sources":["../../../src/server/public/decision.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `POST /v1/embeddings` for the embedding module's model
|
|
3
|
+
* (ADR 2026-10-07-embedding-models-are-their-own-core-module).
|
|
4
|
+
*
|
|
5
|
+
* The route is shared: a request whose `model` names the module's model is served here, by the
|
|
6
|
+
* module's own process; any other goes on to `serveForward` (cloud providers, then the loaded
|
|
7
|
+
* sessions) exactly as before, with the body already read handed over in `ex.body`.
|
|
8
|
+
*
|
|
9
|
+
* A request served here is started for (an enabled module that is idle starts and is waited on), then
|
|
10
|
+
* checked (`checkEmbeddingRequest`: no media links, no inline media the engine would fail to parse, no
|
|
11
|
+
* media the model cannot read, no `dimensions` it does not produce) and passed through byte for byte
|
|
12
|
+
* with the process's own key. The engine's answer, its error envelope included, comes back unchanged,
|
|
13
|
+
* except its 500 for media it could not decode: that is the client's input, so it becomes a 400 naming
|
|
14
|
+
* the field (`undecodableMediaVerdict`). The answers the core writes itself use the OpenAI error shape,
|
|
15
|
+
* with `param` when a field is at fault, like the rest of `/v1`.
|
|
16
|
+
*/
|
|
17
|
+
import type { EmbeddingBackend } from './types.js';
|
|
18
|
+
import type { Exchange } from './exchange.js';
|
|
19
|
+
/** Inline images and audio are base64: a few of them make a body far larger than a text one. */
|
|
20
|
+
export declare const MAX_EMBEDDING_BODY_BYTES: number;
|
|
21
|
+
/** How long a request waits for a module that is enabled but not running to start. */
|
|
22
|
+
export declare const EMBEDDING_START_WAIT_MS = 60000;
|
|
23
|
+
export declare const EMBEDDING_BACKEND_LABEL = "atomic-embedding";
|
|
24
|
+
/** `owned_by` of the module's model in `/v1/models`. */
|
|
25
|
+
export declare const EMBEDDING_OWNED_BY = "atomic-embedding";
|
|
26
|
+
/**
|
|
27
|
+
* Serve `ex` when its `model` is the embedding module's and answer `true`; otherwise answer `false`
|
|
28
|
+
* with the body kept in `ex.body` for the next route. A body over the cap is refused here, whoever it
|
|
29
|
+
* was for.
|
|
30
|
+
*/
|
|
31
|
+
export declare function serveEmbeddingIfOwned(ex: Exchange, backend: EmbeddingBackend, waitMs?: number): Promise<boolean>;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `POST /v1/embeddings` for the embedding module's model
|
|
3
|
+
* (ADR 2026-10-07-embedding-models-are-their-own-core-module).
|
|
4
|
+
*
|
|
5
|
+
* The route is shared: a request whose `model` names the module's model is served here, by the
|
|
6
|
+
* module's own process; any other goes on to `serveForward` (cloud providers, then the loaded
|
|
7
|
+
* sessions) exactly as before, with the body already read handed over in `ex.body`.
|
|
8
|
+
*
|
|
9
|
+
* A request served here is started for (an enabled module that is idle starts and is waited on), then
|
|
10
|
+
* checked (`checkEmbeddingRequest`: no media links, no inline media the engine would fail to parse, no
|
|
11
|
+
* media the model cannot read, no `dimensions` it does not produce) and passed through byte for byte
|
|
12
|
+
* with the process's own key. The engine's answer, its error envelope included, comes back unchanged,
|
|
13
|
+
* except its 500 for media it could not decode: that is the client's input, so it becomes a 400 naming
|
|
14
|
+
* the field (`undecodableMediaVerdict`). The answers the core writes itself use the OpenAI error shape,
|
|
15
|
+
* with `param` when a field is at fault, like the rest of `/v1`.
|
|
16
|
+
*/
|
|
17
|
+
import { checkEmbeddingRequest, undecodableMediaVerdict } from '../../embedding/index.js';
|
|
18
|
+
import { readCapped } from './decision.js';
|
|
19
|
+
import { structuredErrorJson } from './errors.js';
|
|
20
|
+
import { answer, clientGone, connectTimeoutMs, header } from './exchange.js';
|
|
21
|
+
import { endpointFromPath } from './trace.js';
|
|
22
|
+
import { readUpstreamText, relay, relayedHeaders, sendUpstream, sendWhole, UpstreamUnreachable, } from './wire.js';
|
|
23
|
+
/** Inline images and audio are base64: a few of them make a body far larger than a text one. */
|
|
24
|
+
export const MAX_EMBEDDING_BODY_BYTES = 64 * 1024 * 1024;
|
|
25
|
+
/** How long a request waits for a module that is enabled but not running to start. */
|
|
26
|
+
export const EMBEDDING_START_WAIT_MS = 60_000;
|
|
27
|
+
export const EMBEDDING_BACKEND_LABEL = 'atomic-embedding';
|
|
28
|
+
/** `owned_by` of the module's model in `/v1/models`. */
|
|
29
|
+
export const EMBEDDING_OWNED_BY = 'atomic-embedding';
|
|
30
|
+
const JSON_HEADERS = [['Content-Type', 'application/json']];
|
|
31
|
+
/** The `model` a body names, without failing on anything: a body this cannot read is not the module's. */
|
|
32
|
+
function modelOf(body) {
|
|
33
|
+
try {
|
|
34
|
+
const json = JSON.parse(body.toString('utf8'));
|
|
35
|
+
const model = typeof json === 'object' && json !== null && !Array.isArray(json)
|
|
36
|
+
? json['model']
|
|
37
|
+
: undefined;
|
|
38
|
+
return { json, model: typeof model === 'string' ? model : undefined };
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Serve `ex` when its `model` is the embedding module's and answer `true`; otherwise answer `false`
|
|
46
|
+
* with the body kept in `ex.body` for the next route. A body over the cap is refused here, whoever it
|
|
47
|
+
* was for.
|
|
48
|
+
*/
|
|
49
|
+
export async function serveEmbeddingIfOwned(ex, backend, waitMs = EMBEDDING_START_WAIT_MS) {
|
|
50
|
+
const modelId = backend.modelId();
|
|
51
|
+
if (modelId === null)
|
|
52
|
+
return false;
|
|
53
|
+
const body = ex.body ?? (await readCapped(ex, MAX_EMBEDDING_BODY_BYTES));
|
|
54
|
+
if (body === undefined) {
|
|
55
|
+
ex.trace.endpoint = endpointFromPath(ex.path);
|
|
56
|
+
ex.trace.errorKind = 'bad_request';
|
|
57
|
+
answer(ex, 413, structuredErrorJson(`The request body is over ${MAX_EMBEDDING_BODY_BYTES} bytes.`, 'invalid_request_error', 'request_too_large'), JSON_HEADERS);
|
|
58
|
+
return true;
|
|
59
|
+
}
|
|
60
|
+
ex.body = body;
|
|
61
|
+
const parsed = modelOf(body);
|
|
62
|
+
if (parsed?.model !== modelId)
|
|
63
|
+
return false;
|
|
64
|
+
const trace = ex.trace;
|
|
65
|
+
trace.endpoint = endpointFromPath(ex.path);
|
|
66
|
+
trace.backend = EMBEDDING_BACKEND_LABEL;
|
|
67
|
+
trace.modelId = modelId;
|
|
68
|
+
const gone = clientGone(ex);
|
|
69
|
+
const target = await backend.acquire(waitMs, gone);
|
|
70
|
+
if (!target.ok) {
|
|
71
|
+
trace.errorKind = 'local_model_unreachable';
|
|
72
|
+
answer(ex, 503, structuredErrorJson(target.message, 'server_error', 'model_not_available'), JSON_HEADERS);
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
try {
|
|
76
|
+
const verdict = checkEmbeddingRequest(parsed.json, target.modalities, target.dims);
|
|
77
|
+
if (!verdict.ok) {
|
|
78
|
+
trace.errorKind = 'bad_request';
|
|
79
|
+
answer(ex, 400, structuredErrorJson(verdict.message, 'invalid_request_error', 'invalid_value', verdict.param), JSON_HEADERS);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
let upstream;
|
|
83
|
+
try {
|
|
84
|
+
upstream = await sendUpstream(`http://127.0.0.1:${target.port}/v1/embeddings`, {
|
|
85
|
+
method: 'POST',
|
|
86
|
+
headers: [
|
|
87
|
+
['Content-Type', header(ex.req, 'content-type') ?? 'application/json'],
|
|
88
|
+
['Accept', 'application/json'],
|
|
89
|
+
['Authorization', `Bearer ${target.apiKey}`],
|
|
90
|
+
],
|
|
91
|
+
body,
|
|
92
|
+
connectTimeoutMs: connectTimeoutMs(ex),
|
|
93
|
+
signal: gone,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
if (!(error instanceof UpstreamUnreachable))
|
|
98
|
+
throw error;
|
|
99
|
+
trace.errorKind = 'local_model_unreachable';
|
|
100
|
+
answer(ex, 503, structuredErrorJson(`The embedding model did not answer: ${error.message}`, 'server_error', 'model_not_available'), JSON_HEADERS);
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
trace.upstreamStatus = upstream.status;
|
|
104
|
+
if (upstream.status === 500) {
|
|
105
|
+
// A 500 is read whole: the engine's word for media it could not decode makes it the client's error.
|
|
106
|
+
const text = await readUpstreamText(upstream);
|
|
107
|
+
const undecodable = undecodableMediaVerdict(upstream.status, text, parsed.json, target.modalities);
|
|
108
|
+
if (undecodable !== undefined) {
|
|
109
|
+
trace.errorKind = 'bad_request';
|
|
110
|
+
answer(ex, 400, structuredErrorJson(undecodable.message, 'invalid_request_error', 'invalid_value', undecodable.param), JSON_HEADERS);
|
|
111
|
+
return true;
|
|
112
|
+
}
|
|
113
|
+
trace.errorKind = 'local_model_error';
|
|
114
|
+
sendWhole(ex.res, upstream.status, relayedHeaders(upstream, ex.cors), text);
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
if (upstream.status >= 400)
|
|
118
|
+
trace.errorKind = 'local_model_error';
|
|
119
|
+
await relay(ex.res, upstream, ex.cors);
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
finally {
|
|
123
|
+
target.release();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=embedding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embedding.js","sourceRoot":"","sources":["../../../src/server/public/embedding.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,8 @@ export declare function bodyIndicatesOom(body: string): boolean;
|
|
|
18
18
|
* during prompt processing answers 500 "Compute error" and every later request fails the same way).
|
|
19
19
|
*/
|
|
20
20
|
export declare function isComputeBackendError(status: number, body: string): boolean;
|
|
21
|
-
|
|
21
|
+
/** The OpenAI error envelope; `param` names the request field at fault, when there is one. */
|
|
22
|
+
export declare function structuredErrorJson(message: string, type: string, code: string, param?: string): string;
|
|
22
23
|
export declare function computeErrorEnvelope(oom: boolean): string;
|
|
23
24
|
/**
|
|
24
25
|
* A local engine's error as the client receives it: an existing `{"error": {...}}` envelope passes
|