@atomic-chat/core 0.13.2 → 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 +7 -5
- package/dist/core/atomic-core.js +1 -0
- package/dist/core/atomic-core.js.map +1 -1
- package/dist/core/create.js +48 -58
- 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 +23 -6
- package/dist/core/prism.js +45 -0
- package/dist/core/prism.js.map +1 -1
- package/dist/core/public-server.js +3 -2
- package/dist/core/public-server.js.map +1 -1
- package/dist/core/types.d.ts +11 -0
- package/dist/core/types.js.map +1 -1
- package/dist/decision/process.d.ts +4 -0
- package/dist/decision/process.js +10 -1
- package/dist/decision/process.js.map +1 -1
- package/dist/diffusion/args.d.ts +3 -2
- package/dist/diffusion/args.js +21 -4
- package/dist/diffusion/args.js.map +1 -1
- package/dist/diffusion/compat.d.ts +1 -1
- package/dist/diffusion/compat.js +6 -2
- package/dist/diffusion/compat.js.map +1 -1
- package/dist/diffusion/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 +10 -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/tracker.d.ts +6 -0
- package/dist/diffusion/tracker.js +11 -0
- package/dist/diffusion/tracker.js.map +1 -1
- package/dist/diffusion/validate.js +2 -2
- package/dist/diffusion/validate.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/diffusion/workflow.d.ts +8 -2
- package/dist/diffusion/workflow.js +13 -5
- package/dist/diffusion/workflow.js.map +1 -1
- package/dist/downloads/downloader.d.ts +6 -1
- package/dist/downloads/downloader.js +12 -1
- package/dist/downloads/downloader.js.map +1 -1
- package/dist/embedding/process.d.ts +4 -0
- package/dist/embedding/process.js +10 -1
- package/dist/embedding/process.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/compatibility/inspect.d.ts +11 -2
- package/dist/models/compatibility/inspect.js +44 -13
- package/dist/models/compatibility/inspect.js.map +1 -1
- package/dist/models/compatibility/service.d.ts +3 -0
- package/dist/models/compatibility/service.js +1 -0
- package/dist/models/compatibility/service.js.map +1 -1
- package/dist/models/gguf/tensors.d.ts +1 -0
- package/dist/models/gguf/tensors.js +4 -1
- package/dist/models/gguf/tensors.js.map +1 -1
- 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/adapter.d.ts +17 -0
- package/dist/runtime/managed-text/adapter.js.map +1 -1
- package/dist/runtime/managed-text/lifecycle.d.ts +8 -0
- package/dist/runtime/managed-text/lifecycle.js +38 -1
- package/dist/runtime/managed-text/lifecycle.js.map +1 -1
- package/dist/runtime/managed-text/readiness.d.ts +21 -1
- package/dist/runtime/managed-text/readiness.js +64 -0
- package/dist/runtime/managed-text/readiness.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/shared/ports.d.ts +10 -0
- package/dist/runtime/shared/ports.js +30 -0
- package/dist/runtime/shared/ports.js.map +1 -1
- package/dist/runtime/tensorrt-llm/adapter.d.ts +1 -4
- package/dist/runtime/tensorrt-llm/adapter.js +28 -11
- package/dist/runtime/tensorrt-llm/adapter.js.map +1 -1
- package/dist/runtime/tensorrt-llm/check.js +1 -0
- package/dist/runtime/tensorrt-llm/check.js.map +1 -1
- package/dist/runtime/tensorrt-llm/compatibility.d.ts +30 -6
- package/dist/runtime/tensorrt-llm/compatibility.js +41 -9
- package/dist/runtime/tensorrt-llm/compatibility.js.map +1 -1
- package/dist/runtime/tensorrt-llm/cuda-graphs.d.ts +32 -0
- package/dist/runtime/tensorrt-llm/cuda-graphs.js +33 -0
- package/dist/runtime/tensorrt-llm/cuda-graphs.js.map +1 -0
- package/dist/runtime/tensorrt-llm/engine.js +11 -5
- package/dist/runtime/tensorrt-llm/engine.js.map +1 -1
- package/dist/runtime/tensorrt-llm/kv-cache.d.ts +16 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js +21 -1
- package/dist/runtime/tensorrt-llm/kv-cache.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 +5 -4
- 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 +18 -20
- package/dist/server/http.js +15 -2
- package/dist/server/http.js.map +1 -1
- package/dist/server/public/gates.d.ts +6 -1
- package/dist/server/public/gates.js +7 -3
- package/dist/server/public/gates.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.d.ts +1 -0
- package/dist/server/public/index.js +16 -7
- 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 +12 -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 +2 -6
- 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/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,186 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Remote media: the image and video models cloud providers and self-hosted servers offer through the
|
|
3
|
+
* core (ADR 2026-10-13-remote-media-shares-the-diffusion-job-table). The catalog shapes are conf's
|
|
4
|
+
* `providers/media.json` as the core serves it (snake_case, like the cloud provider routes); what a
|
|
5
|
+
* generation request carries for a remote model sits in the camelCase diffusion requests
|
|
6
|
+
* (`target`, `remote`).
|
|
7
|
+
*/
|
|
8
|
+
/** The adapters the core has: one per media API it speaks. */
|
|
9
|
+
export declare const MEDIA_DIALECTS: readonly ["openai-images", "xai-images", "openrouter-images", "gemini-image", "minimax-image", "dashscope-image", "hf-images", "nvidia-genai", "mistral-agent-image", "a1111", "openai-videos", "openrouter-videos", "xai-videos", "gemini-veo", "minimax-video", "minimax-video-v2", "dashscope-video", "aimlapi-videos", "hf-videos"];
|
|
10
|
+
export type MediaDialect = (typeof MEDIA_DIALECTS)[number];
|
|
11
|
+
export type MediaKind = 'image' | 'video';
|
|
12
|
+
/** Which kind of media each dialect makes. */
|
|
13
|
+
export declare const MEDIA_DIALECT_KIND: Readonly<Record<MediaDialect, MediaKind>>;
|
|
14
|
+
/** What a remote image model can be asked to do; a subset of `ImageWorkflowId`. */
|
|
15
|
+
export declare const REMOTE_IMAGE_WORKFLOWS: readonly ["create", "transform", "inpaint", "reference", "edit"];
|
|
16
|
+
export type RemoteImageWorkflow = (typeof REMOTE_IMAGE_WORKFLOWS)[number];
|
|
17
|
+
export declare const REMOTE_VIDEO_WORKFLOWS: readonly ["create", "image-to-video"];
|
|
18
|
+
export type RemoteVideoWorkflow = (typeof REMOTE_VIDEO_WORKFLOWS)[number];
|
|
19
|
+
/** A closed list of values a control offers, with the one it starts on. */
|
|
20
|
+
export interface MediaChoice {
|
|
21
|
+
values: string[];
|
|
22
|
+
default?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface MediaNumberRange {
|
|
25
|
+
min: number;
|
|
26
|
+
max: number;
|
|
27
|
+
default?: number;
|
|
28
|
+
step?: number;
|
|
29
|
+
}
|
|
30
|
+
/** Pixel size: a list of `WxH` (and `auto`), or a free range on a grid. */
|
|
31
|
+
export type MediaSizeParam = {
|
|
32
|
+
kind: 'enum';
|
|
33
|
+
values: string[];
|
|
34
|
+
default?: string;
|
|
35
|
+
} | {
|
|
36
|
+
kind: 'range';
|
|
37
|
+
min: number;
|
|
38
|
+
max: number;
|
|
39
|
+
multiple: number;
|
|
40
|
+
default_width?: number;
|
|
41
|
+
default_height?: number;
|
|
42
|
+
};
|
|
43
|
+
/** What the generation form offers for an image model; a missing key is a hidden control. */
|
|
44
|
+
export interface MediaImageParams {
|
|
45
|
+
size?: MediaSizeParam;
|
|
46
|
+
aspect_ratios?: MediaChoice;
|
|
47
|
+
resolutions?: MediaChoice;
|
|
48
|
+
n?: {
|
|
49
|
+
max: number;
|
|
50
|
+
};
|
|
51
|
+
seed?: boolean;
|
|
52
|
+
negative_prompt?: boolean;
|
|
53
|
+
quality?: MediaChoice;
|
|
54
|
+
background?: MediaChoice;
|
|
55
|
+
output_format?: MediaChoice;
|
|
56
|
+
steps?: MediaNumberRange;
|
|
57
|
+
cfg?: MediaNumberRange;
|
|
58
|
+
guidance?: MediaNumberRange;
|
|
59
|
+
strength?: MediaNumberRange;
|
|
60
|
+
/** The server lists samplers live (`MediaModelDescriptor.samplers`). */
|
|
61
|
+
sampler?: boolean;
|
|
62
|
+
max_input_images?: number;
|
|
63
|
+
}
|
|
64
|
+
/** Clip length in seconds: a list of values, or a range. */
|
|
65
|
+
export interface MediaDurations {
|
|
66
|
+
values?: number[];
|
|
67
|
+
min?: number;
|
|
68
|
+
max?: number;
|
|
69
|
+
default?: number;
|
|
70
|
+
}
|
|
71
|
+
export interface MediaVideoParams {
|
|
72
|
+
durations?: MediaDurations;
|
|
73
|
+
resolutions?: MediaChoice;
|
|
74
|
+
aspect_ratios?: MediaChoice;
|
|
75
|
+
sizes?: MediaChoice;
|
|
76
|
+
/** The model can generate sound; the form offers a switch. */
|
|
77
|
+
audio?: boolean;
|
|
78
|
+
seed?: boolean;
|
|
79
|
+
negative_prompt?: boolean;
|
|
80
|
+
/** Image to video also takes a last frame. */
|
|
81
|
+
last_frame?: boolean;
|
|
82
|
+
}
|
|
83
|
+
export type MediaModelOptions = Record<string, string | number | boolean>;
|
|
84
|
+
interface MediaModelCommon {
|
|
85
|
+
id: string;
|
|
86
|
+
name: string;
|
|
87
|
+
description?: string;
|
|
88
|
+
/** The adapter that serves this model (the model's own, else its provider section's). */
|
|
89
|
+
api: MediaDialect;
|
|
90
|
+
/** Offered as soon as the provider is connected. */
|
|
91
|
+
default?: boolean;
|
|
92
|
+
options?: MediaModelOptions;
|
|
93
|
+
/** `catalog`: conf names it. `live`: only the provider's listing does; the dialect's defaults apply. */
|
|
94
|
+
source: 'catalog' | 'live';
|
|
95
|
+
}
|
|
96
|
+
export interface ImageModelDescriptor extends MediaModelCommon {
|
|
97
|
+
kind: 'image';
|
|
98
|
+
workflows: RemoteImageWorkflow[];
|
|
99
|
+
params: MediaImageParams;
|
|
100
|
+
/** Samplers the server listed, when `params.sampler` is set (A1111/Forge). */
|
|
101
|
+
samplers?: string[];
|
|
102
|
+
}
|
|
103
|
+
export interface VideoModelDescriptor extends MediaModelCommon {
|
|
104
|
+
kind: 'video';
|
|
105
|
+
workflows: RemoteVideoWorkflow[];
|
|
106
|
+
params: MediaVideoParams;
|
|
107
|
+
}
|
|
108
|
+
export type MediaModelDescriptor = ImageModelDescriptor | VideoModelDescriptor;
|
|
109
|
+
export interface MediaDialectDefaults {
|
|
110
|
+
kind: MediaKind;
|
|
111
|
+
workflows: string[];
|
|
112
|
+
params: MediaImageParams | MediaVideoParams;
|
|
113
|
+
}
|
|
114
|
+
/** One provider's media, as `GET /atomic/v1/media/catalog` answers it. */
|
|
115
|
+
export interface MediaProviderSection {
|
|
116
|
+
image?: {
|
|
117
|
+
api: MediaDialect;
|
|
118
|
+
models: ImageModelDescriptor[];
|
|
119
|
+
};
|
|
120
|
+
video?: {
|
|
121
|
+
api: MediaDialect;
|
|
122
|
+
models: VideoModelDescriptor[];
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/** `GET /atomic/v1/media/catalog`. */
|
|
126
|
+
export interface MediaCatalogView {
|
|
127
|
+
catalog_version: number;
|
|
128
|
+
/** `live` when the conf document was fetched, `cache` from disk, `baseline` the bundled copy. */
|
|
129
|
+
origin: 'live' | 'cache' | 'baseline';
|
|
130
|
+
dialects: Partial<Record<MediaDialect, MediaDialectDefaults>>;
|
|
131
|
+
providers: Record<string, MediaProviderSection>;
|
|
132
|
+
}
|
|
133
|
+
/** `GET /atomic/v1/media/providers/:provider/models?kind=`: the catalog's models plus the live listing. */
|
|
134
|
+
export interface MediaProviderModels {
|
|
135
|
+
provider: string;
|
|
136
|
+
kind: MediaKind;
|
|
137
|
+
/** The adapter the provider's media of this kind go through; null when it has none. */
|
|
138
|
+
api: MediaDialect | null;
|
|
139
|
+
models: MediaModelDescriptor[];
|
|
140
|
+
/** Whether the provider was asked live; false for adapters without a listing. */
|
|
141
|
+
live: boolean;
|
|
142
|
+
/** Why the live listing failed; the catalog's models are still answered. */
|
|
143
|
+
error?: {
|
|
144
|
+
code: string;
|
|
145
|
+
message: string;
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
/** One enabled media model in a provider registration. */
|
|
149
|
+
export interface CloudProviderMediaModel {
|
|
150
|
+
id: string;
|
|
151
|
+
kind: MediaKind;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* The media part of `PUT /atomic/v1/cloud/providers/:provider`. Absent keeps what is stored, `null`
|
|
155
|
+
* clears it. `image_api` / `video_api` name the adapter for a provider the catalog does not know
|
|
156
|
+
* (a custom server); absent, the catalog's applies.
|
|
157
|
+
*/
|
|
158
|
+
export interface CloudProviderMedia {
|
|
159
|
+
image_api?: MediaDialect | null;
|
|
160
|
+
video_api?: MediaDialect | null;
|
|
161
|
+
models: CloudProviderMediaModel[];
|
|
162
|
+
}
|
|
163
|
+
/** Which provider and model a generation request is for; absent on a request for the local model. */
|
|
164
|
+
export interface MediaTarget {
|
|
165
|
+
provider: string;
|
|
166
|
+
model: string;
|
|
167
|
+
}
|
|
168
|
+
/** Image settings only a remote model takes; every one optional, the model's default otherwise. */
|
|
169
|
+
export interface RemoteImageOptions {
|
|
170
|
+
/** `auto` or `WxH`, for a model whose size is a list; a range model uses `width`/`height`. */
|
|
171
|
+
size?: string;
|
|
172
|
+
aspectRatio?: string;
|
|
173
|
+
resolution?: string;
|
|
174
|
+
quality?: string;
|
|
175
|
+
background?: string;
|
|
176
|
+
outputFormat?: string;
|
|
177
|
+
}
|
|
178
|
+
export interface RemoteVideoOptions {
|
|
179
|
+
durationSecs?: number;
|
|
180
|
+
resolution?: string;
|
|
181
|
+
aspectRatio?: string;
|
|
182
|
+
/** `WxH`, for a model whose size is a list. */
|
|
183
|
+
size?: string;
|
|
184
|
+
generateAudio?: boolean;
|
|
185
|
+
}
|
|
186
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Remote media: the image and video models cloud providers and self-hosted servers offer through the
|
|
3
|
+
* core (ADR 2026-10-13-remote-media-shares-the-diffusion-job-table). The catalog shapes are conf's
|
|
4
|
+
* `providers/media.json` as the core serves it (snake_case, like the cloud provider routes); what a
|
|
5
|
+
* generation request carries for a remote model sits in the camelCase diffusion requests
|
|
6
|
+
* (`target`, `remote`).
|
|
7
|
+
*/
|
|
8
|
+
/** The adapters the core has: one per media API it speaks. */
|
|
9
|
+
export const MEDIA_DIALECTS = [
|
|
10
|
+
'openai-images',
|
|
11
|
+
'xai-images',
|
|
12
|
+
'openrouter-images',
|
|
13
|
+
'gemini-image',
|
|
14
|
+
'minimax-image',
|
|
15
|
+
'dashscope-image',
|
|
16
|
+
'hf-images',
|
|
17
|
+
'nvidia-genai',
|
|
18
|
+
'mistral-agent-image',
|
|
19
|
+
'a1111',
|
|
20
|
+
'openai-videos',
|
|
21
|
+
'openrouter-videos',
|
|
22
|
+
'xai-videos',
|
|
23
|
+
'gemini-veo',
|
|
24
|
+
'minimax-video',
|
|
25
|
+
'minimax-video-v2',
|
|
26
|
+
'dashscope-video',
|
|
27
|
+
'aimlapi-videos',
|
|
28
|
+
'hf-videos',
|
|
29
|
+
];
|
|
30
|
+
/** Which kind of media each dialect makes. */
|
|
31
|
+
export const MEDIA_DIALECT_KIND = {
|
|
32
|
+
'openai-images': 'image',
|
|
33
|
+
'xai-images': 'image',
|
|
34
|
+
'openrouter-images': 'image',
|
|
35
|
+
'gemini-image': 'image',
|
|
36
|
+
'minimax-image': 'image',
|
|
37
|
+
'dashscope-image': 'image',
|
|
38
|
+
'hf-images': 'image',
|
|
39
|
+
'nvidia-genai': 'image',
|
|
40
|
+
'mistral-agent-image': 'image',
|
|
41
|
+
'a1111': 'image',
|
|
42
|
+
'openai-videos': 'video',
|
|
43
|
+
'openrouter-videos': 'video',
|
|
44
|
+
'xai-videos': 'video',
|
|
45
|
+
'gemini-veo': 'video',
|
|
46
|
+
'minimax-video': 'video',
|
|
47
|
+
'minimax-video-v2': 'video',
|
|
48
|
+
'dashscope-video': 'video',
|
|
49
|
+
'aimlapi-videos': 'video',
|
|
50
|
+
'hf-videos': 'video',
|
|
51
|
+
};
|
|
52
|
+
/** What a remote image model can be asked to do; a subset of `ImageWorkflowId`. */
|
|
53
|
+
export const REMOTE_IMAGE_WORKFLOWS = ['create', 'transform', 'inpaint', 'reference', 'edit'];
|
|
54
|
+
export const REMOTE_VIDEO_WORKFLOWS = ['create', 'image-to-video'];
|
|
55
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/contracts/media.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,eAAe;IACf,YAAY;IACZ,mBAAmB;IACnB,cAAc;IACd,eAAe;IACf,iBAAiB;IACjB,WAAW;IACX,cAAc;IACd,qBAAqB;IACrB,OAAO;IACP,eAAe;IACf,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,kBAAkB;IAClB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;CACH,CAAA;AAKV,8CAA8C;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAA8C;IAC3E,eAAe,EAAE,OAAO;IACxB,YAAY,EAAE,OAAO;IACrB,mBAAmB,EAAE,OAAO;IAC5B,cAAc,EAAE,OAAO;IACvB,eAAe,EAAE,OAAO;IACxB,iBAAiB,EAAE,OAAO;IAC1B,WAAW,EAAE,OAAO;IACpB,cAAc,EAAE,OAAO;IACvB,qBAAqB,EAAE,OAAO;IAC9B,OAAO,EAAE,OAAO;IAChB,eAAe,EAAE,OAAO;IACxB,mBAAmB,EAAE,OAAO;IAC5B,YAAY,EAAE,OAAO;IACrB,YAAY,EAAE,OAAO;IACrB,eAAe,EAAE,OAAO;IACxB,kBAAkB,EAAE,OAAO;IAC3B,iBAAiB,EAAE,OAAO;IAC1B,gBAAgB,EAAE,OAAO;IACzB,WAAW,EAAE,OAAO;CACrB,CAAA;AAED,mFAAmF;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAU,CAAA;AAGtG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,gBAAgB,CAAU,CAAA"}
|
|
@@ -11,7 +11,16 @@
|
|
|
11
11
|
* (`PQ2_0`, `PTQ1_0`, the Hadamard transform). It shares the GGUF model tree with the two other
|
|
12
12
|
* llama.cpp providers and never becomes the default for an ordinary model.
|
|
13
13
|
*/
|
|
14
|
-
export type LocalProviderId = 'llamacpp-upstream' | 'llamacpp' | 'atomic-prism' | 'mlx' | 'foundation-models' |
|
|
14
|
+
export type LocalProviderId = 'llamacpp-upstream' | 'llamacpp' | 'atomic-prism' | 'mlx' | 'foundation-models' | ManagedProviderId;
|
|
15
|
+
/**
|
|
16
|
+
* The managed engines — each one a container core runs from a model of the managed model store — in
|
|
17
|
+
* the order their registry lists them (change `add-sglang-runtime`, D1). The one list every place
|
|
18
|
+
* that must tell a managed provider from the others reads, rather than naming them one by one; the
|
|
19
|
+
* managed engine registry refuses, at startup, an engine missing from it.
|
|
20
|
+
*/
|
|
21
|
+
export declare const MANAGED_PROVIDER_IDS: readonly ["tensorrt-llm", "vllm", "sglang"];
|
|
22
|
+
export type ManagedProviderId = (typeof MANAGED_PROVIDER_IDS)[number];
|
|
23
|
+
export declare function isManagedProviderId(provider: string): provider is ManagedProviderId;
|
|
15
24
|
export interface RuntimeDeviceInfo {
|
|
16
25
|
/** Backends in load order, deduped, e.g. ["CUDA", "CPU"]. */
|
|
17
26
|
loaded_backends: string[];
|
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
* and by the Rust agent (`core_sessions` mirror). Byte-identical with
|
|
4
4
|
* src-tauri/plugins/tauri-plugin-llamacpp-upstream/guest-js/types.ts:122-132 and state.rs:9-23.
|
|
5
5
|
*/
|
|
6
|
+
/**
|
|
7
|
+
* The managed engines — each one a container core runs from a model of the managed model store — in
|
|
8
|
+
* the order their registry lists them (change `add-sglang-runtime`, D1). The one list every place
|
|
9
|
+
* that must tell a managed provider from the others reads, rather than naming them one by one; the
|
|
10
|
+
* managed engine registry refuses, at startup, an engine missing from it.
|
|
11
|
+
*/
|
|
12
|
+
export const MANAGED_PROVIDER_IDS = ['tensorrt-llm', 'vllm', 'sglang'];
|
|
13
|
+
export function isManagedProviderId(provider) {
|
|
14
|
+
return MANAGED_PROVIDER_IDS.includes(provider);
|
|
15
|
+
}
|
|
6
16
|
/**
|
|
7
17
|
* Stage of a managed-runtime model load, reported on `session:load-progress` (spec
|
|
8
18
|
* `tensorrt-llm-runtime`, design D8): `stopping-previous` evicts whatever currently holds the GPU,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/contracts/session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/contracts/session.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAA;AAG/E,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAQ,oBAA0C,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACvE,CAAC;AA8CD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,mBAAmB;IACnB,oBAAoB;IACpB,qBAAqB;IACrB,OAAO;CACC,CAAA"}
|
|
@@ -123,7 +123,42 @@ export interface VllmProviderConfig {
|
|
|
123
123
|
kv_cache_dtype: 'auto' | 'fp8';
|
|
124
124
|
load_timeout_seconds: number;
|
|
125
125
|
}
|
|
126
|
-
|
|
126
|
+
/**
|
|
127
|
+
* `sglang` (change `add-sglang-runtime`, spec `sglang-runtime`, design D6): stored values. `0` and `''`
|
|
128
|
+
* are "not set" and reach the engine as nothing: SGLang's own value, or core's own memory share.
|
|
129
|
+
*/
|
|
130
|
+
export interface SglangProviderConfig {
|
|
131
|
+
/** The card's UUID; `''` picks the card with the most free memory at load time. */
|
|
132
|
+
gpu_id: string;
|
|
133
|
+
context_length: number;
|
|
134
|
+
/** Enforced per request by the session gateway and the engine's default output limit. */
|
|
135
|
+
max_output_tokens: number;
|
|
136
|
+
/** `--max-running-requests`: requests served at once. */
|
|
137
|
+
max_running_requests: number;
|
|
138
|
+
/** `--mem-fraction-static`; `0` (auto) lets core compute it from the card's free memory. */
|
|
139
|
+
mem_fraction_static: number;
|
|
140
|
+
/** `--max-total-tokens`, the KV cache in tokens; `0` lets SGLang size it from its share. */
|
|
141
|
+
max_total_tokens: number;
|
|
142
|
+
/** `auto` (graphs captured up to `max_running_requests`), `on` (SGLang's own) or `off`. */
|
|
143
|
+
cuda_graphs: 'auto' | 'on' | 'off';
|
|
144
|
+
/** `auto` (the model's own precision) or `fp8` (Ada and newer; ignored on older cards). */
|
|
145
|
+
kv_cache_dtype: 'auto' | 'fp8';
|
|
146
|
+
load_timeout_seconds: number;
|
|
147
|
+
/** `false` passes `--disable-radix-cache`. */
|
|
148
|
+
enable_prefix_caching: boolean;
|
|
149
|
+
/** `--chunked-prefill-size`; `0` leaves SGLang's own. */
|
|
150
|
+
chunked_prefill_size: number;
|
|
151
|
+
dtype: 'auto' | 'float16' | 'bfloat16' | 'float32';
|
|
152
|
+
/** `--random-seed`; `0` leaves SGLang's own. */
|
|
153
|
+
seed: number;
|
|
154
|
+
/** Sampling defaults for a request that sets none; `''` is the model's own. */
|
|
155
|
+
default_temperature: string;
|
|
156
|
+
default_top_p: string;
|
|
157
|
+
default_top_k: string;
|
|
158
|
+
default_min_p: string;
|
|
159
|
+
default_repetition_penalty: string;
|
|
160
|
+
}
|
|
161
|
+
export type ProviderSettings<P extends LocalProviderId> = P extends 'mlx' ? MlxConfig : P extends 'foundation-models' ? FoundationModelsConfig : P extends 'tensorrt-llm' ? TensorrtLlmProviderConfig : P extends 'vllm' ? VllmProviderConfig : P extends 'sglang' ? SglangProviderConfig : LlamacppConfig;
|
|
127
162
|
/** UI descriptor of one setting (mirrors the app's SettingComponentProps). */
|
|
128
163
|
export interface SettingDescriptor {
|
|
129
164
|
key: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/contracts/settings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/contracts/settings.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAoNH,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,EAAE;IACjB,YAAY,EAAE,IAAI;IAClB,gBAAgB,EAAE,OAAO;IACzB,iBAAiB,EAAE,KAAK;IACxB,YAAY,EAAE,KAAK;CACpB,CAAA"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* whose stop must never take control down with it.
|
|
11
11
|
*/
|
|
12
12
|
import type { ReadyLine } from '../contracts/index.js';
|
|
13
|
-
import type { LlamacppProviderId, LocalApiServerState, LocalProviderId, RemoteAccessStatus, SessionInfo, UnloadResult } from '../contracts/index.js';
|
|
13
|
+
import type { LlamacppProviderId, LocalApiServerState, LocalProviderId, ManagedProviderId, RemoteAccessStatus, SessionInfo, UnloadResult } from '../contracts/index.js';
|
|
14
14
|
import type { DataLayout } from '../config/index.js';
|
|
15
15
|
import type { DecisionService } from '../decision/index.js';
|
|
16
16
|
import type { EmbeddingService } from '../embedding/index.js';
|
|
@@ -32,6 +32,8 @@ import type { PublicServerStartOptions } from './public-server.js';
|
|
|
32
32
|
import type { AtomicCoreOptions, CoreLoadOptions, CoreLogger } from './types.js';
|
|
33
33
|
/** Everything `create()` wires before the facade exists; see `create.ts`. */
|
|
34
34
|
export interface AtomicCoreParts {
|
|
35
|
+
/** `AtomicCoreOptions.publicApiKeys`, handed to every public listener. */
|
|
36
|
+
publicApiKeys?: () => readonly string[] | undefined;
|
|
35
37
|
layout: DataLayout;
|
|
36
38
|
events: CoreEmitter;
|
|
37
39
|
settings: SettingsStore;
|
|
@@ -75,7 +77,7 @@ export interface AtomicCoreParts {
|
|
|
75
77
|
telemetry?: TelemetryControl | undefined;
|
|
76
78
|
}
|
|
77
79
|
export declare class AtomicCore {
|
|
78
|
-
readonly version = "0.
|
|
80
|
+
readonly version = "0.17.0";
|
|
79
81
|
private lifecycle;
|
|
80
82
|
private shutdownPromise;
|
|
81
83
|
/** Whether the app's API screen is watching; previews are collected only then. */
|
|
@@ -134,14 +136,14 @@ export declare class AtomicCore {
|
|
|
134
136
|
readyLine(): ReadyLine;
|
|
135
137
|
/**
|
|
136
138
|
* The per-provider model listing (task 2.16w round 1, finding 2): `ModelRegistry` for every
|
|
137
|
-
* llama.cpp/MLX provider, `ManagedModelRegistry` for a managed one (`
|
|
139
|
+
* llama.cpp/MLX provider, `ManagedModelRegistry` for a managed one (`MANAGED_PROVIDER_IDS`) — the
|
|
138
140
|
* same scan of the managed model store for every one of them, fresh on every `list()`, so a model
|
|
139
141
|
* the app finishes downloading appears with no restart, the same guarantee the llama.cpp registry
|
|
140
142
|
* already gives. `unknownProvider` when this core does not offer the provider at all (a managed one
|
|
141
143
|
* off Linux and Windows, for instance).
|
|
142
144
|
*/
|
|
143
|
-
registry(provider?: Exclude<LocalProviderId,
|
|
144
|
-
registry(provider:
|
|
145
|
+
registry(provider?: Exclude<LocalProviderId, ManagedProviderId>): ModelRegistry;
|
|
146
|
+
registry(provider: ManagedProviderId): ManagedModelRegistry;
|
|
145
147
|
registry(provider: LocalProviderId): ModelRegistry | ManagedModelRegistry;
|
|
146
148
|
runtime(provider?: LocalProviderId): LocalRuntime;
|
|
147
149
|
/** A llama.cpp runtime, for what only llama.cpp has (devices, runtime device info, context size). */
|
package/dist/core/atomic-core.js
CHANGED
|
@@ -125,6 +125,7 @@ export class AtomicCore {
|
|
|
125
125
|
remoteAccess: this.remoteAccess,
|
|
126
126
|
liveTrustedHosts: parts.managedTrustedHosts,
|
|
127
127
|
serverDeps: () => ({
|
|
128
|
+
...(parts.publicApiKeys ? { apiKeys: parts.publicApiKeys } : {}),
|
|
128
129
|
findLocal: (provider, modelId) => this.localSessions.localTarget(provider, modelId),
|
|
129
130
|
listLocal: () => this.localSessions.listLocalTargets(),
|
|
130
131
|
providers: () => this.cloud.routing(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-core.js","sourceRoot":"","sources":["../../src/core/atomic-core.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"atomic-core.js","sourceRoot":"","sources":["../../src/core/atomic-core.ts"],"names":[],"mappings":"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"}
|