@atomic-chat/core 0.5.1
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 +46 -0
- package/dist/app-daemon.d.ts +2 -0
- package/dist/app-daemon.js +72 -0
- package/dist/app-daemon.js.map +1 -0
- package/dist/backend/catalog/archive.d.ts +70 -0
- package/dist/backend/catalog/archive.js +138 -0
- package/dist/backend/catalog/archive.js.map +1 -0
- package/dist/backend/catalog/bundled-manifest-baseline.d.ts +2 -0
- package/dist/backend/catalog/bundled-manifest-baseline.js +49 -0
- package/dist/backend/catalog/bundled-manifest-baseline.js.map +1 -0
- package/dist/backend/catalog/cuda-family.d.ts +54 -0
- package/dist/backend/catalog/cuda-family.js +93 -0
- package/dist/backend/catalog/cuda-family.js.map +1 -0
- package/dist/backend/catalog/index.d.ts +6 -0
- package/dist/backend/catalog/index.js +7 -0
- package/dist/backend/catalog/index.js.map +1 -0
- package/dist/backend/catalog/manifest.d.ts +102 -0
- package/dist/backend/catalog/manifest.js +233 -0
- package/dist/backend/catalog/manifest.js.map +1 -0
- package/dist/backend/catalog/migrate.d.ts +40 -0
- package/dist/backend/catalog/migrate.js +135 -0
- package/dist/backend/catalog/migrate.js.map +1 -0
- package/dist/backend/index.d.ts +18 -0
- package/dist/backend/index.js +19 -0
- package/dist/backend/index.js.map +1 -0
- package/dist/backend/install/index.d.ts +3 -0
- package/dist/backend/install/index.js +4 -0
- package/dist/backend/install/index.js.map +1 -0
- package/dist/backend/install/runtime-backend.d.ts +22 -0
- package/dist/backend/install/runtime-backend.js +95 -0
- package/dist/backend/install/runtime-backend.js.map +1 -0
- package/dist/backend/install/service.d.ts +119 -0
- package/dist/backend/install/service.js +218 -0
- package/dist/backend/install/service.js.map +1 -0
- package/dist/backend/installed/index.d.ts +3 -0
- package/dist/backend/installed/index.js +4 -0
- package/dist/backend/installed/index.js.map +1 -0
- package/dist/backend/installed/installed.d.ts +93 -0
- package/dist/backend/installed/installed.js +209 -0
- package/dist/backend/installed/installed.js.map +1 -0
- package/dist/backend/installed/scan.d.ts +39 -0
- package/dist/backend/installed/scan.js +105 -0
- package/dist/backend/installed/scan.js.map +1 -0
- package/dist/backend/optimal/index.d.ts +3 -0
- package/dist/backend/optimal/index.js +4 -0
- package/dist/backend/optimal/index.js.map +1 -0
- package/dist/backend/optimal/optimal-cache.d.ts +90 -0
- package/dist/backend/optimal/optimal-cache.js +198 -0
- package/dist/backend/optimal/optimal-cache.js.map +1 -0
- package/dist/backend/optimal/optimal-store.d.ts +24 -0
- package/dist/backend/optimal/optimal-store.js +103 -0
- package/dist/backend/optimal/optimal-store.js.map +1 -0
- package/dist/backend/select/amd-rocm-pci-ids.d.ts +3 -0
- package/dist/backend/select/amd-rocm-pci-ids.js +57 -0
- package/dist/backend/select/amd-rocm-pci-ids.js.map +1 -0
- package/dist/backend/select/categories.d.ts +49 -0
- package/dist/backend/select/categories.js +178 -0
- package/dist/backend/select/categories.js.map +1 -0
- package/dist/backend/select/features.d.ts +81 -0
- package/dist/backend/select/features.js +221 -0
- package/dist/backend/select/features.js.map +1 -0
- package/dist/backend/select/index.d.ts +9 -0
- package/dist/backend/select/index.js +10 -0
- package/dist/backend/select/index.js.map +1 -0
- package/dist/backend/select/recovery.d.ts +51 -0
- package/dist/backend/select/recovery.js +108 -0
- package/dist/backend/select/recovery.js.map +1 -0
- package/dist/backend/select/tiers.d.ts +76 -0
- package/dist/backend/select/tiers.js +179 -0
- package/dist/backend/select/tiers.js.map +1 -0
- package/dist/backend/turboquant.d.ts +134 -0
- package/dist/backend/turboquant.js +587 -0
- package/dist/backend/turboquant.js.map +1 -0
- package/dist/backend/types.d.ts +139 -0
- package/dist/backend/types.js +13 -0
- package/dist/backend/types.js.map +1 -0
- package/dist/backend/version.d.ts +59 -0
- package/dist/backend/version.js +168 -0
- package/dist/backend/version.js.map +1 -0
- package/dist/cli/bin.d.ts +2 -0
- package/dist/cli/bin.js +10 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/cloud.d.ts +13 -0
- package/dist/cli/cloud.js +146 -0
- package/dist/cli/cloud.js.map +1 -0
- package/dist/cli/commands/daemon.d.ts +4 -0
- package/dist/cli/commands/daemon.js +88 -0
- package/dist/cli/commands/daemon.js.map +1 -0
- package/dist/cli/commands/index.d.ts +16 -0
- package/dist/cli/commands/index.js +17 -0
- package/dist/cli/commands/index.js.map +1 -0
- package/dist/cli/commands/models.d.ts +4 -0
- package/dist/cli/commands/models.js +52 -0
- package/dist/cli/commands/models.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +16 -0
- package/dist/cli/commands/serve.js +263 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/server.d.ts +4 -0
- package/dist/cli/commands/server.js +126 -0
- package/dist/cli/commands/server.js.map +1 -0
- package/dist/cli/commands/shared.d.ts +10 -0
- package/dist/cli/commands/shared.js +34 -0
- package/dist/cli/commands/shared.js.map +1 -0
- package/dist/cli/commands/shutdown.d.ts +4 -0
- package/dist/cli/commands/shutdown.js +32 -0
- package/dist/cli/commands/shutdown.js.map +1 -0
- package/dist/cli/commands/telemetry.d.ts +8 -0
- package/dist/cli/commands/telemetry.js +50 -0
- package/dist/cli/commands/telemetry.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.js +8 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/io.d.ts +46 -0
- package/dist/cli/io.js +101 -0
- package/dist/cli/io.js.map +1 -0
- package/dist/cli/launch.d.ts +50 -0
- package/dist/cli/launch.js +327 -0
- package/dist/cli/launch.js.map +1 -0
- package/dist/cli/main.d.ts +10 -0
- package/dist/cli/main.js +109 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/owner.d.ts +39 -0
- package/dist/cli/owner.js +179 -0
- package/dist/cli/owner.js.map +1 -0
- package/dist/client/control-client.d.ts +213 -0
- package/dist/client/control-client.js +368 -0
- package/dist/client/control-client.js.map +1 -0
- package/dist/client/index.d.ts +7 -0
- package/dist/client/index.js +8 -0
- package/dist/client/index.js.map +1 -0
- package/dist/cloud/chatgpt.d.ts +63 -0
- package/dist/cloud/chatgpt.js +233 -0
- package/dist/cloud/chatgpt.js.map +1 -0
- package/dist/cloud/index.d.ts +8 -0
- package/dist/cloud/index.js +9 -0
- package/dist/cloud/index.js.map +1 -0
- package/dist/cloud/registry.d.ts +51 -0
- package/dist/cloud/registry.js +148 -0
- package/dist/cloud/registry.js.map +1 -0
- package/dist/config/data-folder.d.ts +57 -0
- package/dist/config/data-folder.js +150 -0
- package/dist/config/data-folder.js.map +1 -0
- package/dist/config/index.d.ts +9 -0
- package/dist/config/index.js +10 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/paths.d.ts +98 -0
- package/dist/config/paths.js +109 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/contracts/control-api.d.ts +61 -0
- package/dist/contracts/control-api.js +7 -0
- package/dist/contracts/control-api.js.map +1 -0
- package/dist/contracts/diffusion.d.ts +477 -0
- package/dist/contracts/diffusion.js +10 -0
- package/dist/contracts/diffusion.js.map +1 -0
- package/dist/contracts/errors.d.ts +61 -0
- package/dist/contracts/errors.js +70 -0
- package/dist/contracts/errors.js.map +1 -0
- package/dist/contracts/events.d.ts +270 -0
- package/dist/contracts/events.js +7 -0
- package/dist/contracts/events.js.map +1 -0
- package/dist/contracts/hardware.d.ts +53 -0
- package/dist/contracts/hardware.js +12 -0
- package/dist/contracts/hardware.js.map +1 -0
- package/dist/contracts/index.d.ts +12 -0
- package/dist/contracts/index.js +13 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/model-yml.d.ts +28 -0
- package/dist/contracts/model-yml.js +23 -0
- package/dist/contracts/model-yml.js.map +1 -0
- package/dist/contracts/remote-access.d.ts +43 -0
- package/dist/contracts/remote-access.js +12 -0
- package/dist/contracts/remote-access.js.map +1 -0
- package/dist/contracts/session.d.ts +39 -0
- package/dist/contracts/session.js +7 -0
- package/dist/contracts/session.js.map +1 -0
- package/dist/contracts/settings.d.ts +106 -0
- package/dist/contracts/settings.js +17 -0
- package/dist/contracts/settings.js.map +1 -0
- package/dist/core/atomic-core.d.ts +149 -0
- package/dist/core/atomic-core.js +289 -0
- package/dist/core/atomic-core.js.map +1 -0
- package/dist/core/create.d.ts +12 -0
- package/dist/core/create.js +393 -0
- package/dist/core/create.js.map +1 -0
- package/dist/core/index.d.ts +10 -0
- package/dist/core/index.js +9 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/public-server.d.ts +76 -0
- package/dist/core/public-server.js +143 -0
- package/dist/core/public-server.js.map +1 -0
- package/dist/core/reap-orphans.d.ts +7 -0
- package/dist/core/reap-orphans.js +40 -0
- package/dist/core/reap-orphans.js.map +1 -0
- package/dist/core/sessions.d.ts +60 -0
- package/dist/core/sessions.js +180 -0
- package/dist/core/sessions.js.map +1 -0
- package/dist/core/types.d.ts +61 -0
- package/dist/core/types.js +2 -0
- package/dist/core/types.js.map +1 -0
- package/dist/credentials/api-keys.d.ts +41 -0
- package/dist/credentials/api-keys.js +156 -0
- package/dist/credentials/api-keys.js.map +1 -0
- package/dist/credentials/chatgpt-auth.d.ts +73 -0
- package/dist/credentials/chatgpt-auth.js +167 -0
- package/dist/credentials/chatgpt-auth.js.map +1 -0
- package/dist/credentials/chatgpt-oauth.d.ts +97 -0
- package/dist/credentials/chatgpt-oauth.js +329 -0
- package/dist/credentials/chatgpt-oauth.js.map +1 -0
- package/dist/credentials/chatgpt-store.d.ts +33 -0
- package/dist/credentials/chatgpt-store.js +110 -0
- package/dist/credentials/chatgpt-store.js.map +1 -0
- package/dist/credentials/index.d.ts +11 -0
- package/dist/credentials/index.js +12 -0
- package/dist/credentials/index.js.map +1 -0
- package/dist/diffusion/args.d.ts +102 -0
- package/dist/diffusion/args.js +291 -0
- package/dist/diffusion/args.js.map +1 -0
- package/dist/diffusion/compat.d.ts +20 -0
- package/dist/diffusion/compat.js +58 -0
- package/dist/diffusion/compat.js.map +1 -0
- package/dist/diffusion/containment.d.ts +15 -0
- package/dist/diffusion/containment.js +32 -0
- package/dist/diffusion/containment.js.map +1 -0
- package/dist/diffusion/errors.d.ts +28 -0
- package/dist/diffusion/errors.js +63 -0
- package/dist/diffusion/errors.js.map +1 -0
- package/dist/diffusion/gallery.d.ts +76 -0
- package/dist/diffusion/gallery.js +307 -0
- package/dist/diffusion/gallery.js.map +1 -0
- package/dist/diffusion/http.d.ts +16 -0
- package/dist/diffusion/http.js +41 -0
- package/dist/diffusion/http.js.map +1 -0
- package/dist/diffusion/idle.d.ts +23 -0
- package/dist/diffusion/idle.js +45 -0
- package/dist/diffusion/idle.js.map +1 -0
- package/dist/diffusion/image-job.d.ts +25 -0
- package/dist/diffusion/image-job.js +176 -0
- package/dist/diffusion/image-job.js.map +1 -0
- package/dist/diffusion/index.d.ts +35 -0
- package/dist/diffusion/index.js +36 -0
- package/dist/diffusion/index.js.map +1 -0
- package/dist/diffusion/install.d.ts +61 -0
- package/dist/diffusion/install.js +287 -0
- package/dist/diffusion/install.js.map +1 -0
- package/dist/diffusion/job-kind.d.ts +74 -0
- package/dist/diffusion/job-kind.js +7 -0
- package/dist/diffusion/job-kind.js.map +1 -0
- package/dist/diffusion/jobs.d.ts +90 -0
- package/dist/diffusion/jobs.js +433 -0
- package/dist/diffusion/jobs.js.map +1 -0
- package/dist/diffusion/mutex.d.ts +16 -0
- package/dist/diffusion/mutex.js +46 -0
- package/dist/diffusion/mutex.js.map +1 -0
- package/dist/diffusion/parse.d.ts +19 -0
- package/dist/diffusion/parse.js +274 -0
- package/dist/diffusion/parse.js.map +1 -0
- package/dist/diffusion/png.d.ts +77 -0
- package/dist/diffusion/png.js +335 -0
- package/dist/diffusion/png.js.map +1 -0
- package/dist/diffusion/progress.d.ts +74 -0
- package/dist/diffusion/progress.js +223 -0
- package/dist/diffusion/progress.js.map +1 -0
- package/dist/diffusion/recipe.d.ts +26 -0
- package/dist/diffusion/recipe.js +206 -0
- package/dist/diffusion/recipe.js.map +1 -0
- package/dist/diffusion/server-process.d.ts +59 -0
- package/dist/diffusion/server-process.js +235 -0
- package/dist/diffusion/server-process.js.map +1 -0
- package/dist/diffusion/service.d.ts +107 -0
- package/dist/diffusion/service.js +431 -0
- package/dist/diffusion/service.js.map +1 -0
- package/dist/diffusion/session.d.ts +58 -0
- package/dist/diffusion/session.js +226 -0
- package/dist/diffusion/session.js.map +1 -0
- package/dist/diffusion/state.d.ts +90 -0
- package/dist/diffusion/state.js +122 -0
- package/dist/diffusion/state.js.map +1 -0
- package/dist/diffusion/tracker.d.ts +46 -0
- package/dist/diffusion/tracker.js +153 -0
- package/dist/diffusion/tracker.js.map +1 -0
- package/dist/diffusion/types.d.ts +62 -0
- package/dist/diffusion/types.js +10 -0
- package/dist/diffusion/types.js.map +1 -0
- package/dist/diffusion/validate.d.ts +36 -0
- package/dist/diffusion/validate.js +166 -0
- package/dist/diffusion/validate.js.map +1 -0
- package/dist/diffusion/video-gallery.d.ts +56 -0
- package/dist/diffusion/video-gallery.js +252 -0
- package/dist/diffusion/video-gallery.js.map +1 -0
- package/dist/diffusion/video-job.d.ts +33 -0
- package/dist/diffusion/video-job.js +150 -0
- package/dist/diffusion/video-job.js.map +1 -0
- package/dist/diffusion/video-recipe.d.ts +12 -0
- package/dist/diffusion/video-recipe.js +141 -0
- package/dist/diffusion/video-recipe.js.map +1 -0
- package/dist/diffusion/wiring.d.ts +24 -0
- package/dist/diffusion/wiring.js +38 -0
- package/dist/diffusion/wiring.js.map +1 -0
- package/dist/diffusion/workflow.d.ts +33 -0
- package/dist/diffusion/workflow.js +78 -0
- package/dist/diffusion/workflow.js.map +1 -0
- package/dist/downloads/archive.d.ts +15 -0
- package/dist/downloads/archive.js +121 -0
- package/dist/downloads/archive.js.map +1 -0
- package/dist/downloads/disk-space.d.ts +18 -0
- package/dist/downloads/disk-space.js +32 -0
- package/dist/downloads/disk-space.js.map +1 -0
- package/dist/downloads/disk.d.ts +38 -0
- package/dist/downloads/disk.js +88 -0
- package/dist/downloads/disk.js.map +1 -0
- package/dist/downloads/downloader.d.ts +75 -0
- package/dist/downloads/downloader.js +479 -0
- package/dist/downloads/downloader.js.map +1 -0
- package/dist/downloads/index.d.ts +14 -0
- package/dist/downloads/index.js +15 -0
- package/dist/downloads/index.js.map +1 -0
- package/dist/downloads/protocol.d.ts +52 -0
- package/dist/downloads/protocol.js +153 -0
- package/dist/downloads/protocol.js.map +1 -0
- package/dist/downloads/proxy-fetch.d.ts +45 -0
- package/dist/downloads/proxy-fetch.js +571 -0
- package/dist/downloads/proxy-fetch.js.map +1 -0
- package/dist/downloads/verify.d.ts +22 -0
- package/dist/downloads/verify.js +74 -0
- package/dist/downloads/verify.js.map +1 -0
- package/dist/events/emitter.d.ts +44 -0
- package/dist/events/emitter.js +104 -0
- package/dist/events/emitter.js.map +1 -0
- package/dist/events/index.d.ts +5 -0
- package/dist/events/index.js +6 -0
- package/dist/events/index.js.map +1 -0
- package/dist/hardware/index.d.ts +7 -0
- package/dist/hardware/index.js +8 -0
- package/dist/hardware/index.js.map +1 -0
- package/dist/hardware/override.d.ts +46 -0
- package/dist/hardware/override.js +81 -0
- package/dist/hardware/override.js.map +1 -0
- package/dist/host/index.d.ts +15 -0
- package/dist/host/index.js +16 -0
- package/dist/host/index.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/integrations/catalog.d.ts +67 -0
- package/dist/integrations/catalog.js +385 -0
- package/dist/integrations/catalog.js.map +1 -0
- package/dist/integrations/config-io.d.ts +86 -0
- package/dist/integrations/config-io.js +229 -0
- package/dist/integrations/config-io.js.map +1 -0
- package/dist/integrations/configure/atomic-agent.d.ts +33 -0
- package/dist/integrations/configure/atomic-agent.js +127 -0
- package/dist/integrations/configure/atomic-agent.js.map +1 -0
- package/dist/integrations/configure/claude-code.d.ts +16 -0
- package/dist/integrations/configure/claude-code.js +45 -0
- package/dist/integrations/configure/claude-code.js.map +1 -0
- package/dist/integrations/configure/cline.d.ts +28 -0
- package/dist/integrations/configure/cline.js +70 -0
- package/dist/integrations/configure/cline.js.map +1 -0
- package/dist/integrations/configure/codex.d.ts +17 -0
- package/dist/integrations/configure/codex.js +43 -0
- package/dist/integrations/configure/codex.js.map +1 -0
- package/dist/integrations/configure/copilot.d.ts +10 -0
- package/dist/integrations/configure/copilot.js +14 -0
- package/dist/integrations/configure/copilot.js.map +1 -0
- package/dist/integrations/configure/droid.d.ts +12 -0
- package/dist/integrations/configure/droid.js +47 -0
- package/dist/integrations/configure/droid.js.map +1 -0
- package/dist/integrations/configure/dsh.d.ts +34 -0
- package/dist/integrations/configure/dsh.js +146 -0
- package/dist/integrations/configure/dsh.js.map +1 -0
- package/dist/integrations/configure/env-agent.d.ts +26 -0
- package/dist/integrations/configure/env-agent.js +41 -0
- package/dist/integrations/configure/env-agent.js.map +1 -0
- package/dist/integrations/configure/goose.d.ts +12 -0
- package/dist/integrations/configure/goose.js +16 -0
- package/dist/integrations/configure/goose.js.map +1 -0
- package/dist/integrations/configure/hermes.d.ts +41 -0
- package/dist/integrations/configure/hermes.js +247 -0
- package/dist/integrations/configure/hermes.js.map +1 -0
- package/dist/integrations/configure/index.d.ts +25 -0
- package/dist/integrations/configure/index.js +26 -0
- package/dist/integrations/configure/index.js.map +1 -0
- package/dist/integrations/configure/json-tree.d.ts +16 -0
- package/dist/integrations/configure/json-tree.js +19 -0
- package/dist/integrations/configure/json-tree.js.map +1 -0
- package/dist/integrations/configure/kilo.d.ts +9 -0
- package/dist/integrations/configure/kilo.js +19 -0
- package/dist/integrations/configure/kilo.js.map +1 -0
- package/dist/integrations/configure/mimo.d.ts +9 -0
- package/dist/integrations/configure/mimo.js +19 -0
- package/dist/integrations/configure/mimo.js.map +1 -0
- package/dist/integrations/configure/muse.d.ts +9 -0
- package/dist/integrations/configure/muse.js +13 -0
- package/dist/integrations/configure/muse.js.map +1 -0
- package/dist/integrations/configure/openclaude.d.ts +13 -0
- package/dist/integrations/configure/openclaude.js +56 -0
- package/dist/integrations/configure/openclaude.js.map +1 -0
- package/dist/integrations/configure/openclaw.d.ts +24 -0
- package/dist/integrations/configure/openclaw.js +99 -0
- package/dist/integrations/configure/openclaw.js.map +1 -0
- package/dist/integrations/configure/opencode-style.d.ts +25 -0
- package/dist/integrations/configure/opencode-style.js +43 -0
- package/dist/integrations/configure/opencode-style.js.map +1 -0
- package/dist/integrations/configure/opencode.d.ts +9 -0
- package/dist/integrations/configure/opencode.js +19 -0
- package/dist/integrations/configure/opencode.js.map +1 -0
- package/dist/integrations/configure/openhands.d.ts +8 -0
- package/dist/integrations/configure/openhands.js +12 -0
- package/dist/integrations/configure/openhands.js.map +1 -0
- package/dist/integrations/configure/pi.d.ts +14 -0
- package/dist/integrations/configure/pi.js +49 -0
- package/dist/integrations/configure/pi.js.map +1 -0
- package/dist/integrations/configure/poolside.d.ts +8 -0
- package/dist/integrations/configure/poolside.js +12 -0
- package/dist/integrations/configure/poolside.js.map +1 -0
- package/dist/integrations/configure/registry.d.ts +41 -0
- package/dist/integrations/configure/registry.js +50 -0
- package/dist/integrations/configure/registry.js.map +1 -0
- package/dist/integrations/configure/zcode.d.ts +59 -0
- package/dist/integrations/configure/zcode.js +260 -0
- package/dist/integrations/configure/zcode.js.map +1 -0
- package/dist/integrations/configure/zed.d.ts +16 -0
- package/dist/integrations/configure/zed.js +61 -0
- package/dist/integrations/configure/zed.js.map +1 -0
- package/dist/integrations/detect.d.ts +29 -0
- package/dist/integrations/detect.js +43 -0
- package/dist/integrations/detect.js.map +1 -0
- package/dist/integrations/index.d.ts +9 -0
- package/dist/integrations/index.js +10 -0
- package/dist/integrations/index.js.map +1 -0
- package/dist/lock/control-token.d.ts +19 -0
- package/dist/lock/control-token.js +58 -0
- package/dist/lock/control-token.js.map +1 -0
- package/dist/lock/index.d.ts +10 -0
- package/dist/lock/index.js +11 -0
- package/dist/lock/index.js.map +1 -0
- package/dist/lock/instance-lock.d.ts +93 -0
- package/dist/lock/instance-lock.js +244 -0
- package/dist/lock/instance-lock.js.map +1 -0
- package/dist/lock/legacy-guard.d.ts +46 -0
- package/dist/lock/legacy-guard.js +87 -0
- package/dist/lock/legacy-guard.js.map +1 -0
- package/dist/lock/model-claim.d.ts +20 -0
- package/dist/lock/model-claim.js +84 -0
- package/dist/lock/model-claim.js.map +1 -0
- package/dist/lock/process-identity.d.ts +48 -0
- package/dist/lock/process-identity.js +180 -0
- package/dist/lock/process-identity.js.map +1 -0
- package/dist/lock/process-journal.d.ts +56 -0
- package/dist/lock/process-journal.js +113 -0
- package/dist/lock/process-journal.js.map +1 -0
- package/dist/models/capabilities.d.ts +73 -0
- package/dist/models/capabilities.js +123 -0
- package/dist/models/capabilities.js.map +1 -0
- package/dist/models/embed.d.ts +30 -0
- package/dist/models/embed.js +83 -0
- package/dist/models/embed.js.map +1 -0
- package/dist/models/gguf/classify.d.ts +29 -0
- package/dist/models/gguf/classify.js +89 -0
- package/dist/models/gguf/classify.js.map +1 -0
- package/dist/models/gguf/index.d.ts +5 -0
- package/dist/models/gguf/index.js +6 -0
- package/dist/models/gguf/index.js.map +1 -0
- package/dist/models/gguf/kv-cache.d.ts +27 -0
- package/dist/models/gguf/kv-cache.js +101 -0
- package/dist/models/gguf/kv-cache.js.map +1 -0
- package/dist/models/gguf/read-file.d.ts +11 -0
- package/dist/models/gguf/read-file.js +21 -0
- package/dist/models/gguf/read-file.js.map +1 -0
- package/dist/models/gguf/reader.d.ts +40 -0
- package/dist/models/gguf/reader.js +271 -0
- package/dist/models/gguf/reader.js.map +1 -0
- package/dist/models/gguf/support.d.ts +47 -0
- package/dist/models/gguf/support.js +48 -0
- package/dist/models/gguf/support.js.map +1 -0
- package/dist/models/hf.d.ts +35 -0
- package/dist/models/hf.js +140 -0
- package/dist/models/hf.js.map +1 -0
- package/dist/models/index.d.ts +14 -0
- package/dist/models/index.js +15 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/model-yml.d.ts +22 -0
- package/dist/models/model-yml.js +63 -0
- package/dist/models/model-yml.js.map +1 -0
- package/dist/models/registry.d.ts +51 -0
- package/dist/models/registry.js +102 -0
- package/dist/models/registry.js.map +1 -0
- package/dist/models/shards.d.ts +20 -0
- package/dist/models/shards.js +46 -0
- package/dist/models/shards.js.map +1 -0
- package/dist/remote-access/cloudflared-args.d.ts +41 -0
- package/dist/remote-access/cloudflared-args.js +59 -0
- package/dist/remote-access/cloudflared-args.js.map +1 -0
- package/dist/remote-access/cloudflared-output.d.ts +26 -0
- package/dist/remote-access/cloudflared-output.js +51 -0
- package/dist/remote-access/cloudflared-output.js.map +1 -0
- package/dist/remote-access/index.d.ts +16 -0
- package/dist/remote-access/index.js +17 -0
- package/dist/remote-access/index.js.map +1 -0
- package/dist/remote-access/journal.d.ts +63 -0
- package/dist/remote-access/journal.js +140 -0
- package/dist/remote-access/journal.js.map +1 -0
- package/dist/remote-access/lan-probe.d.ts +28 -0
- package/dist/remote-access/lan-probe.js +63 -0
- package/dist/remote-access/lan-probe.js.map +1 -0
- package/dist/remote-access/lan.d.ts +31 -0
- package/dist/remote-access/lan.js +90 -0
- package/dist/remote-access/lan.js.map +1 -0
- package/dist/remote-access/manager.d.ts +111 -0
- package/dist/remote-access/manager.js +316 -0
- package/dist/remote-access/manager.js.map +1 -0
- package/dist/remote-access/probe.d.ts +92 -0
- package/dist/remote-access/probe.js +186 -0
- package/dist/remote-access/probe.js.map +1 -0
- package/dist/remote-access/process.d.ts +66 -0
- package/dist/remote-access/process.js +160 -0
- package/dist/remote-access/process.js.map +1 -0
- package/dist/remote-access/spawner.d.ts +25 -0
- package/dist/remote-access/spawner.js +49 -0
- package/dist/remote-access/spawner.js.map +1 -0
- package/dist/remote-access/status.d.ts +39 -0
- package/dist/remote-access/status.js +49 -0
- package/dist/remote-access/status.js.map +1 -0
- package/dist/remote-access/wiring.d.ts +34 -0
- package/dist/remote-access/wiring.js +47 -0
- package/dist/remote-access/wiring.js.map +1 -0
- package/dist/router/index.d.ts +7 -0
- package/dist/router/index.js +8 -0
- package/dist/router/index.js.map +1 -0
- package/dist/router/resolve.d.ts +41 -0
- package/dist/router/resolve.js +53 -0
- package/dist/router/resolve.js.map +1 -0
- package/dist/runtime/foundation-models/errors.d.ts +28 -0
- package/dist/runtime/foundation-models/errors.js +48 -0
- package/dist/runtime/foundation-models/errors.js.map +1 -0
- package/dist/runtime/foundation-models/index.d.ts +8 -0
- package/dist/runtime/foundation-models/index.js +9 -0
- package/dist/runtime/foundation-models/index.js.map +1 -0
- package/dist/runtime/foundation-models/runtime.d.ts +73 -0
- package/dist/runtime/foundation-models/runtime.js +186 -0
- package/dist/runtime/foundation-models/runtime.js.map +1 -0
- package/dist/runtime/index.d.ts +5 -0
- package/dist/runtime/index.js +6 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/llamacpp/args.d.ts +90 -0
- package/dist/runtime/llamacpp/args.js +379 -0
- package/dist/runtime/llamacpp/args.js.map +1 -0
- package/dist/runtime/llamacpp/ctx-ladder.d.ts +16 -0
- package/dist/runtime/llamacpp/ctx-ladder.js +28 -0
- package/dist/runtime/llamacpp/ctx-ladder.js.map +1 -0
- package/dist/runtime/llamacpp/devices.d.ts +26 -0
- package/dist/runtime/llamacpp/devices.js +86 -0
- package/dist/runtime/llamacpp/devices.js.map +1 -0
- package/dist/runtime/llamacpp/errors.d.ts +34 -0
- package/dist/runtime/llamacpp/errors.js +137 -0
- package/dist/runtime/llamacpp/errors.js.map +1 -0
- package/dist/runtime/llamacpp/index.d.ts +14 -0
- package/dist/runtime/llamacpp/index.js +15 -0
- package/dist/runtime/llamacpp/index.js.map +1 -0
- package/dist/runtime/llamacpp/load-plan.d.ts +113 -0
- package/dist/runtime/llamacpp/load-plan.js +259 -0
- package/dist/runtime/llamacpp/load-plan.js.map +1 -0
- package/dist/runtime/llamacpp/policy.d.ts +70 -0
- package/dist/runtime/llamacpp/policy.js +191 -0
- package/dist/runtime/llamacpp/policy.js.map +1 -0
- package/dist/runtime/llamacpp/probe.d.ts +13 -0
- package/dist/runtime/llamacpp/probe.js +35 -0
- package/dist/runtime/llamacpp/probe.js.map +1 -0
- package/dist/runtime/llamacpp/runtime-device.d.ts +33 -0
- package/dist/runtime/llamacpp/runtime-device.js +169 -0
- package/dist/runtime/llamacpp/runtime-device.js.map +1 -0
- package/dist/runtime/llamacpp/runtime.d.ts +151 -0
- package/dist/runtime/llamacpp/runtime.js +535 -0
- package/dist/runtime/llamacpp/runtime.js.map +1 -0
- package/dist/runtime/mlx/args.d.ts +10 -0
- package/dist/runtime/mlx/args.js +44 -0
- package/dist/runtime/mlx/args.js.map +1 -0
- package/dist/runtime/mlx/config.d.ts +71 -0
- package/dist/runtime/mlx/config.js +91 -0
- package/dist/runtime/mlx/config.js.map +1 -0
- package/dist/runtime/mlx/errors.d.ts +21 -0
- package/dist/runtime/mlx/errors.js +73 -0
- package/dist/runtime/mlx/errors.js.map +1 -0
- package/dist/runtime/mlx/index.d.ts +12 -0
- package/dist/runtime/mlx/index.js +13 -0
- package/dist/runtime/mlx/index.js.map +1 -0
- package/dist/runtime/mlx/model-files.d.ts +29 -0
- package/dist/runtime/mlx/model-files.js +82 -0
- package/dist/runtime/mlx/model-files.js.map +1 -0
- package/dist/runtime/mlx/runtime.d.ts +77 -0
- package/dist/runtime/mlx/runtime.js +223 -0
- package/dist/runtime/mlx/runtime.js.map +1 -0
- package/dist/runtime/mlx/shard-repair.d.ts +25 -0
- package/dist/runtime/mlx/shard-repair.js +44 -0
- package/dist/runtime/mlx/shard-repair.js.map +1 -0
- package/dist/runtime/shared/env.d.ts +49 -0
- package/dist/runtime/shared/env.js +155 -0
- package/dist/runtime/shared/env.js.map +1 -0
- package/dist/runtime/shared/external-sessions.d.ts +67 -0
- package/dist/runtime/shared/external-sessions.js +155 -0
- package/dist/runtime/shared/external-sessions.js.map +1 -0
- package/dist/runtime/shared/index.d.ts +17 -0
- package/dist/runtime/shared/index.js +18 -0
- package/dist/runtime/shared/index.js.map +1 -0
- package/dist/runtime/shared/load-cancel.d.ts +45 -0
- package/dist/runtime/shared/load-cancel.js +95 -0
- package/dist/runtime/shared/load-cancel.js.map +1 -0
- package/dist/runtime/shared/local-runtime.d.ts +68 -0
- package/dist/runtime/shared/local-runtime.js +12 -0
- package/dist/runtime/shared/local-runtime.js.map +1 -0
- package/dist/runtime/shared/log-stream.d.ts +4 -0
- package/dist/runtime/shared/log-stream.js +28 -0
- package/dist/runtime/shared/log-stream.js.map +1 -0
- package/dist/runtime/shared/paths.d.ts +21 -0
- package/dist/runtime/shared/paths.js +63 -0
- package/dist/runtime/shared/paths.js.map +1 -0
- package/dist/runtime/shared/ports.d.ts +26 -0
- package/dist/runtime/shared/ports.js +45 -0
- package/dist/runtime/shared/ports.js.map +1 -0
- package/dist/runtime/shared/process.d.ts +95 -0
- package/dist/runtime/shared/process.js +224 -0
- package/dist/runtime/shared/process.js.map +1 -0
- package/dist/runtime/shared/sidecar.d.ts +86 -0
- package/dist/runtime/shared/sidecar.js +214 -0
- package/dist/runtime/shared/sidecar.js.map +1 -0
- package/dist/server/clients.d.ts +40 -0
- package/dist/server/clients.js +74 -0
- package/dist/server/clients.js.map +1 -0
- package/dist/server/control/index.d.ts +12 -0
- package/dist/server/control/index.js +12 -0
- package/dist/server/control/index.js.map +1 -0
- package/dist/server/control/router.d.ts +9 -0
- package/dist/server/control/router.js +61 -0
- package/dist/server/control/router.js.map +1 -0
- package/dist/server/control/routes/backends.d.ts +4 -0
- package/dist/server/control/routes/backends.js +47 -0
- package/dist/server/control/routes/backends.js.map +1 -0
- package/dist/server/control/routes/clients.d.ts +4 -0
- package/dist/server/control/routes/clients.js +30 -0
- package/dist/server/control/routes/clients.js.map +1 -0
- package/dist/server/control/routes/cloud.d.ts +4 -0
- package/dist/server/control/routes/cloud.js +32 -0
- package/dist/server/control/routes/cloud.js.map +1 -0
- package/dist/server/control/routes/diffusion-video.d.ts +10 -0
- package/dist/server/control/routes/diffusion-video.js +33 -0
- package/dist/server/control/routes/diffusion-video.js.map +1 -0
- package/dist/server/control/routes/diffusion.d.ts +15 -0
- package/dist/server/control/routes/diffusion.js +71 -0
- package/dist/server/control/routes/diffusion.js.map +1 -0
- package/dist/server/control/routes/disk.d.ts +4 -0
- package/dist/server/control/routes/disk.js +11 -0
- package/dist/server/control/routes/disk.js.map +1 -0
- package/dist/server/control/routes/external-sessions.d.ts +4 -0
- package/dist/server/control/routes/external-sessions.js +27 -0
- package/dist/server/control/routes/external-sessions.js.map +1 -0
- package/dist/server/control/routes/hardware.d.ts +4 -0
- package/dist/server/control/routes/hardware.js +14 -0
- package/dist/server/control/routes/hardware.js.map +1 -0
- package/dist/server/control/routes/lifecycle.d.ts +12 -0
- package/dist/server/control/routes/lifecycle.js +67 -0
- package/dist/server/control/routes/lifecycle.js.map +1 -0
- package/dist/server/control/routes/models.d.ts +7 -0
- package/dist/server/control/routes/models.js +59 -0
- package/dist/server/control/routes/models.js.map +1 -0
- package/dist/server/control/routes/public-server.d.ts +4 -0
- package/dist/server/control/routes/public-server.js +30 -0
- package/dist/server/control/routes/public-server.js.map +1 -0
- package/dist/server/control/routes/remote-access.d.ts +7 -0
- package/dist/server/control/routes/remote-access.js +16 -0
- package/dist/server/control/routes/remote-access.js.map +1 -0
- package/dist/server/control/routes/settings.d.ts +4 -0
- package/dist/server/control/routes/settings.js +58 -0
- package/dist/server/control/routes/settings.js.map +1 -0
- package/dist/server/control/routes/telemetry.d.ts +7 -0
- package/dist/server/control/routes/telemetry.js +46 -0
- package/dist/server/control/routes/telemetry.js.map +1 -0
- package/dist/server/control/server.d.ts +26 -0
- package/dist/server/control/server.js +111 -0
- package/dist/server/control/server.js.map +1 -0
- package/dist/server/control/types.d.ts +271 -0
- package/dist/server/control/types.js +6 -0
- package/dist/server/control/types.js.map +1 -0
- package/dist/server/http.d.ts +62 -0
- package/dist/server/http.js +220 -0
- package/dist/server/http.js.map +1 -0
- package/dist/server/index.d.ts +9 -0
- package/dist/server/index.js +10 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/public/ctx.d.ts +23 -0
- package/dist/server/public/ctx.js +42 -0
- package/dist/server/public/ctx.js.map +1 -0
- package/dist/server/public/dynamic-hosts.d.ts +40 -0
- package/dist/server/public/dynamic-hosts.js +117 -0
- package/dist/server/public/dynamic-hosts.js.map +1 -0
- package/dist/server/public/errors.d.ts +36 -0
- package/dist/server/public/errors.js +120 -0
- package/dist/server/public/errors.js.map +1 -0
- package/dist/server/public/exchange.d.ts +42 -0
- package/dist/server/public/exchange.js +85 -0
- package/dist/server/public/exchange.js.map +1 -0
- package/dist/server/public/forward.d.ts +53 -0
- package/dist/server/public/forward.js +448 -0
- package/dist/server/public/forward.js.map +1 -0
- package/dist/server/public/gates.d.ts +49 -0
- package/dist/server/public/gates.js +181 -0
- package/dist/server/public/gates.js.map +1 -0
- package/dist/server/public/images-params.d.ts +50 -0
- package/dist/server/public/images-params.js +162 -0
- package/dist/server/public/images-params.js.map +1 -0
- package/dist/server/public/images.d.ts +12 -0
- package/dist/server/public/images.js +96 -0
- package/dist/server/public/images.js.map +1 -0
- package/dist/server/public/index.d.ts +58 -0
- package/dist/server/public/index.js +253 -0
- package/dist/server/public/index.js.map +1 -0
- package/dist/server/public/listing.d.ts +27 -0
- package/dist/server/public/listing.js +116 -0
- package/dist/server/public/listing.js.map +1 -0
- package/dist/server/public/responses.d.ts +11 -0
- package/dist/server/public/responses.js +158 -0
- package/dist/server/public/responses.js.map +1 -0
- package/dist/server/public/sse.d.ts +33 -0
- package/dist/server/public/sse.js +48 -0
- package/dist/server/public/sse.js.map +1 -0
- package/dist/server/public/static-assets.generated.d.ts +3 -0
- package/dist/server/public/static-assets.generated.js +6 -0
- package/dist/server/public/static-assets.generated.js.map +1 -0
- package/dist/server/public/static.d.ts +13 -0
- package/dist/server/public/static.js +75 -0
- package/dist/server/public/static.js.map +1 -0
- package/dist/server/public/subscription.d.ts +14 -0
- package/dist/server/public/subscription.js +56 -0
- package/dist/server/public/subscription.js.map +1 -0
- package/dist/server/public/telemetry.d.ts +65 -0
- package/dist/server/public/telemetry.js +284 -0
- package/dist/server/public/telemetry.js.map +1 -0
- package/dist/server/public/trace.d.ts +66 -0
- package/dist/server/public/trace.js +223 -0
- package/dist/server/public/trace.js.map +1 -0
- package/dist/server/public/types.d.ts +131 -0
- package/dist/server/public/types.js +9 -0
- package/dist/server/public/types.js.map +1 -0
- package/dist/server/public/videos-params.d.ts +95 -0
- package/dist/server/public/videos-params.js +220 -0
- package/dist/server/public/videos-params.js.map +1 -0
- package/dist/server/public/videos.d.ts +16 -0
- package/dist/server/public/videos.js +188 -0
- package/dist/server/public/videos.js.map +1 -0
- package/dist/server/public/wire.d.ts +53 -0
- package/dist/server/public/wire.js +174 -0
- package/dist/server/public/wire.js.map +1 -0
- package/dist/server/shims/anthropic.d.ts +52 -0
- package/dist/server/shims/anthropic.js +519 -0
- package/dist/server/shims/anthropic.js.map +1 -0
- package/dist/server/shims/chat-to-responses.d.ts +113 -0
- package/dist/server/shims/chat-to-responses.js +557 -0
- package/dist/server/shims/chat-to-responses.js.map +1 -0
- package/dist/server/shims/index.d.ts +8 -0
- package/dist/server/shims/index.js +9 -0
- package/dist/server/shims/index.js.map +1 -0
- package/dist/server/shims/json.d.ts +10 -0
- package/dist/server/shims/json.js +78 -0
- package/dist/server/shims/json.js.map +1 -0
- package/dist/server/shims/responses.d.ts +79 -0
- package/dist/server/shims/responses.js +543 -0
- package/dist/server/shims/responses.js.map +1 -0
- package/dist/server/state-file.d.ts +44 -0
- package/dist/server/state-file.js +107 -0
- package/dist/server/state-file.js.map +1 -0
- package/dist/settings/import.d.ts +61 -0
- package/dist/settings/import.js +104 -0
- package/dist/settings/import.js.map +1 -0
- package/dist/settings/index.d.ts +11 -0
- package/dist/settings/index.js +12 -0
- package/dist/settings/index.js.map +1 -0
- package/dist/settings/schema/foundation-models.json +1 -0
- package/dist/settings/schema/llamacpp-upstream.json +489 -0
- package/dist/settings/schema/llamacpp.json +475 -0
- package/dist/settings/schema/mlx.json +136 -0
- package/dist/settings/schema.d.ts +35 -0
- package/dist/settings/schema.js +196 -0
- package/dist/settings/schema.js.map +1 -0
- package/dist/settings/store.d.ts +168 -0
- package/dist/settings/store.js +350 -0
- package/dist/settings/store.js.map +1 -0
- package/dist/speculative/chat-template-overrides.d.ts +35 -0
- package/dist/speculative/chat-template-overrides.js +142 -0
- package/dist/speculative/chat-template-overrides.js.map +1 -0
- package/dist/speculative/dflash-registry.d.ts +50 -0
- package/dist/speculative/dflash-registry.js +258 -0
- package/dist/speculative/dflash-registry.js.map +1 -0
- package/dist/speculative/gemma-mtp-registry.d.ts +48 -0
- package/dist/speculative/gemma-mtp-registry.js +79 -0
- package/dist/speculative/gemma-mtp-registry.js.map +1 -0
- package/dist/speculative/index.d.ts +18 -0
- package/dist/speculative/index.js +19 -0
- package/dist/speculative/index.js.map +1 -0
- package/dist/speculative/mlx-dflash-registry.d.ts +39 -0
- package/dist/speculative/mlx-dflash-registry.js +230 -0
- package/dist/speculative/mlx-dflash-registry.js.map +1 -0
- package/dist/speculative/mlx-eagle3-registry.d.ts +24 -0
- package/dist/speculative/mlx-eagle3-registry.js +81 -0
- package/dist/speculative/mlx-eagle3-registry.js.map +1 -0
- package/dist/speculative/mlx-mtp-registry.d.ts +31 -0
- package/dist/speculative/mlx-mtp-registry.js +139 -0
- package/dist/speculative/mlx-mtp-registry.js.map +1 -0
- package/dist/speculative/transcription-registry.d.ts +72 -0
- package/dist/speculative/transcription-registry.js +94 -0
- package/dist/speculative/transcription-registry.js.map +1 -0
- package/dist/telemetry/config.d.ts +38 -0
- package/dist/telemetry/config.js +44 -0
- package/dist/telemetry/config.js.map +1 -0
- package/dist/telemetry/consent.d.ts +21 -0
- package/dist/telemetry/consent.js +35 -0
- package/dist/telemetry/consent.js.map +1 -0
- package/dist/telemetry/core-reporter.d.ts +47 -0
- package/dist/telemetry/core-reporter.js +72 -0
- package/dist/telemetry/core-reporter.js.map +1 -0
- package/dist/telemetry/daemon.d.ts +40 -0
- package/dist/telemetry/daemon.js +67 -0
- package/dist/telemetry/daemon.js.map +1 -0
- package/dist/telemetry/dsn.d.ts +15 -0
- package/dist/telemetry/dsn.js +32 -0
- package/dist/telemetry/dsn.js.map +1 -0
- package/dist/telemetry/envelope.d.ts +97 -0
- package/dist/telemetry/envelope.js +95 -0
- package/dist/telemetry/envelope.js.map +1 -0
- package/dist/telemetry/index.d.ts +18 -0
- package/dist/telemetry/index.js +19 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/policy.d.ts +39 -0
- package/dist/telemetry/policy.js +142 -0
- package/dist/telemetry/policy.js.map +1 -0
- package/dist/telemetry/reporter.d.ts +80 -0
- package/dist/telemetry/reporter.js +0 -0
- package/dist/telemetry/reporter.js.map +1 -0
- package/dist/telemetry/reports.d.ts +68 -0
- package/dist/telemetry/reports.js +212 -0
- package/dist/telemetry/reports.js.map +1 -0
- package/dist/telemetry/scrub.d.ts +19 -0
- package/dist/telemetry/scrub.js +75 -0
- package/dist/telemetry/scrub.js.map +1 -0
- package/dist/telemetry/stack.d.ts +21 -0
- package/dist/telemetry/stack.js +68 -0
- package/dist/telemetry/stack.js.map +1 -0
- package/dist/telemetry/store.d.ts +17 -0
- package/dist/telemetry/store.js +51 -0
- package/dist/telemetry/store.js.map +1 -0
- package/dist/telemetry/subscribe.d.ts +13 -0
- package/dist/telemetry/subscribe.js +19 -0
- package/dist/telemetry/subscribe.js.map +1 -0
- package/dist/telemetry/types.d.ts +40 -0
- package/dist/telemetry/types.js +2 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/util/index.d.ts +5 -0
- package/dist/util/index.js +6 -0
- package/dist/util/index.js.map +1 -0
- package/dist/util/rust-number.d.ts +27 -0
- package/dist/util/rust-number.js +101 -0
- package/dist/util/rust-number.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.js +3 -0
- package/dist/version.js.map +1 -0
- package/package.json +86 -0
- package/src/settings/schema/foundation-models.json +1 -0
- package/src/settings/schema/llamacpp-upstream.json +489 -0
- package/src/settings/schema/llamacpp.json +475 -0
- package/src/settings/schema/mlx.json +136 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/mlx-extension/src/dflashRegistry.ts
|
|
3
|
+
* DFlash draft model registry.
|
|
4
|
+
*
|
|
5
|
+
* A pure, network-free static manifest mapping base MLX model identifiers to
|
|
6
|
+
* matching `z-lab/*-DFlash*` draft repos from the curated collection at
|
|
7
|
+
* https://huggingface.co/collections/z-lab/dflash.
|
|
8
|
+
*
|
|
9
|
+
* The MLX extension is responsible for the local-first resolution and direct
|
|
10
|
+
* `/resolve/main/<file>` downloads — this module only carries the static
|
|
11
|
+
* lookup data so the toggle path never touches `huggingface.co/api/...`.
|
|
12
|
+
*/
|
|
13
|
+
/// `dflash.model_mlx.load_draft` (in the dflash package) only reads
|
|
14
|
+
/// `config.json` and any `*.safetensors` from the draft directory; tokenizer
|
|
15
|
+
/// files belong to the *target* model. Most `z-lab/*` drafts ship as a single
|
|
16
|
+
/// `model.safetensors`, so we only require those two files. Sharded drafts
|
|
17
|
+
/// (rare; e.g. >2B params) need a per-repo override.
|
|
18
|
+
const DEFAULT_REQUIRED = ['config.json', 'model.safetensors'];
|
|
19
|
+
/// Currently unused — kept so per-repo overrides can opt in to additional
|
|
20
|
+
/// downloads (e.g. `model.safetensors.index.json` + shards) without
|
|
21
|
+
/// changing the type shape.
|
|
22
|
+
const DEFAULT_OPTIONAL = [];
|
|
23
|
+
/// Build the required-file set for a sharded draft (weights split across N
|
|
24
|
+
/// `model-XXXXX-of-YYYYY.safetensors` files plus a `model.safetensors.index.json`
|
|
25
|
+
/// shard map) instead of a single `model.safetensors`. All shards and the
|
|
26
|
+
/// index must be present for the draft directory to load.
|
|
27
|
+
function shardedRequired(total) {
|
|
28
|
+
const pad = (n) => String(n).padStart(5, '0');
|
|
29
|
+
const files = ['config.json', 'model.safetensors.index.json'];
|
|
30
|
+
for (let i = 1; i <= total; i++) {
|
|
31
|
+
files.push(`model-${pad(i)}-of-${pad(total)}.safetensors`);
|
|
32
|
+
}
|
|
33
|
+
return files;
|
|
34
|
+
}
|
|
35
|
+
/// Snapshot of https://huggingface.co/collections/z-lab/dflash.
|
|
36
|
+
///
|
|
37
|
+
/// Keys are normalized base-model ids (lowercase, separators preserved as
|
|
38
|
+
/// `-`) derived via `normalizeBaseId`. Values describe the matching draft
|
|
39
|
+
/// repo and the file set that needs to be present locally.
|
|
40
|
+
export const STATIC_DRAFT_MAP = {
|
|
41
|
+
'qwen3.5-122b-a10b': {
|
|
42
|
+
repo: 'z-lab/Qwen3.5-122B-A10B-DFlash',
|
|
43
|
+
required: DEFAULT_REQUIRED,
|
|
44
|
+
optional: DEFAULT_OPTIONAL,
|
|
45
|
+
},
|
|
46
|
+
'qwen3.6-35b-a3b': {
|
|
47
|
+
repo: 'z-lab/Qwen3.6-35B-A3B-DFlash',
|
|
48
|
+
required: DEFAULT_REQUIRED,
|
|
49
|
+
optional: DEFAULT_OPTIONAL,
|
|
50
|
+
},
|
|
51
|
+
'qwen3.6-27b': {
|
|
52
|
+
repo: 'z-lab/Qwen3.6-27B-DFlash',
|
|
53
|
+
required: DEFAULT_REQUIRED,
|
|
54
|
+
optional: DEFAULT_OPTIONAL,
|
|
55
|
+
},
|
|
56
|
+
/// Gemma 4 also ships DFlash drafts (z-lab), giving Gemma 4 targets a third
|
|
57
|
+
/// speculative path alongside MTP (`*-assistant`) and EAGLE-3. Keys mirror
|
|
58
|
+
/// `eagle3Registry.ts` — `-it` is stripped by `TRAIL_HINT_RE`.
|
|
59
|
+
'gemma-4-31b': {
|
|
60
|
+
repo: 'z-lab/gemma-4-31B-it-DFlash',
|
|
61
|
+
required: DEFAULT_REQUIRED,
|
|
62
|
+
optional: DEFAULT_OPTIONAL,
|
|
63
|
+
},
|
|
64
|
+
'gemma-4-26b-a4b': {
|
|
65
|
+
repo: 'z-lab/gemma-4-26B-A4B-it-DFlash',
|
|
66
|
+
required: DEFAULT_REQUIRED,
|
|
67
|
+
optional: DEFAULT_OPTIONAL,
|
|
68
|
+
},
|
|
69
|
+
/// Kimi drafts ship sharded safetensors, so they need explicit per-shard
|
|
70
|
+
/// required sets (the default single `model.safetensors` would 404).
|
|
71
|
+
'kimi-k2.5': {
|
|
72
|
+
repo: 'z-lab/Kimi-K2.5-DFlash',
|
|
73
|
+
required: shardedRequired(2),
|
|
74
|
+
optional: DEFAULT_OPTIONAL,
|
|
75
|
+
},
|
|
76
|
+
'kimi-k2.6': {
|
|
77
|
+
repo: 'z-lab/Kimi-K2.6-DFlash',
|
|
78
|
+
required: shardedRequired(3),
|
|
79
|
+
optional: DEFAULT_OPTIONAL,
|
|
80
|
+
},
|
|
81
|
+
'minimax-m2.5': {
|
|
82
|
+
repo: 'z-lab/MiniMax-M2.5-DFlash',
|
|
83
|
+
required: DEFAULT_REQUIRED,
|
|
84
|
+
optional: DEFAULT_OPTIONAL,
|
|
85
|
+
},
|
|
86
|
+
'minimax-m2.7': {
|
|
87
|
+
repo: 'z-lab/MiniMax-M2.7-DFlash',
|
|
88
|
+
required: DEFAULT_REQUIRED,
|
|
89
|
+
optional: DEFAULT_OPTIONAL,
|
|
90
|
+
},
|
|
91
|
+
'qwen3.5-4b': {
|
|
92
|
+
repo: 'z-lab/Qwen3.5-4B-DFlash',
|
|
93
|
+
required: DEFAULT_REQUIRED,
|
|
94
|
+
optional: DEFAULT_OPTIONAL,
|
|
95
|
+
},
|
|
96
|
+
'qwen3.5-9b': {
|
|
97
|
+
repo: 'z-lab/Qwen3.5-9B-DFlash',
|
|
98
|
+
required: DEFAULT_REQUIRED,
|
|
99
|
+
optional: DEFAULT_OPTIONAL,
|
|
100
|
+
},
|
|
101
|
+
'qwen3.5-35b-a3b': {
|
|
102
|
+
repo: 'z-lab/Qwen3.5-35B-A3B-DFlash',
|
|
103
|
+
required: DEFAULT_REQUIRED,
|
|
104
|
+
optional: DEFAULT_OPTIONAL,
|
|
105
|
+
},
|
|
106
|
+
'qwen3.5-27b': {
|
|
107
|
+
repo: 'z-lab/Qwen3.5-27B-DFlash',
|
|
108
|
+
required: DEFAULT_REQUIRED,
|
|
109
|
+
optional: DEFAULT_OPTIONAL,
|
|
110
|
+
},
|
|
111
|
+
'qwen3-coder-next': {
|
|
112
|
+
repo: 'z-lab/Qwen3-Coder-Next-DFlash',
|
|
113
|
+
required: DEFAULT_REQUIRED,
|
|
114
|
+
optional: DEFAULT_OPTIONAL,
|
|
115
|
+
},
|
|
116
|
+
'gpt-oss-20b': {
|
|
117
|
+
repo: 'z-lab/gpt-oss-20b-DFlash',
|
|
118
|
+
required: DEFAULT_REQUIRED,
|
|
119
|
+
optional: DEFAULT_OPTIONAL,
|
|
120
|
+
},
|
|
121
|
+
'gpt-oss-120b': {
|
|
122
|
+
repo: 'z-lab/gpt-oss-120b-DFlash',
|
|
123
|
+
required: DEFAULT_REQUIRED,
|
|
124
|
+
optional: DEFAULT_OPTIONAL,
|
|
125
|
+
},
|
|
126
|
+
'qwen3-4b': {
|
|
127
|
+
repo: 'z-lab/Qwen3-4B-DFlash-b16',
|
|
128
|
+
required: DEFAULT_REQUIRED,
|
|
129
|
+
optional: DEFAULT_OPTIONAL,
|
|
130
|
+
},
|
|
131
|
+
'qwen3-8b': {
|
|
132
|
+
repo: 'z-lab/Qwen3-8B-DFlash-b16',
|
|
133
|
+
required: DEFAULT_REQUIRED,
|
|
134
|
+
optional: DEFAULT_OPTIONAL,
|
|
135
|
+
},
|
|
136
|
+
'qwen3-coder-30b-a3b': {
|
|
137
|
+
repo: 'z-lab/Qwen3-Coder-30B-A3B-DFlash',
|
|
138
|
+
required: DEFAULT_REQUIRED,
|
|
139
|
+
optional: DEFAULT_OPTIONAL,
|
|
140
|
+
},
|
|
141
|
+
/// The published mlx-community repos carry an `-Instruct` infix
|
|
142
|
+
/// (`Qwen3-Coder-30B-A3B-Instruct-*`) that `normalizeBaseId` does not strip,
|
|
143
|
+
/// so alias the `-instruct` form to the same draft.
|
|
144
|
+
'qwen3-coder-30b-a3b-instruct': {
|
|
145
|
+
repo: 'z-lab/Qwen3-Coder-30B-A3B-DFlash',
|
|
146
|
+
required: DEFAULT_REQUIRED,
|
|
147
|
+
optional: DEFAULT_OPTIONAL,
|
|
148
|
+
},
|
|
149
|
+
'llama3.1-8b-instruct': {
|
|
150
|
+
repo: 'z-lab/LLaMA3.1-8B-Instruct-DFlash-UltraChat',
|
|
151
|
+
required: DEFAULT_REQUIRED,
|
|
152
|
+
optional: DEFAULT_OPTIONAL,
|
|
153
|
+
},
|
|
154
|
+
'llama-3.1-8b-instruct': {
|
|
155
|
+
repo: 'z-lab/LLaMA3.1-8B-Instruct-DFlash-UltraChat',
|
|
156
|
+
required: DEFAULT_REQUIRED,
|
|
157
|
+
optional: DEFAULT_OPTIONAL,
|
|
158
|
+
},
|
|
159
|
+
'meta-llama-3.1-8b-instruct': {
|
|
160
|
+
repo: 'z-lab/LLaMA3.1-8B-Instruct-DFlash-UltraChat',
|
|
161
|
+
required: DEFAULT_REQUIRED,
|
|
162
|
+
optional: DEFAULT_OPTIONAL,
|
|
163
|
+
},
|
|
164
|
+
};
|
|
165
|
+
/// Quantization / format suffixes that should be stripped from a model id
|
|
166
|
+
/// before attempting registry lookup. Order matters: longer first.
|
|
167
|
+
/// `qat` (Quantization-Aware Training) and `unquantized` are included so
|
|
168
|
+
/// QAT-quantized targets (e.g. `gemma-4-E4B-it-qat-4bit`) normalize to the
|
|
169
|
+
/// same key as the standard float builds (`gemma-4-e4b`).
|
|
170
|
+
const QUANT_SUFFIX_RE = /-(?:4bit|8bit|6bit|5bit|3bit|2bit|q4_k_m|q4_k_s|q5_k_m|q5_k_s|q6_k|q8_0|fp16|bf16|fp8|mxfp4|mxfp8|mlx|qat|unquantized)(?:-[a-z0-9]+)?$/i;
|
|
171
|
+
/// Trailing dimensionality / dataset hints that occasionally appear in MLX
|
|
172
|
+
/// repo names (e.g. `-128k`, `-it`, `-chat`). Stripped after quant suffixes.
|
|
173
|
+
const TRAIL_HINT_RE = /-(?:it|chat|128k|256k|1m|hf|base)$/i;
|
|
174
|
+
/**
|
|
175
|
+
* Normalize an arbitrary MLX model id into the registry-key form.
|
|
176
|
+
*
|
|
177
|
+
* "mlx-community/Qwen3-4B-4bit" -> "qwen3-4b"
|
|
178
|
+
* "Qwen3.5-9B-mlx-bf16" -> "qwen3.5-9b"
|
|
179
|
+
* "gpt-oss-20b" -> "gpt-oss-20b"
|
|
180
|
+
*/
|
|
181
|
+
export function normalizeBaseId(modelId) {
|
|
182
|
+
let id = modelId.trim();
|
|
183
|
+
const slashIdx = id.lastIndexOf('/');
|
|
184
|
+
if (slashIdx !== -1) {
|
|
185
|
+
id = id.slice(slashIdx + 1);
|
|
186
|
+
}
|
|
187
|
+
id = id.toLowerCase();
|
|
188
|
+
for (let i = 0; i < 3; i++) {
|
|
189
|
+
const next = id.replace(QUANT_SUFFIX_RE, '').replace(TRAIL_HINT_RE, '');
|
|
190
|
+
if (next === id)
|
|
191
|
+
break;
|
|
192
|
+
id = next;
|
|
193
|
+
}
|
|
194
|
+
return id;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Resolve a DFlash draft repo for the given base model.
|
|
198
|
+
*
|
|
199
|
+
* Pure / synchronous — relies solely on `STATIC_DRAFT_MAP` and never touches
|
|
200
|
+
* the network. Returns `null` when the base model is not in the curated
|
|
201
|
+
* z-lab collection.
|
|
202
|
+
*/
|
|
203
|
+
export function resolveDflashDraft(modelId) {
|
|
204
|
+
/// If the caller already passed a fully-qualified `z-lab/<repo>` id, do a
|
|
205
|
+
/// reverse lookup against the map values so we still pull the correct
|
|
206
|
+
/// manifest (and not whatever `normalizeBaseId` would mangle it into).
|
|
207
|
+
if (/^z-lab\//i.test(modelId)) {
|
|
208
|
+
const target = modelId.toLowerCase();
|
|
209
|
+
for (const manifest of Object.values(STATIC_DRAFT_MAP)) {
|
|
210
|
+
if (manifest.repo.toLowerCase() === target) {
|
|
211
|
+
return {
|
|
212
|
+
repo: manifest.repo,
|
|
213
|
+
required: manifest.required,
|
|
214
|
+
optional: manifest.optional ?? [],
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return null;
|
|
219
|
+
}
|
|
220
|
+
const baseId = normalizeBaseId(modelId);
|
|
221
|
+
const manifest = STATIC_DRAFT_MAP[baseId];
|
|
222
|
+
if (!manifest)
|
|
223
|
+
return null;
|
|
224
|
+
return {
|
|
225
|
+
repo: manifest.repo,
|
|
226
|
+
required: manifest.required,
|
|
227
|
+
optional: manifest.optional ?? [],
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=mlx-dflash-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mlx-dflash-registry.js","sourceRoot":"","sources":["../../src/speculative/mlx-dflash-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/mlx-extension/src/eagle3Registry.ts
|
|
3
|
+
* EAGLE-3 draft model registry.
|
|
4
|
+
*
|
|
5
|
+
* A pure, network-free static manifest mapping base MLX model identifiers to
|
|
6
|
+
* the matching `RedHatAI/*-speculator.eagle3` draft checkpoints (Speculators /
|
|
7
|
+
* SGLang EAGLE-3 format), which `mlx_vlm`'s `eagle3` drafter loads directly.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors the shape of `dflashRegistry.ts` / `mtpRegistry.ts` so the MLX
|
|
10
|
+
* extension routes all three speculative-decoding kinds through the same
|
|
11
|
+
* local-first resolution and direct `/resolve/main/<file>` download path. This
|
|
12
|
+
* module only carries the static lookup data; no `huggingface.co/api/...`
|
|
13
|
+
* calls happen here.
|
|
14
|
+
*/
|
|
15
|
+
import { type DraftRepoManifest, type DraftResolution } from './mlx-dflash-registry.js';
|
|
16
|
+
export declare const STATIC_EAGLE3_MAP: Record<string, DraftRepoManifest>;
|
|
17
|
+
/**
|
|
18
|
+
* Resolve an EAGLE-3 draft repo for the given base model.
|
|
19
|
+
*
|
|
20
|
+
* Pure / synchronous — relies solely on `STATIC_EAGLE3_MAP` and never touches
|
|
21
|
+
* the network. Returns `null` when the base model has no canonical EAGLE-3
|
|
22
|
+
* pairing.
|
|
23
|
+
*/
|
|
24
|
+
export declare function resolveEagle3Draft(modelId: string): DraftResolution | null;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/mlx-extension/src/eagle3Registry.ts
|
|
3
|
+
* EAGLE-3 draft model registry.
|
|
4
|
+
*
|
|
5
|
+
* A pure, network-free static manifest mapping base MLX model identifiers to
|
|
6
|
+
* the matching `RedHatAI/*-speculator.eagle3` draft checkpoints (Speculators /
|
|
7
|
+
* SGLang EAGLE-3 format), which `mlx_vlm`'s `eagle3` drafter loads directly.
|
|
8
|
+
*
|
|
9
|
+
* Mirrors the shape of `dflashRegistry.ts` / `mtpRegistry.ts` so the MLX
|
|
10
|
+
* extension routes all three speculative-decoding kinds through the same
|
|
11
|
+
* local-first resolution and direct `/resolve/main/<file>` download path. This
|
|
12
|
+
* module only carries the static lookup data; no `huggingface.co/api/...`
|
|
13
|
+
* calls happen here.
|
|
14
|
+
*/
|
|
15
|
+
import { normalizeBaseId } from './mlx-dflash-registry.js';
|
|
16
|
+
/// Speculators EAGLE-3 checkpoints ship a single-file `model.safetensors`
|
|
17
|
+
/// plus a `config.json` (a sibling `config.py` carries the upstream loader
|
|
18
|
+
/// shim and is NOT needed by mlx-vlm's own `Eagle3Config`). Tokenizer files
|
|
19
|
+
/// belong to the target model.
|
|
20
|
+
const DEFAULT_REQUIRED = ['config.json', 'model.safetensors'];
|
|
21
|
+
/// `model.safetensors.index.json` is grabbed best-effort so a future sharded
|
|
22
|
+
/// EAGLE-3 head keeps working through the local-first path; absence is not
|
|
23
|
+
/// fatal.
|
|
24
|
+
const DEFAULT_OPTIONAL = ['model.safetensors.index.json'];
|
|
25
|
+
/// Snapshot of the canonical Gemma 4 EAGLE-3 speculators published by
|
|
26
|
+
/// `RedHatAI`. Only the two large Gemma 4 targets have an EAGLE-3 head; the
|
|
27
|
+
/// E2B / E4B targets use the Gemma 4 MTP "assistant" drafter instead (see
|
|
28
|
+
/// `mtpRegistry.ts`).
|
|
29
|
+
///
|
|
30
|
+
/// Keys are normalized base-model ids (lowercase, separators preserved as
|
|
31
|
+
/// `-`) derived via `normalizeBaseId`. The trailing `-it` is stripped by
|
|
32
|
+
/// `TRAIL_HINT_RE` in `dflashRegistry.ts`, so the keys here are
|
|
33
|
+
/// `gemma-4-{31b,26b-a4b}` without the `-it` suffix.
|
|
34
|
+
export const STATIC_EAGLE3_MAP = {
|
|
35
|
+
'gemma-4-31b': {
|
|
36
|
+
repo: 'RedHatAI/gemma-4-31B-it-speculator.eagle3',
|
|
37
|
+
required: DEFAULT_REQUIRED,
|
|
38
|
+
optional: DEFAULT_OPTIONAL,
|
|
39
|
+
},
|
|
40
|
+
'gemma-4-26b-a4b': {
|
|
41
|
+
repo: 'RedHatAI/gemma-4-26B-A4B-it-speculator.eagle3',
|
|
42
|
+
required: DEFAULT_REQUIRED,
|
|
43
|
+
optional: DEFAULT_OPTIONAL,
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Resolve an EAGLE-3 draft repo for the given base model.
|
|
48
|
+
*
|
|
49
|
+
* Pure / synchronous — relies solely on `STATIC_EAGLE3_MAP` and never touches
|
|
50
|
+
* the network. Returns `null` when the base model has no canonical EAGLE-3
|
|
51
|
+
* pairing.
|
|
52
|
+
*/
|
|
53
|
+
export function resolveEagle3Draft(modelId) {
|
|
54
|
+
/// Reverse lookup: caller already passed a fully-qualified
|
|
55
|
+
/// `*-speculator.eagle3` id — match against manifest values rather than
|
|
56
|
+
/// running it through `normalizeBaseId` (which would mangle the
|
|
57
|
+
/// `-speculator.eagle3` suffix).
|
|
58
|
+
if (/\.eagle3(?:-|$)/i.test(modelId) || /^redhatai\//i.test(modelId)) {
|
|
59
|
+
const target = modelId.toLowerCase();
|
|
60
|
+
for (const manifest of Object.values(STATIC_EAGLE3_MAP)) {
|
|
61
|
+
if (manifest.repo.toLowerCase() === target) {
|
|
62
|
+
return {
|
|
63
|
+
repo: manifest.repo,
|
|
64
|
+
required: manifest.required,
|
|
65
|
+
optional: manifest.optional ?? [],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
const baseId = normalizeBaseId(modelId);
|
|
72
|
+
const manifest = STATIC_EAGLE3_MAP[baseId];
|
|
73
|
+
if (!manifest)
|
|
74
|
+
return null;
|
|
75
|
+
return {
|
|
76
|
+
repo: manifest.repo,
|
|
77
|
+
required: manifest.required,
|
|
78
|
+
optional: manifest.optional ?? [],
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=mlx-eagle3-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mlx-eagle3-registry.js","sourceRoot":"","sources":["../../src/speculative/mlx-eagle3-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAgD,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAExG,0EAA0E;AAC1E,2EAA2E;AAC3E,4EAA4E;AAC5E,+BAA+B;AAC/B,MAAM,gBAAgB,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAA;AAE7D,6EAA6E;AAC7E,2EAA2E;AAC3E,UAAU;AACV,MAAM,gBAAgB,GAAa,CAAC,8BAA8B,CAAC,CAAA;AAEnE,sEAAsE;AACtE,4EAA4E;AAC5E,0EAA0E;AAC1E,sBAAsB;AACtB,GAAG;AACH,0EAA0E;AAC1E,yEAAyE;AACzE,gEAAgE;AAChE,qDAAqD;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAsC;IAClE,aAAa,EAAE;QACb,IAAI,EAAE,2CAA2C;QACjD,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ,EAAE,gBAAgB;KAC3B;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,+CAA+C;QACrD,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ,EAAE,gBAAgB;KAC3B;CACF,CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,2DAA2D;IAC3D,wEAAwE;IACxE,gEAAgE;IAChE,iCAAiC;IACjC,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACrE,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;QACpC,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACxD,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBAC3C,OAAO;oBACL,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;iBAClC,CAAA;YACH,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC1C,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAA;IAE1B,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;KAClC,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/mlx-extension/src/mtpRegistry.ts
|
|
3
|
+
* MTP (Multi-Token Prediction) draft model registry.
|
|
4
|
+
*
|
|
5
|
+
* A pure, network-free static manifest mapping base MLX model identifiers to
|
|
6
|
+
* matching MTP drafters. Three drafter families share the single `mtp`
|
|
7
|
+
* `--draft-kind` (mlx-vlm auto-detects the exact head from the drafter's
|
|
8
|
+
* `config.json :: model_type`):
|
|
9
|
+
* - Gemma 4 "assistant" heads (`mlx-community/gemma-4-*-it-assistant-bf16`,
|
|
10
|
+
* `model_type: gemma4_assistant`) — https://ai.google.dev/gemma/docs/mtp/mtp.
|
|
11
|
+
* - Qwen 3.5 / 3.6 MTP heads (`mlx-community/Qwen3.*-MTP-bf16`,
|
|
12
|
+
* `model_type: qwen3_5_mtp`) — split out of the UDT target weights and
|
|
13
|
+
* republished as standalone drafter repos by `mlx-community`.
|
|
14
|
+
* - DeepSeek V4 Flash MTP head (`mlx-community/DeepSeek-V4-Flash-MTP-bf16`,
|
|
15
|
+
* `model_type: deepseek_v4_mtp`).
|
|
16
|
+
*
|
|
17
|
+
* Mirrors the shape of `dflashRegistry.ts` / `eagle3Registry.ts` so the MLX
|
|
18
|
+
* extension can route every speculative-decoding kind through the same
|
|
19
|
+
* local-first resolution and direct-download path. This module only carries
|
|
20
|
+
* the static lookup data; no `huggingface.co/api/...` calls happen here.
|
|
21
|
+
*/
|
|
22
|
+
import { type DraftRepoManifest, type DraftResolution } from './mlx-dflash-registry.js';
|
|
23
|
+
export declare const STATIC_MTP_MAP: Record<string, DraftRepoManifest>;
|
|
24
|
+
/**
|
|
25
|
+
* Resolve a Gemma 4 MTP assistant repo for the given base model.
|
|
26
|
+
*
|
|
27
|
+
* Pure / synchronous — relies solely on `STATIC_MTP_MAP` and never touches
|
|
28
|
+
* the network. Returns `null` when the base model has no canonical MTP
|
|
29
|
+
* pairing.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveMtpDraft(modelId: string): DraftResolution | null;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/mlx-extension/src/mtpRegistry.ts
|
|
3
|
+
* MTP (Multi-Token Prediction) draft model registry.
|
|
4
|
+
*
|
|
5
|
+
* A pure, network-free static manifest mapping base MLX model identifiers to
|
|
6
|
+
* matching MTP drafters. Three drafter families share the single `mtp`
|
|
7
|
+
* `--draft-kind` (mlx-vlm auto-detects the exact head from the drafter's
|
|
8
|
+
* `config.json :: model_type`):
|
|
9
|
+
* - Gemma 4 "assistant" heads (`mlx-community/gemma-4-*-it-assistant-bf16`,
|
|
10
|
+
* `model_type: gemma4_assistant`) — https://ai.google.dev/gemma/docs/mtp/mtp.
|
|
11
|
+
* - Qwen 3.5 / 3.6 MTP heads (`mlx-community/Qwen3.*-MTP-bf16`,
|
|
12
|
+
* `model_type: qwen3_5_mtp`) — split out of the UDT target weights and
|
|
13
|
+
* republished as standalone drafter repos by `mlx-community`.
|
|
14
|
+
* - DeepSeek V4 Flash MTP head (`mlx-community/DeepSeek-V4-Flash-MTP-bf16`,
|
|
15
|
+
* `model_type: deepseek_v4_mtp`).
|
|
16
|
+
*
|
|
17
|
+
* Mirrors the shape of `dflashRegistry.ts` / `eagle3Registry.ts` so the MLX
|
|
18
|
+
* extension can route every speculative-decoding kind through the same
|
|
19
|
+
* local-first resolution and direct-download path. This module only carries
|
|
20
|
+
* the static lookup data; no `huggingface.co/api/...` calls happen here.
|
|
21
|
+
*/
|
|
22
|
+
import { normalizeBaseId } from './mlx-dflash-registry.js';
|
|
23
|
+
/// Gemma 4 assistant drafters published by `mlx-community` ship as a
|
|
24
|
+
/// single-file `model.safetensors` plus `config.json`. Sharded layouts
|
|
25
|
+
/// (rare for the 4-layer assistant) need a per-repo override.
|
|
26
|
+
const DEFAULT_REQUIRED = ['config.json', 'model.safetensors'];
|
|
27
|
+
/// `model.safetensors.index.json` is grabbed best-effort so sharded
|
|
28
|
+
/// drafters keep working through the local-first path; absence is not
|
|
29
|
+
/// fatal.
|
|
30
|
+
const DEFAULT_OPTIONAL = ['model.safetensors.index.json'];
|
|
31
|
+
/// Snapshot of the four canonical Gemma 4 target ↔ assistant pairings
|
|
32
|
+
/// from `mlx_vlm/speculative/drafters/gemma4_assistant/README.md`.
|
|
33
|
+
///
|
|
34
|
+
/// Keys are normalized base-model ids (lowercase, separators preserved as
|
|
35
|
+
/// `-`) derived via `normalizeBaseId`. The trailing `-it` is stripped by
|
|
36
|
+
/// `TRAIL_HINT_RE` in `dflashRegistry.ts`, so the keys here are
|
|
37
|
+
/// `gemma-4-{e2b,e4b,26b-a4b,31b}` without the `-it` suffix.
|
|
38
|
+
export const STATIC_MTP_MAP = {
|
|
39
|
+
'gemma-4-e2b': {
|
|
40
|
+
repo: 'mlx-community/gemma-4-E2B-it-assistant-bf16',
|
|
41
|
+
required: DEFAULT_REQUIRED,
|
|
42
|
+
optional: DEFAULT_OPTIONAL,
|
|
43
|
+
},
|
|
44
|
+
'gemma-4-e4b': {
|
|
45
|
+
repo: 'mlx-community/gemma-4-E4B-it-assistant-bf16',
|
|
46
|
+
required: DEFAULT_REQUIRED,
|
|
47
|
+
optional: DEFAULT_OPTIONAL,
|
|
48
|
+
},
|
|
49
|
+
'gemma-4-26b-a4b': {
|
|
50
|
+
repo: 'mlx-community/gemma-4-26B-A4B-it-assistant-bf16',
|
|
51
|
+
required: DEFAULT_REQUIRED,
|
|
52
|
+
optional: DEFAULT_OPTIONAL,
|
|
53
|
+
},
|
|
54
|
+
'gemma-4-31b': {
|
|
55
|
+
repo: 'mlx-community/gemma-4-31B-it-assistant-bf16',
|
|
56
|
+
required: DEFAULT_REQUIRED,
|
|
57
|
+
optional: DEFAULT_OPTIONAL,
|
|
58
|
+
},
|
|
59
|
+
/// Qwen 3.5 / 3.6 MTP heads (`model_type: qwen3_5_mtp`). The drafter is the
|
|
60
|
+
/// MTP module split out of the corresponding UDT target and republished as a
|
|
61
|
+
/// standalone single-file `model.safetensors` + `config.json` repo. Verified
|
|
62
|
+
/// against the `mlx-community` MTP collection. The tokenizer comes from the
|
|
63
|
+
/// target model, so only the two weight/config files are required.
|
|
64
|
+
'qwen3.5-4b': {
|
|
65
|
+
repo: 'mlx-community/Qwen3.5-4B-MTP-bf16',
|
|
66
|
+
required: DEFAULT_REQUIRED,
|
|
67
|
+
optional: DEFAULT_OPTIONAL,
|
|
68
|
+
},
|
|
69
|
+
'qwen3.5-9b': {
|
|
70
|
+
repo: 'mlx-community/Qwen3.5-9B-MTP-bf16',
|
|
71
|
+
required: DEFAULT_REQUIRED,
|
|
72
|
+
optional: DEFAULT_OPTIONAL,
|
|
73
|
+
},
|
|
74
|
+
'qwen3.6-27b': {
|
|
75
|
+
repo: 'mlx-community/Qwen3.6-27B-MTP-bf16',
|
|
76
|
+
required: DEFAULT_REQUIRED,
|
|
77
|
+
optional: DEFAULT_OPTIONAL,
|
|
78
|
+
},
|
|
79
|
+
'qwen3.6-35b-a3b': {
|
|
80
|
+
repo: 'mlx-community/Qwen3.6-35B-A3B-MTP-bf16',
|
|
81
|
+
required: DEFAULT_REQUIRED,
|
|
82
|
+
optional: DEFAULT_OPTIONAL,
|
|
83
|
+
},
|
|
84
|
+
/// DeepSeek V4 Flash MTP head (`model_type: deepseek_v4_mtp`). Same
|
|
85
|
+
/// split-and-republish story as the Qwen heads.
|
|
86
|
+
'deepseek-v4-flash': {
|
|
87
|
+
repo: 'mlx-community/DeepSeek-V4-Flash-MTP-bf16',
|
|
88
|
+
required: DEFAULT_REQUIRED,
|
|
89
|
+
optional: DEFAULT_OPTIONAL,
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
/**
|
|
93
|
+
* Resolve a Gemma 4 MTP assistant repo for the given base model.
|
|
94
|
+
*
|
|
95
|
+
* Pure / synchronous — relies solely on `STATIC_MTP_MAP` and never touches
|
|
96
|
+
* the network. Returns `null` when the base model has no canonical MTP
|
|
97
|
+
* pairing.
|
|
98
|
+
*/
|
|
99
|
+
export function resolveMtpDraft(modelId) {
|
|
100
|
+
/// Reverse lookup: caller already passed a fully-qualified drafter id
|
|
101
|
+
/// (Gemma `*-it-assistant-*` or a `*-MTP-*` head) — match against manifest
|
|
102
|
+
/// values rather than running it through `normalizeBaseId` (which would
|
|
103
|
+
/// strip the `-bf16` suffix and try to look it up as a target).
|
|
104
|
+
if (/-assistant(?:-|$)/i.test(modelId) || /-mtp(?:-|$)/i.test(modelId)) {
|
|
105
|
+
const target = modelId.toLowerCase();
|
|
106
|
+
for (const manifest of Object.values(STATIC_MTP_MAP)) {
|
|
107
|
+
if (manifest.repo.toLowerCase() === target) {
|
|
108
|
+
return {
|
|
109
|
+
repo: manifest.repo,
|
|
110
|
+
required: manifest.required,
|
|
111
|
+
optional: manifest.optional ?? [],
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
/// Quantized targets (e.g. `gemma-4-E4B-it-4bit`) are now allowed.
|
|
118
|
+
/// The original block was a precaution against biased strict-equality
|
|
119
|
+
/// verification when the bf16 drafter was paired with a quantized
|
|
120
|
+
/// target — but the mlx-vlm server forces ``temp=0`` in
|
|
121
|
+
/// ``_run_speculative`` (greedy verify), so a quantization mismatch
|
|
122
|
+
/// only reduces acceptance rate (drafter argmax may diverge from
|
|
123
|
+
/// target argmax), it does not corrupt output. The long-prompt SWA
|
|
124
|
+
/// mask bug that previously turned this into "Just/Just/Just" cascades
|
|
125
|
+
/// is fixed upstream by Blaizzy/mlx-vlm#1139 (commit ``2bc33a6``).
|
|
126
|
+
/// ``normalizeBaseId`` strips the quant + ``-it`` suffixes so e.g.
|
|
127
|
+
/// ``gemma-4-E4B-it-4bit`` -> ``gemma-4-e4b`` and resolves to the
|
|
128
|
+
/// same bf16 drafter as the bf16 target.
|
|
129
|
+
const baseId = normalizeBaseId(modelId);
|
|
130
|
+
const manifest = STATIC_MTP_MAP[baseId];
|
|
131
|
+
if (!manifest)
|
|
132
|
+
return null;
|
|
133
|
+
return {
|
|
134
|
+
repo: manifest.repo,
|
|
135
|
+
required: manifest.required,
|
|
136
|
+
optional: manifest.optional ?? [],
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=mlx-mtp-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mlx-mtp-registry.js","sourceRoot":"","sources":["../../src/speculative/mlx-mtp-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ported verbatim from: extensions/llamacpp-upstream-extension/src/transcriptionRegistry.ts
|
|
3
|
+
* The voice model.
|
|
4
|
+
*
|
|
5
|
+
* Voice input transcribes on the same bundled llama.cpp engine that runs chat:
|
|
6
|
+
* its `libmtmd` already carries the `voxtral` audio projector, and `llama-server`
|
|
7
|
+
* already serves an OpenAI-compatible `/v1/audio/transcriptions`. So the model
|
|
8
|
+
* is the only thing that has to be fetched, and it goes through the ordinary
|
|
9
|
+
* download pipeline like any other GGUF.
|
|
10
|
+
*
|
|
11
|
+
* One model, deliberately. A tier picker would be a second thing to explain in
|
|
12
|
+
* the setup wizard, and the sizes here are already dominated by the weights.
|
|
13
|
+
*/
|
|
14
|
+
/** Model id, and the llama-server alias (`-a`) it is loaded under. */
|
|
15
|
+
export declare const TRANSCRIPTION_MODEL_ID = "ggml-org/Voxtral-Mini-3B-2507-Q4_K_M";
|
|
16
|
+
export declare const TRANSCRIPTION_MODEL_HF_REPO = "ggml-org/Voxtral-Mini-3B-2507-GGUF";
|
|
17
|
+
export declare const TRANSCRIPTION_MODEL_URL = "https://huggingface.co/ggml-org/Voxtral-Mini-3B-2507-GGUF/resolve/main/Voxtral-Mini-3B-2507-Q4_K_M.gguf";
|
|
18
|
+
export declare const TRANSCRIPTION_MMPROJ_URL = "https://huggingface.co/ggml-org/Voxtral-Mini-3B-2507-GGUF/resolve/main/mmproj-Voxtral-Mini-3B-2507-Q8_0.gguf";
|
|
19
|
+
/** Exact sizes from the Hugging Face API, so the progress bar has a real total. */
|
|
20
|
+
export declare const TRANSCRIPTION_MODEL_BYTES = 2473001920;
|
|
21
|
+
export declare const TRANSCRIPTION_MMPROJ_BYTES = 715714080;
|
|
22
|
+
export declare const TRANSCRIPTION_TOTAL_BYTES: number;
|
|
23
|
+
/**
|
|
24
|
+
* Chat template the voice server is loaded with.
|
|
25
|
+
*
|
|
26
|
+
* Two things make this mandatory rather than a nicety.
|
|
27
|
+
*
|
|
28
|
+
* 1. The template embedded in `ggml-org/Voxtral-Mini-3B-2507-Q4_K_M.gguf` is an
|
|
29
|
+
* Unsloth *Devstral* template. It defaults every conversation to a ~1200
|
|
30
|
+
* token "You are Devstral, a helpful agentic model … using the OpenHands
|
|
31
|
+
* scaffold" system prompt, which llama.cpp then prepends to every
|
|
32
|
+
* `/v1/audio/transcriptions` request (that endpoint is a chat completion
|
|
33
|
+
* underneath). The model duly behaves like a chat agent: it *hears* the
|
|
34
|
+
* audio and answers it — "I'm unable to transcribe audio directly. However,
|
|
35
|
+
* I can guide you on how to use Descript, Rev, Amazon Transcribe…" — instead
|
|
36
|
+
* of transcribing. Every phrase then trips the plugin's plausibility guard
|
|
37
|
+
* and is dropped, so dictation inserts nothing at all.
|
|
38
|
+
*
|
|
39
|
+
* 2. Voxtral has a dedicated transcription mode, entered by ending the user
|
|
40
|
+
* turn with the `[TRANSCRIBE]` token instead of closing it with `[/INST]`.
|
|
41
|
+
* Closing the turn normally — with or without a "transcribe this" prompt —
|
|
42
|
+
* leaves the model in conversational mode, where it answers, refuses, or
|
|
43
|
+
* returns nothing depending on the clip.
|
|
44
|
+
*
|
|
45
|
+
* So: no system prompt, and `[INST]` … `[TRANSCRIBE]` around whatever the
|
|
46
|
+
* endpoint puts in the user turn (the audio marker, then the caller's `prompt`,
|
|
47
|
+
* which is where the `lang:xx` directive lands). This server only ever serves
|
|
48
|
+
* transcription, so treating every message as a transcription turn is honest.
|
|
49
|
+
*
|
|
50
|
+
* `String.raw` for consistency with `chatTemplateOverrides.ts`: minja, not JS,
|
|
51
|
+
* interprets any escapes inside the Jinja source.
|
|
52
|
+
*/
|
|
53
|
+
export declare const VOXTRAL_TRANSCRIPTION_CHAT_TEMPLATE: string;
|
|
54
|
+
/**
|
|
55
|
+
* Load overrides for the voice server.
|
|
56
|
+
*
|
|
57
|
+
* Deliberately small and deterministic: one 30 s `libmtmd` audio window is a few
|
|
58
|
+
* hundred tokens, a transcript is never long, and this process runs *alongside*
|
|
59
|
+
* the user's chat model — so it must not size itself to the free VRAM the way a
|
|
60
|
+
* chat load does.
|
|
61
|
+
*/
|
|
62
|
+
export declare const TRANSCRIPTION_LOAD_OVERRIDES: {
|
|
63
|
+
readonly fit: false;
|
|
64
|
+
readonly ctx_size: 4096;
|
|
65
|
+
readonly n_predict: 512;
|
|
66
|
+
readonly parallel: 1;
|
|
67
|
+
readonly cont_batching: false;
|
|
68
|
+
readonly chat_template: string;
|
|
69
|
+
readonly extra_args: "--no-warmup";
|
|
70
|
+
};
|
|
71
|
+
/** Unload the voice model after this long without a phrase. */
|
|
72
|
+
export declare const TRANSCRIPTION_IDLE_UNLOAD_MS: number;
|