@qvac/sdk 0.15.0 → 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/NOTICE +87 -84
- package/README.md +65 -0
- package/dist/client/api/audio-gen-result.d.ts +4 -0
- package/dist/client/api/audio-gen-result.js +132 -0
- package/dist/client/api/audio-gen.d.ts +29 -0
- package/dist/client/api/audio-gen.js +31 -0
- package/dist/client/api/batch-completion.d.ts +2 -2
- package/dist/client/api/batch-completion.js +2 -2
- package/dist/client/api/bci-transcribe.d.ts +1 -1
- package/dist/client/api/bci-transcribe.js +3 -3
- package/dist/client/api/cancel.d.ts +1 -1
- package/dist/client/api/cancel.js +1 -1
- package/dist/client/api/classify.d.ts +1 -1
- package/dist/client/api/classify.js +1 -1
- package/dist/client/api/completion-stream.d.ts +3 -3
- package/dist/client/api/completion-stream.js +3 -3
- package/dist/client/api/delete-cache.js +1 -1
- package/dist/client/api/diffusion.d.ts +1 -1
- package/dist/client/api/diffusion.js +1 -1
- package/dist/client/api/download-asset.d.ts +1 -1
- package/dist/client/api/download-asset.js +3 -3
- package/dist/client/api/embed.d.ts +1 -1
- package/dist/client/api/embed.js +2 -2
- package/dist/client/api/finetune.d.ts +1 -1
- package/dist/client/api/finetune.js +2 -2
- package/dist/client/api/get-loaded-model-info.d.ts +2 -2
- package/dist/client/api/get-loaded-model-info.js +1 -1
- package/dist/client/api/get-model-info.d.ts +2 -2
- package/dist/client/api/get-model-info.js +1 -1
- package/dist/client/api/get-system-resources.d.ts +3 -0
- package/dist/client/api/get-system-resources.js +16 -0
- package/dist/client/api/heartbeat.d.ts +2 -2
- package/dist/client/api/heartbeat.js +1 -1
- package/dist/client/api/index.d.ts +35 -33
- package/dist/client/api/index.js +2 -0
- package/dist/client/api/invoke-plugin.d.ts +1 -1
- package/dist/client/api/invoke-plugin.js +1 -1
- package/dist/client/api/load-model.d.ts +2 -2
- package/dist/client/api/load-model.js +4 -4
- package/dist/client/api/logging-stream.d.ts +1 -1
- package/dist/client/api/logging-stream.js +1 -1
- package/dist/client/api/ocr.d.ts +10 -1
- package/dist/client/api/ocr.js +10 -1
- package/dist/client/api/provide.d.ts +1 -1
- package/dist/client/api/provide.js +1 -1
- package/dist/client/api/rag.d.ts +1 -1
- package/dist/client/api/rag.js +2 -2
- package/dist/client/api/registry.d.ts +1 -1
- package/dist/client/api/registry.js +1 -1
- package/dist/client/api/resume.js +1 -1
- package/dist/client/api/state.d.ts +1 -1
- package/dist/client/api/state.js +1 -1
- package/dist/client/api/stop-provider.js +1 -1
- package/dist/client/api/subscribe-logs.d.ts +1 -1
- package/dist/client/api/suspend.js +1 -1
- package/dist/client/api/text-to-speech.d.ts +3 -2
- package/dist/client/api/text-to-speech.js +31 -9
- package/dist/client/api/transcribe.d.ts +1 -1
- package/dist/client/api/transcribe.js +2 -2
- package/dist/client/api/translate.d.ts +1 -1
- package/dist/client/api/translate.js +7 -18
- package/dist/client/api/unload-model.d.ts +1 -1
- package/dist/client/api/unload-model.js +2 -2
- package/dist/client/api/upscale.d.ts +1 -1
- package/dist/client/api/upscale.js +1 -1
- package/dist/client/api/video.d.ts +8 -5
- package/dist/client/api/video.js +9 -6
- package/dist/client/api/vla.d.ts +15 -11
- package/dist/client/api/vla.js +14 -10
- package/dist/client/config-loader/config-utils.d.ts +1 -1
- package/dist/client/config-loader/resolve-config.bare.d.ts +1 -1
- package/dist/client/config-loader/resolve-config.expo.d.ts +1 -1
- package/dist/client/config-loader/resolve-config.node.d.ts +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/init-hooks.d.ts +1 -1
- package/dist/client/logging-stream-registry.d.ts +1 -1
- package/dist/client/plugins-factory.d.ts +2 -2
- package/dist/client/plugins-factory.js +1 -1
- package/dist/client/rpc/bare-client.d.ts +1 -1
- package/dist/client/rpc/bare-client.js +3 -3
- package/dist/client/rpc/expo-rpc-client.js +3 -3
- package/dist/client/rpc/node-rpc-client.js +2 -2
- package/dist/client/rpc/profiling/index.d.ts +1 -1
- package/dist/client/rpc/profiling/profiler.d.ts +2 -2
- package/dist/client/rpc/profiling/profiler.js +4 -0
- package/dist/client/rpc/rpc-client.d.ts +1 -1
- package/dist/client/rpc/rpc-client.js +7 -4
- package/dist/client/rpc/rpc-error.d.ts +1 -1
- package/dist/client/rpc/rpc-error.js +7 -1
- package/dist/commands/bundle/bare-pack.d.ts +1 -1
- package/dist/commands/bundle/constants.js +1 -0
- package/dist/commands/bundle/entry-gen.js +1 -1
- package/dist/commands/bundle/index.js +6 -6
- package/dist/commands/bundle/manifest.d.ts +1 -1
- package/dist/commands/bundle/plugins.d.ts +2 -2
- package/dist/commands/bundle/plugins.js +1 -1
- package/dist/commands/index.d.ts +4 -4
- package/dist/commands/index.js +2 -2
- package/dist/commands/verify/abi.d.ts +1 -1
- package/dist/commands/verify/abi.js +1 -1
- package/dist/commands/verify/bundle-source.d.ts +1 -1
- package/dist/commands/verify/bundle-source.js +2 -2
- package/dist/commands/verify/index.d.ts +3 -3
- package/dist/commands/verify/index.js +5 -5
- package/dist/commands/verify/node-modules-source.d.ts +1 -1
- package/dist/commands/verify/node-modules-source.js +1 -1
- package/dist/commands/verify/prebuilds.d.ts +2 -1
- package/dist/commands/verify/prebuilds.js +8 -11
- package/dist/commands/verify/resource-collectors.d.ts +88 -0
- package/dist/commands/verify/resource-collectors.js +261 -0
- package/dist/constants/audio.js +1 -1
- package/dist/constants/index.d.ts +2 -2
- package/dist/examples/{transcription → asr}/parakeet-ctc-filesystem.js +2 -3
- package/dist/examples/{transcription → asr}/parakeet-microphone-record.js +2 -2
- package/dist/examples/{transcription → asr}/parakeet-microphone-stream.js +2 -2
- package/dist/examples/{transcription → asr}/parakeet-sortformer-streaming.js +2 -2
- package/dist/examples/{transcription → asr}/parakeet-sortformer.js +1 -1
- package/dist/examples/asr/parakeet-tdt-filesystem-chunked.d.ts +2 -0
- package/dist/examples/asr/parakeet-tdt-filesystem-chunked.js +203 -0
- package/dist/examples/{transcription → asr}/parakeet-tdt-filesystem.js +2 -2
- package/dist/examples/{transcription → asr}/whispercpp-filesystem-streaming.js +1 -1
- package/dist/examples/{transcription → asr}/whispercpp-filesystem.js +1 -1
- package/dist/examples/{transcription → asr}/whispercpp-microphone-conversation.js +1 -1
- package/dist/examples/{transcription → asr}/whispercpp-microphone-record.js +2 -2
- package/dist/examples/{transcription → asr}/whispercpp-prompt.js +1 -1
- package/dist/examples/audiogen/generate-music.d.ts +2 -0
- package/dist/examples/audiogen/generate-music.js +112 -0
- package/dist/examples/cache-management.js +1 -1
- package/dist/examples/config-reload.js +1 -1
- package/dist/examples/diffusion-ideogram.d.ts +2 -0
- package/dist/examples/diffusion-ideogram.js +108 -0
- package/dist/examples/diffusion-img2vid-ltx.d.ts +2 -0
- package/dist/examples/diffusion-img2vid-ltx.js +98 -0
- package/dist/examples/diffusion-txt2vid-ltx.d.ts +2 -0
- package/dist/examples/diffusion-txt2vid-ltx.js +92 -0
- package/dist/examples/diffusion-txt2vid-wan22.d.ts +2 -0
- package/dist/examples/diffusion-txt2vid-wan22.js +96 -0
- package/dist/examples/logging-streaming.js +5 -1
- package/dist/examples/quickstart.bare.js +1 -1
- package/dist/examples/rag/rag-mongodb.d.ts +2 -0
- package/dist/examples/rag/rag-mongodb.js +180 -0
- package/dist/examples/tools/llamacpp-tools-auto-dialect.d.ts +2 -0
- package/dist/examples/tools/llamacpp-tools-auto-dialect.js +77 -0
- package/dist/examples/tts/parler.d.ts +2 -0
- package/dist/examples/tts/parler.js +51 -0
- package/dist/examples/vla-groot.d.ts +2 -0
- package/dist/examples/vla-groot.js +120 -0
- package/dist/examples/voice-assistant/voice-assistant.js +2 -2
- package/dist/expo/plugins/index.d.ts +11 -11
- package/dist/expo/plugins/withDeviceInfo.js +2 -2
- package/dist/expo/plugins/withMobileBundle.js +3 -3
- package/dist/index.d.ts +16 -16
- package/dist/index.js +4 -4
- package/dist/logging/addon.d.ts +1 -1
- package/dist/logging/base-logger.d.ts +1 -1
- package/dist/logging/base-logger.js +1 -1
- package/dist/logging/client-logger.d.ts +1 -1
- package/dist/logging/index.d.ts +9 -9
- package/dist/logging/logger.d.ts +1 -1
- package/dist/logging/namespaces.d.ts +1 -1
- package/dist/logging/registry.d.ts +1 -1
- package/dist/logging/server-logger.d.ts +1 -1
- package/dist/logging/stream-logger.d.ts +1 -1
- package/dist/logging/transport.d.ts +1 -1
- package/dist/logging/utils.d.ts +1 -1
- package/dist/logging/utils.js +1 -1
- package/dist/models/registry/index.d.ts +1 -1
- package/dist/models/registry/models.d.ts +6443 -9832
- package/dist/models/registry/models.js +4076 -7658
- package/dist/models/update-models/codegen.d.ts +1 -1
- package/dist/models/update-models/companions.d.ts +1 -1
- package/dist/models/update-models/history.d.ts +1 -1
- package/dist/models/update-models/history.js +4 -4
- package/dist/models/update-models/naming.d.ts +1 -1
- package/dist/models/update-models/naming.js +12 -2
- package/dist/models/update-models/processing.d.ts +1 -1
- package/dist/models/update-models/processing.js +1 -1
- package/dist/models/update-models/registry.d.ts +2 -2
- package/dist/models/update-models/shards.d.ts +1 -1
- package/dist/models/update-models/types.d.ts +1 -1
- package/dist/pear/pre.js +2 -0
- package/dist/profiling/aggregator.d.ts +1 -1
- package/dist/profiling/backend-diagnostics.d.ts +8 -0
- package/dist/profiling/backend-diagnostics.js +21 -0
- package/dist/profiling/controller.d.ts +4 -2
- package/dist/profiling/controller.js +8 -0
- package/dist/profiling/envelope.d.ts +3 -2
- package/dist/profiling/envelope.js +13 -2
- package/dist/profiling/events.d.ts +2 -2
- package/dist/profiling/exporters.d.ts +1 -1
- package/dist/profiling/index.d.ts +9 -8
- package/dist/profiling/index.js +3 -2
- package/dist/profiling/types.d.ts +6 -0
- package/dist/schemas/audio-gen.d.ts +253 -0
- package/dist/schemas/audio-gen.js +69 -0
- package/dist/schemas/batch-completion-stream.d.ts +11 -6
- package/dist/schemas/bci-config.d.ts +2 -0
- package/dist/schemas/bci.d.ts +1 -1
- package/dist/schemas/cancel.d.ts +5 -0
- package/dist/schemas/cancel.js +1 -0
- package/dist/schemas/common.d.ts +1938 -58
- package/dist/schemas/common.js +9 -1
- package/dist/schemas/completion-event.d.ts +5 -2
- package/dist/schemas/completion-event.js +3 -0
- package/dist/schemas/completion-stream.d.ts +195 -3
- package/dist/schemas/completion-stream.js +72 -2
- package/dist/schemas/constants-registry.d.ts +69 -0
- package/dist/schemas/constants-registry.js +52 -0
- package/dist/schemas/delete-cache.js +7 -3
- package/dist/schemas/download-asset.d.ts +8 -4
- package/dist/schemas/engine-addon-map.d.ts +3 -1
- package/dist/schemas/engine-addon-map.js +6 -2
- package/dist/schemas/finetune.js +6 -3
- package/dist/schemas/get-loaded-model-info.d.ts +18 -0
- package/dist/schemas/get-loaded-model-info.js +14 -6
- package/dist/schemas/get-model-info.d.ts +2 -0
- package/dist/schemas/get-model-info.js +1 -0
- package/dist/schemas/index.d.ts +53 -51
- package/dist/schemas/index.js +4 -2
- package/dist/schemas/llamacpp-config.d.ts +30 -6
- package/dist/schemas/llamacpp-config.js +1 -6
- package/dist/schemas/load-model.d.ts +7654 -2919
- package/dist/schemas/load-model.js +45 -6
- package/dist/schemas/mcp-adapter.d.ts +1 -1
- package/dist/schemas/model-src-utils.d.ts +10 -2
- package/dist/schemas/model-types.d.ts +19 -1
- package/dist/schemas/model-types.js +11 -0
- package/dist/schemas/ocr.d.ts +2 -0
- package/dist/schemas/plugin.d.ts +17 -8
- package/dist/schemas/plugin.js +16 -6
- package/dist/schemas/profiling.d.ts +587 -0
- package/dist/schemas/profiling.js +22 -0
- package/dist/schemas/registry.d.ts +18 -0
- package/dist/schemas/registry.js +2 -0
- package/dist/schemas/reload-config.d.ts +10 -2
- package/dist/schemas/reload-config.js +3 -1
- package/dist/schemas/sdcpp-config.d.ts +296 -0
- package/dist/schemas/sdcpp-config.js +165 -17
- package/dist/schemas/sdk-config.d.ts +958 -40
- package/dist/schemas/sdk-errors-server.js +3 -1
- package/dist/schemas/system-resources.d.ts +3967 -0
- package/dist/schemas/system-resources.js +149 -0
- package/dist/schemas/text-to-speech.d.ts +340 -6
- package/dist/schemas/text-to-speech.js +136 -17
- package/dist/schemas/tools.d.ts +1 -1
- package/dist/schemas/tools.js +2 -1
- package/dist/schemas/transcription-config.d.ts +2 -0
- package/dist/schemas/translate.d.ts +2 -2
- package/dist/schemas/translate.js +12 -6
- package/dist/schemas/translation-config.d.ts +30 -10
- package/dist/schemas/vla.d.ts +10 -0
- package/dist/schemas/vla.js +31 -11
- package/dist/scripts/check-resource-collectors-packaging.d.ts +33 -0
- package/dist/scripts/check-resource-collectors-packaging.js +136 -0
- package/dist/scripts/contract/build-contract.d.ts +38 -0
- package/dist/scripts/contract/build-contract.js +620 -0
- package/dist/scripts/contract/build-error-codes.d.ts +17 -0
- package/dist/scripts/contract/build-error-codes.js +17 -0
- package/dist/scripts/contract/build-model-type-maps.d.ts +22 -0
- package/dist/scripts/contract/build-model-type-maps.js +16 -0
- package/dist/scripts/contract/build-models-registry.d.ts +17 -0
- package/dist/scripts/contract/build-models-registry.js +31 -0
- package/dist/scripts/contract/plugin-contract.d.ts +23 -0
- package/dist/scripts/contract/plugin-contract.js +28 -0
- package/dist/scripts/export-contract.d.ts +2 -0
- package/dist/scripts/export-contract.js +27 -0
- package/dist/scripts/export-plugin-contract.d.ts +2 -0
- package/dist/scripts/export-plugin-contract.js +18 -0
- package/dist/server/bare/delegate-rpc-client.d.ts +1 -1
- package/dist/server/bare/delegate-rpc-client.js +3 -3
- package/dist/server/bare/hyperswarm.d.ts +1 -1
- package/dist/server/bare/hyperswarm.js +2 -2
- package/dist/server/bare/ops/bci-transcribe.d.ts +1 -1
- package/dist/server/bare/ops/bci-transcribe.js +4 -4
- package/dist/server/bare/ops/cancel.d.ts +2 -2
- package/dist/server/bare/ops/cancel.js +2 -2
- package/dist/server/bare/ops/embed.d.ts +1 -1
- package/dist/server/bare/ops/embed.js +3 -3
- package/dist/server/bare/ops/kv-cache-retention.d.ts +12 -0
- package/dist/server/bare/ops/kv-cache-retention.js +121 -0
- package/dist/server/bare/ops/kv-cache-utils.d.ts +2 -1
- package/dist/server/bare/ops/kv-cache-utils.js +26 -5
- package/dist/server/bare/ops/load-model.d.ts +2 -2
- package/dist/server/bare/ops/load-model.js +7 -5
- package/dist/server/bare/ops/transcribe.d.ts +2 -2
- package/dist/server/bare/ops/transcribe.js +20 -40
- package/dist/server/bare/ops/translate.d.ts +1 -1
- package/dist/server/bare/ops/translate.js +21 -12
- package/dist/server/bare/ops/unload-model.d.ts +1 -1
- package/dist/server/bare/ops/unload-model.js +5 -5
- package/dist/server/bare/plugins/asr-ggml/config.d.ts +32 -0
- package/dist/server/bare/plugins/asr-ggml/config.js +46 -0
- package/dist/server/bare/plugins/asr-ggml/logging.d.ts +11 -0
- package/dist/server/bare/plugins/asr-ggml/logging.js +12 -0
- package/dist/server/bare/plugins/audiogen-ggml/config.d.ts +18 -0
- package/dist/server/bare/plugins/audiogen-ggml/config.js +23 -0
- package/dist/server/bare/plugins/audiogen-ggml/ops/audio-gen-stream.d.ts +3 -0
- package/dist/server/bare/plugins/audiogen-ggml/ops/audio-gen-stream.js +162 -0
- package/dist/server/bare/plugins/audiogen-ggml/plugin.d.ts +213 -0
- package/dist/server/bare/plugins/audiogen-ggml/plugin.js +58 -0
- package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.d.ts +8 -5
- package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.js +4 -4
- package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.d.ts +1 -1
- package/dist/server/bare/plugins/ggml-classification/ops/classify.d.ts +1 -1
- package/dist/server/bare/plugins/ggml-classification/ops/classify.js +1 -1
- package/dist/server/bare/plugins/ggml-classification/plugin.d.ts +2 -2
- package/dist/server/bare/plugins/ggml-classification/plugin.js +1 -1
- package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.d.ts +1 -1
- package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.js +2 -2
- package/dist/server/bare/plugins/ggml-ocr/plugin.d.ts +4 -2
- package/dist/server/bare/plugins/ggml-ocr/plugin.js +4 -25
- package/dist/server/bare/plugins/ggml-ocr/resolve-config.d.ts +6 -0
- package/dist/server/bare/plugins/ggml-ocr/resolve-config.js +73 -0
- package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.d.ts +1 -1
- package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.js +1 -1
- package/dist/server/bare/plugins/ggml-vla/ops/vla-run.d.ts +1 -1
- package/dist/server/bare/plugins/ggml-vla/ops/vla-run.js +1 -1
- package/dist/server/bare/plugins/ggml-vla/plugin.d.ts +8 -3
- package/dist/server/bare/plugins/ggml-vla/plugin.js +1 -1
- package/dist/server/bare/plugins/index.d.ts +12 -11
- package/dist/server/bare/plugins/index.js +1 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.d.ts +3 -3
- package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.js +5 -5
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.d.ts +11 -1
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.js +16 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.d.ts +3 -3
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.js +26 -35
- package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.d.ts +1 -1
- package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.js +3 -3
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.d.ts +20 -10
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.js +217 -80
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.d.ts +8 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.js +8 -0
- package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +20 -8
- package/dist/server/bare/plugins/llamacpp-completion/plugin.js +16 -16
- package/dist/server/bare/plugins/llamacpp-completion/transform.d.ts +1 -1
- package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +8 -3
- package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +5 -5
- package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +12 -2
- package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +3 -3
- package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.d.ts +1 -1
- package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +6 -6
- package/dist/server/bare/plugins/parakeet-transcription/plugin.js +13 -20
- package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.d.ts +1 -1
- package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.js +1 -1
- package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.d.ts +1 -1
- package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.js +1 -1
- package/dist/server/bare/plugins/sdcpp-generation/ops/video.d.ts +4 -1
- package/dist/server/bare/plugins/sdcpp-generation/ops/video.js +40 -5
- package/dist/server/bare/plugins/sdcpp-generation/plugin.d.ts +155 -5
- package/dist/server/bare/plugins/sdcpp-generation/plugin.js +109 -23
- package/dist/server/bare/plugins/tts-ggml/ops/parler-options.d.ts +7 -0
- package/dist/server/bare/plugins/tts-ggml/ops/parler-options.js +30 -0
- package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.d.ts +2 -2
- package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.js +8 -5
- package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.d.ts +2 -2
- package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.js +16 -22
- package/dist/server/bare/plugins/tts-ggml/plugin.d.ts +120 -5
- package/dist/server/bare/plugins/tts-ggml/plugin.js +63 -5
- package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +8 -6
- package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +17 -25
- package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/ingest.js +2 -2
- package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/reindex.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/search.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/handlers/search.js +2 -2
- package/dist/server/bare/rag-hyperdb/index.d.ts +11 -11
- package/dist/server/bare/rag-hyperdb/index.js +11 -11
- package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +1 -1
- package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +4 -4
- package/dist/server/bare/registry/config-registry.d.ts +1 -1
- package/dist/server/bare/registry/config-registry.js +1 -1
- package/dist/server/bare/registry/model-config-registry.d.ts +2 -2
- package/dist/server/bare/registry/model-config-registry.js +4 -4
- package/dist/server/bare/registry/model-config-utils.d.ts +1 -1
- package/dist/server/bare/registry/model-config-utils.js +3 -0
- package/dist/server/bare/registry/model-registry.d.ts +15 -4
- package/dist/server/bare/registry/registry-client.js +2 -2
- package/dist/server/bare/registry/runtime-context-registry.d.ts +1 -1
- package/dist/server/bare/resources/collector.d.ts +644 -0
- package/dist/server/bare/resources/collector.js +226 -0
- package/dist/server/bare/resources/native.d.ts +3 -0
- package/dist/server/bare/resources/native.js +35 -0
- package/dist/server/bare/resources/normalize.d.ts +13 -0
- package/dist/server/bare/resources/normalize.js +73 -0
- package/dist/server/bare/resources/types.d.ts +66 -0
- package/dist/server/bare/resources/types.js +1 -0
- package/dist/server/bare/resources/worker-collector.d.ts +5 -0
- package/dist/server/bare/resources/worker-collector.js +15 -0
- package/dist/server/bare/runtime/index.d.ts +7 -7
- package/dist/server/bare/runtime/index.js +3 -3
- package/dist/server/bare/runtime/request-context.d.ts +2 -2
- package/dist/server/bare/runtime/request-registry-singleton.d.ts +1 -1
- package/dist/server/bare/runtime/request-registry-singleton.js +11 -1
- package/dist/server/bare/runtime/request-registry.d.ts +2 -2
- package/dist/server/bare/runtime/request-registry.js +1 -1
- package/dist/server/bare/runtime/with-request-context.d.ts +1 -1
- package/dist/server/bare/runtime-lifecycle.d.ts +1 -1
- package/dist/server/bare/types/addon-responses.d.ts +8 -34
- package/dist/server/bare/utils/asr-events.d.ts +15 -0
- package/dist/server/bare/utils/asr-events.js +30 -0
- package/dist/server/bare/utils/audio-input.d.ts +1 -1
- package/dist/server/bare/utils/audio-input.js +1 -1
- package/dist/server/bare/utils/transcribe-metadata.d.ts +1 -1
- package/dist/server/bare/utils/tts-stats.d.ts +9 -5
- package/dist/server/bare/utils/tts-stats.js +6 -0
- package/dist/server/error-handlers.d.ts +1 -1
- package/dist/server/plugins/index.d.ts +1 -1
- package/dist/server/plugins/registry.d.ts +1 -1
- package/dist/server/plugins/registry.js +35 -8
- package/dist/server/rpc/create-server.js +23 -1
- package/dist/server/rpc/delegate-transport.d.ts +2 -2
- package/dist/server/rpc/delegate-transport.js +5 -10
- package/dist/server/rpc/handle-request.js +3 -3
- package/dist/server/rpc/handler-registry.d.ts +1 -1
- package/dist/server/rpc/handler-registry.js +45 -36
- package/dist/server/rpc/handler-selection.d.ts +2 -2
- package/dist/server/rpc/handler-utils.d.ts +2 -2
- package/dist/server/rpc/handler-utils.js +5 -5
- package/dist/server/rpc/handlers/audio-gen-stream.d.ts +3 -0
- package/dist/server/rpc/handlers/audio-gen-stream.js +4 -0
- package/dist/server/rpc/handlers/batch-completion-stream.d.ts +3 -1
- package/dist/server/rpc/handlers/batch-completion-stream.js +1 -1
- package/dist/server/rpc/handlers/bci-transcribe-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/bci-transcribe-stream.js +1 -1
- package/dist/server/rpc/handlers/bci-transcribe.d.ts +1 -1
- package/dist/server/rpc/handlers/bci-transcribe.js +1 -1
- package/dist/server/rpc/handlers/cancel-delegated.d.ts +2 -2
- package/dist/server/rpc/handlers/cancel-delegated.js +3 -3
- package/dist/server/rpc/handlers/cancelHandler.d.ts +1 -1
- package/dist/server/rpc/handlers/cancelHandler.js +3 -3
- package/dist/server/rpc/handlers/classify.d.ts +1 -1
- package/dist/server/rpc/handlers/classify.js +1 -1
- package/dist/server/rpc/handlers/completion-orchestrate.d.ts +42 -0
- package/dist/server/rpc/handlers/completion-orchestrate.js +190 -0
- package/dist/server/rpc/handlers/completion-stream-delegated.d.ts +2 -2
- package/dist/server/rpc/handlers/completion-stream-delegated.js +3 -3
- package/dist/server/rpc/handlers/completion-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/completion-stream.js +1 -1
- package/dist/server/rpc/handlers/delete-cache.d.ts +1 -1
- package/dist/server/rpc/handlers/delete-cache.js +1 -1
- package/dist/server/rpc/handlers/diffusion-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/diffusion-stream.js +1 -1
- package/dist/server/rpc/handlers/download-asset.d.ts +1 -1
- package/dist/server/rpc/handlers/download-asset.js +4 -4
- package/dist/server/rpc/handlers/embed.d.ts +1 -1
- package/dist/server/rpc/handlers/embed.js +1 -1
- package/dist/server/rpc/handlers/finetune.d.ts +1 -1
- package/dist/server/rpc/handlers/finetune.js +2 -2
- package/dist/server/rpc/handlers/get-loaded-model-info.d.ts +1 -1
- package/dist/server/rpc/handlers/get-loaded-model-info.js +10 -4
- package/dist/server/rpc/handlers/get-model-info.d.ts +1 -1
- package/dist/server/rpc/handlers/get-model-info.js +4 -4
- package/dist/server/rpc/handlers/get-system-resources.d.ts +3 -0
- package/dist/server/rpc/handlers/get-system-resources.js +53 -0
- package/dist/server/rpc/handlers/heartbeat-delegated.d.ts +2 -2
- package/dist/server/rpc/handlers/heartbeat-delegated.js +2 -2
- package/dist/server/rpc/handlers/heartbeat.d.ts +1 -1
- package/dist/server/rpc/handlers/index.d.ts +38 -32
- package/dist/server/rpc/handlers/index.js +6 -0
- package/dist/server/rpc/handlers/load-model/download-manager.d.ts +3 -3
- package/dist/server/rpc/handlers/load-model/download-manager.js +1 -1
- package/dist/server/rpc/handlers/load-model/download-stats.d.ts +3 -3
- package/dist/server/rpc/handlers/load-model/handler.d.ts +1 -1
- package/dist/server/rpc/handlers/load-model/handler.js +12 -8
- package/dist/server/rpc/handlers/load-model/http.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model/http.js +4 -4
- package/dist/server/rpc/handlers/load-model/hyperdrive.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model/hyperdrive.js +5 -5
- package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model/registry-client-options.d.ts +1 -1
- package/dist/server/rpc/handlers/load-model/registry-companion-set.d.ts +3 -3
- package/dist/server/rpc/handlers/load-model/registry-companion-set.js +3 -3
- package/dist/server/rpc/handlers/load-model/registry-download-utils.d.ts +4 -4
- package/dist/server/rpc/handlers/load-model/registry-download-utils.js +3 -3
- package/dist/server/rpc/handlers/load-model/registry-metadata.d.ts +1 -1
- package/dist/server/rpc/handlers/load-model/registry.d.ts +3 -3
- package/dist/server/rpc/handlers/load-model/registry.js +6 -6
- package/dist/server/rpc/handlers/load-model/resolve-session.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model/resolve-session.js +3 -3
- package/dist/server/rpc/handlers/load-model/resolve.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model/resolve.js +2 -2
- package/dist/server/rpc/handlers/load-model/types.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -2
- package/dist/server/rpc/handlers/load-model-delegated.js +3 -3
- package/dist/server/rpc/handlers/logging-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/logging-stream.js +1 -1
- package/dist/server/rpc/handlers/ocr-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/ocr-stream.js +1 -1
- package/dist/server/rpc/handlers/plugin-dispatch.js +3 -3
- package/dist/server/rpc/handlers/plugin-invoke.d.ts +1 -1
- package/dist/server/rpc/handlers/plugin-invoke.js +3 -3
- package/dist/server/rpc/handlers/provideHandler/connection.js +1 -1
- package/dist/server/rpc/handlers/provideHandler/handler.d.ts +1 -1
- package/dist/server/rpc/handlers/provideHandler/handler.js +1 -1
- package/dist/server/rpc/handlers/provideHandler/proxy.js +1 -1
- package/dist/server/rpc/handlers/provideHandler.d.ts +1 -1
- package/dist/server/rpc/handlers/rag.d.ts +1 -1
- package/dist/server/rpc/handlers/rag.js +4 -4
- package/dist/server/rpc/handlers/registry.d.ts +1 -1
- package/dist/server/rpc/handlers/registry.js +1 -1
- package/dist/server/rpc/handlers/resume.d.ts +1 -1
- package/dist/server/rpc/handlers/resume.js +1 -1
- package/dist/server/rpc/handlers/state.d.ts +1 -1
- package/dist/server/rpc/handlers/state.js +1 -1
- package/dist/server/rpc/handlers/stopProvideHandler.d.ts +1 -1
- package/dist/server/rpc/handlers/stopProvideHandler.js +1 -1
- package/dist/server/rpc/handlers/suspend.d.ts +1 -1
- package/dist/server/rpc/handlers/suspend.js +1 -1
- package/dist/server/rpc/handlers/text-to-speech-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/text-to-speech-stream.js +1 -1
- package/dist/server/rpc/handlers/text-to-speech.d.ts +1 -1
- package/dist/server/rpc/handlers/text-to-speech.js +1 -1
- package/dist/server/rpc/handlers/transcribe-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/transcribe-stream.js +1 -1
- package/dist/server/rpc/handlers/transcribe.d.ts +1 -1
- package/dist/server/rpc/handlers/transcribe.js +1 -1
- package/dist/server/rpc/handlers/translate.d.ts +1 -1
- package/dist/server/rpc/handlers/translate.js +1 -1
- package/dist/server/rpc/handlers/unload-model-delegated.d.ts +1 -1
- package/dist/server/rpc/handlers/unload-model-delegated.js +5 -5
- package/dist/server/rpc/handlers/unload-model.d.ts +1 -1
- package/dist/server/rpc/handlers/unload-model.js +3 -3
- package/dist/server/rpc/handlers/upscale-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/upscale-stream.js +1 -1
- package/dist/server/rpc/handlers/video-stream.d.ts +1 -1
- package/dist/server/rpc/handlers/video-stream.js +1 -1
- package/dist/server/rpc/index.d.ts +2 -2
- package/dist/server/rpc/method-shapes.d.ts +53 -0
- package/dist/server/rpc/method-shapes.js +50 -0
- package/dist/server/rpc/profiling/backend-diagnostics.d.ts +3 -0
- package/dist/server/rpc/profiling/backend-diagnostics.js +16 -0
- package/dist/server/rpc/profiling/context.d.ts +1 -1
- package/dist/server/rpc/profiling/delegation-profiler.d.ts +2 -2
- package/dist/server/rpc/profiling/index.d.ts +4 -4
- package/dist/server/rpc/profiling/operation-metrics.d.ts +2 -2
- package/dist/server/rpc/profiling/operation-metrics.js +29 -1
- package/dist/server/rpc/profiling/operation-wrappers.d.ts +1 -1
- package/dist/server/rpc/profiling/operation-wrappers.js +51 -13
- package/dist/server/rpc/profiling/profiler.d.ts +2 -2
- package/dist/server/rpc/transport-selector.d.ts +1 -1
- package/dist/server/utils/archive.js +1 -1
- package/dist/server/utils/audio/decoder.d.ts +1 -1
- package/dist/server/utils/audio/decoder.js +1 -1
- package/dist/server/utils/cache/auto-history.d.ts +1 -1
- package/dist/server/utils/cache/auto-history.js +13 -9
- package/dist/server/utils/cache/paths.d.ts +1 -1
- package/dist/server/utils/cache/paths.js +6 -6
- package/dist/server/utils/checksum.d.ts +1 -1
- package/dist/server/utils/completion-normalizer.d.ts +2 -1
- package/dist/server/utils/completion-normalizer.js +31 -1
- package/dist/server/utils/config-transform.d.ts +1 -1
- package/dist/server/utils/config-transform.js +5 -7
- package/dist/server/utils/index.d.ts +11 -11
- package/dist/server/utils/path-security.d.ts +1 -1
- package/dist/server/utils/qvac-paths.js +1 -1
- package/dist/server/utils/response-format.d.ts +1 -1
- package/dist/server/utils/shard-utils.d.ts +1 -1
- package/dist/server/utils/tool-integration.d.ts +1 -1
- package/dist/server/utils/tool-integration.js +2 -2
- package/dist/server/utils/tools/dialect.d.ts +1 -1
- package/dist/server/utils/tools/dialect.js +2 -0
- package/dist/server/utils/tools/index.d.ts +2 -2
- package/dist/server/utils/tools/parser.d.ts +1 -1
- package/dist/server/utils/tools/parser.js +16 -8
- package/dist/server/utils/tools/parsers/dsml.d.ts +4 -0
- package/dist/server/utils/tools/parsers/dsml.js +176 -0
- package/dist/server/utils/tools/parsers/gemma4native.d.ts +2 -2
- package/dist/server/utils/tools/parsers/gemma4native.js +1 -1
- package/dist/server/utils/tools/parsers/harmony.d.ts +2 -2
- package/dist/server/utils/tools/parsers/harmony.js +1 -1
- package/dist/server/utils/tools/parsers/hermes.d.ts +2 -2
- package/dist/server/utils/tools/parsers/hermes.js +1 -1
- package/dist/server/utils/tools/parsers/json.d.ts +2 -2
- package/dist/server/utils/tools/parsers/json.js +1 -1
- package/dist/server/utils/tools/parsers/pythonic.d.ts +2 -2
- package/dist/server/utils/tools/parsers/pythonic.js +1 -1
- package/dist/server/utils/tools/parsers/qwen35.d.ts +2 -2
- package/dist/server/utils/tools/parsers/qwen35.js +1 -1
- package/dist/server/utils/tools/shared.d.ts +1 -1
- package/dist/server/utils/worker-lock.js +1 -1
- package/dist/server/worker-core.js +14 -10
- package/dist/server/worker.js +4 -3
- package/dist/utils/aggregate-events.d.ts +2 -2
- package/dist/utils/aggregate-events.js +2 -2
- package/dist/utils/errors-client.d.ts +0 -3
- package/dist/utils/errors-client.js +0 -5
- package/dist/utils/errors-server.d.ts +1 -1
- package/dist/utils/mcp-adapter.d.ts +4 -4
- package/dist/utils/mcp-adapter.js +1 -1
- package/dist/utils/tool-helpers.d.ts +1 -1
- package/dist/utils/tool-helpers.js +1 -1
- package/docs/system-resources-support-matrix.md +103 -0
- package/package.json +37 -19
- /package/dist/examples/{transcription → asr}/parakeet-ctc-filesystem.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/parakeet-microphone-record.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/parakeet-microphone-stream.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/parakeet-sortformer-streaming.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/parakeet-sortformer.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/parakeet-tdt-filesystem.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/whispercpp-filesystem-streaming.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/whispercpp-filesystem.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/whispercpp-microphone-conversation.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/whispercpp-microphone-record.d.ts +0 -0
- /package/dist/examples/{transcription → asr}/whispercpp-prompt.d.ts +0 -0
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { failedMetric, normalizeBooleanMetric, normalizeEnumMetric, normalizeNonNegativeIntegerMetric, normalizeNonNegativeMetric, normalizePositiveIntegerMetric, normalizeStringMetric, normalizeUtilizationMetric, unavailableMetric, unverifiedMetric } from '../../../server/bare/resources/normalize.js';
|
|
2
|
+
const CPU_SOURCE = 'bare-cpu-info';
|
|
3
|
+
const GPU_SOURCE = 'bare-gpu-info';
|
|
4
|
+
const GPU_MEMORY_SCOPE_REASON = 'GPU memory scope is unverified';
|
|
5
|
+
const cpuSystemProvenance = {
|
|
6
|
+
source: CPU_SOURCE,
|
|
7
|
+
scope: 'system'
|
|
8
|
+
};
|
|
9
|
+
const cpuProvenance = {
|
|
10
|
+
source: CPU_SOURCE
|
|
11
|
+
};
|
|
12
|
+
const gpuDeviceProvenance = {
|
|
13
|
+
source: GPU_SOURCE,
|
|
14
|
+
scope: 'device'
|
|
15
|
+
};
|
|
16
|
+
const gpuProvenance = {
|
|
17
|
+
source: GPU_SOURCE
|
|
18
|
+
};
|
|
19
|
+
function supportedMetric(value, provenance) {
|
|
20
|
+
return { status: 'supported', value, provenance };
|
|
21
|
+
}
|
|
22
|
+
function normalizeAmbiguousNonNegativeMetric(value, reason) {
|
|
23
|
+
if (value === undefined || value === null)
|
|
24
|
+
return unavailableMetric();
|
|
25
|
+
const normalized = normalizeNonNegativeMetric(value, gpuDeviceProvenance);
|
|
26
|
+
if (normalized.status !== 'supported')
|
|
27
|
+
return normalized;
|
|
28
|
+
return unverifiedMetric(reason);
|
|
29
|
+
}
|
|
30
|
+
function normalizeDriverCapabilities(drivers) {
|
|
31
|
+
return {
|
|
32
|
+
vulkan: normalizeBooleanMetric(drivers.vulkan, gpuProvenance),
|
|
33
|
+
opencl: normalizeBooleanMetric(drivers.opencl, gpuProvenance),
|
|
34
|
+
opengl: normalizeBooleanMetric(drivers.opengl, gpuProvenance),
|
|
35
|
+
webgpu: normalizeBooleanMetric(drivers.webgpu, gpuProvenance),
|
|
36
|
+
metal: normalizeBooleanMetric(drivers.metal, gpuProvenance),
|
|
37
|
+
direct3d11: normalizeBooleanMetric(drivers.direct3d11, gpuProvenance),
|
|
38
|
+
direct3d12: normalizeBooleanMetric(drivers.direct3d12, gpuProvenance),
|
|
39
|
+
cuda: normalizeBooleanMetric(drivers.cuda, gpuProvenance),
|
|
40
|
+
levelZero: normalizeBooleanMetric(drivers.levelZero, gpuProvenance),
|
|
41
|
+
rocm: normalizeBooleanMetric(drivers.rocm, gpuProvenance)
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
function normalizeCPUCapabilities(cpu, architectures) {
|
|
45
|
+
return {
|
|
46
|
+
name: normalizeStringMetric(cpu.name, cpuProvenance),
|
|
47
|
+
vendor: normalizeStringMetric(cpu.vendor, cpuProvenance),
|
|
48
|
+
architecture: normalizeEnumMetric(cpu.arch, architectures, cpuProvenance),
|
|
49
|
+
physicalCores: normalizePositiveIntegerMetric(cpu.physicalCores, cpuProvenance),
|
|
50
|
+
logicalCores: normalizePositiveIntegerMetric(cpu.logicalCores, cpuProvenance),
|
|
51
|
+
performanceCores: normalizeNonNegativeIntegerMetric(cpu.performanceCores, cpuProvenance),
|
|
52
|
+
efficiencyCores: normalizeNonNegativeIntegerMetric(cpu.efficiencyCores, cpuProvenance),
|
|
53
|
+
frequencyHz: normalizePositiveIntegerMetric(cpu.frequency, cpuProvenance),
|
|
54
|
+
cacheLineBytes: normalizePositiveIntegerMetric(cpu.cacheLine, cpuProvenance)
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function normalizeGPUCapabilities(gpu, id, gpuTypes) {
|
|
58
|
+
return {
|
|
59
|
+
id,
|
|
60
|
+
name: normalizeStringMetric(gpu.name, gpuDeviceProvenance),
|
|
61
|
+
vendor: normalizeStringMetric(gpu.vendor, gpuDeviceProvenance),
|
|
62
|
+
type: normalizeEnumMetric(gpu.type, gpuTypes, gpuDeviceProvenance),
|
|
63
|
+
driverName: normalizeStringMetric(gpu.driverName, gpuDeviceProvenance),
|
|
64
|
+
driverVersion: normalizeStringMetric(gpu.driverVersion, gpuDeviceProvenance),
|
|
65
|
+
drivers: normalizeDriverCapabilities(gpu.drivers),
|
|
66
|
+
unifiedMemory: normalizeBooleanMetric(gpu.unifiedMemory, gpuDeviceProvenance),
|
|
67
|
+
memoryTotalBytes: normalizeAmbiguousNonNegativeMetric(gpu.memory, GPU_MEMORY_SCOPE_REASON)
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function failedCPUSample(reason) {
|
|
71
|
+
const failure = failedMetric(reason);
|
|
72
|
+
return {
|
|
73
|
+
cpu: failure,
|
|
74
|
+
memory: {
|
|
75
|
+
usedBytes: failure,
|
|
76
|
+
totalBytes: failure
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
function failedGPUSample(id, reason) {
|
|
81
|
+
return {
|
|
82
|
+
id,
|
|
83
|
+
compute: failedMetric(reason),
|
|
84
|
+
encode: failedMetric(reason),
|
|
85
|
+
decode: failedMetric(reason),
|
|
86
|
+
memoryUsedBytes: failedMetric(reason),
|
|
87
|
+
memoryTotalBytes: failedMetric(reason),
|
|
88
|
+
powerWatts: failedMetric(reason),
|
|
89
|
+
temperatureCelsius: failedMetric(reason)
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function normalizeGPUSample(id, usage) {
|
|
93
|
+
return {
|
|
94
|
+
id,
|
|
95
|
+
compute: normalizeUtilizationMetric(usage.compute, gpuDeviceProvenance),
|
|
96
|
+
encode: normalizeUtilizationMetric(usage.encode, gpuDeviceProvenance),
|
|
97
|
+
decode: normalizeUtilizationMetric(usage.decode, gpuDeviceProvenance),
|
|
98
|
+
memoryUsedBytes: normalizeAmbiguousNonNegativeMetric(usage.memoryUsed, 'GPU memory usage scope is unverified'),
|
|
99
|
+
memoryTotalBytes: normalizeAmbiguousNonNegativeMetric(usage.memoryTotal, GPU_MEMORY_SCOPE_REASON),
|
|
100
|
+
powerWatts: normalizeNonNegativeMetric(usage.power, gpuDeviceProvenance),
|
|
101
|
+
temperatureCelsius: normalizeNonNegativeMetric(usage.temperature, gpuDeviceProvenance)
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function destroyContext(context) {
|
|
105
|
+
try {
|
|
106
|
+
context?.destroy();
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// Teardown must continue so every native context gets a release attempt.
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
export function createSystemResourceCollector(dependencies) {
|
|
113
|
+
let cpuContext;
|
|
114
|
+
let gpuContext;
|
|
115
|
+
let gpuIds = [];
|
|
116
|
+
let destroyed = false;
|
|
117
|
+
let cpuCapabilities;
|
|
118
|
+
let memoryCapabilities;
|
|
119
|
+
let gpuCapabilities;
|
|
120
|
+
try {
|
|
121
|
+
const context = dependencies.createCPUInfo();
|
|
122
|
+
if (!context) {
|
|
123
|
+
cpuCapabilities = failedMetric('CPU collector module is unavailable');
|
|
124
|
+
memoryCapabilities = {
|
|
125
|
+
totalBytes: failedMetric('CPU collector module is unavailable')
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
cpuContext = context;
|
|
130
|
+
const cpu = context.query();
|
|
131
|
+
cpuCapabilities = supportedMetric(normalizeCPUCapabilities(cpu, dependencies.cpuArchitectures), cpuProvenance);
|
|
132
|
+
memoryCapabilities = {
|
|
133
|
+
totalBytes: normalizePositiveIntegerMetric(cpu.memory, cpuSystemProvenance)
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
catch {
|
|
138
|
+
cpuCapabilities = failedMetric('CPU collector initialization failed');
|
|
139
|
+
memoryCapabilities = {
|
|
140
|
+
totalBytes: failedMetric('CPU collector initialization failed')
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
try {
|
|
144
|
+
const context = dependencies.createGPUInfo();
|
|
145
|
+
if (!context) {
|
|
146
|
+
gpuCapabilities = failedMetric('GPU collector module is unavailable');
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
gpuContext = context;
|
|
150
|
+
const gpus = context.gpus();
|
|
151
|
+
const normalized = gpus.map((gpu) => normalizeGPUCapabilities(gpu, dependencies.createGPUId(), dependencies.gpuTypes));
|
|
152
|
+
gpuIds = normalized.map((gpu) => gpu.id);
|
|
153
|
+
gpuCapabilities = supportedMetric(normalized, gpuProvenance);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
gpuCapabilities = failedMetric('GPU collector initialization failed');
|
|
158
|
+
}
|
|
159
|
+
const capabilities = {
|
|
160
|
+
cpu: cpuCapabilities,
|
|
161
|
+
memory: memoryCapabilities,
|
|
162
|
+
gpus: gpuCapabilities
|
|
163
|
+
};
|
|
164
|
+
function getCapabilities() {
|
|
165
|
+
return capabilities;
|
|
166
|
+
}
|
|
167
|
+
function sampleCPU() {
|
|
168
|
+
if (!cpuContext) {
|
|
169
|
+
return failedCPUSample('CPU collector is unavailable');
|
|
170
|
+
}
|
|
171
|
+
try {
|
|
172
|
+
const usage = cpuContext.sample();
|
|
173
|
+
return {
|
|
174
|
+
cpu: normalizeUtilizationMetric(usage.compute, cpuSystemProvenance),
|
|
175
|
+
memory: {
|
|
176
|
+
usedBytes: normalizeNonNegativeIntegerMetric(usage.memoryUsed, cpuSystemProvenance),
|
|
177
|
+
totalBytes: normalizePositiveIntegerMetric(usage.memoryTotal, cpuSystemProvenance)
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
catch {
|
|
182
|
+
return failedCPUSample('CPU resource sampling failed');
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
function sampleGPUs() {
|
|
186
|
+
if (!gpuContext)
|
|
187
|
+
return failedMetric('GPU collector is unavailable');
|
|
188
|
+
if (gpuCapabilities.status !== 'supported') {
|
|
189
|
+
return failedMetric('GPU inventory is unavailable');
|
|
190
|
+
}
|
|
191
|
+
const context = gpuContext;
|
|
192
|
+
const samples = gpuIds.map((id, index) => {
|
|
193
|
+
try {
|
|
194
|
+
return normalizeGPUSample(id, context.sample(index));
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
return failedGPUSample(id, 'GPU resource sampling failed');
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
return supportedMetric(samples, gpuProvenance);
|
|
201
|
+
}
|
|
202
|
+
function sample() {
|
|
203
|
+
const cpuSample = sampleCPU();
|
|
204
|
+
return {
|
|
205
|
+
sampledAt: dependencies.now(),
|
|
206
|
+
cpu: cpuSample.cpu,
|
|
207
|
+
memory: cpuSample.memory,
|
|
208
|
+
gpus: sampleGPUs()
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
function destroy() {
|
|
212
|
+
if (destroyed)
|
|
213
|
+
return;
|
|
214
|
+
destroyed = true;
|
|
215
|
+
destroyContext(cpuContext);
|
|
216
|
+
destroyContext(gpuContext);
|
|
217
|
+
cpuContext = undefined;
|
|
218
|
+
gpuContext = undefined;
|
|
219
|
+
gpuIds = [];
|
|
220
|
+
}
|
|
221
|
+
return {
|
|
222
|
+
getCapabilities,
|
|
223
|
+
sample,
|
|
224
|
+
destroy
|
|
225
|
+
};
|
|
226
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { randomUUID } from 'bare-crypto';
|
|
2
|
+
// Load independently so one unavailable native addon cannot disable the other collector.
|
|
3
|
+
const [cpuModule, gpuModule] = await Promise.allSettled([
|
|
4
|
+
import('bare-cpu-info'),
|
|
5
|
+
import('bare-gpu-info')
|
|
6
|
+
]);
|
|
7
|
+
function supportedEnumValues(values, unknownValue) {
|
|
8
|
+
return Object.values(values).filter((value) => value !== unknownValue);
|
|
9
|
+
}
|
|
10
|
+
const cpuArchitectures = cpuModule.status === 'fulfilled'
|
|
11
|
+
? supportedEnumValues(cpuModule.value.default.constants.arch, cpuModule.value.default.constants.arch.UNKNOWN)
|
|
12
|
+
: [];
|
|
13
|
+
const gpuTypes = gpuModule.status === 'fulfilled'
|
|
14
|
+
? supportedEnumValues(gpuModule.value.default.constants.gpuType, gpuModule.value.default.constants.gpuType.UNKNOWN)
|
|
15
|
+
: [];
|
|
16
|
+
export const nativeResourceCollectorDependencies = {
|
|
17
|
+
cpuArchitectures,
|
|
18
|
+
gpuTypes,
|
|
19
|
+
createCPUInfo() {
|
|
20
|
+
if (cpuModule.status !== 'fulfilled')
|
|
21
|
+
return undefined;
|
|
22
|
+
return new cpuModule.value.default();
|
|
23
|
+
},
|
|
24
|
+
createGPUInfo() {
|
|
25
|
+
if (gpuModule.status !== 'fulfilled')
|
|
26
|
+
return undefined;
|
|
27
|
+
return new gpuModule.value.default();
|
|
28
|
+
},
|
|
29
|
+
createGPUId() {
|
|
30
|
+
return randomUUID();
|
|
31
|
+
},
|
|
32
|
+
now() {
|
|
33
|
+
return Date.now();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ResourceMetric, ResourceProvenance } from '../../../server/bare/resources/types.js';
|
|
2
|
+
export declare function unavailableMetric<T>(reason?: string): ResourceMetric<T>;
|
|
3
|
+
export declare function unverifiedMetric<T>(reason?: string): ResourceMetric<T>;
|
|
4
|
+
export declare function failedMetric<T>(reason: string): ResourceMetric<T>;
|
|
5
|
+
export declare function normalizeNonNegativeMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<number>;
|
|
6
|
+
export declare function normalizePositiveMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<number>;
|
|
7
|
+
export declare function normalizeNonNegativeIntegerMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<number>;
|
|
8
|
+
export declare function normalizePositiveIntegerMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<number>;
|
|
9
|
+
export declare function normalizeUtilizationMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<number>;
|
|
10
|
+
export declare function normalizeEnumMetric(value: unknown, allowedValues: readonly number[], provenance: ResourceProvenance): ResourceMetric<number>;
|
|
11
|
+
export declare function normalizeStringMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<string>;
|
|
12
|
+
export declare function normalizeBooleanMetric(value: unknown, provenance: ResourceProvenance): ResourceMetric<boolean>;
|
|
13
|
+
//# sourceMappingURL=normalize.d.ts.map
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
const UNAVAILABLE_REASON = 'Metric is unavailable';
|
|
2
|
+
const UNVERIFIED_REASON = 'Metric value could not be verified';
|
|
3
|
+
export function unavailableMetric(reason = UNAVAILABLE_REASON) {
|
|
4
|
+
return { status: 'unavailable', reason };
|
|
5
|
+
}
|
|
6
|
+
export function unverifiedMetric(reason = UNVERIFIED_REASON) {
|
|
7
|
+
return { status: 'unverified', reason };
|
|
8
|
+
}
|
|
9
|
+
export function failedMetric(reason) {
|
|
10
|
+
return { status: 'failed', reason };
|
|
11
|
+
}
|
|
12
|
+
export function normalizeNonNegativeMetric(value, provenance) {
|
|
13
|
+
if (value === undefined || value === null)
|
|
14
|
+
return unavailableMetric();
|
|
15
|
+
if (typeof value !== 'number' || !Number.isFinite(value) || value < 0) {
|
|
16
|
+
return unverifiedMetric();
|
|
17
|
+
}
|
|
18
|
+
return { status: 'supported', value, provenance };
|
|
19
|
+
}
|
|
20
|
+
export function normalizePositiveMetric(value, provenance) {
|
|
21
|
+
const metric = normalizeNonNegativeMetric(value, provenance);
|
|
22
|
+
if (metric.status !== 'supported')
|
|
23
|
+
return metric;
|
|
24
|
+
if (metric.value === 0)
|
|
25
|
+
return unverifiedMetric();
|
|
26
|
+
return metric;
|
|
27
|
+
}
|
|
28
|
+
export function normalizeNonNegativeIntegerMetric(value, provenance) {
|
|
29
|
+
const metric = normalizeNonNegativeMetric(value, provenance);
|
|
30
|
+
if (metric.status !== 'supported')
|
|
31
|
+
return metric;
|
|
32
|
+
if (!Number.isInteger(metric.value))
|
|
33
|
+
return unverifiedMetric();
|
|
34
|
+
return metric;
|
|
35
|
+
}
|
|
36
|
+
export function normalizePositiveIntegerMetric(value, provenance) {
|
|
37
|
+
const metric = normalizePositiveMetric(value, provenance);
|
|
38
|
+
if (metric.status !== 'supported')
|
|
39
|
+
return metric;
|
|
40
|
+
if (!Number.isInteger(metric.value))
|
|
41
|
+
return unverifiedMetric();
|
|
42
|
+
return metric;
|
|
43
|
+
}
|
|
44
|
+
export function normalizeUtilizationMetric(value, provenance) {
|
|
45
|
+
const metric = normalizeNonNegativeMetric(value, provenance);
|
|
46
|
+
if (metric.status !== 'supported')
|
|
47
|
+
return metric;
|
|
48
|
+
if (metric.value > 1)
|
|
49
|
+
return unverifiedMetric();
|
|
50
|
+
return metric;
|
|
51
|
+
}
|
|
52
|
+
export function normalizeEnumMetric(value, allowedValues, provenance) {
|
|
53
|
+
if (value === undefined || value === null)
|
|
54
|
+
return unavailableMetric();
|
|
55
|
+
if (typeof value !== 'number' || !Number.isInteger(value) || !allowedValues.includes(value)) {
|
|
56
|
+
return unverifiedMetric();
|
|
57
|
+
}
|
|
58
|
+
return { status: 'supported', value, provenance };
|
|
59
|
+
}
|
|
60
|
+
export function normalizeStringMetric(value, provenance) {
|
|
61
|
+
if (value === undefined || value === null)
|
|
62
|
+
return unavailableMetric();
|
|
63
|
+
if (typeof value !== 'string' || value.length === 0)
|
|
64
|
+
return unverifiedMetric();
|
|
65
|
+
return { status: 'supported', value, provenance };
|
|
66
|
+
}
|
|
67
|
+
export function normalizeBooleanMetric(value, provenance) {
|
|
68
|
+
if (value === undefined || value === null)
|
|
69
|
+
return unavailableMetric();
|
|
70
|
+
if (typeof value !== 'boolean')
|
|
71
|
+
return unverifiedMetric();
|
|
72
|
+
return { status: 'supported', value, provenance };
|
|
73
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { GraphicsDriver, SystemResourceCapabilities, SystemResourceSample } from '../../../schemas/system-resources.js';
|
|
2
|
+
export type { CPUResourceCapabilities, GPUResourceCapabilities, GPUResourceSample, GraphicsDriver, GraphicsDriverCapabilities, ResourceMetric, ResourceProvenance, ResourceScope, SystemResourceCapabilities, SystemResourceSample } from '../../../schemas/system-resources.js';
|
|
3
|
+
export interface NativeCPUCapabilities {
|
|
4
|
+
name: string | null;
|
|
5
|
+
vendor: string | null;
|
|
6
|
+
arch: number;
|
|
7
|
+
physicalCores: number;
|
|
8
|
+
logicalCores: number;
|
|
9
|
+
performanceCores: number;
|
|
10
|
+
efficiencyCores: number;
|
|
11
|
+
frequency: number | undefined;
|
|
12
|
+
cacheLine: number | undefined;
|
|
13
|
+
memory: number | undefined;
|
|
14
|
+
}
|
|
15
|
+
export interface NativeCPUUsage {
|
|
16
|
+
compute: number | undefined;
|
|
17
|
+
memoryUsed: number | undefined;
|
|
18
|
+
memoryTotal: number | undefined;
|
|
19
|
+
}
|
|
20
|
+
export interface CPUInfoContext {
|
|
21
|
+
query(): NativeCPUCapabilities;
|
|
22
|
+
sample(): NativeCPUUsage;
|
|
23
|
+
destroy(): void;
|
|
24
|
+
}
|
|
25
|
+
export interface NativeGPUCapabilities {
|
|
26
|
+
name: string | null;
|
|
27
|
+
vendor: string | null;
|
|
28
|
+
driverName: string | null;
|
|
29
|
+
driverVersion: string | null;
|
|
30
|
+
type: number;
|
|
31
|
+
drivers: Record<GraphicsDriver, boolean>;
|
|
32
|
+
vendorId: number | undefined;
|
|
33
|
+
deviceId: number | undefined;
|
|
34
|
+
subsystemId: number | undefined;
|
|
35
|
+
revision: number;
|
|
36
|
+
unifiedMemory: boolean;
|
|
37
|
+
memory: number | undefined;
|
|
38
|
+
}
|
|
39
|
+
export interface NativeGPUUsage {
|
|
40
|
+
compute: number | undefined;
|
|
41
|
+
encode: number | undefined;
|
|
42
|
+
decode: number | undefined;
|
|
43
|
+
memoryUsed: number | undefined;
|
|
44
|
+
memoryTotal: number | undefined;
|
|
45
|
+
power: number | undefined;
|
|
46
|
+
temperature: number | undefined;
|
|
47
|
+
}
|
|
48
|
+
export interface GPUInfoContext {
|
|
49
|
+
gpus(): NativeGPUCapabilities[];
|
|
50
|
+
sample(index: number): NativeGPUUsage;
|
|
51
|
+
destroy(): void;
|
|
52
|
+
}
|
|
53
|
+
export interface ResourceCollectorDependencies {
|
|
54
|
+
cpuArchitectures: readonly number[];
|
|
55
|
+
gpuTypes: readonly number[];
|
|
56
|
+
createCPUInfo(): CPUInfoContext | undefined;
|
|
57
|
+
createGPUInfo(): GPUInfoContext | undefined;
|
|
58
|
+
createGPUId(): string;
|
|
59
|
+
now(): number;
|
|
60
|
+
}
|
|
61
|
+
export interface SystemResourceCollector {
|
|
62
|
+
getCapabilities(): SystemResourceCapabilities;
|
|
63
|
+
sample(): SystemResourceSample;
|
|
64
|
+
destroy(): void;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ResourceCollectorDependencies, SystemResourceCollector } from '../../../server/bare/resources/types.js';
|
|
2
|
+
export declare function initializeWorkerResourceCollector(dependencies: ResourceCollectorDependencies): SystemResourceCollector;
|
|
3
|
+
export declare function getWorkerResourceCollector(): SystemResourceCollector | undefined;
|
|
4
|
+
export declare function destroyWorkerResourceCollector(): void;
|
|
5
|
+
//# sourceMappingURL=worker-collector.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createSystemResourceCollector } from '../../../server/bare/resources/collector.js';
|
|
2
|
+
let workerResourceCollector;
|
|
3
|
+
export function initializeWorkerResourceCollector(dependencies) {
|
|
4
|
+
if (!workerResourceCollector) {
|
|
5
|
+
workerResourceCollector = createSystemResourceCollector(dependencies);
|
|
6
|
+
}
|
|
7
|
+
return workerResourceCollector;
|
|
8
|
+
}
|
|
9
|
+
export function getWorkerResourceCollector() {
|
|
10
|
+
return workerResourceCollector;
|
|
11
|
+
}
|
|
12
|
+
export function destroyWorkerResourceCollector() {
|
|
13
|
+
workerResourceCollector?.destroy();
|
|
14
|
+
workerResourceCollector = undefined;
|
|
15
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { createDisposableScope } from '
|
|
2
|
-
export type { DisposableScope } from '
|
|
3
|
-
export type { RequestContext, RequestKind, RequestState } from '
|
|
4
|
-
export { createRequestRegistry, getRequestRegistry } from '
|
|
5
|
-
export type { BeginOpts, CancelByModelId, CancelByRequestId, CancelTarget, ConcurrencyPolicy, ManagedRequestContext, RequestOutcome, RequestRegistry } from '
|
|
6
|
-
export { withRequestContext } from '
|
|
7
|
-
export type { RequestLogContext } from '
|
|
1
|
+
export { createDisposableScope } from '../../../server/bare/runtime/disposable-scope.js';
|
|
2
|
+
export type { DisposableScope } from '../../../server/bare/runtime/disposable-scope.js';
|
|
3
|
+
export type { RequestContext, RequestKind, RequestState } from '../../../server/bare/runtime/request-context.js';
|
|
4
|
+
export { createRequestRegistry, getRequestRegistry } from '../../../server/bare/runtime/request-registry-singleton.js';
|
|
5
|
+
export type { BeginOpts, CancelByModelId, CancelByRequestId, CancelTarget, ConcurrencyPolicy, ManagedRequestContext, RequestOutcome, RequestRegistry } from '../../../server/bare/runtime/request-registry.js';
|
|
6
|
+
export { withRequestContext } from '../../../server/bare/runtime/with-request-context.js';
|
|
7
|
+
export type { RequestLogContext } from '../../../server/bare/runtime/with-request-context.js';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { createDisposableScope } from '
|
|
2
|
-
export { createRequestRegistry, getRequestRegistry } from '
|
|
3
|
-
export { withRequestContext } from '
|
|
1
|
+
export { createDisposableScope } from '../../../server/bare/runtime/disposable-scope.js';
|
|
2
|
+
export { createRequestRegistry, getRequestRegistry } from '../../../server/bare/runtime/request-registry-singleton.js';
|
|
3
|
+
export { withRequestContext } from '../../../server/bare/runtime/with-request-context.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AbortSignal } from 'bare-abort-controller';
|
|
2
|
-
import type { DisposableScope } from '
|
|
2
|
+
import type { DisposableScope } from '../../../server/bare/runtime/disposable-scope.js';
|
|
3
3
|
/**
|
|
4
4
|
* Coarse classification of a long-running request. Used by
|
|
5
5
|
* `RequestRegistry.cancel({ modelId, kind })` so a broad cancel can target
|
|
@@ -9,7 +9,7 @@ import type { DisposableScope } from './disposable-scope';
|
|
|
9
9
|
* The set is intentionally open-coded — adding a new kind is a one-line
|
|
10
10
|
* change and the union surfaces in editor autocomplete at every call site.
|
|
11
11
|
*/
|
|
12
|
-
export type RequestKind = 'completion' | 'batchCompletion' | 'embeddings' | 'transcribe' | 'translate' | 'diffusion' | 'tts' | 'ocr' | 'vla' | 'finetune' | 'loadModel' | 'downloadAsset' | 'rag';
|
|
12
|
+
export type RequestKind = 'completion' | 'batchCompletion' | 'embeddings' | 'transcribe' | 'translate' | 'diffusion' | 'audiogen' | 'tts' | 'ocr' | 'vla' | 'finetune' | 'loadModel' | 'downloadAsset' | 'rag';
|
|
13
13
|
/**
|
|
14
14
|
* Lifecycle states a request transitions through. A new context starts in
|
|
15
15
|
* `"running"`. `cancel(...)` flips it to `"cancelling"` and aborts the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createRequestRegistry as createRegistry, type RequestRegistry } from '
|
|
1
|
+
import { createRequestRegistry as createRegistry, type RequestRegistry } from '../../../server/bare/runtime/request-registry.js';
|
|
2
2
|
export declare function getRequestRegistry(): RequestRegistry;
|
|
3
3
|
export { createRegistry as createRequestRegistry };
|
|
4
4
|
//# sourceMappingURL=request-registry-singleton.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createRequestRegistry as createRegistry } from '
|
|
1
|
+
import { createRequestRegistry as createRegistry } from '../../../server/bare/runtime/request-registry.js';
|
|
2
2
|
/**
|
|
3
3
|
* Worker-process singleton. Every long-running request in this Bare
|
|
4
4
|
* worker registers under this registry, so a `cancel({ requestId })` RPC
|
|
@@ -42,6 +42,16 @@ function installDefaultPolicies(r) {
|
|
|
42
42
|
maxQueueDepthPerModel: 64,
|
|
43
43
|
sharedSlotGroup: LLAMACPP_COMPLETION_SLOT_GROUP
|
|
44
44
|
});
|
|
45
|
+
// ACE-Step owns one active job per model. Starting another run replaces
|
|
46
|
+
// the addon's active response, and model-scoped cancel targets that single
|
|
47
|
+
// active job. Keep the SDK registry authoritative by admitting one AudioGen
|
|
48
|
+
// request per model and queueing later requests FIFO.
|
|
49
|
+
r.policy({
|
|
50
|
+
kind: 'audiogen',
|
|
51
|
+
maxConcurrentPerModel: 1,
|
|
52
|
+
onOverflow: 'queue',
|
|
53
|
+
maxQueueDepthPerModel: 64
|
|
54
|
+
});
|
|
45
55
|
}
|
|
46
56
|
export function getRequestRegistry() {
|
|
47
57
|
if (!registry) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type AbortSignal } from 'bare-abort-controller';
|
|
2
|
-
import type { RequestContext, RequestKind } from '
|
|
3
|
-
import type { Logger } from '../../../logging/types';
|
|
2
|
+
import type { RequestContext, RequestKind } from '../../../server/bare/runtime/request-context.js';
|
|
3
|
+
import type { Logger } from '../../../logging/types.js';
|
|
4
4
|
/**
|
|
5
5
|
* Outcome the caller declares when terminating a request through
|
|
6
6
|
* `registry.end(...)`. The registry maps it to a terminal `RequestState`
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AbortController } from 'bare-abort-controller';
|
|
2
|
-
import { createDisposableScope } from '
|
|
2
|
+
import { createDisposableScope } from '../../../server/bare/runtime/disposable-scope.js';
|
|
3
3
|
import { RequestIdConflictError, RequestRejectedByPolicyError } from '../../../utils/errors-server.js';
|
|
4
4
|
import { getServerLogger } from '../../../logging/index.js';
|
|
5
5
|
/**
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type ASRGgml from '@qvac/asr-ggml';
|
|
1
2
|
export interface LlmStats {
|
|
2
3
|
TTFT?: number;
|
|
3
4
|
TPS?: number;
|
|
@@ -26,6 +27,8 @@ export interface NmtResponse {
|
|
|
26
27
|
export interface TtsStats {
|
|
27
28
|
audioDurationMs?: number;
|
|
28
29
|
totalSamples?: number;
|
|
30
|
+
enhancerBackendDevice?: number;
|
|
31
|
+
enhancerBackendId?: number;
|
|
29
32
|
}
|
|
30
33
|
export interface TtsResponse {
|
|
31
34
|
stats?: TtsStats;
|
|
@@ -44,40 +47,11 @@ export interface EmbedResponse {
|
|
|
44
47
|
stats?: EmbedStats;
|
|
45
48
|
await(): Promise<Float32Array[][]>;
|
|
46
49
|
}
|
|
47
|
-
export
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
totalSegments?: number;
|
|
53
|
-
whisperEncodeMs?: number;
|
|
54
|
-
whisperDecodeMs?: number;
|
|
55
|
-
encoderMs?: number;
|
|
56
|
-
decoderMs?: number;
|
|
57
|
-
melSpecMs?: number;
|
|
58
|
-
backendDevice?: number;
|
|
59
|
-
backendId?: number;
|
|
60
|
-
gpuUnsupported?: number;
|
|
61
|
-
gpuMemTotalMb?: number;
|
|
62
|
-
gpuMemFreeMb?: number;
|
|
63
|
-
}
|
|
64
|
-
export interface TranscribeAddonSegment {
|
|
65
|
-
text: string;
|
|
66
|
-
start?: number;
|
|
67
|
-
end?: number;
|
|
68
|
-
toAppend?: boolean;
|
|
69
|
-
id?: number;
|
|
70
|
-
}
|
|
71
|
-
export interface TranscribeAddonVadEvent {
|
|
72
|
-
type: 'vad';
|
|
73
|
-
speaking: boolean;
|
|
74
|
-
probability: number;
|
|
75
|
-
}
|
|
76
|
-
export interface TranscribeAddonEndOfTurnEvent {
|
|
77
|
-
type: 'endOfTurn';
|
|
78
|
-
silenceDurationMs: number;
|
|
79
|
-
}
|
|
80
|
-
export type TranscribeAddonOutput = Array<TranscribeAddonSegment> | TranscribeAddonVadEvent | TranscribeAddonEndOfTurnEvent;
|
|
50
|
+
export type TranscribeStats = Partial<ASRGgml.WhisperRuntimeStats & ASRGgml.ParakeetRuntimeStats>;
|
|
51
|
+
export type TranscribeAddonSegment = ASRGgml.TranscriptionSegment;
|
|
52
|
+
export type TranscribeAddonVadEvent = ASRGgml.VadEvent;
|
|
53
|
+
export type TranscribeAddonEndOfTurnEvent = ASRGgml.EndOfTurnEvent;
|
|
54
|
+
export type TranscribeAddonOutput = ASRGgml.ASRStreamOutput;
|
|
81
55
|
export interface TranscribeResponse {
|
|
82
56
|
stats?: TranscribeStats;
|
|
83
57
|
iterate(): AsyncIterable<TranscribeAddonOutput>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type ASRGgml from '@qvac/asr-ggml';
|
|
2
|
+
export declare function isVadEvent(event: ASRGgml.ASRStreamOutput): event is ASRGgml.VadEvent;
|
|
3
|
+
export declare function isEndOfTurnEvent(event: ASRGgml.ASRStreamOutput): event is ASRGgml.EndOfTurnEvent;
|
|
4
|
+
export declare function toVadStateEvent(event: ASRGgml.VadEvent): {
|
|
5
|
+
speaking: boolean;
|
|
6
|
+
probability: number;
|
|
7
|
+
};
|
|
8
|
+
export declare function toEndOfTurnEvent(event: ASRGgml.EndOfTurnEvent): {
|
|
9
|
+
source: "parakeet";
|
|
10
|
+
silenceDurationMs?: never;
|
|
11
|
+
} | {
|
|
12
|
+
source: "whisper";
|
|
13
|
+
silenceDurationMs: number;
|
|
14
|
+
} | null;
|
|
15
|
+
//# sourceMappingURL=asr-events.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export function isVadEvent(event) {
|
|
2
|
+
return (!Array.isArray(event) &&
|
|
3
|
+
event.type === 'vad' &&
|
|
4
|
+
typeof event.speaking === 'boolean' &&
|
|
5
|
+
typeof event.score === 'number' &&
|
|
6
|
+
(event.source === 'silero' || event.source === 'energy'));
|
|
7
|
+
}
|
|
8
|
+
export function isEndOfTurnEvent(event) {
|
|
9
|
+
return (!Array.isArray(event) &&
|
|
10
|
+
event.type === 'endOfTurn' &&
|
|
11
|
+
(event.source === 'vad-silence' || event.source === 'model-eou'));
|
|
12
|
+
}
|
|
13
|
+
export function toVadStateEvent(event) {
|
|
14
|
+
return {
|
|
15
|
+
speaking: event.speaking,
|
|
16
|
+
probability: event.score
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export function toEndOfTurnEvent(event) {
|
|
20
|
+
if (event.source === 'model-eou') {
|
|
21
|
+
return { source: 'parakeet' };
|
|
22
|
+
}
|
|
23
|
+
if (event.silenceDurationMs === undefined) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
source: 'whisper',
|
|
28
|
+
silenceDurationMs: event.silenceDurationMs
|
|
29
|
+
};
|
|
30
|
+
}
|