@atomic-chat/core 0.13.6 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/backend/advisor/advisor.d.ts +8 -7
- package/dist/backend/advisor/advisor.js +17 -25
- package/dist/backend/advisor/advisor.js.map +1 -1
- package/dist/backend/catalog/index.d.ts +4 -2
- package/dist/backend/catalog/index.js +4 -2
- package/dist/backend/catalog/index.js.map +1 -1
- package/dist/backend/catalog/manifest.d.ts +5 -51
- package/dist/backend/catalog/manifest.js +5 -93
- package/dist/backend/catalog/manifest.js.map +1 -1
- package/dist/backend/catalog/upstream-releases-baseline.d.ts +2 -0
- package/dist/backend/catalog/upstream-releases-baseline.js +12 -0
- package/dist/backend/catalog/upstream-releases-baseline.js.map +1 -0
- package/dist/backend/catalog/upstream-releases-baseline.json +101 -0
- package/dist/backend/catalog/upstream-releases-catalog.d.ts +54 -0
- package/dist/backend/catalog/upstream-releases-catalog.js +148 -0
- package/dist/backend/catalog/upstream-releases-catalog.js.map +1 -0
- package/dist/backend/catalog/upstream-releases.d.ts +75 -0
- package/dist/backend/catalog/upstream-releases.js +155 -0
- package/dist/backend/catalog/upstream-releases.js.map +1 -0
- package/dist/backend/install/service.d.ts +7 -4
- package/dist/backend/install/service.js +4 -4
- package/dist/backend/install/service.js.map +1 -1
- package/dist/cli/commands/serve.js +10 -28
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +0 -1
- package/dist/cli/main.js.map +1 -1
- package/dist/client/control-client.d.ts +7 -19
- package/dist/client/control-client.js +9 -29
- package/dist/client/control-client.js.map +1 -1
- package/dist/cloud/registry.d.ts +14 -1
- package/dist/cloud/registry.js +73 -2
- package/dist/cloud/registry.js.map +1 -1
- package/dist/config/paths.d.ts +4 -3
- package/dist/config/paths.js +15 -14
- package/dist/config/paths.js.map +1 -1
- package/dist/contracts/diffusion.d.ts +45 -18
- package/dist/contracts/diffusion.js +1 -1
- package/dist/contracts/diffusion.js.map +1 -1
- package/dist/contracts/engines.d.ts +1 -1
- package/dist/contracts/engines.js +2 -0
- package/dist/contracts/engines.js.map +1 -1
- package/dist/contracts/errors.d.ts +1 -3
- package/dist/contracts/errors.js +16 -0
- package/dist/contracts/errors.js.map +1 -1
- package/dist/contracts/events.d.ts +11 -6
- package/dist/contracts/index.d.ts +1 -1
- package/dist/contracts/index.js +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/media.d.ts +186 -0
- package/dist/contracts/media.js +55 -0
- package/dist/contracts/media.js.map +1 -0
- package/dist/contracts/session.d.ts +10 -1
- package/dist/contracts/session.js +10 -0
- package/dist/contracts/session.js.map +1 -1
- package/dist/contracts/settings.d.ts +36 -1
- package/dist/contracts/settings.js.map +1 -1
- package/dist/core/atomic-core.d.ts +5 -5
- package/dist/core/atomic-core.js.map +1 -1
- package/dist/core/create.js +43 -59
- package/dist/core/create.js.map +1 -1
- package/dist/core/managed-engines.js +2 -0
- package/dist/core/managed-engines.js.map +1 -1
- package/dist/core/prism.d.ts +21 -6
- package/dist/core/prism.js +44 -0
- package/dist/core/prism.js.map +1 -1
- package/dist/core/types.d.ts +0 -5
- package/dist/core/types.js.map +1 -1
- package/dist/diffusion/gallery.d.ts +24 -3
- package/dist/diffusion/gallery.js +151 -21
- package/dist/diffusion/gallery.js.map +1 -1
- package/dist/diffusion/index.d.ts +3 -0
- package/dist/diffusion/index.js +3 -0
- package/dist/diffusion/index.js.map +1 -1
- package/dist/diffusion/jobs.d.ts +6 -1
- package/dist/diffusion/jobs.js +6 -1
- package/dist/diffusion/jobs.js.map +1 -1
- package/dist/diffusion/media-header.d.ts +22 -0
- package/dist/diffusion/media-header.js +149 -0
- package/dist/diffusion/media-header.js.map +1 -0
- package/dist/diffusion/parse.d.ts +3 -1
- package/dist/diffusion/parse.js +36 -0
- package/dist/diffusion/parse.js.map +1 -1
- package/dist/diffusion/recipe.d.ts +10 -1
- package/dist/diffusion/recipe.js +85 -21
- package/dist/diffusion/recipe.js.map +1 -1
- package/dist/diffusion/remote-job.d.ts +76 -0
- package/dist/diffusion/remote-job.js +643 -0
- package/dist/diffusion/remote-job.js.map +1 -0
- package/dist/diffusion/remote-store.d.ts +38 -0
- package/dist/diffusion/remote-store.js +91 -0
- package/dist/diffusion/remote-store.js.map +1 -0
- package/dist/diffusion/service.d.ts +9 -1
- package/dist/diffusion/service.js +49 -9
- package/dist/diffusion/service.js.map +1 -1
- package/dist/diffusion/state.d.ts +13 -1
- package/dist/diffusion/state.js +8 -0
- package/dist/diffusion/state.js.map +1 -1
- package/dist/diffusion/video-gallery.d.ts +11 -4
- package/dist/diffusion/video-gallery.js +62 -25
- package/dist/diffusion/video-gallery.js.map +1 -1
- package/dist/diffusion/video-history.js +4 -1
- package/dist/diffusion/video-history.js.map +1 -1
- package/dist/diffusion/video-recipe.js +58 -25
- package/dist/diffusion/video-recipe.js.map +1 -1
- package/dist/diffusion/wiring.d.ts +3 -0
- package/dist/diffusion/wiring.js +1 -0
- package/dist/diffusion/wiring.js.map +1 -1
- package/dist/downloads/downloader.d.ts +1 -18
- package/dist/downloads/downloader.js +1 -45
- package/dist/downloads/downloader.js.map +1 -1
- package/dist/media/adapters/a1111.d.ts +32 -0
- package/dist/media/adapters/a1111.js +207 -0
- package/dist/media/adapters/a1111.js.map +1 -0
- package/dist/media/adapters/aimlapi-videos.d.ts +34 -0
- package/dist/media/adapters/aimlapi-videos.js +172 -0
- package/dist/media/adapters/aimlapi-videos.js.map +1 -0
- package/dist/media/adapters/dashscope-image.d.ts +26 -0
- package/dist/media/adapters/dashscope-image.js +160 -0
- package/dist/media/adapters/dashscope-image.js.map +1 -0
- package/dist/media/adapters/dashscope-video.d.ts +47 -0
- package/dist/media/adapters/dashscope-video.js +251 -0
- package/dist/media/adapters/dashscope-video.js.map +1 -0
- package/dist/media/adapters/gemini-image.d.ts +27 -0
- package/dist/media/adapters/gemini-image.js +181 -0
- package/dist/media/adapters/gemini-image.js.map +1 -0
- package/dist/media/adapters/gemini-veo.d.ts +39 -0
- package/dist/media/adapters/gemini-veo.js +196 -0
- package/dist/media/adapters/gemini-veo.js.map +1 -0
- package/dist/media/adapters/hf-images.d.ts +85 -0
- package/dist/media/adapters/hf-images.js +439 -0
- package/dist/media/adapters/hf-images.js.map +1 -0
- package/dist/media/adapters/hf-videos.d.ts +44 -0
- package/dist/media/adapters/hf-videos.js +265 -0
- package/dist/media/adapters/hf-videos.js.map +1 -0
- package/dist/media/adapters/minimax-image.d.ts +26 -0
- package/dist/media/adapters/minimax-image.js +111 -0
- package/dist/media/adapters/minimax-image.js.map +1 -0
- package/dist/media/adapters/minimax-video-v2.d.ts +34 -0
- package/dist/media/adapters/minimax-video-v2.js +191 -0
- package/dist/media/adapters/minimax-video-v2.js.map +1 -0
- package/dist/media/adapters/minimax-video.d.ts +28 -0
- package/dist/media/adapters/minimax-video.js +155 -0
- package/dist/media/adapters/minimax-video.js.map +1 -0
- package/dist/media/adapters/mistral-agent-image.d.ts +33 -0
- package/dist/media/adapters/mistral-agent-image.js +108 -0
- package/dist/media/adapters/mistral-agent-image.js.map +1 -0
- package/dist/media/adapters/nvidia-genai.d.ts +28 -0
- package/dist/media/adapters/nvidia-genai.js +182 -0
- package/dist/media/adapters/nvidia-genai.js.map +1 -0
- package/dist/media/adapters/openai-images.d.ts +23 -0
- package/dist/media/adapters/openai-images.js +164 -0
- package/dist/media/adapters/openai-images.js.map +1 -0
- package/dist/media/adapters/openai-videos.d.ts +34 -0
- package/dist/media/adapters/openai-videos.js +175 -0
- package/dist/media/adapters/openai-videos.js.map +1 -0
- package/dist/media/adapters/openrouter-images.d.ts +25 -0
- package/dist/media/adapters/openrouter-images.js +161 -0
- package/dist/media/adapters/openrouter-images.js.map +1 -0
- package/dist/media/adapters/openrouter-videos.d.ts +43 -0
- package/dist/media/adapters/openrouter-videos.js +208 -0
- package/dist/media/adapters/openrouter-videos.js.map +1 -0
- package/dist/media/adapters/registry.d.ts +7 -0
- package/dist/media/adapters/registry.js +45 -0
- package/dist/media/adapters/registry.js.map +1 -0
- package/dist/media/adapters/types.d.ts +133 -0
- package/dist/media/adapters/types.js +15 -0
- package/dist/media/adapters/types.js.map +1 -0
- package/dist/media/adapters/xai-images.d.ts +19 -0
- package/dist/media/adapters/xai-images.js +83 -0
- package/dist/media/adapters/xai-images.js.map +1 -0
- package/dist/media/adapters/xai-videos.d.ts +29 -0
- package/dist/media/adapters/xai-videos.js +148 -0
- package/dist/media/adapters/xai-videos.js.map +1 -0
- package/dist/media/catalog-baseline.d.ts +2 -0
- package/dist/media/catalog-baseline.js +10 -0
- package/dist/media/catalog-baseline.js.map +1 -0
- package/dist/media/catalog-baseline.json +1819 -0
- package/dist/media/catalog-service.d.ts +42 -0
- package/dist/media/catalog-service.js +111 -0
- package/dist/media/catalog-service.js.map +1 -0
- package/dist/media/catalog.d.ts +50 -0
- package/dist/media/catalog.js +315 -0
- package/dist/media/catalog.js.map +1 -0
- package/dist/media/http.d.ts +125 -0
- package/dist/media/http.js +308 -0
- package/dist/media/http.js.map +1 -0
- package/dist/media/index.d.ts +14 -0
- package/dist/media/index.js +15 -0
- package/dist/media/index.js.map +1 -0
- package/dist/media/mask.d.ts +12 -0
- package/dist/media/mask.js +57 -0
- package/dist/media/mask.js.map +1 -0
- package/dist/media/service.d.ts +42 -0
- package/dist/media/service.js +144 -0
- package/dist/media/service.js.map +1 -0
- package/dist/models/hf.d.ts +3 -16
- package/dist/models/hf.js +4 -42
- package/dist/models/hf.js.map +1 -1
- package/dist/router/resolve.d.ts +15 -4
- package/dist/router/resolve.js +25 -3
- package/dist/router/resolve.js.map +1 -1
- package/dist/runtime/environment/linux-provisioner.js +7 -67
- package/dist/runtime/environment/linux-provisioner.js.map +1 -1
- package/dist/runtime/environment/runtime-removal-plan.d.ts +19 -0
- package/dist/runtime/environment/runtime-removal-plan.js +74 -0
- package/dist/runtime/environment/runtime-removal-plan.js.map +1 -0
- package/dist/runtime/environment/windows-provisioner.js +20 -4
- package/dist/runtime/environment/windows-provisioner.js.map +1 -1
- package/dist/runtime/managed-engines/spec.d.ts +2 -2
- package/dist/runtime/managed-engines/spec.js +6 -0
- package/dist/runtime/managed-engines/spec.js.map +1 -1
- package/dist/runtime/managed-models/compatibility.d.ts +10 -0
- package/dist/runtime/managed-models/compatibility.js +18 -0
- package/dist/runtime/managed-models/compatibility.js.map +1 -1
- package/dist/runtime/managed-text/request-rules.d.ts +9 -7
- package/dist/runtime/managed-text/request-rules.js +58 -2
- package/dist/runtime/managed-text/request-rules.js.map +1 -1
- package/dist/runtime/managed-text/setting-values.d.ts +9 -0
- package/dist/runtime/managed-text/setting-values.js +44 -0
- package/dist/runtime/managed-text/setting-values.js.map +1 -0
- package/dist/runtime/sglang/adapter.d.ts +50 -0
- package/dist/runtime/sglang/adapter.js +393 -0
- package/dist/runtime/sglang/adapter.js.map +1 -0
- package/dist/runtime/sglang/engine.d.ts +16 -0
- package/dist/runtime/sglang/engine.js +38 -0
- package/dist/runtime/sglang/engine.js.map +1 -0
- package/dist/runtime/sglang/index.d.ts +11 -0
- package/dist/runtime/sglang/index.js +12 -0
- package/dist/runtime/sglang/index.js.map +1 -0
- package/dist/runtime/sglang/memory.d.ts +64 -0
- package/dist/runtime/sglang/memory.js +90 -0
- package/dist/runtime/sglang/memory.js.map +1 -0
- package/dist/runtime/sglang/settings.d.ts +49 -0
- package/dist/runtime/sglang/settings.js +118 -0
- package/dist/runtime/sglang/settings.js.map +1 -0
- package/dist/runtime/shared/external-sessions.js +1 -0
- package/dist/runtime/shared/external-sessions.js.map +1 -1
- package/dist/runtime/vllm/adapter.js +2 -47
- package/dist/runtime/vllm/adapter.js.map +1 -1
- package/dist/runtime/vllm/memory.js +3 -16
- package/dist/runtime/vllm/memory.js.map +1 -1
- package/dist/runtime/vllm/settings.d.ts +7 -0
- package/dist/runtime/vllm/settings.js +2 -30
- package/dist/runtime/vllm/settings.js.map +1 -1
- package/dist/server/control/router.js +4 -3
- package/dist/server/control/router.js.map +1 -1
- package/dist/server/control/routes/media.d.ts +9 -0
- package/dist/server/control/routes/media.js +24 -0
- package/dist/server/control/routes/media.js.map +1 -0
- package/dist/server/control/routes/model-compatibility.d.ts +9 -0
- package/dist/server/control/routes/model-compatibility.js +31 -0
- package/dist/server/control/routes/model-compatibility.js.map +1 -0
- package/dist/server/control/types.d.ts +14 -20
- package/dist/server/control/types.js.map +1 -1
- package/dist/server/http.js +15 -2
- package/dist/server/http.js.map +1 -1
- package/dist/server/public/images-params.js +18 -1
- package/dist/server/public/images-params.js.map +1 -1
- package/dist/server/public/images.d.ts +11 -2
- package/dist/server/public/images.js +73 -9
- package/dist/server/public/images.js.map +1 -1
- package/dist/server/public/index.js +7 -1
- package/dist/server/public/index.js.map +1 -1
- package/dist/server/public/listing.js +1 -0
- package/dist/server/public/listing.js.map +1 -1
- package/dist/server/public/remote-media.d.ts +51 -0
- package/dist/server/public/remote-media.js +225 -0
- package/dist/server/public/remote-media.js.map +1 -0
- package/dist/server/public/responses.js +4 -2
- package/dist/server/public/responses.js.map +1 -1
- package/dist/server/public/static-assets.generated.js +1 -1
- package/dist/server/public/static-assets.generated.js.map +1 -1
- package/dist/server/public/trace.js +2 -0
- package/dist/server/public/trace.js.map +1 -1
- package/dist/server/public/types.d.ts +5 -1
- package/dist/server/public/videos-params.js +13 -3
- package/dist/server/public/videos-params.js.map +1 -1
- package/dist/server/public/videos.d.ts +1 -0
- package/dist/server/public/videos.js +21 -3
- package/dist/server/public/videos.js.map +1 -1
- package/dist/settings/schema/llamacpp-upstream.json +9 -0
- package/dist/settings/schema/sglang.json +251 -0
- package/dist/settings/schema.js +27 -1
- package/dist/settings/schema.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -5
- package/src/settings/schema/llamacpp-upstream.json +9 -0
- package/src/settings/schema/sglang.json +251 -0
- package/dist/backend/catalog/bundled-manifest-baseline.d.ts +0 -2
- package/dist/backend/catalog/bundled-manifest-baseline.js +0 -65
- package/dist/backend/catalog/bundled-manifest-baseline.js.map +0 -1
- package/dist/contracts/model-setup.d.ts +0 -115
- package/dist/contracts/model-setup.js +0 -33
- package/dist/contracts/model-setup.js.map +0 -1
- package/dist/core/model-setup/index.d.ts +0 -4
- package/dist/core/model-setup/index.js +0 -5
- package/dist/core/model-setup/index.js.map +0 -1
- package/dist/core/model-setup/plan.d.ts +0 -56
- package/dist/core/model-setup/plan.js +0 -158
- package/dist/core/model-setup/plan.js.map +0 -1
- package/dist/core/model-setup/service.d.ts +0 -92
- package/dist/core/model-setup/service.js +0 -329
- package/dist/core/model-setup/service.js.map +0 -1
- package/dist/core/model-setup/store.d.ts +0 -29
- package/dist/core/model-setup/store.js +0 -116
- package/dist/core/model-setup/store.js.map +0 -1
- package/dist/core/model-setup/wiring.d.ts +0 -59
- package/dist/core/model-setup/wiring.js +0 -132
- package/dist/core/model-setup/wiring.js.map +0 -1
- package/dist/core/tensorrt-llm.d.ts +0 -169
- package/dist/core/tensorrt-llm.js +0 -428
- package/dist/core/tensorrt-llm.js.map +0 -1
- package/dist/downloads/segmented.d.ts +0 -40
- package/dist/downloads/segmented.js +0 -170
- package/dist/downloads/segmented.js.map +0 -1
- package/dist/runtime/tensorrt-llm/delete.d.ts +0 -15
- package/dist/runtime/tensorrt-llm/delete.js +0 -60
- package/dist/runtime/tensorrt-llm/delete.js.map +0 -1
- package/dist/runtime/tensorrt-llm/guest-files.d.ts +0 -8
- package/dist/runtime/tensorrt-llm/guest-files.js +0 -49
- package/dist/runtime/tensorrt-llm/guest-files.js.map +0 -1
- package/dist/runtime/tensorrt-llm/location.d.ts +0 -20
- package/dist/runtime/tensorrt-llm/location.js +0 -48
- package/dist/runtime/tensorrt-llm/location.js.map +0 -1
- package/dist/runtime/tensorrt-llm/model-dir.d.ts +0 -38
- package/dist/runtime/tensorrt-llm/model-dir.js +0 -137
- package/dist/runtime/tensorrt-llm/model-dir.js.map +0 -1
- package/dist/runtime/tensorrt-llm/quant-format.d.ts +0 -65
- package/dist/runtime/tensorrt-llm/quant-format.js +0 -189
- package/dist/runtime/tensorrt-llm/quant-format.js.map +0 -1
- package/dist/runtime/tensorrt-llm/registry.d.ts +0 -26
- package/dist/runtime/tensorrt-llm/registry.js +0 -68
- package/dist/runtime/tensorrt-llm/registry.js.map +0 -1
- package/dist/runtime/tensorrt-llm/runtime.d.ts +0 -130
- package/dist/runtime/tensorrt-llm/runtime.js +0 -395
- package/dist/runtime/tensorrt-llm/runtime.js.map +0 -1
- package/dist/server/control/routes/model-setups.d.ts +0 -11
- package/dist/server/control/routes/model-setups.js +0 -55
- package/dist/server/control/routes/model-setups.js.map +0 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SGLang's memory, decided by core (change `add-sglang-runtime`, task 2.3, design D4; spec
|
|
3
|
+
* `sglang-runtime`, "Память SGLang задаёт core"). SGLang sizes its budget from the memory it finds
|
|
4
|
+
* free at start-up, once its own CUDA context exists: it keeps `--mem-fraction-static` of it for the
|
|
5
|
+
* weights and the KV cache, and the rest is its room for activations and CUDA graphs
|
|
6
|
+
* (`mem_cache/kv_cache_configurator.py::_profile_available_bytes`). Its own default share is computed
|
|
7
|
+
* from the card's *total* memory, so on a card a desktop already holds part of, that room comes out
|
|
8
|
+
* smaller than SGLang meant. Core instead:
|
|
9
|
+
*
|
|
10
|
+
* - gives SGLang (unless the share setting fixes it) `f = (F − R) / F`, clamped to [0.5, 0.95], where
|
|
11
|
+
* `F` is what the card has free right before the container is created and `R` the room SGLang needs
|
|
12
|
+
* (2 GiB with CUDA graphs, 1.25 GiB without): SGLang then keeps about `R` whatever other processes
|
|
13
|
+
* took. On a card with the host's memory the static share holds at most half of the host's memory:
|
|
14
|
+
* `(min(F, half the host) − R) / F`. Within its share SGLang sizes the KV cache itself — hybrid
|
|
15
|
+
* models' linear-attention state included — and core passes `--max-total-tokens` only from the
|
|
16
|
+
* setting.
|
|
17
|
+
* - checks, before any container, that the weights, an estimate of the KV cache (context × parallel
|
|
18
|
+
* requests × the model's per-token KV bytes over its attention layers, or the KV token limit) and
|
|
19
|
+
* SGLang's own overhead fit the free memory — the same rule `POST /models/sglang/check` applies. It
|
|
20
|
+
* is an estimate for the verdict and the refusal before a container; it sizes nothing SGLang runs
|
|
21
|
+
* with.
|
|
22
|
+
*
|
|
23
|
+
* The reserve, the overhead (~2 GiB: CUDA context, activations, graphs) and the margin are first
|
|
24
|
+
* estimates; the live run of task 4.1 records the numbers (`summary.json`, `rulings/core.md`).
|
|
25
|
+
*/
|
|
26
|
+
import type { GpuFacts } from '../../contracts/index.js';
|
|
27
|
+
import { type CheckpointMemoryInputs, type HostMemory, type JsonObject, type KvReserveBasis, type ManagedCheckEngine, type MemoryNeed } from '../managed-models/index.js';
|
|
28
|
+
import type { SglangLaunchPlan } from './adapter.js';
|
|
29
|
+
import type { SglangSettings } from './settings.js';
|
|
30
|
+
/** SGLang's room for activations and CUDA graphs captured up to the parallel requests (design D4, D5). */
|
|
31
|
+
export declare const SGLANG_RUNTIME_RESERVE_BYTES: number;
|
|
32
|
+
/** The same room with CUDA graphs off. */
|
|
33
|
+
export declare const SGLANG_RUNTIME_RESERVE_NO_GRAPHS_BYTES: number;
|
|
34
|
+
/** What SGLang holds beyond weights and KV cache: CUDA context, activations, graphs. */
|
|
35
|
+
export declare const SGLANG_ENGINE_OVERHEAD_BYTES: number;
|
|
36
|
+
/** Counted as needed in the memory check: what other processes may still take meanwhile. */
|
|
37
|
+
export declare const SGLANG_FREE_MEMORY_MARGIN_BYTES: number;
|
|
38
|
+
export declare const SGLANG_MIN_MEM_FRACTION_STATIC = 0.5;
|
|
39
|
+
export declare const SGLANG_MAX_MEM_FRACTION_STATIC = 0.95;
|
|
40
|
+
/**
|
|
41
|
+
* The KV cache the memory check counts: the KV token limit when set, else context × parallel
|
|
42
|
+
* requests, × the bytes per token over the model's attention layers — and whether the model's shape
|
|
43
|
+
* sized it. Without a shape: a quarter of the weights, at least 1 GiB.
|
|
44
|
+
*/
|
|
45
|
+
export declare function sglangKvCacheBytes(checkpoint: {
|
|
46
|
+
configJson: JsonObject;
|
|
47
|
+
hfQuantConfigJson: JsonObject | null;
|
|
48
|
+
weightBytesTotal?: number;
|
|
49
|
+
}, settings: SglangSettings, gpu: GpuFacts): {
|
|
50
|
+
bytes: number;
|
|
51
|
+
basis: KvReserveBasis;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* SGLang's memory rule on `gpu`: weights + KV cache estimate + its own overhead + a margin for what
|
|
55
|
+
* other processes may take meanwhile; on a card with the host's memory, whatever of `MemAvailable`
|
|
56
|
+
* lies beyond half the host's memory counts as needed too.
|
|
57
|
+
*/
|
|
58
|
+
export declare function sglangMemoryNeed(gpu: GpuFacts, checkpoint: CheckpointMemoryInputs, settings: SglangSettings, host: HostMemory): MemoryNeed;
|
|
59
|
+
/** `--mem-fraction-static` from the card as it stands now (see the file banner). */
|
|
60
|
+
export declare function sglangMemFractionStatic(settings: SglangSettings, gpu: GpuFacts, host: HostMemory): number;
|
|
61
|
+
/** The launch plan `beforeCreate` hands the adapter, from the card re-probed right before the container. */
|
|
62
|
+
export declare function sglangLaunchPlan(settings: SglangSettings, checkpoint: CheckpointMemoryInputs, gpu: GpuFacts, host: HostMemory): SglangLaunchPlan;
|
|
63
|
+
/** The check skeleton's hooks for SGLang: its memory rule, and no checkpoint quirks of its own. */
|
|
64
|
+
export declare function sglangCheckEngine(settings: SglangSettings): ManagedCheckEngine;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { checkpointIsMultimodal, freeMemoryBytes, isUnifiedMemory, kvCacheQuantAlgo, readKvCacheShape, supportsFp8KvCache, totalMemoryBytes, } from '../managed-models/index.js';
|
|
2
|
+
const GiB = 1024 ** 3;
|
|
3
|
+
const MiB = 1024 ** 2;
|
|
4
|
+
/** SGLang's room for activations and CUDA graphs captured up to the parallel requests (design D4, D5). */
|
|
5
|
+
export const SGLANG_RUNTIME_RESERVE_BYTES = 2 * GiB;
|
|
6
|
+
/** The same room with CUDA graphs off. */
|
|
7
|
+
export const SGLANG_RUNTIME_RESERVE_NO_GRAPHS_BYTES = 1.25 * GiB;
|
|
8
|
+
/** What SGLang holds beyond weights and KV cache: CUDA context, activations, graphs. */
|
|
9
|
+
export const SGLANG_ENGINE_OVERHEAD_BYTES = 2 * GiB;
|
|
10
|
+
/** Counted as needed in the memory check: what other processes may still take meanwhile. */
|
|
11
|
+
export const SGLANG_FREE_MEMORY_MARGIN_BYTES = 512 * MiB;
|
|
12
|
+
export const SGLANG_MIN_MEM_FRACTION_STATIC = 0.5;
|
|
13
|
+
export const SGLANG_MAX_MEM_FRACTION_STATIC = 0.95;
|
|
14
|
+
/** Without the model's KV shape: a quarter of the weights, at least 1 GiB (vLLM's rule). */
|
|
15
|
+
const FALLBACK_KV_WEIGHT_SHARE = 0.25;
|
|
16
|
+
const FALLBACK_KV_MIN_BYTES = GiB;
|
|
17
|
+
/**
|
|
18
|
+
* The KV cache the memory check counts: the KV token limit when set, else context × parallel
|
|
19
|
+
* requests, × the bytes per token over the model's attention layers — and whether the model's shape
|
|
20
|
+
* sized it. Without a shape: a quarter of the weights, at least 1 GiB.
|
|
21
|
+
*/
|
|
22
|
+
export function sglangKvCacheBytes(checkpoint, settings, gpu) {
|
|
23
|
+
const shape = readKvCacheShape(checkpoint.configJson);
|
|
24
|
+
if (shape === undefined) {
|
|
25
|
+
const weights = checkpoint.weightBytesTotal ?? 0;
|
|
26
|
+
return {
|
|
27
|
+
bytes: Math.max(FALLBACK_KV_MIN_BYTES, Math.ceil(weights * FALLBACK_KV_WEIGHT_SHARE)),
|
|
28
|
+
basis: 'weight_fraction',
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
const fp8 = (settings.kv_cache_dtype === 'fp8' && supportsFp8KvCache(gpu.compute_capability)) ||
|
|
32
|
+
kvCacheQuantAlgo(checkpoint.configJson, checkpoint.hfQuantConfigJson)?.toUpperCase() === 'FP8';
|
|
33
|
+
const perToken = 2 * shape.numHiddenLayers * shape.numKeyValueHeads * shape.headDim * (fp8 ? 1 : 2);
|
|
34
|
+
const tokens = settings.max_total_tokens ?? settings.context_length * settings.max_running_requests;
|
|
35
|
+
return { bytes: perToken * tokens, basis: 'config' };
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* SGLang's memory rule on `gpu`: weights + KV cache estimate + its own overhead + a margin for what
|
|
39
|
+
* other processes may take meanwhile; on a card with the host's memory, whatever of `MemAvailable`
|
|
40
|
+
* lies beyond half the host's memory counts as needed too.
|
|
41
|
+
*/
|
|
42
|
+
export function sglangMemoryNeed(gpu, checkpoint, settings, host) {
|
|
43
|
+
const unified = isUnifiedMemory(gpu);
|
|
44
|
+
const kv = sglangKvCacheBytes(checkpoint, settings, gpu);
|
|
45
|
+
const systemReserve = unified
|
|
46
|
+
? Math.max(0, freeMemoryBytes(gpu, host) - totalMemoryBytes(gpu, host) / 2)
|
|
47
|
+
: 0;
|
|
48
|
+
const neededBytes = checkpoint.weightBytesTotal +
|
|
49
|
+
kv.bytes +
|
|
50
|
+
SGLANG_ENGINE_OVERHEAD_BYTES +
|
|
51
|
+
SGLANG_FREE_MEMORY_MARGIN_BYTES +
|
|
52
|
+
systemReserve;
|
|
53
|
+
return {
|
|
54
|
+
neededBytes,
|
|
55
|
+
kvReserveBasis: kv.basis,
|
|
56
|
+
details: `weight_bytes=${checkpoint.weightBytesTotal} kv_cache_bytes=${kv.bytes} kv_reserve_basis=${kv.basis} ` +
|
|
57
|
+
`engine_overhead_bytes=${SGLANG_ENGINE_OVERHEAD_BYTES} free_margin_bytes=${SGLANG_FREE_MEMORY_MARGIN_BYTES}` +
|
|
58
|
+
(unified ? ` system_reserve_bytes=${systemReserve}` : '') +
|
|
59
|
+
` needed_bytes=${neededBytes}`,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/** `--mem-fraction-static` from the card as it stands now (see the file banner). */
|
|
63
|
+
export function sglangMemFractionStatic(settings, gpu, host) {
|
|
64
|
+
const free = freeMemoryBytes(gpu, host);
|
|
65
|
+
if (free <= 0)
|
|
66
|
+
return SGLANG_MIN_MEM_FRACTION_STATIC;
|
|
67
|
+
const reserve = settings.cuda_graphs === 'off' ? SGLANG_RUNTIME_RESERVE_NO_GRAPHS_BYTES : SGLANG_RUNTIME_RESERVE_BYTES;
|
|
68
|
+
// On the host's memory, half of it stays the system's (the same rule as TensorRT-LLM's and vLLM's);
|
|
69
|
+
// SGLang still measures all of the available memory as free, so the share is of that.
|
|
70
|
+
const budget = isUnifiedMemory(gpu) ? Math.min(free, totalMemoryBytes(gpu, host) / 2) : free;
|
|
71
|
+
const share = (budget - reserve) / free;
|
|
72
|
+
const clamped = Math.min(SGLANG_MAX_MEM_FRACTION_STATIC, Math.max(SGLANG_MIN_MEM_FRACTION_STATIC, share));
|
|
73
|
+
return Math.floor(clamped * 10_000) / 10_000;
|
|
74
|
+
}
|
|
75
|
+
/** The launch plan `beforeCreate` hands the adapter, from the card re-probed right before the container. */
|
|
76
|
+
export function sglangLaunchPlan(settings, checkpoint, gpu, host) {
|
|
77
|
+
return {
|
|
78
|
+
memFractionStatic: settings.mem_fraction_static ?? sglangMemFractionStatic(settings, gpu, host),
|
|
79
|
+
multimodal: checkpointIsMultimodal(checkpoint.configJson),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/** The check skeleton's hooks for SGLang: its memory rule, and no checkpoint quirks of its own. */
|
|
83
|
+
export function sglangCheckEngine(settings) {
|
|
84
|
+
return {
|
|
85
|
+
engineId: 'sglang',
|
|
86
|
+
checkpointProblems: () => null,
|
|
87
|
+
memoryNeed: (gpu, checkpoint, host) => sglangMemoryNeed(gpu, checkpoint, settings, host),
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/runtime/sglang/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `sglang` provider's settings (change `add-sglang-runtime`, task 2.1, design D6; spec
|
|
3
|
+
* `sglang-runtime`, "Выбор карты и настройки провайдера sglang"): stored values, overlaid by a load's
|
|
4
|
+
* own overrides, reduced to this provider's keys and validated before anything is asked of the
|
|
5
|
+
* machine — `INVALID_ARGUMENT` for anything the schema (`src/settings/schema/sglang.json`) would
|
|
6
|
+
* refuse. A value left at its default reaches the engine as nothing (SGLang's own), and what the
|
|
7
|
+
* engine is never told by a setting — `--trust-remote-code`, request logging, an API key — has no key
|
|
8
|
+
* here.
|
|
9
|
+
*/
|
|
10
|
+
import { type GenerationDefaults } from '../managed-text/generation-defaults.js';
|
|
11
|
+
export interface SglangSettings {
|
|
12
|
+
/** `GPU-<uuid>`/`MIG-<uuid>`, or `null` to let the load pick the card with the most free memory. */
|
|
13
|
+
gpu_id: string | null;
|
|
14
|
+
context_length: number;
|
|
15
|
+
max_output_tokens: number;
|
|
16
|
+
/** `--max-running-requests`. */
|
|
17
|
+
max_running_requests: number;
|
|
18
|
+
/**
|
|
19
|
+
* `--mem-fraction-static`: the share of the card's free memory SGLang keeps for weights and KV
|
|
20
|
+
* cache; `null` (auto) lets core compute it from the card's free memory right before the container.
|
|
21
|
+
*/
|
|
22
|
+
mem_fraction_static: number | null;
|
|
23
|
+
/** `--max-total-tokens`; `null` lets SGLang size the KV cache from its share. */
|
|
24
|
+
max_total_tokens: number | null;
|
|
25
|
+
/** `auto`: `--cuda-graph-max-bs <max_running_requests>`; `on`: SGLang's own; `off`: `--disable-cuda-graph`. */
|
|
26
|
+
cuda_graphs: 'auto' | 'on' | 'off';
|
|
27
|
+
kv_cache_dtype: 'auto' | 'fp8';
|
|
28
|
+
/** Seconds. `null` leaves the adapter's own weight-based estimate in force. */
|
|
29
|
+
load_timeout_seconds: number | null;
|
|
30
|
+
/** `false` passes `--disable-radix-cache`; SGLang's own default is on. */
|
|
31
|
+
enable_prefix_caching: boolean;
|
|
32
|
+
/** `--chunked-prefill-size`; `null` leaves SGLang's own. */
|
|
33
|
+
chunked_prefill_size: number | null;
|
|
34
|
+
/** `--dtype`; `auto` passes nothing. */
|
|
35
|
+
dtype: 'auto' | 'float16' | 'bfloat16' | 'float32';
|
|
36
|
+
/** `--random-seed`; `null` leaves SGLang's own. */
|
|
37
|
+
seed: number | null;
|
|
38
|
+
/** Sampling defaults for a request that sets none; a key is present only when the person set it. */
|
|
39
|
+
generation: GenerationDefaults;
|
|
40
|
+
}
|
|
41
|
+
/** Validates already-merged values; anything absent takes the schema's default. */
|
|
42
|
+
export declare function validateSglangSettings(raw: Record<string, unknown>): SglangSettings;
|
|
43
|
+
/**
|
|
44
|
+
* Stored values, overlaid by a load's own overrides (the control API's `overrides`), reduced to this
|
|
45
|
+
* provider's keys and validated. Anything else in either object — another provider's key, a stray
|
|
46
|
+
* field a client sent — is ignored rather than passed to the engine. `''` and `0` are the stored
|
|
47
|
+
* spelling of "not set" (`''` for a generation default, whose `0` can be a real value).
|
|
48
|
+
*/
|
|
49
|
+
export declare function sglangSettings(stored: Record<string, unknown>, overrides?: Record<string, unknown>): SglangSettings;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `sglang` provider's settings (change `add-sglang-runtime`, task 2.1, design D6; spec
|
|
3
|
+
* `sglang-runtime`, "Выбор карты и настройки провайдера sglang"): stored values, overlaid by a load's
|
|
4
|
+
* own overrides, reduced to this provider's keys and validated before anything is asked of the
|
|
5
|
+
* machine — `INVALID_ARGUMENT` for anything the schema (`src/settings/schema/sglang.json`) would
|
|
6
|
+
* refuse. A value left at its default reaches the engine as nothing (SGLang's own), and what the
|
|
7
|
+
* engine is never told by a setting — `--trust-remote-code`, request logging, an API key — has no key
|
|
8
|
+
* here.
|
|
9
|
+
*/
|
|
10
|
+
import { GENERATION_DEFAULT_KEYS, readGenerationDefaults, } from '../managed-text/generation-defaults.js';
|
|
11
|
+
import { settingValues } from '../managed-text/setting-values.js';
|
|
12
|
+
const KEYS = [
|
|
13
|
+
'gpu_id',
|
|
14
|
+
'context_length',
|
|
15
|
+
'max_output_tokens',
|
|
16
|
+
'max_running_requests',
|
|
17
|
+
'mem_fraction_static',
|
|
18
|
+
'max_total_tokens',
|
|
19
|
+
'cuda_graphs',
|
|
20
|
+
'kv_cache_dtype',
|
|
21
|
+
'load_timeout_seconds',
|
|
22
|
+
'enable_prefix_caching',
|
|
23
|
+
'chunked_prefill_size',
|
|
24
|
+
'dtype',
|
|
25
|
+
'seed',
|
|
26
|
+
...Object.values(GENERATION_DEFAULT_KEYS),
|
|
27
|
+
];
|
|
28
|
+
const DEFAULTS = {
|
|
29
|
+
gpu_id: null,
|
|
30
|
+
context_length: 8192,
|
|
31
|
+
max_output_tokens: 4096,
|
|
32
|
+
// One request at a time, as every managed engine (owner's decision, change add-vllm-runtime).
|
|
33
|
+
max_running_requests: 1,
|
|
34
|
+
mem_fraction_static: null,
|
|
35
|
+
max_total_tokens: null,
|
|
36
|
+
cuda_graphs: 'auto',
|
|
37
|
+
kv_cache_dtype: 'auto',
|
|
38
|
+
load_timeout_seconds: null,
|
|
39
|
+
enable_prefix_caching: true,
|
|
40
|
+
chunked_prefill_size: null,
|
|
41
|
+
dtype: 'auto',
|
|
42
|
+
seed: null,
|
|
43
|
+
generation: {},
|
|
44
|
+
};
|
|
45
|
+
const GPU_UUID = /^(GPU|MIG)-[0-9A-Za-z-]+$/;
|
|
46
|
+
const { invalid, integer, decimal, yesNo, oneOf } = settingValues('sglang');
|
|
47
|
+
/** Validates already-merged values; anything absent takes the schema's default. */
|
|
48
|
+
export function validateSglangSettings(raw) {
|
|
49
|
+
const settings = { ...DEFAULTS };
|
|
50
|
+
if (raw['gpu_id'] !== undefined && raw['gpu_id'] !== null) {
|
|
51
|
+
if (typeof raw['gpu_id'] !== 'string' || !GPU_UUID.test(raw['gpu_id'])) {
|
|
52
|
+
invalid('gpu_id', raw['gpu_id'], 'must be an NVIDIA GPU or MIG UUID');
|
|
53
|
+
}
|
|
54
|
+
settings.gpu_id = raw['gpu_id'];
|
|
55
|
+
}
|
|
56
|
+
if (raw['context_length'] !== undefined)
|
|
57
|
+
settings.context_length = integer('context_length', raw['context_length'], 512, 1_048_576);
|
|
58
|
+
if (raw['max_output_tokens'] !== undefined)
|
|
59
|
+
settings.max_output_tokens = integer('max_output_tokens', raw['max_output_tokens'], 1, 1_048_576);
|
|
60
|
+
if (raw['max_running_requests'] !== undefined)
|
|
61
|
+
settings.max_running_requests = integer('max_running_requests', raw['max_running_requests'], 1, 256);
|
|
62
|
+
// Below 1: the rest of SGLang's free memory is its room for activations and CUDA graphs.
|
|
63
|
+
if (raw['mem_fraction_static'] !== undefined && raw['mem_fraction_static'] !== null)
|
|
64
|
+
settings.mem_fraction_static = decimal('mem_fraction_static', raw['mem_fraction_static'], (n) => n > 0 && n < 1, 'above 0 and below 1');
|
|
65
|
+
if (raw['max_total_tokens'] !== undefined && raw['max_total_tokens'] !== null)
|
|
66
|
+
settings.max_total_tokens = integer('max_total_tokens', raw['max_total_tokens'], 1, 16_777_216);
|
|
67
|
+
if (raw['cuda_graphs'] !== undefined)
|
|
68
|
+
settings.cuda_graphs = oneOf('cuda_graphs', raw['cuda_graphs'], ['auto', 'on', 'off']);
|
|
69
|
+
if (raw['kv_cache_dtype'] !== undefined)
|
|
70
|
+
settings.kv_cache_dtype = oneOf('kv_cache_dtype', raw['kv_cache_dtype'], ['auto', 'fp8']);
|
|
71
|
+
if (raw['load_timeout_seconds'] !== undefined && raw['load_timeout_seconds'] !== null)
|
|
72
|
+
settings.load_timeout_seconds = integer('load_timeout_seconds', raw['load_timeout_seconds'], 1, 3600);
|
|
73
|
+
if (raw['enable_prefix_caching'] !== undefined)
|
|
74
|
+
settings.enable_prefix_caching = yesNo('enable_prefix_caching', raw['enable_prefix_caching']);
|
|
75
|
+
if (raw['chunked_prefill_size'] !== undefined && raw['chunked_prefill_size'] !== null)
|
|
76
|
+
settings.chunked_prefill_size = integer('chunked_prefill_size', raw['chunked_prefill_size'], 1, 1_048_576);
|
|
77
|
+
if (raw['dtype'] !== undefined)
|
|
78
|
+
settings.dtype = oneOf('dtype', raw['dtype'], ['auto', 'float16', 'bfloat16', 'float32']);
|
|
79
|
+
if (raw['seed'] !== undefined && raw['seed'] !== null)
|
|
80
|
+
settings.seed = integer('seed', raw['seed'], 1, 2_147_483_647);
|
|
81
|
+
settings.generation = readGenerationDefaults('sglang', raw);
|
|
82
|
+
if (settings.max_output_tokens >= settings.context_length) {
|
|
83
|
+
invalid('max_output_tokens', settings.max_output_tokens, `must be less than the context length (${settings.context_length})`);
|
|
84
|
+
}
|
|
85
|
+
return settings;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Stored values, overlaid by a load's own overrides (the control API's `overrides`), reduced to this
|
|
89
|
+
* provider's keys and validated. Anything else in either object — another provider's key, a stray
|
|
90
|
+
* field a client sent — is ignored rather than passed to the engine. `''` and `0` are the stored
|
|
91
|
+
* spelling of "not set" (`''` for a generation default, whose `0` can be a real value).
|
|
92
|
+
*/
|
|
93
|
+
export function sglangSettings(stored, overrides = {}) {
|
|
94
|
+
const merged = {};
|
|
95
|
+
for (const key of KEYS) {
|
|
96
|
+
const value = key in overrides ? overrides[key] : stored[key];
|
|
97
|
+
if (value !== undefined)
|
|
98
|
+
merged[key] = value;
|
|
99
|
+
}
|
|
100
|
+
if (typeof merged['gpu_id'] === 'string' && merged['gpu_id'].trim() === '')
|
|
101
|
+
merged['gpu_id'] = null;
|
|
102
|
+
for (const key of [
|
|
103
|
+
'load_timeout_seconds',
|
|
104
|
+
'mem_fraction_static',
|
|
105
|
+
'max_total_tokens',
|
|
106
|
+
'chunked_prefill_size',
|
|
107
|
+
'seed',
|
|
108
|
+
]) {
|
|
109
|
+
if (merged[key] === 0)
|
|
110
|
+
merged[key] = null;
|
|
111
|
+
}
|
|
112
|
+
for (const key of Object.values(GENERATION_DEFAULT_KEYS)) {
|
|
113
|
+
if (typeof merged[key] === 'string' && merged[key].trim() === '')
|
|
114
|
+
merged[key] = null;
|
|
115
|
+
}
|
|
116
|
+
return validateSglangSettings(merged);
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/runtime/sglang/settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-sessions.js","sourceRoot":"","sources":["../../../src/runtime/shared/external-sessions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAG1D,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAC7C,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAA;AAuB7C,MAAM,SAAS,GAAwB,IAAI,GAAG,CAAC;IAC7C,UAAU;IACV,mBAAmB;IACnB,cAAc;IACd,KAAK;IACL,mBAAmB;IACnB,cAAc;IACd,MAAM;
|
|
1
|
+
{"version":3,"file":"external-sessions.js","sourceRoot":"","sources":["../../../src/runtime/shared/external-sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
* the live run of task 6.1 confirms or replaces them.
|
|
30
30
|
*/
|
|
31
31
|
import { AtomicCoreError } from '../../contracts/index.js';
|
|
32
|
-
import { MANAGED_TEXT_ADAPTER_CONTRACT_VERSION, ManagedRequestRefusal, asksForStructuredOutput, asksForTools, reasoningIntoContent, thinkingRequested, } from '../managed-text/index.js';
|
|
32
|
+
import { MANAGED_TEXT_ADAPTER_CONTRACT_VERSION, ManagedRequestRefusal, asksForStructuredOutput, asksForTools, capRequestedOutput, carriesMedia, reasoningIntoContent, thinkingRequested, } from '../managed-text/index.js';
|
|
33
33
|
import { validateVllmSettings } from './settings.js';
|
|
34
34
|
const GiB = 1024 ** 3;
|
|
35
35
|
/** The port `vllm serve` listens on inside its container. */
|
|
@@ -253,37 +253,6 @@ export const VLLM_REWRITABLE_ROUTES = [
|
|
|
253
253
|
{ method: 'POST', path: '/v1/completions' },
|
|
254
254
|
];
|
|
255
255
|
const REWRITABLE = new Set(VLLM_REWRITABLE_ROUTES.map((route) => route.path));
|
|
256
|
-
function positive(body, key) {
|
|
257
|
-
if (!(key in body) || body[key] === null)
|
|
258
|
-
return { present: false, value: 0 };
|
|
259
|
-
const value = body[key];
|
|
260
|
-
if (typeof value !== 'number' || !Number.isInteger(value) || value <= 0) {
|
|
261
|
-
throw new AtomicCoreError('INVALID_ARGUMENT', `${key} must be a positive integer.`);
|
|
262
|
-
}
|
|
263
|
-
return { present: true, value };
|
|
264
|
-
}
|
|
265
|
-
/** Any message part that is not text: an image, a video, audio — none of which this engine accepts here. */
|
|
266
|
-
const MEDIA_PART = new Set([
|
|
267
|
-
'image_url',
|
|
268
|
-
'input_image',
|
|
269
|
-
'image',
|
|
270
|
-
'video_url',
|
|
271
|
-
'video',
|
|
272
|
-
'input_audio',
|
|
273
|
-
'audio_url',
|
|
274
|
-
]);
|
|
275
|
-
function carriesMedia(body) {
|
|
276
|
-
const messages = body['messages'];
|
|
277
|
-
if (!Array.isArray(messages))
|
|
278
|
-
return false;
|
|
279
|
-
return messages.some((message) => {
|
|
280
|
-
const content = message !== null && typeof message === 'object' ? message.content : null;
|
|
281
|
-
return (Array.isArray(content) &&
|
|
282
|
-
content.some((part) => part !== null &&
|
|
283
|
-
typeof part === 'object' &&
|
|
284
|
-
MEDIA_PART.has(String(part.type))));
|
|
285
|
-
});
|
|
286
|
-
}
|
|
287
256
|
/**
|
|
288
257
|
* Caps the output a request asks for at `max_output_tokens` (one key, as the client sent it); a
|
|
289
258
|
* request that asks for none is capped by vLLM's launch default instead. Refuses what the session cannot do with `:1337`'s own wording
|
|
@@ -307,22 +276,8 @@ export function vllmRewriteRequestBody(route, body, settings, capabilities) {
|
|
|
307
276
|
throw new ManagedRequestRefusal(`${model} does not support structured output.`, 'unsupported_capability');
|
|
308
277
|
}
|
|
309
278
|
}
|
|
310
|
-
const cap = settings.max_output_tokens;
|
|
311
|
-
if (route === '/v1/completions') {
|
|
312
|
-
const field = positive(client, 'max_tokens');
|
|
313
|
-
return field.present ? { ...client, max_tokens: Math.min(field.value, cap) } : client;
|
|
314
|
-
}
|
|
315
|
-
const legacy = positive(client, 'max_tokens');
|
|
316
|
-
const modern = positive(client, 'max_completion_tokens');
|
|
317
|
-
const asked = [legacy, modern].filter((field) => field.present).map((field) => field.value);
|
|
318
279
|
// Nothing asked: vLLM's launch default (`--override-generation-config`) caps it, within the room left.
|
|
319
|
-
|
|
320
|
-
return client;
|
|
321
|
-
const rest = { ...client };
|
|
322
|
-
delete rest['max_tokens'];
|
|
323
|
-
delete rest['max_completion_tokens'];
|
|
324
|
-
rest[modern.present ? 'max_completion_tokens' : 'max_tokens'] = Math.min(cap, ...asked);
|
|
325
|
-
return rest;
|
|
280
|
+
return capRequestedOutput(route, client, settings.max_output_tokens);
|
|
326
281
|
}
|
|
327
282
|
/** vLLM's 400 wording for a request over the context, current and older, with the limit and the request. */
|
|
328
283
|
const OVERFLOW = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/runtime/vllm/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/runtime/vllm/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { freeMemoryBytes, isUnifiedMemory, kvCacheQuantAlgo, readKvCacheShape, totalMemoryBytes, } from '../managed-models/index.js';
|
|
1
|
+
import { checkpointIsMultimodal, freeMemoryBytes, isUnifiedMemory, kvCacheQuantAlgo, readKvCacheShape, supportsFp8KvCache, totalMemoryBytes, } from '../managed-models/index.js';
|
|
2
2
|
const GiB = 1024 ** 3;
|
|
3
3
|
const MiB = 1024 ** 2;
|
|
4
4
|
/** What vLLM holds beyond weights and KV cache: CUDA context, activations, sampler, graphs. */
|
|
@@ -17,13 +17,6 @@ export const VLLM_UNIFIED_KV_CONTEXTS = 2;
|
|
|
17
17
|
/** Without the model's KV shape: a quarter of the weights, at least 1 GiB. */
|
|
18
18
|
const FALLBACK_KV_WEIGHT_SHARE = 0.25;
|
|
19
19
|
const FALLBACK_KV_MIN_BYTES = GiB;
|
|
20
|
-
/** Compute capability 8.9 (Ada) and newer. */
|
|
21
|
-
function supportsFp8Kv(computeCapability) {
|
|
22
|
-
const [major, minor] = computeCapability.split('.').map((part) => Number.parseInt(part, 10));
|
|
23
|
-
if (major === undefined || Number.isNaN(major))
|
|
24
|
-
return false;
|
|
25
|
-
return major > 8 || (major === 8 && (minor ?? 0) >= 9);
|
|
26
|
-
}
|
|
27
20
|
/** The tokens the KV cache estimate covers: context × requests (two contexts on unified memory). */
|
|
28
21
|
export function vllmKvTokens(settings, unifiedMemory) {
|
|
29
22
|
return unifiedMemory
|
|
@@ -47,7 +40,7 @@ export function vllmKvCacheBytes(checkpoint, settings, gpu, unifiedMemory) {
|
|
|
47
40
|
basis: 'weight_fraction',
|
|
48
41
|
};
|
|
49
42
|
}
|
|
50
|
-
const fp8 = (settings.kv_cache_dtype === 'fp8' &&
|
|
43
|
+
const fp8 = (settings.kv_cache_dtype === 'fp8' && supportsFp8KvCache(gpu.compute_capability)) ||
|
|
51
44
|
kvCacheQuantAlgo(checkpoint.configJson, checkpoint.hfQuantConfigJson)?.toUpperCase() === 'FP8';
|
|
52
45
|
const perToken = 2 * shape.numHiddenLayers * shape.numKeyValueHeads * shape.headDim * (fp8 ? 1 : 2);
|
|
53
46
|
return { bytes: perToken * vllmKvTokens(settings, unifiedMemory), basis: 'config' };
|
|
@@ -86,12 +79,6 @@ export function vllmMemoryNeed(gpu, checkpoint, settings, host) {
|
|
|
86
79
|
` needed_bytes=${neededBytes}`,
|
|
87
80
|
};
|
|
88
81
|
}
|
|
89
|
-
/** A vision or audio part in the checkpoint: a multimodal architecture, or its encoder's config. */
|
|
90
|
-
function isMultimodal(configJson) {
|
|
91
|
-
const architectures = Array.isArray(configJson['architectures']) ? configJson['architectures'] : [];
|
|
92
|
-
return (architectures.some((name) => typeof name === 'string' && name.endsWith('ForConditionalGeneration')) ||
|
|
93
|
-
['vision_config', 'audio_config', 'vision_tower'].some((key) => key in configJson));
|
|
94
|
-
}
|
|
95
82
|
/** `--gpu-memory-utilization` from the card as it stands now (see the file banner). */
|
|
96
83
|
export function vllmGpuMemoryUtilization(gpu, host) {
|
|
97
84
|
const total = totalMemoryBytes(gpu, host);
|
|
@@ -109,7 +96,7 @@ export function vllmLaunchPlan(settings, checkpoint, gpu, host) {
|
|
|
109
96
|
return {
|
|
110
97
|
kvCacheMemoryBytes: settings.kv_cache_memory_gib === null ? null : Math.round(settings.kv_cache_memory_gib * GiB),
|
|
111
98
|
gpuMemoryUtilization: settings.gpu_memory_utilization ?? vllmGpuMemoryUtilization(gpu, host),
|
|
112
|
-
multimodal:
|
|
99
|
+
multimodal: checkpointIsMultimodal(checkpoint.configJson),
|
|
113
100
|
};
|
|
114
101
|
}
|
|
115
102
|
/** The check skeleton's hooks for vLLM: its memory rule, and no checkpoint quirks of its own. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/runtime/vllm/memory.ts"],"names":[],"mappings":"AA0BA,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GAOjB,MAAM,4BAA4B,CAAA;AAInC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAA;AACrB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,CAAA;AAErB,+FAA+F;AAC/F,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,GAAG,GAAG,CAAA;AACjD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,GAAG,GAAG,CAAA;AACtD;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,GAAG,CAAA;AACvD,sDAAsD;AACtD,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAA;AACnD,sGAAsG;AACtG,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAA;AACzC,8EAA8E;AAC9E,MAAM,wBAAwB,GAAG,IAAI,CAAA;AACrC,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEjC,
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/runtime/vllm/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `vllm` provider's settings (change `add-vllm-runtime`, task 3.1; spec `vllm-runtime`, "Выбор
|
|
3
|
+
* карты и настройки провайдера vllm"): stored values, overlaid by a load's own overrides, reduced to
|
|
4
|
+
* this provider's keys and validated before anything is asked of the machine — `INVALID_ARGUMENT` for
|
|
5
|
+
* anything the schema (`src/settings/schema/vllm.json`) would refuse. What the engine is never told
|
|
6
|
+
* by a setting: `trust_remote_code`, request logging, an API key — no key here reaches it.
|
|
7
|
+
*/
|
|
1
8
|
import { type GenerationDefaults } from '../managed-text/generation-defaults.js';
|
|
2
9
|
export interface VllmSettings {
|
|
3
10
|
/** `GPU-<uuid>`/`MIG-<uuid>`, or `null` to let the load pick the card with the most free memory. */
|