@elizaos/plugin-local-inference 2.0.3-beta.2 → 2.0.3-beta.3
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 +84 -10
- package/dist/actions/generate-media.d.ts.map +1 -0
- package/dist/actions/identify-speaker.d.ts.map +1 -0
- package/dist/actions/transcription-control.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/environment.d.ts +12 -0
- package/dist/adapters/capacitor-llama/environment.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/index.browser.d.ts +9 -0
- package/dist/adapters/capacitor-llama/index.browser.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/index.d.ts +18 -0
- package/dist/adapters/capacitor-llama/index.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/loader.d.ts +35 -0
- package/dist/adapters/capacitor-llama/loader.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/native-voice-capture.d.ts +70 -0
- package/dist/adapters/capacitor-llama/native-voice-capture.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/structured-output.d.ts +62 -0
- package/dist/adapters/capacitor-llama/structured-output.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/text-streaming.d.ts +24 -0
- package/dist/adapters/capacitor-llama/text-streaming.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/types.d.ts +338 -0
- package/dist/adapters/capacitor-llama/types.d.ts.map +1 -0
- package/dist/adapters/capacitor-llama/voice-turn.d.ts +86 -0
- package/dist/adapters/capacitor-llama/voice-turn.d.ts.map +1 -0
- package/dist/backends/apple-foundation.d.ts +56 -0
- package/dist/backends/apple-foundation.d.ts.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +39647 -0
- package/dist/index.js.map +217 -0
- package/{src → dist}/local-inference-routes.d.ts +9 -0
- package/dist/local-inference-routes.d.ts.map +1 -0
- package/dist/provider.d.ts.map +1 -0
- package/{src → dist}/routes/compat-helpers.d.ts +1 -1
- package/dist/routes/compat-helpers.d.ts.map +1 -0
- package/dist/routes/family-member-route.d.ts.map +1 -0
- package/{src → dist}/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/index.js +42040 -0
- package/dist/routes/index.js.map +236 -0
- package/{src → dist}/routes/live-diarization-route.d.ts +7 -0
- package/dist/routes/live-diarization-route.d.ts.map +1 -0
- package/dist/routes/local-inference-asr-route.d.ts.map +1 -0
- package/dist/routes/local-inference-asr-transcribe.d.ts.map +1 -0
- package/dist/routes/local-inference-compat-routes.d.ts.map +1 -0
- package/dist/routes/local-inference-tts-route.d.ts.map +1 -0
- package/dist/routes/native-pcm-turn-route.d.ts +3 -0
- package/dist/routes/native-pcm-turn-route.d.ts.map +1 -0
- package/dist/routes/transcript-audio-store.d.ts.map +1 -0
- package/{src → dist}/routes/transcripts-routes.d.ts +8 -0
- package/dist/routes/transcripts-routes.d.ts.map +1 -0
- package/dist/routes/voice-first-run-routes.d.ts.map +1 -0
- package/dist/routes/voice-models-routes.d.ts.map +1 -0
- package/dist/routes/voice-profile-plugin-routes.d.ts.map +1 -0
- package/dist/routes/voice-profiles-management-routes.d.ts.map +1 -0
- package/dist/routes/voice-speaker-profile-routes.d.ts.map +1 -0
- package/dist/runtime/embedding-manager-support.d.ts.map +1 -0
- package/dist/runtime/embedding-presets.d.ts.map +1 -0
- package/dist/runtime/embedding-warmup-policy.d.ts.map +1 -0
- package/{src → dist}/runtime/ensure-local-inference-handler.d.ts +8 -0
- package/dist/runtime/ensure-local-inference-handler.d.ts.map +1 -0
- package/{src → dist}/runtime/index.d.ts +1 -1
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +38768 -0
- package/dist/runtime/index.js.map +217 -0
- package/dist/runtime/mobile-local-inference-gate.d.ts +63 -0
- package/dist/runtime/mobile-local-inference-gate.d.ts.map +1 -0
- package/{src → dist}/runtime/voice-entity-binding.d.ts +10 -0
- package/dist/runtime/voice-entity-binding.d.ts.map +1 -0
- package/{src → dist}/services/active-model.d.ts +28 -0
- package/dist/services/active-model.d.ts.map +1 -0
- package/dist/services/asr-provenance.d.ts +5 -0
- package/dist/services/asr-provenance.d.ts.map +1 -0
- package/{src → dist}/services/assignments.d.ts +16 -3
- package/dist/services/assignments.d.ts.map +1 -0
- package/dist/services/backend-selector.d.ts +55 -0
- package/dist/services/backend-selector.d.ts.map +1 -0
- package/{src → dist}/services/backend.d.ts +110 -16
- package/dist/services/backend.d.ts.map +1 -0
- package/{src → dist}/services/bionic-host-loader.d.ts +21 -0
- package/dist/services/bionic-host-loader.d.ts.map +1 -0
- package/dist/services/bundled-models.d.ts.map +1 -0
- package/dist/services/cache-bridge.d.ts.map +1 -0
- package/dist/services/catalog.d.ts +10 -0
- package/dist/services/catalog.d.ts.map +1 -0
- package/dist/services/checkpoint-client.d.ts.map +1 -0
- package/dist/services/checkpoint-manager.d.ts +217 -0
- package/dist/services/checkpoint-manager.d.ts.map +1 -0
- package/dist/services/cloud-fallback.d.ts.map +1 -0
- package/dist/services/context-fit.d.ts +36 -0
- package/dist/services/context-fit.d.ts.map +1 -0
- package/dist/services/conversation-registry.d.ts.map +1 -0
- package/{src → dist}/services/desktop-fused-ffi-backend-runtime.d.ts +22 -6
- package/dist/services/desktop-fused-ffi-backend-runtime.d.ts.map +1 -0
- package/dist/services/device-bridge.d.ts.map +1 -0
- package/dist/services/device-resource-metrics.d.ts.map +1 -0
- package/{src → dist}/services/device-tier.d.ts +19 -1
- package/dist/services/device-tier.d.ts.map +1 -0
- package/{src → dist}/services/downloader.d.ts +16 -4
- package/dist/services/downloader.d.ts.map +1 -0
- package/{src → dist}/services/engine.d.ts +43 -4
- package/dist/services/engine.d.ts.map +1 -0
- package/dist/services/ensure-local-artifacts.d.ts +82 -0
- package/dist/services/ensure-local-artifacts.d.ts.map +1 -0
- package/dist/services/external-scanner.d.ts.map +1 -0
- package/dist/services/ffi-llm-mock.d.ts +90 -0
- package/dist/services/ffi-llm-mock.d.ts.map +1 -0
- package/dist/services/ffi-llm-streaming-abi.d.ts +318 -0
- package/dist/services/ffi-llm-streaming-abi.d.ts.map +1 -0
- package/{src → dist}/services/ffi-streaming-backend.d.ts +28 -7
- package/dist/services/ffi-streaming-backend.d.ts.map +1 -0
- package/{src → dist}/services/ffi-streaming-runner.d.ts +24 -0
- package/dist/services/ffi-streaming-runner.d.ts.map +1 -0
- package/dist/services/gpu-autotune.d.ts +150 -0
- package/dist/services/gpu-autotune.d.ts.map +1 -0
- package/dist/services/gpu-detect.d.ts.map +1 -0
- package/dist/services/handler-registry.d.ts.map +1 -0
- package/dist/services/hardware.d.ts.map +1 -0
- package/dist/services/image-description-runtime.d.ts.map +1 -0
- package/dist/services/imagegen/aosp-unavailable.d.ts.map +1 -0
- package/dist/services/imagegen/backend-selector.d.ts.map +1 -0
- package/dist/services/imagegen/coreml-unavailable.d.ts.map +1 -0
- package/dist/services/imagegen/errors.d.ts.map +1 -0
- package/dist/services/imagegen/index.d.ts.map +1 -0
- package/dist/services/imagegen/mflux.d.ts.map +1 -0
- package/{src → dist}/services/imagegen/sd-cpp.d.ts +1 -0
- package/dist/services/imagegen/sd-cpp.d.ts.map +1 -0
- package/dist/services/imagegen/tensorrt-unavailable.d.ts.map +1 -0
- package/dist/services/imagegen/types.d.ts.map +1 -0
- package/{src → dist}/services/index.d.ts +3 -1
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +39453 -0
- package/dist/services/index.js.map +227 -0
- package/dist/services/inference-capabilities.d.ts.map +1 -0
- package/dist/services/inference-telemetry.d.ts.map +1 -0
- package/dist/services/ios-llama-streaming.d.ts +119 -0
- package/dist/services/ios-llama-streaming.d.ts.map +1 -0
- package/dist/services/kv-spill.d.ts.map +1 -0
- package/dist/services/latency-trace.d.ts.map +1 -0
- package/dist/services/lib-target.d.ts +55 -0
- package/dist/services/lib-target.d.ts.map +1 -0
- package/dist/services/live-signals.d.ts +86 -0
- package/dist/services/live-signals.d.ts.map +1 -0
- package/dist/services/llama-server-metrics.d.ts +114 -0
- package/dist/services/llama-server-metrics.d.ts.map +1 -0
- package/dist/services/llm-streaming-binding.d.ts.map +1 -0
- package/dist/services/load-args.d.ts.map +1 -0
- package/dist/services/manifest/index.d.ts +4 -0
- package/dist/services/manifest/index.d.ts.map +1 -0
- package/{src → dist}/services/manifest/schema.d.ts +196 -6
- package/dist/services/manifest/schema.d.ts.map +1 -0
- package/{src → dist}/services/manifest/types.d.ts +3 -1
- package/dist/services/manifest/types.d.ts.map +1 -0
- package/dist/services/manifest/validator.d.ts.map +1 -0
- package/{src → dist}/services/memory-arbiter.d.ts +33 -3
- package/dist/services/memory-arbiter.d.ts.map +1 -0
- package/dist/services/memory-benchmark.d.ts +76 -0
- package/dist/services/memory-benchmark.d.ts.map +1 -0
- package/{src → dist}/services/memory-monitor.d.ts +6 -0
- package/dist/services/memory-monitor.d.ts.map +1 -0
- package/dist/services/memory-pressure.d.ts.map +1 -0
- package/dist/services/mtp-doctor.d.ts.map +1 -0
- package/dist/services/network-policy.d.ts.map +1 -0
- package/dist/services/paths.d.ts.map +1 -0
- package/dist/services/planner-skeleton.d.ts.map +1 -0
- package/dist/services/providers.d.ts.map +1 -0
- package/dist/services/ram-budget.d.ts.map +1 -0
- package/dist/services/readiness.d.ts.map +1 -0
- package/dist/services/recommendation.d.ts.map +1 -0
- package/{src → dist}/services/registry.d.ts +11 -13
- package/dist/services/registry.d.ts.map +1 -0
- package/{src → dist}/services/router-handler.d.ts +2 -2
- package/dist/services/router-handler.d.ts.map +1 -0
- package/{src → dist}/services/routing-policy.d.ts +32 -9
- package/dist/services/routing-policy.d.ts.map +1 -0
- package/dist/services/routing-preferences.d.ts.map +1 -0
- package/dist/services/runtime-target.d.ts.map +1 -0
- package/{src → dist}/services/service.d.ts +1 -1
- package/dist/services/service.d.ts.map +1 -0
- package/dist/services/session-pool.d.ts.map +1 -0
- package/dist/services/structured-output/deterministic-repair.d.ts.map +1 -0
- package/dist/services/structured-output/index.d.ts +2 -0
- package/dist/services/structured-output/index.d.ts.map +1 -0
- package/dist/services/structured-output.d.ts.map +1 -0
- package/dist/services/system-memory.d.ts.map +1 -0
- package/{src → dist}/services/types.d.ts +1 -1
- package/dist/services/types.d.ts.map +1 -0
- package/dist/services/verify-on-device.d.ts.map +1 -0
- package/dist/services/verify.d.ts.map +1 -0
- package/dist/services/vision/aosp-unavailable.d.ts.map +1 -0
- package/dist/services/vision/capacitor-llama.d.ts.map +1 -0
- package/dist/services/vision/cloud-fallback.d.ts.map +1 -0
- package/dist/services/vision/hash.d.ts.map +1 -0
- package/{src → dist}/services/vision/index.d.ts +1 -1
- package/dist/services/vision/index.d.ts.map +1 -0
- package/dist/services/vision/llama-server.d.ts.map +1 -0
- package/{src → dist}/services/vision/types.d.ts +13 -4
- package/dist/services/vision/types.d.ts.map +1 -0
- package/dist/services/vision/vast-fallback.d.ts.map +1 -0
- package/{src → dist}/services/vision-embedding-cache.d.ts +1 -1
- package/dist/services/vision-embedding-cache.d.ts.map +1 -0
- package/dist/services/voice/__test-helpers__/fake-ffi.d.ts +27 -0
- package/dist/services/voice/__test-helpers__/fake-ffi.d.ts.map +1 -0
- package/dist/services/voice/__test-helpers__/synthetic-speech.d.ts +66 -0
- package/dist/services/voice/__test-helpers__/synthetic-speech.d.ts.map +1 -0
- package/dist/services/voice/acoustic-speaker-attribution.d.ts +61 -0
- package/dist/services/voice/acoustic-speaker-attribution.d.ts.map +1 -0
- package/{src → dist}/services/voice/audio-frame-consumer.d.ts +82 -0
- package/dist/services/voice/audio-frame-consumer.d.ts.map +1 -0
- package/dist/services/voice/barge-in.d.ts.map +1 -0
- package/dist/services/voice/cancellation-coordinator.d.ts.map +1 -0
- package/dist/services/voice/checkpoint-manager.d.ts.map +1 -0
- package/dist/services/voice/checkpoint-policy.d.ts +178 -0
- package/dist/services/voice/checkpoint-policy.d.ts.map +1 -0
- package/dist/services/voice/corpus-augment.d.ts +111 -0
- package/dist/services/voice/corpus-augment.d.ts.map +1 -0
- package/dist/services/voice/corpus-generator.d.ts +134 -0
- package/dist/services/voice/corpus-generator.d.ts.map +1 -0
- package/dist/services/voice/diarization-error-rate.d.ts +40 -0
- package/dist/services/voice/diarization-error-rate.d.ts.map +1 -0
- package/dist/services/voice/e2e-harness.d.ts +297 -0
- package/dist/services/voice/e2e-harness.d.ts.map +1 -0
- package/dist/services/voice/eager-context-builder.d.ts.map +1 -0
- package/dist/services/voice/echo-delay.d.ts +67 -0
- package/dist/services/voice/echo-delay.d.ts.map +1 -0
- package/dist/services/voice/echo-metrics.d.ts +7 -0
- package/dist/services/voice/echo-metrics.d.ts.map +1 -0
- package/dist/services/voice/echo-reference-buffer.d.ts +65 -0
- package/dist/services/voice/echo-reference-buffer.d.ts.map +1 -0
- package/{src → dist}/services/voice/eliza1-eot-scorer.d.ts +8 -8
- package/dist/services/voice/eliza1-eot-scorer.d.ts.map +1 -0
- package/dist/services/voice/embedding-server.d.ts +37 -0
- package/dist/services/voice/embedding-server.d.ts.map +1 -0
- package/{src → dist}/services/voice/embedding.d.ts +2 -3
- package/dist/services/voice/embedding.d.ts.map +1 -0
- package/dist/services/voice/emotion-attribution.d.ts.map +1 -0
- package/{src → dist}/services/voice/engine-bridge.d.ts +8 -5
- package/dist/services/voice/engine-bridge.d.ts.map +1 -0
- package/{src → dist}/services/voice/eot-classifier-ggml.d.ts +22 -22
- package/dist/services/voice/eot-classifier-ggml.d.ts.map +1 -0
- package/{src → dist}/services/voice/eot-classifier.d.ts +9 -12
- package/dist/services/voice/eot-classifier.d.ts.map +1 -0
- package/{src → dist}/services/voice/errors.d.ts +1 -1
- package/dist/services/voice/errors.d.ts.map +1 -0
- package/{src → dist}/services/voice/expressive-tags.d.ts +5 -5
- package/dist/services/voice/expressive-tags.d.ts.map +1 -0
- package/{src → dist}/services/voice/ffi-bindings.d.ts +26 -4
- package/dist/services/voice/ffi-bindings.d.ts.map +1 -0
- package/dist/services/voice/first-line-cache.d.ts.map +1 -0
- package/{src → dist}/services/voice/fused-eot-scorer.d.ts +6 -6
- package/dist/services/voice/fused-eot-scorer.d.ts.map +1 -0
- package/{src → dist}/services/voice/index.d.ts +8 -3
- package/dist/services/voice/index.d.ts.map +1 -0
- package/dist/services/voice/kokoro/index.d.ts +24 -0
- package/dist/services/voice/kokoro/index.d.ts.map +1 -0
- package/{src → dist}/services/voice/kokoro/kokoro-backend.d.ts +15 -0
- package/dist/services/voice/kokoro/kokoro-backend.d.ts.map +1 -0
- package/{src → dist}/services/voice/kokoro/kokoro-engine-discovery.d.ts +1 -1
- package/dist/services/voice/kokoro/kokoro-engine-discovery.d.ts.map +1 -0
- package/{src → dist}/services/voice/kokoro/kokoro-ffi-runtime.d.ts +3 -3
- package/dist/services/voice/kokoro/kokoro-ffi-runtime.d.ts.map +1 -0
- package/dist/services/voice/kokoro/kokoro-runtime.d.ts.map +1 -0
- package/dist/services/voice/kokoro/phoneme-stream.d.ts +51 -0
- package/dist/services/voice/kokoro/phoneme-stream.d.ts.map +1 -0
- package/dist/services/voice/kokoro/phonemizer.d.ts.map +1 -0
- package/{src → dist}/services/voice/kokoro/pick-runtime.d.ts +1 -1
- package/dist/services/voice/kokoro/pick-runtime.d.ts.map +1 -0
- package/dist/services/voice/kokoro/runtime-selection.d.ts +31 -0
- package/dist/services/voice/kokoro/runtime-selection.d.ts.map +1 -0
- package/dist/services/voice/kokoro/types.d.ts.map +1 -0
- package/dist/services/voice/kokoro/voice-presets.d.ts.map +1 -0
- package/dist/services/voice/kokoro/voices.d.ts.map +1 -0
- package/dist/services/voice/lifecycle.d.ts.map +1 -0
- package/dist/services/voice/live-diarization-session.d.ts +196 -0
- package/dist/services/voice/live-diarization-session.d.ts.map +1 -0
- package/dist/services/voice/metric-math.d.ts +10 -0
- package/dist/services/voice/metric-math.d.ts.map +1 -0
- package/{src → dist}/services/voice/mic-source.d.ts +1 -1
- package/dist/services/voice/mic-source.d.ts.map +1 -0
- package/dist/services/voice/nlms-echo-canceller.d.ts +137 -0
- package/dist/services/voice/nlms-echo-canceller.d.ts.map +1 -0
- package/dist/services/voice/optimistic-policy.d.ts.map +1 -0
- package/dist/services/voice/optimistic-rollback.d.ts +151 -0
- package/dist/services/voice/optimistic-rollback.d.ts.map +1 -0
- package/{src → dist}/services/voice/partial-stabilizer.d.ts +1 -1
- package/dist/services/voice/partial-stabilizer.d.ts.map +1 -0
- package/dist/services/voice/phoneme-tokenizer.d.ts.map +1 -0
- package/dist/services/voice/phrase-cache.d.ts.map +1 -0
- package/dist/services/voice/phrase-chunker.d.ts.map +1 -0
- package/dist/services/voice/pipeline-impls.d.ts.map +1 -0
- package/dist/services/voice/pipeline.d.ts.map +1 -0
- package/dist/services/voice/prefill-client.d.ts.map +1 -0
- package/dist/services/voice/prefix-preserving-queue.d.ts.map +1 -0
- package/dist/services/voice/profile-store.d.ts.map +1 -0
- package/dist/services/voice/ring-buffer.d.ts.map +1 -0
- package/dist/services/voice/rollback-queue.d.ts.map +1 -0
- package/dist/services/voice/samantha-preset-placeholder.d.ts.map +1 -0
- package/dist/services/voice/samantha-preset-regenerator.d.ts.map +1 -0
- package/dist/services/voice/scheduler.d.ts.map +1 -0
- package/dist/services/voice/self-voice-imprint.d.ts +33 -0
- package/dist/services/voice/self-voice-imprint.d.ts.map +1 -0
- package/{src → dist}/services/voice/shared-resources.d.ts +14 -0
- package/dist/services/voice/shared-resources.d.ts.map +1 -0
- package/dist/services/voice/speaker/attribution-pipeline.d.ts.map +1 -0
- package/dist/services/voice/speaker/diarizer-fused.d.ts.map +1 -0
- package/dist/services/voice/speaker/diarizer.d.ts.map +1 -0
- package/dist/services/voice/speaker/encoder-fused.d.ts.map +1 -0
- package/dist/services/voice/speaker/encoder-ggml.d.ts.map +1 -0
- package/dist/services/voice/speaker/encoder.d.ts.map +1 -0
- package/dist/services/voice/speaker-imprint.d.ts.map +1 -0
- package/dist/services/voice/speaker-preset-cache.d.ts.map +1 -0
- package/dist/services/voice/streaming-asr/streaming-pipeline-adapter.d.ts +160 -0
- package/dist/services/voice/streaming-asr/streaming-pipeline-adapter.d.ts.map +1 -0
- package/dist/services/voice/system-audio-sink.d.ts.map +1 -0
- package/{src → dist}/services/voice/transcriber.d.ts +4 -4
- package/dist/services/voice/transcriber.d.ts.map +1 -0
- package/dist/services/voice/transcript-knowledge.d.ts.map +1 -0
- package/{src → dist}/services/voice/transcript-service.d.ts +20 -1
- package/dist/services/voice/transcript-service.d.ts.map +1 -0
- package/{src → dist}/services/voice/transcript-store.d.ts +12 -1
- package/dist/services/voice/transcript-store.d.ts.map +1 -0
- package/dist/services/voice/turn-controller.d.ts.map +1 -0
- package/{src → dist}/services/voice/types.d.ts +6 -6
- package/dist/services/voice/types.d.ts.map +1 -0
- package/{src → dist}/services/voice/vad.d.ts +6 -5
- package/dist/services/voice/vad.d.ts.map +1 -0
- package/dist/services/voice/voice-budget.d.ts.map +1 -0
- package/dist/services/voice/voice-emotion-classifier.d.ts.map +1 -0
- package/dist/services/voice/voice-preload-predictor.d.ts +76 -0
- package/dist/services/voice/voice-preload-predictor.d.ts.map +1 -0
- package/{src → dist}/services/voice/voice-preset-format.d.ts +2 -2
- package/dist/services/voice/voice-preset-format.d.ts.map +1 -0
- package/dist/services/voice/voice-profile-artifact.d.ts.map +1 -0
- package/dist/services/voice/voice-profile-routes.d.ts.map +1 -0
- package/dist/services/voice/voice-scenario.d.ts +131 -0
- package/dist/services/voice/voice-scenario.d.ts.map +1 -0
- package/dist/services/voice/voice-state-machine.d.ts.map +1 -0
- package/dist/services/voice/voice-workbench-report.d.ts +117 -0
- package/dist/services/voice/voice-workbench-report.d.ts.map +1 -0
- package/{src → dist}/services/voice/wake-word-ggml.d.ts +8 -9
- package/dist/services/voice/wake-word-ggml.d.ts.map +1 -0
- package/dist/services/voice/wake-word.d.ts.map +1 -0
- package/dist/services/voice/wav-codec.d.ts +11 -0
- package/dist/services/voice/wav-codec.d.ts.map +1 -0
- package/dist/services/voice/workbench-entrypoint.d.ts +42 -0
- package/dist/services/voice/workbench-entrypoint.d.ts.map +1 -0
- package/dist/services/voice/workbench-headless-runner.d.ts +102 -0
- package/dist/services/voice/workbench-headless-runner.d.ts.map +1 -0
- package/dist/services/voice/workbench-logic-services.d.ts +36 -0
- package/dist/services/voice/workbench-logic-services.d.ts.map +1 -0
- package/dist/services/voice/workbench-real-services.d.ts +17 -0
- package/dist/services/voice/workbench-real-services.d.ts.map +1 -0
- package/dist/services/voice/workbench-scenarios.d.ts +24 -0
- package/dist/services/voice/workbench-scenarios.d.ts.map +1 -0
- package/dist/services/voice/wrap-with-first-line-cache.d.ts.map +1 -0
- package/dist/services/voice-model-updater.d.ts.map +1 -0
- package/dist/services/voice-prewarm.d.ts.map +1 -0
- package/dist/voice-workbench.d.ts +18 -0
- package/dist/voice-workbench.d.ts.map +1 -0
- package/dist/voice-workbench.js +5259 -0
- package/dist/voice-workbench.js.map +34 -0
- package/package.json +28 -9
- package/registry-entry.json +137 -0
- package/src/adapters/capacitor-llama/__tests__/voice-turn.test.ts +293 -0
- package/src/adapters/capacitor-llama/environment.ts +1 -1
- package/src/adapters/capacitor-llama/index.ts +28 -4
- package/src/adapters/capacitor-llama/native-voice-capture.ts +140 -0
- package/src/adapters/capacitor-llama/text-streaming.ts +2 -2
- package/src/adapters/capacitor-llama/voice-turn.ts +178 -0
- package/src/backends/apple-foundation.ts +1 -1
- package/src/local-inference-routes.test.ts +57 -11
- package/src/local-inference-routes.ts +90 -8
- package/src/provider.ts +32 -3
- package/src/routes/compat-helpers.ts +2 -1
- package/src/routes/index.ts +1 -0
- package/src/routes/live-diarization-route.test.ts +134 -0
- package/src/routes/live-diarization-route.ts +79 -3
- package/src/routes/local-inference-asr-route.test.ts +43 -2
- package/src/routes/local-inference-asr-route.ts +7 -4
- package/src/routes/local-inference-asr-transcribe.test.ts +4 -4
- package/src/routes/local-inference-asr-transcribe.ts +1 -1
- package/src/routes/local-inference-compat-routes.test.ts +3 -3
- package/src/routes/local-inference-compat-routes.ts +23 -56
- package/src/routes/native-pcm-turn-route.test.ts +136 -0
- package/src/routes/native-pcm-turn-route.ts +121 -0
- package/src/routes/transcripts-routes.test.ts +51 -0
- package/src/routes/transcripts-routes.ts +35 -3
- package/src/runtime/bionic-wire-encoding.test.ts +147 -0
- package/src/runtime/ensure-local-inference-handler.test.ts +203 -5
- package/src/runtime/ensure-local-inference-handler.ts +203 -11
- package/src/runtime/index.ts +4 -1
- package/src/runtime/mobile-local-inference-gate.test.ts +85 -2
- package/src/runtime/mobile-local-inference-gate.ts +60 -5
- package/src/runtime/voice-entity-binding.transcript.test.ts +29 -0
- package/src/runtime/voice-entity-binding.ts +46 -6
- package/src/runtime/voice-speaker-entity-contract.test.ts +149 -0
- package/src/services/README.md +2 -2
- package/src/services/__tests__/backend-selector.precedence.test.ts +333 -0
- package/src/services/active-model-context-fit.test.ts +125 -0
- package/src/services/active-model.ts +211 -8
- package/src/services/asr-provenance.ts +68 -0
- package/src/services/assignment-validation.test.ts +118 -0
- package/src/services/assignments.test.ts +26 -0
- package/src/services/assignments.ts +52 -4
- package/src/services/backend.test.ts +84 -0
- package/src/services/backend.ts +198 -19
- package/src/services/bionic-host-loader.test.ts +94 -1
- package/src/services/bionic-host-loader.ts +72 -0
- package/src/services/cache-bridge.test.ts +7 -7
- package/src/services/catalog.test.ts +32 -11
- package/src/services/catalog.ts +6 -0
- package/src/services/cloud-fallback.ts +1 -1
- package/src/services/context-fit.test.ts +121 -0
- package/src/services/context-fit.ts +113 -0
- package/src/services/desktop-fused-ffi-backend-runtime.ts +99 -7
- package/src/services/device-tier.test.ts +89 -2
- package/src/services/device-tier.ts +103 -11
- package/src/services/downloader.test.ts +199 -58
- package/src/services/downloader.ts +141 -27
- package/src/services/engine-direct-bundle.test.ts +38 -6
- package/src/services/engine.ts +291 -104
- package/src/services/ensure-local-artifacts.ts +1 -1
- package/src/services/ffi-llm-streaming-abi.ts +6 -3
- package/src/services/ffi-streaming-backend.ts +44 -8
- package/src/services/ffi-streaming-runner.test.ts +163 -3
- package/src/services/ffi-streaming-runner.ts +54 -1
- package/src/services/ffi-unload-ordering.test.ts +5 -1
- package/src/services/fused-eliza1-no-regression.test.ts +144 -0
- package/src/services/hardware.test.ts +7 -2
- package/src/services/hardware.ts +28 -0
- package/src/services/imagegen/backend-selector.test.ts +190 -0
- package/src/services/imagegen/sd-cpp.ts +6 -9
- package/src/services/index.ts +18 -0
- package/src/services/ios-llama-streaming.ts +1 -1
- package/src/services/kv-spill.ts +6 -5
- package/src/services/lib-target.test.ts +145 -0
- package/src/services/lib-target.ts +102 -0
- package/src/services/live-signals.test.ts +132 -0
- package/src/services/live-signals.ts +177 -0
- package/src/services/llama-server-metrics.test.ts +168 -0
- package/src/services/manifest/eliza-1.manifest.v1.json +84 -2
- package/src/services/manifest/index.ts +6 -0
- package/src/services/manifest/manifest.test.ts +156 -54
- package/src/services/manifest/schema.ts +160 -52
- package/src/services/manifest/types.ts +6 -0
- package/src/services/manifest/validator.ts +91 -25
- package/src/services/memory-arbiter.test.ts +139 -0
- package/src/services/memory-arbiter.ts +81 -15
- package/src/services/memory-benchmark.test.ts +91 -0
- package/src/services/memory-benchmark.ts +354 -0
- package/src/services/memory-monitor.test.ts +24 -0
- package/src/services/memory-monitor.ts +12 -0
- package/src/services/mtp-doctor.ts +10 -2
- package/src/services/network-policy.ts +5 -5
- package/src/services/ram-budget-cache.test.ts +2 -1
- package/src/services/ram-budget.ts +0 -0
- package/src/services/recommendation.test.ts +216 -0
- package/src/services/registry.ts +25 -19
- package/src/services/required-kernels-gate.test.ts +64 -0
- package/src/services/router-handler.ts +43 -24
- package/src/services/routing-policy.test.ts +211 -23
- package/src/services/routing-policy.ts +92 -22
- package/src/services/service.test.ts +3 -3
- package/src/services/service.ts +22 -7
- package/src/services/transcription-priority.test.ts +2 -2
- package/src/services/types.ts +4 -0
- package/src/services/verify-on-device.test.ts +2 -2
- package/src/services/vision/hash.ts +1 -1
- package/src/services/vision/index.ts +2 -2
- package/src/services/vision/llama-server.ts +1 -1
- package/src/services/vision/types.ts +13 -4
- package/src/services/vision-embedding-cache.ts +1 -1
- package/src/services/voice/VOICE_WORKBENCH.md +71 -26
- package/src/services/voice/__fixtures__/voice-workbench-logic-baseline.json +180 -0
- package/src/services/voice/__test-helpers__/synthetic-speech.ts +72 -2
- package/src/services/voice/__tests__/eliza1-eot-scorer.test.ts +29 -29
- package/src/services/voice/__tests__/streaming-asr.test.ts +1 -1
- package/src/services/voice/acoustic-speaker-attribution.test.ts +165 -0
- package/src/services/voice/acoustic-speaker-attribution.ts +336 -0
- package/src/services/voice/asr-timed.real.test.ts +6 -8
- package/src/services/voice/audio-frame-consumer.test.ts +327 -1
- package/src/services/voice/audio-frame-consumer.ts +165 -5
- package/src/services/voice/barge-in.ts +2 -3
- package/src/services/voice/corpus-augment.test.ts +276 -0
- package/src/services/voice/corpus-augment.ts +451 -0
- package/src/services/voice/corpus-generator.test.ts +201 -0
- package/src/services/voice/corpus-generator.ts +413 -0
- package/src/services/voice/diarization-error-rate.greedy.test.ts +140 -0
- package/src/services/voice/diarization-error-rate.test.ts +100 -0
- package/src/services/voice/diarization-error-rate.ts +249 -0
- package/src/services/voice/e2e-harness.der.test.ts +94 -0
- package/src/services/voice/e2e-harness.respond-eot-entity.test.ts +277 -0
- package/src/services/voice/e2e-harness.security-echo.test.ts +103 -0
- package/src/services/voice/e2e-harness.test.ts +2 -2
- package/src/services/voice/e2e-harness.ts +175 -16
- package/src/services/voice/echo-delay.test.ts +118 -0
- package/src/services/voice/echo-delay.ts +135 -0
- package/src/services/voice/echo-metrics.test.ts +17 -0
- package/src/services/voice/echo-metrics.ts +20 -0
- package/src/services/voice/echo-reference-buffer.test.ts +86 -0
- package/src/services/voice/echo-reference-buffer.ts +165 -0
- package/src/services/voice/eliza1-eot-scorer.ts +22 -22
- package/src/services/voice/embedding.ts +2 -3
- package/src/services/voice/engine-bridge-transcript-join.test.ts +278 -0
- package/src/services/voice/engine-bridge.ts +151 -110
- package/src/services/voice/eot-classifier-ggml.ts +42 -39
- package/src/services/voice/eot-classifier.test.ts +98 -0
- package/src/services/voice/eot-classifier.ts +11 -122
- package/src/services/voice/errors.ts +2 -0
- package/src/services/voice/expressive-tags.asr.test.ts +77 -0
- package/src/services/voice/expressive-tags.test.ts +102 -0
- package/src/services/voice/expressive-tags.ts +8 -8
- package/src/services/voice/ffi-bindings.test.ts +10 -3
- package/src/services/voice/ffi-bindings.ts +177 -15
- package/src/services/voice/fused-eot-scorer.ts +17 -13
- package/src/services/voice/index.ts +33 -12
- package/src/services/voice/kokoro/__tests__/kokoro-backend.test.ts +112 -1
- package/src/services/voice/kokoro/__tests__/kokoro-engine-bridge.real.test.ts +88 -3
- package/src/services/voice/kokoro/__tests__/runtime-selection.test.ts +37 -201
- package/src/services/voice/kokoro/kokoro-backend.ts +16 -0
- package/src/services/voice/kokoro/kokoro-engine-discovery.ts +1 -1
- package/src/services/voice/kokoro/kokoro-ffi-runtime.ts +3 -3
- package/src/services/voice/kokoro/pick-runtime.ts +1 -1
- package/src/services/voice/kokoro/runtime-selection.ts +28 -201
- package/src/services/voice/live-diarization-session.echo.test.ts +232 -0
- package/src/services/voice/live-diarization-session.ts +335 -2
- package/src/services/voice/metric-math.test.ts +61 -0
- package/src/services/voice/metric-math.ts +25 -0
- package/src/services/voice/mic-source.ts +1 -1
- package/src/services/voice/nlms-echo-canceller.test.ts +244 -0
- package/src/services/voice/nlms-echo-canceller.ts +317 -0
- package/src/services/voice/optimistic-policy.power-source.test.ts +36 -0
- package/src/services/voice/partial-stabilizer.ts +1 -1
- package/src/services/voice/pipeline.ts +3 -4
- package/src/services/voice/research/VOICE_8785_ASSESSMENT.md +141 -0
- package/src/services/voice/research/VOICE_PIPELINE_RESEARCH_2026.md +117 -0
- package/src/services/voice/research/VOICE_VALIDATION_RUNBOOK.md +135 -0
- package/src/services/voice/samantha-preset-regenerator.wav.test.ts +90 -0
- package/src/services/voice/self-voice-imprint.test.ts +59 -0
- package/src/services/voice/self-voice-imprint.ts +102 -0
- package/src/services/voice/shared-resources.ts +23 -0
- package/src/services/voice/speaker/attribution-pipeline.test.ts +221 -0
- package/src/services/voice/speaker/attribution-pipeline.ts +85 -22
- package/src/services/voice/speaker/encoder-ggml.test.ts +59 -0
- package/src/services/voice/transcriber.asr-backend.test.ts +76 -0
- package/src/services/voice/transcriber.ts +4 -4
- package/src/services/voice/transcript-service.test.ts +58 -0
- package/src/services/voice/transcript-service.ts +64 -0
- package/src/services/voice/transcript-store.test.ts +36 -0
- package/src/services/voice/transcript-store.ts +32 -0
- package/src/services/voice/types.ts +7 -7
- package/src/services/voice/vad.test.ts +33 -15
- package/src/services/voice/vad.ts +25 -20
- package/src/services/voice/voice-budget.test.ts +0 -3
- package/src/services/voice/voice-budget.ts +6 -6
- package/src/services/voice/voice-duet.test.ts +1 -1
- package/src/services/voice/voice-hardening.fuzz.test.ts +116 -0
- package/src/services/voice/voice-preload-predictor.test.ts +130 -0
- package/src/services/voice/voice-preload-predictor.ts +113 -0
- package/src/services/voice/voice-preset-format.fuzz.test.ts +89 -0
- package/src/services/voice/voice-preset-format.test.ts +75 -0
- package/src/services/voice/voice-preset-format.ts +17 -4
- package/src/services/voice/voice-scenario.test.ts +159 -0
- package/src/services/voice/voice-scenario.ts +133 -7
- package/src/services/voice/voice-scenario.turn-helpers.test.ts +77 -0
- package/src/services/voice/voice-workbench-report.ts +58 -17
- package/src/services/voice/wake-word-ggml.ts +12 -13
- package/src/services/voice/wav-codec.fuzz.test.ts +59 -0
- package/src/services/voice/wav-codec.test.ts +32 -0
- package/src/services/voice/wav-codec.ts +101 -0
- package/src/services/voice/workbench-entrypoint.test.ts +55 -0
- package/src/services/voice/workbench-entrypoint.ts +88 -0
- package/src/services/voice/workbench-headless-runner.test.ts +162 -0
- package/src/services/voice/workbench-headless-runner.ts +396 -0
- package/src/services/voice/workbench-logic-services.test.ts +225 -0
- package/src/services/voice/workbench-logic-services.ts +184 -0
- package/src/services/voice/workbench-real-services.ts +629 -0
- package/src/services/voice/workbench-scenarios.ts +407 -0
- package/src/services/voice-prewarm.ts +1 -1
- package/src/voice-workbench.ts +71 -0
- package/src/actions/generate-media.d.ts.map +0 -1
- package/src/actions/identify-speaker.d.ts.map +0 -1
- package/src/actions/transcription-control.d.ts.map +0 -1
- package/src/index.d.ts.map +0 -1
- package/src/local-inference-routes.d.ts.map +0 -1
- package/src/provider.d.ts.map +0 -1
- package/src/routes/compat-helpers.d.ts.map +0 -1
- package/src/routes/family-member-route.d.ts.map +0 -1
- package/src/routes/index.d.ts.map +0 -1
- package/src/routes/live-diarization-route.d.ts.map +0 -1
- package/src/routes/local-inference-asr-route.d.ts.map +0 -1
- package/src/routes/local-inference-asr-transcribe.d.ts.map +0 -1
- package/src/routes/local-inference-compat-routes.d.ts.map +0 -1
- package/src/routes/local-inference-tts-route.d.ts.map +0 -1
- package/src/routes/transcript-audio-store.d.ts.map +0 -1
- package/src/routes/transcripts-routes.d.ts.map +0 -1
- package/src/routes/voice-first-run-routes.d.ts.map +0 -1
- package/src/routes/voice-models-routes.d.ts.map +0 -1
- package/src/routes/voice-profile-plugin-routes.d.ts.map +0 -1
- package/src/routes/voice-profiles-management-routes.d.ts.map +0 -1
- package/src/routes/voice-speaker-profile-routes.d.ts.map +0 -1
- package/src/runtime/embedding-manager-support.d.ts.map +0 -1
- package/src/runtime/embedding-presets.d.ts.map +0 -1
- package/src/runtime/embedding-warmup-policy.d.ts.map +0 -1
- package/src/runtime/ensure-local-inference-handler.d.ts.map +0 -1
- package/src/runtime/index.d.ts.map +0 -1
- package/src/runtime/mobile-local-inference-gate.d.ts +0 -31
- package/src/runtime/mobile-local-inference-gate.d.ts.map +0 -1
- package/src/runtime/voice-entity-binding.d.ts.map +0 -1
- package/src/services/active-model.d.ts.map +0 -1
- package/src/services/assignments.d.ts.map +0 -1
- package/src/services/backend.d.ts.map +0 -1
- package/src/services/bionic-host-loader.d.ts.map +0 -1
- package/src/services/bundled-models.d.ts.map +0 -1
- package/src/services/cache-bridge.d.ts.map +0 -1
- package/src/services/catalog.d.ts +0 -10
- package/src/services/catalog.d.ts.map +0 -1
- package/src/services/checkpoint-client.d.ts.map +0 -1
- package/src/services/cloud-fallback.d.ts.map +0 -1
- package/src/services/conversation-registry.d.ts.map +0 -1
- package/src/services/desktop-fused-ffi-backend-runtime.d.ts.map +0 -1
- package/src/services/device-bridge.d.ts.map +0 -1
- package/src/services/device-resource-metrics.d.ts.map +0 -1
- package/src/services/device-tier.d.ts.map +0 -1
- package/src/services/downloader.d.ts.map +0 -1
- package/src/services/engine.d.ts.map +0 -1
- package/src/services/external-scanner.d.ts.map +0 -1
- package/src/services/ffi-streaming-backend.d.ts.map +0 -1
- package/src/services/ffi-streaming-runner.d.ts.map +0 -1
- package/src/services/gpu-detect.d.ts.map +0 -1
- package/src/services/handler-registry.d.ts.map +0 -1
- package/src/services/hardware.d.ts.map +0 -1
- package/src/services/hf-search.d.ts +0 -26
- package/src/services/hf-search.d.ts.map +0 -1
- package/src/services/hf-search.test.ts +0 -69
- package/src/services/hf-search.ts +0 -420
- package/src/services/image-description-runtime.d.ts.map +0 -1
- package/src/services/imagegen/aosp-unavailable.d.ts.map +0 -1
- package/src/services/imagegen/backend-selector.d.ts.map +0 -1
- package/src/services/imagegen/coreml-unavailable.d.ts.map +0 -1
- package/src/services/imagegen/errors.d.ts.map +0 -1
- package/src/services/imagegen/index.d.ts.map +0 -1
- package/src/services/imagegen/mflux.d.ts.map +0 -1
- package/src/services/imagegen/sd-cpp.d.ts.map +0 -1
- package/src/services/imagegen/tensorrt-unavailable.d.ts.map +0 -1
- package/src/services/imagegen/types.d.ts.map +0 -1
- package/src/services/index.d.ts.map +0 -1
- package/src/services/inference-capabilities.d.ts.map +0 -1
- package/src/services/inference-telemetry.d.ts.map +0 -1
- package/src/services/kv-spill.d.ts.map +0 -1
- package/src/services/latency-trace.d.ts.map +0 -1
- package/src/services/llm-streaming-binding.d.ts.map +0 -1
- package/src/services/load-args.d.ts.map +0 -1
- package/src/services/manifest/index.d.ts +0 -4
- package/src/services/manifest/index.d.ts.map +0 -1
- package/src/services/manifest/schema.d.ts.map +0 -1
- package/src/services/manifest/types.d.ts.map +0 -1
- package/src/services/manifest/validator.d.ts.map +0 -1
- package/src/services/memory-arbiter.d.ts.map +0 -1
- package/src/services/memory-monitor.d.ts.map +0 -1
- package/src/services/memory-pressure.d.ts.map +0 -1
- package/src/services/mtp-doctor.d.ts.map +0 -1
- package/src/services/network-policy.d.ts.map +0 -1
- package/src/services/paths.d.ts.map +0 -1
- package/src/services/planner-skeleton.d.ts.map +0 -1
- package/src/services/providers.d.ts.map +0 -1
- package/src/services/ram-budget.d.ts.map +0 -1
- package/src/services/readiness.d.ts.map +0 -1
- package/src/services/recommendation.d.ts.map +0 -1
- package/src/services/registry.d.ts.map +0 -1
- package/src/services/router-handler.d.ts.map +0 -1
- package/src/services/routing-policy.d.ts.map +0 -1
- package/src/services/routing-preferences.d.ts.map +0 -1
- package/src/services/runtime-target.d.ts.map +0 -1
- package/src/services/service.d.ts.map +0 -1
- package/src/services/session-pool.d.ts.map +0 -1
- package/src/services/structured-output/deterministic-repair.d.ts.map +0 -1
- package/src/services/structured-output.d.ts.map +0 -1
- package/src/services/system-memory.d.ts.map +0 -1
- package/src/services/types.d.ts.map +0 -1
- package/src/services/verify-on-device.d.ts.map +0 -1
- package/src/services/verify.d.ts.map +0 -1
- package/src/services/vision/aosp-unavailable.d.ts.map +0 -1
- package/src/services/vision/capacitor-llama.d.ts.map +0 -1
- package/src/services/vision/cloud-fallback.d.ts.map +0 -1
- package/src/services/vision/hash.d.ts.map +0 -1
- package/src/services/vision/index.d.ts.map +0 -1
- package/src/services/vision/llama-server.d.ts.map +0 -1
- package/src/services/vision/types.d.ts.map +0 -1
- package/src/services/vision/vast-fallback.d.ts.map +0 -1
- package/src/services/vision-embedding-cache.d.ts.map +0 -1
- package/src/services/voice/audio-frame-consumer.d.ts.map +0 -1
- package/src/services/voice/barge-in.d.ts.map +0 -1
- package/src/services/voice/cancellation-coordinator.d.ts.map +0 -1
- package/src/services/voice/checkpoint-manager.d.ts.map +0 -1
- package/src/services/voice/eager-context-builder.d.ts.map +0 -1
- package/src/services/voice/eliza1-eot-scorer.d.ts.map +0 -1
- package/src/services/voice/embedding.d.ts.map +0 -1
- package/src/services/voice/emotion-attribution.d.ts.map +0 -1
- package/src/services/voice/engine-bridge.d.ts.map +0 -1
- package/src/services/voice/eot-classifier-ggml.d.ts.map +0 -1
- package/src/services/voice/eot-classifier.d.ts.map +0 -1
- package/src/services/voice/errors.d.ts.map +0 -1
- package/src/services/voice/expressive-tags.d.ts.map +0 -1
- package/src/services/voice/ffi-bindings.d.ts.map +0 -1
- package/src/services/voice/first-line-cache.d.ts.map +0 -1
- package/src/services/voice/fused-eot-scorer.d.ts.map +0 -1
- package/src/services/voice/index.d.ts.map +0 -1
- package/src/services/voice/kokoro/kokoro-backend.d.ts.map +0 -1
- package/src/services/voice/kokoro/kokoro-engine-discovery.d.ts.map +0 -1
- package/src/services/voice/kokoro/kokoro-ffi-runtime.d.ts.map +0 -1
- package/src/services/voice/kokoro/kokoro-runtime.d.ts.map +0 -1
- package/src/services/voice/kokoro/phonemizer.d.ts.map +0 -1
- package/src/services/voice/kokoro/pick-runtime.d.ts.map +0 -1
- package/src/services/voice/kokoro/runtime-selection.d.ts +0 -92
- package/src/services/voice/kokoro/runtime-selection.d.ts.map +0 -1
- package/src/services/voice/kokoro/types.d.ts.map +0 -1
- package/src/services/voice/kokoro/voice-presets.d.ts.map +0 -1
- package/src/services/voice/kokoro/voices.d.ts.map +0 -1
- package/src/services/voice/lifecycle.d.ts.map +0 -1
- package/src/services/voice/live-diarization-session.d.ts +0 -96
- package/src/services/voice/live-diarization-session.d.ts.map +0 -1
- package/src/services/voice/mic-source.d.ts.map +0 -1
- package/src/services/voice/optimistic-policy.d.ts.map +0 -1
- package/src/services/voice/partial-stabilizer.d.ts.map +0 -1
- package/src/services/voice/phoneme-tokenizer.d.ts.map +0 -1
- package/src/services/voice/phrase-cache.d.ts.map +0 -1
- package/src/services/voice/phrase-chunker.d.ts.map +0 -1
- package/src/services/voice/pipeline-impls.d.ts.map +0 -1
- package/src/services/voice/pipeline.d.ts.map +0 -1
- package/src/services/voice/prefill-client.d.ts.map +0 -1
- package/src/services/voice/prefix-preserving-queue.d.ts.map +0 -1
- package/src/services/voice/profile-store.d.ts.map +0 -1
- package/src/services/voice/ring-buffer.d.ts.map +0 -1
- package/src/services/voice/rollback-queue.d.ts.map +0 -1
- package/src/services/voice/samantha-preset-placeholder.d.ts.map +0 -1
- package/src/services/voice/samantha-preset-regenerator.d.ts.map +0 -1
- package/src/services/voice/scheduler.d.ts.map +0 -1
- package/src/services/voice/shared-resources.d.ts.map +0 -1
- package/src/services/voice/speaker/attribution-pipeline.d.ts.map +0 -1
- package/src/services/voice/speaker/diarizer-fused.d.ts.map +0 -1
- package/src/services/voice/speaker/diarizer.d.ts.map +0 -1
- package/src/services/voice/speaker/encoder-fused.d.ts.map +0 -1
- package/src/services/voice/speaker/encoder-ggml.d.ts.map +0 -1
- package/src/services/voice/speaker/encoder.d.ts.map +0 -1
- package/src/services/voice/speaker-imprint.d.ts.map +0 -1
- package/src/services/voice/speaker-preset-cache.d.ts.map +0 -1
- package/src/services/voice/system-audio-sink.d.ts.map +0 -1
- package/src/services/voice/transcriber.d.ts.map +0 -1
- package/src/services/voice/transcript-knowledge.d.ts.map +0 -1
- package/src/services/voice/transcript-service.d.ts.map +0 -1
- package/src/services/voice/transcript-store.d.ts.map +0 -1
- package/src/services/voice/turn-controller.d.ts.map +0 -1
- package/src/services/voice/types.d.ts.map +0 -1
- package/src/services/voice/vad.d.ts.map +0 -1
- package/src/services/voice/voice-budget.d.ts.map +0 -1
- package/src/services/voice/voice-emotion-classifier.d.ts.map +0 -1
- package/src/services/voice/voice-preset-format.d.ts.map +0 -1
- package/src/services/voice/voice-profile-artifact.d.ts.map +0 -1
- package/src/services/voice/voice-profile-routes.d.ts.map +0 -1
- package/src/services/voice/voice-settings.d.ts +0 -82
- package/src/services/voice/voice-settings.d.ts.map +0 -1
- package/src/services/voice/voice-settings.ts +0 -172
- package/src/services/voice/voice-state-machine.d.ts.map +0 -1
- package/src/services/voice/wake-word-ggml.d.ts.map +0 -1
- package/src/services/voice/wake-word.d.ts.map +0 -1
- package/src/services/voice/wrap-with-first-line-cache.d.ts.map +0 -1
- package/src/services/voice-model-updater.d.ts.map +0 -1
- package/src/services/voice-prewarm.d.ts.map +0 -1
- /package/{src → dist}/actions/generate-media.d.ts +0 -0
- /package/{src → dist}/actions/identify-speaker.d.ts +0 -0
- /package/{src → dist}/actions/transcription-control.d.ts +0 -0
- /package/{src → dist}/index.d.ts +0 -0
- /package/{src → dist}/provider.d.ts +0 -0
- /package/{src → dist}/routes/family-member-route.d.ts +0 -0
- /package/{src → dist}/routes/local-inference-asr-route.d.ts +0 -0
- /package/{src → dist}/routes/local-inference-asr-transcribe.d.ts +0 -0
- /package/{src → dist}/routes/local-inference-compat-routes.d.ts +0 -0
- /package/{src → dist}/routes/local-inference-tts-route.d.ts +0 -0
- /package/{src → dist}/routes/transcript-audio-store.d.ts +0 -0
- /package/{src → dist}/routes/voice-first-run-routes.d.ts +0 -0
- /package/{src → dist}/routes/voice-models-routes.d.ts +0 -0
- /package/{src → dist}/routes/voice-profile-plugin-routes.d.ts +0 -0
- /package/{src → dist}/routes/voice-profiles-management-routes.d.ts +0 -0
- /package/{src → dist}/routes/voice-speaker-profile-routes.d.ts +0 -0
- /package/{src → dist}/runtime/embedding-manager-support.d.ts +0 -0
- /package/{src → dist}/runtime/embedding-presets.d.ts +0 -0
- /package/{src → dist}/runtime/embedding-warmup-policy.d.ts +0 -0
- /package/{src → dist}/services/bundled-models.d.ts +0 -0
- /package/{src → dist}/services/cache-bridge.d.ts +0 -0
- /package/{src → dist}/services/checkpoint-client.d.ts +0 -0
- /package/{src → dist}/services/cloud-fallback.d.ts +0 -0
- /package/{src → dist}/services/conversation-registry.d.ts +0 -0
- /package/{src → dist}/services/device-bridge.d.ts +0 -0
- /package/{src → dist}/services/device-resource-metrics.d.ts +0 -0
- /package/{src → dist}/services/external-scanner.d.ts +0 -0
- /package/{src → dist}/services/gpu-detect.d.ts +0 -0
- /package/{src → dist}/services/handler-registry.d.ts +0 -0
- /package/{src → dist}/services/hardware.d.ts +0 -0
- /package/{src → dist}/services/image-description-runtime.d.ts +0 -0
- /package/{src → dist}/services/imagegen/aosp-unavailable.d.ts +0 -0
- /package/{src → dist}/services/imagegen/backend-selector.d.ts +0 -0
- /package/{src → dist}/services/imagegen/coreml-unavailable.d.ts +0 -0
- /package/{src → dist}/services/imagegen/errors.d.ts +0 -0
- /package/{src → dist}/services/imagegen/index.d.ts +0 -0
- /package/{src → dist}/services/imagegen/mflux.d.ts +0 -0
- /package/{src → dist}/services/imagegen/tensorrt-unavailable.d.ts +0 -0
- /package/{src → dist}/services/imagegen/types.d.ts +0 -0
- /package/{src → dist}/services/inference-capabilities.d.ts +0 -0
- /package/{src → dist}/services/inference-telemetry.d.ts +0 -0
- /package/{src → dist}/services/kv-spill.d.ts +0 -0
- /package/{src → dist}/services/latency-trace.d.ts +0 -0
- /package/{src → dist}/services/llm-streaming-binding.d.ts +0 -0
- /package/{src → dist}/services/load-args.d.ts +0 -0
- /package/{src → dist}/services/manifest/validator.d.ts +0 -0
- /package/{src → dist}/services/memory-pressure.d.ts +0 -0
- /package/{src → dist}/services/mtp-doctor.d.ts +0 -0
- /package/{src → dist}/services/network-policy.d.ts +0 -0
- /package/{src → dist}/services/paths.d.ts +0 -0
- /package/{src → dist}/services/planner-skeleton.d.ts +0 -0
- /package/{src → dist}/services/providers.d.ts +0 -0
- /package/{src → dist}/services/ram-budget.d.ts +0 -0
- /package/{src → dist}/services/readiness.d.ts +0 -0
- /package/{src → dist}/services/recommendation.d.ts +0 -0
- /package/{src → dist}/services/routing-preferences.d.ts +0 -0
- /package/{src → dist}/services/runtime-target.d.ts +0 -0
- /package/{src → dist}/services/session-pool.d.ts +0 -0
- /package/{src → dist}/services/structured-output/deterministic-repair.d.ts +0 -0
- /package/{src → dist}/services/structured-output.d.ts +0 -0
- /package/{src → dist}/services/system-memory.d.ts +0 -0
- /package/{src → dist}/services/verify-on-device.d.ts +0 -0
- /package/{src → dist}/services/verify.d.ts +0 -0
- /package/{src → dist}/services/vision/aosp-unavailable.d.ts +0 -0
- /package/{src → dist}/services/vision/capacitor-llama.d.ts +0 -0
- /package/{src → dist}/services/vision/cloud-fallback.d.ts +0 -0
- /package/{src → dist}/services/vision/hash.d.ts +0 -0
- /package/{src → dist}/services/vision/llama-server.d.ts +0 -0
- /package/{src → dist}/services/vision/vast-fallback.d.ts +0 -0
- /package/{src → dist}/services/voice/barge-in.d.ts +0 -0
- /package/{src → dist}/services/voice/cancellation-coordinator.d.ts +0 -0
- /package/{src → dist}/services/voice/checkpoint-manager.d.ts +0 -0
- /package/{src → dist}/services/voice/eager-context-builder.d.ts +0 -0
- /package/{src → dist}/services/voice/emotion-attribution.d.ts +0 -0
- /package/{src → dist}/services/voice/first-line-cache.d.ts +0 -0
- /package/{src → dist}/services/voice/kokoro/kokoro-runtime.d.ts +0 -0
- /package/{src → dist}/services/voice/kokoro/phonemizer.d.ts +0 -0
- /package/{src → dist}/services/voice/kokoro/types.d.ts +0 -0
- /package/{src → dist}/services/voice/kokoro/voice-presets.d.ts +0 -0
- /package/{src → dist}/services/voice/kokoro/voices.d.ts +0 -0
- /package/{src → dist}/services/voice/lifecycle.d.ts +0 -0
- /package/{src → dist}/services/voice/optimistic-policy.d.ts +0 -0
- /package/{src → dist}/services/voice/phoneme-tokenizer.d.ts +0 -0
- /package/{src → dist}/services/voice/phrase-cache.d.ts +0 -0
- /package/{src → dist}/services/voice/phrase-chunker.d.ts +0 -0
- /package/{src → dist}/services/voice/pipeline-impls.d.ts +0 -0
- /package/{src → dist}/services/voice/pipeline.d.ts +0 -0
- /package/{src → dist}/services/voice/prefill-client.d.ts +0 -0
- /package/{src → dist}/services/voice/prefix-preserving-queue.d.ts +0 -0
- /package/{src → dist}/services/voice/profile-store.d.ts +0 -0
- /package/{src → dist}/services/voice/ring-buffer.d.ts +0 -0
- /package/{src → dist}/services/voice/rollback-queue.d.ts +0 -0
- /package/{src → dist}/services/voice/samantha-preset-placeholder.d.ts +0 -0
- /package/{src → dist}/services/voice/samantha-preset-regenerator.d.ts +0 -0
- /package/{src → dist}/services/voice/scheduler.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/attribution-pipeline.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/diarizer-fused.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/diarizer.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/encoder-fused.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/encoder-ggml.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker/encoder.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker-imprint.d.ts +0 -0
- /package/{src → dist}/services/voice/speaker-preset-cache.d.ts +0 -0
- /package/{src → dist}/services/voice/system-audio-sink.d.ts +0 -0
- /package/{src → dist}/services/voice/transcript-knowledge.d.ts +0 -0
- /package/{src → dist}/services/voice/turn-controller.d.ts +0 -0
- /package/{src → dist}/services/voice/voice-budget.d.ts +0 -0
- /package/{src → dist}/services/voice/voice-emotion-classifier.d.ts +0 -0
- /package/{src → dist}/services/voice/voice-profile-artifact.d.ts +0 -0
- /package/{src → dist}/services/voice/voice-profile-routes.d.ts +0 -0
- /package/{src → dist}/services/voice/voice-state-machine.d.ts +0 -0
- /package/{src → dist}/services/voice/wake-word.d.ts +0 -0
- /package/{src → dist}/services/voice/wrap-with-first-line-cache.d.ts +0 -0
- /package/{src → dist}/services/voice-model-updater.d.ts +0 -0
- /package/{src → dist}/services/voice-prewarm.d.ts +0 -0
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Feature-flagged + capability-detected wrapper around the REST-backed
|
|
3
|
+
* `CheckpointManager` from `voice/checkpoint-manager.ts`.
|
|
4
|
+
*
|
|
5
|
+
* Why two layers?
|
|
6
|
+
*
|
|
7
|
+
* - `voice/checkpoint-manager.ts` is the production primitive: REST adapter
|
|
8
|
+
* + handle bookkeeping + mock implementation. It is referenced directly
|
|
9
|
+
* by `voice/voice-state-machine.ts` and by `voice/prefill-client.ts`,
|
|
10
|
+
* both of which expect callers to have already decided whether the
|
|
11
|
+
* feature is on.
|
|
12
|
+
*
|
|
13
|
+
* - This module is the *runtime gate*. It owns:
|
|
14
|
+
* 1. The process-wide feature flag (`ELIZA_CTX_CHECKPOINTS=1` env, or
|
|
15
|
+
* `useCtxCheckpoints` constructor option — env wins when set).
|
|
16
|
+
* 2. Capability detection against a running checkpoint runtime (`/health`
|
|
17
|
+
* probe via the underlying `CheckpointClient`).
|
|
18
|
+
* 3. A no-op fallback path so callers — the `checkpoint-policy.ts`
|
|
19
|
+
* module in particular — can write unconditional `save / restore /
|
|
20
|
+
* erase / cancel` calls without branching on the flag.
|
|
21
|
+
* 4. A named-handle registry with TTL eviction. The upstream server
|
|
22
|
+
* has its own LRU on `--ctx-checkpoints N`; this registry tracks
|
|
23
|
+
* *our* names → handles so the policy module can refer to
|
|
24
|
+
* `'pre-speculative-T123'` instead of opaque filenames.
|
|
25
|
+
*
|
|
26
|
+
* When the upstream merge lands, flip `ELIZA_CTX_CHECKPOINTS=1` and the
|
|
27
|
+
* wrapper starts forwarding to the REST manager. Until then, every call
|
|
28
|
+
* short-circuits to a logged no-op.
|
|
29
|
+
*
|
|
30
|
+
* Feature-flag behavior matrix:
|
|
31
|
+
*
|
|
32
|
+
* | flag | runtime-supports | save | restore | erase | cancel |
|
|
33
|
+
* | OFF | n/a | no-op + warn | no-op + warn | no-op | SSE-disconnect cb |
|
|
34
|
+
* | ON | NO (probe=fail)| no-op + warn | no-op + warn | no-op | SSE-disconnect cb |
|
|
35
|
+
* | ON | YES (probe=ok) | REST POST /slots/.../save | REST POST /slots/.../restore | n/a | DELETE /slots/<id> |
|
|
36
|
+
*
|
|
37
|
+
* The stream-disconnect callback is supplied by the caller (the voice loop
|
|
38
|
+
* owns the stream and the abort handle); when the flag/probe is off the
|
|
39
|
+
* wrapper just invokes the callback synchronously.
|
|
40
|
+
*
|
|
41
|
+
* This module deliberately does NOT modify `turn-controller.ts`,
|
|
42
|
+
* `pipeline.ts`, `pipeline-impls.ts`, `vad.ts`, `scheduler.ts`,
|
|
43
|
+
* `phrase-chunker.ts`, `barge-in.ts`, `transcriber.ts`, or anything under
|
|
44
|
+
* `voice/kokoro/` / `voice/streaming-asr/`. Those files are owned by other
|
|
45
|
+
* agents; the policy in `voice/checkpoint-policy.ts` is the integration
|
|
46
|
+
* point.
|
|
47
|
+
*/
|
|
48
|
+
import { type CheckpointFetch } from "./checkpoint-client";
|
|
49
|
+
import { type CheckpointHandle } from "./voice/checkpoint-manager";
|
|
50
|
+
export type { CheckpointHandle, CheckpointManagerLike, } from "./voice/checkpoint-manager";
|
|
51
|
+
/**
|
|
52
|
+
* Env-var name that flips the JS-side feature on. The matching server-side
|
|
53
|
+
* `--ctx-checkpoints` flag is appended by the native runtime when the catalog
|
|
54
|
+
* tier declares `optimizations.ctxCheckpoints` and the binding supports it.
|
|
55
|
+
*/
|
|
56
|
+
export declare const CTX_CHECKPOINTS_ENV_VAR = "ELIZA_CTX_CHECKPOINTS";
|
|
57
|
+
/**
|
|
58
|
+
* Default TTL for entries in the named registry. The upstream server runs
|
|
59
|
+
* its own LRU on `--ctx-checkpoints N` (default 8 per slot); this TTL is
|
|
60
|
+
* for *our* name → handle mapping so a stale name doesn't keep a handle
|
|
61
|
+
* pinned forever. 10 minutes covers any plausible mid-conversation pause
|
|
62
|
+
* with margin; anything older than that the policy module should re-save
|
|
63
|
+
* rather than reuse.
|
|
64
|
+
*/
|
|
65
|
+
export declare const DEFAULT_NAMED_HANDLE_TTL_MS: number;
|
|
66
|
+
/**
|
|
67
|
+
* Read the process-wide feature flag. Truthy values: `1`, `true`, `yes`.
|
|
68
|
+
* Anything else (including absent) is `false`.
|
|
69
|
+
*/
|
|
70
|
+
export declare function readCtxCheckpointsEnvFlag(): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Caller-supplied "abort the in-flight stream for this slot" hook. The
|
|
73
|
+
* voice loop owns the actual stream handle (held by `turn-controller.ts` via
|
|
74
|
+
* the speculative `AbortController`); the policy module hands a thunk in
|
|
75
|
+
* here so `cancel(slotId)` works identically with the flag on or off.
|
|
76
|
+
*/
|
|
77
|
+
export type SseDisconnectFn = (slotId: number) => void;
|
|
78
|
+
export interface GatedCheckpointManagerOptions {
|
|
79
|
+
/**
|
|
80
|
+
* `http://host:port` base URL of the running checkpoint runtime. May be `null`
|
|
81
|
+
* before the caller starts the server — every method then routes through
|
|
82
|
+
* the no-op path until `setBaseUrl` is called.
|
|
83
|
+
*/
|
|
84
|
+
baseUrl: string | null;
|
|
85
|
+
/**
|
|
86
|
+
* Explicit override for the feature flag. When unset, the env var
|
|
87
|
+
* (`ELIZA_CTX_CHECKPOINTS`) is consulted. When set, the env var is
|
|
88
|
+
* ignored. Tests pass `false` to assert the no-op path; production code
|
|
89
|
+
* leaves this `undefined` so the env var wins.
|
|
90
|
+
*/
|
|
91
|
+
useCtxCheckpoints?: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Optional custom fetch (mostly for unit tests). Forwarded to
|
|
94
|
+
* `CheckpointClient`.
|
|
95
|
+
*/
|
|
96
|
+
fetchImpl?: CheckpointFetch;
|
|
97
|
+
/** Per-request timeout for REST calls (ms). Default 1500ms. */
|
|
98
|
+
requestTimeoutMs?: number;
|
|
99
|
+
/**
|
|
100
|
+
* Optional slot-id resolver. Forwarded to the underlying
|
|
101
|
+
* `CheckpointManager`. Default is the 31-bit hash → `% 256` resolver
|
|
102
|
+
* defined in `voice/checkpoint-manager.ts`.
|
|
103
|
+
*/
|
|
104
|
+
resolveSlotId?: (slotIdString: string) => number;
|
|
105
|
+
/**
|
|
106
|
+
* TTL (ms) for entries in the named handle registry. Default 10 minutes.
|
|
107
|
+
* Set to 0 to disable TTL eviction (entries live until explicitly
|
|
108
|
+
* cleared).
|
|
109
|
+
*/
|
|
110
|
+
namedHandleTtlMs?: number;
|
|
111
|
+
/** Injected clock for tests. Defaults to `Date.now`. */
|
|
112
|
+
now?: () => number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Process-wide gate around the REST-backed `CheckpointManager`. Owns the
|
|
116
|
+
* feature flag, capability detection cache, named-handle registry, and a
|
|
117
|
+
* fallback path for `cancel` that calls back into the voice loop's SSE
|
|
118
|
+
* disconnect when REST is not available.
|
|
119
|
+
*
|
|
120
|
+
* Stateless w.r.t. checkpoint data — handles live in the underlying
|
|
121
|
+
* REST manager / on the runtime's slot-save directory. Stateful
|
|
122
|
+
* w.r.t. names: the registry maps human-readable names like
|
|
123
|
+
* `'pre-speculative-T123'` to the underlying `CheckpointHandle`.
|
|
124
|
+
*/
|
|
125
|
+
export declare class GatedCheckpointManager {
|
|
126
|
+
private readonly explicitFlag;
|
|
127
|
+
private readonly fetchImpl?;
|
|
128
|
+
private readonly requestTimeoutMs?;
|
|
129
|
+
private readonly resolveSlotId?;
|
|
130
|
+
private readonly namedHandleTtlMs;
|
|
131
|
+
private readonly now;
|
|
132
|
+
private readonly named;
|
|
133
|
+
private baseUrl;
|
|
134
|
+
/** Lazy: built on first use once `baseUrl` is non-null. */
|
|
135
|
+
private restManager;
|
|
136
|
+
/** Lazy: built on first capability probe. */
|
|
137
|
+
private capabilityClient;
|
|
138
|
+
/** Cached capability probe result. Cleared on `setBaseUrl`. */
|
|
139
|
+
private serverSupportsCheckpoints;
|
|
140
|
+
constructor(opts: GatedCheckpointManagerOptions);
|
|
141
|
+
/**
|
|
142
|
+
* Whether the JS-side feature flag is on. Does NOT check capability —
|
|
143
|
+
* call `detectCapability()` for the combined gate.
|
|
144
|
+
*/
|
|
145
|
+
isFeatureFlagOn(): boolean;
|
|
146
|
+
/**
|
|
147
|
+
* Combined gate: feature flag AND base URL set AND server probe (cached)
|
|
148
|
+
* returned true. Callers that want the up-to-the-second view should call
|
|
149
|
+
* `detectCapability(true)` to force a re-probe.
|
|
150
|
+
*/
|
|
151
|
+
isEnabled(): boolean;
|
|
152
|
+
/**
|
|
153
|
+
* Update the base URL after a server (re)start. Clears the capability
|
|
154
|
+
* cache so the next `detectCapability()` re-probes.
|
|
155
|
+
*/
|
|
156
|
+
setBaseUrl(baseUrl: string | null): void;
|
|
157
|
+
/**
|
|
158
|
+
* Probe the runtime for checkpoint support. Caches the result; pass
|
|
159
|
+
* `force=true` to re-probe (e.g. after the server reports a restart).
|
|
160
|
+
* Returns `false` when the feature flag is off — the probe is short-
|
|
161
|
+
* circuited because there's no point asking the server when the JS side
|
|
162
|
+
* isn't going to call the endpoints anyway.
|
|
163
|
+
*/
|
|
164
|
+
detectCapability(force?: boolean): Promise<boolean>;
|
|
165
|
+
/**
|
|
166
|
+
* Snapshot the slot's KV state under `name`. Registers `name → handle`
|
|
167
|
+
* in the registry so later `restore(slotId, name)` / `erase(slotId,
|
|
168
|
+
* name)` calls can look the handle up. Replaces any prior entry with the
|
|
169
|
+
* same name. No-op (returns `null`) when the gate is off.
|
|
170
|
+
*
|
|
171
|
+
* Naming convention: callers should encode the conversation/turn id
|
|
172
|
+
* into the name so multiple slots don't collide
|
|
173
|
+
* (`pre-speculative-T123`, not `pre-speculative`).
|
|
174
|
+
*/
|
|
175
|
+
save(slotId: number, name: string): Promise<CheckpointHandle | null>;
|
|
176
|
+
/**
|
|
177
|
+
* Restore the slot from a previously-saved snapshot. The `handle`
|
|
178
|
+
* argument may be:
|
|
179
|
+
*
|
|
180
|
+
* - A `CheckpointHandle` returned from a prior `save()` — pass it
|
|
181
|
+
* directly; the manager goes straight to the REST endpoint.
|
|
182
|
+
* - A string `name` — looked up in the registry. Returns `false` if
|
|
183
|
+
* the name is unknown or has expired; callers can fall back to
|
|
184
|
+
* re-running the speculative draft from scratch.
|
|
185
|
+
*
|
|
186
|
+
* Returns `true` on success, `false` on no-op / unknown handle. Never
|
|
187
|
+
* throws for the "feature off" path; REST errors do propagate.
|
|
188
|
+
*/
|
|
189
|
+
restore(slotId: number, handleOrName: CheckpointHandle | string): Promise<boolean>;
|
|
190
|
+
/**
|
|
191
|
+
* Erase the named entry from the local registry AND ask the underlying
|
|
192
|
+
* REST manager to discard the checkpoint. No-op when the gate is off or
|
|
193
|
+
* the name is unknown. The upstream server has no per-file delete today
|
|
194
|
+
* (see comments in `voice/checkpoint-manager.ts`), so `discard` actually
|
|
195
|
+
* cancels in-flight decode on the slot — semantically "drop everything
|
|
196
|
+
* speculative".
|
|
197
|
+
*/
|
|
198
|
+
erase(slotId: number, handleOrName: CheckpointHandle | string): Promise<void>;
|
|
199
|
+
/**
|
|
200
|
+
* Cancel any in-flight generation on `slotId`. When the gate is on this
|
|
201
|
+
* is `DELETE /slots/<id>`; when off it falls back to the SSE-disconnect
|
|
202
|
+
* callback the voice loop supplied (so the speculative draft is still
|
|
203
|
+
* aborted, just via the existing path).
|
|
204
|
+
*/
|
|
205
|
+
cancel(slotId: number, sseDisconnect: SseDisconnectFn): Promise<void>;
|
|
206
|
+
/** Look up a previously-registered name. */
|
|
207
|
+
getNamedHandle(name: string): CheckpointHandle | null;
|
|
208
|
+
/** Number of live entries in the named registry. */
|
|
209
|
+
registrySize(): number;
|
|
210
|
+
/** Clear the entire registry. Useful on conversation end / server restart. */
|
|
211
|
+
clearRegistry(): void;
|
|
212
|
+
private resolveHandle;
|
|
213
|
+
private evictExpired;
|
|
214
|
+
private getRestManager;
|
|
215
|
+
private getCapabilityClient;
|
|
216
|
+
}
|
|
217
|
+
//# sourceMappingURL=checkpoint-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoint-manager.d.ts","sourceRoot":"","sources":["../../src/services/checkpoint-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAGH,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACX,gBAAgB,EAChB,qBAAqB,GACrB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAE/D;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,QAAiB,CAAC;AAE1D;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,OAAO,CAGnD;AAED;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAEvD,MAAM,WAAW,6BAA6B;IAC7C;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC;IACjD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACnB;AAQD;;;;;;;;;;GAUG;AACH,qBAAa,sBAAsB;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAmC;IAClE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuC;IAE7D,OAAO,CAAC,OAAO,CAAgB;IAC/B,2DAA2D;IAC3D,OAAO,CAAC,WAAW,CAAsC;IACzD,6CAA6C;IAC7C,OAAO,CAAC,gBAAgB,CAAiC;IACzD,+DAA+D;IAC/D,OAAO,CAAC,yBAAyB,CAAwB;gBAE7C,IAAI,EAAE,6BAA6B;IAiB/C;;;OAGG;IACH,eAAe,IAAI,OAAO;IAM1B;;;;OAIG;IACH,SAAS,IAAI,OAAO;IAQpB;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAQxC;;;;;;OAMG;IACG,gBAAgB,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCvD;;;;;;;;;OASG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAc1E;;;;;;;;;;;;OAYG;IACG,OAAO,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,gBAAgB,GAAG,MAAM,GACrC,OAAO,CAAC,OAAO,CAAC;IAoBnB;;;;;;;OAOG;IACG,KAAK,CACV,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,gBAAgB,GAAG,MAAM,GACrC,OAAO,CAAC,IAAI,CAAC;IAwBhB;;;;;OAKG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B3E,4CAA4C;IAC5C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAKrD,oDAAoD;IACpD,YAAY,IAAI,MAAM;IAKtB,8EAA8E;IAC9E,aAAa,IAAI,IAAI;IAMrB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,mBAAmB;CAgB3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloud-fallback.d.ts","sourceRoot":"","sources":["../../src/services/cloud-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EACX,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,aAAa,EACb,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,cAAc;AACzB,oGAAoG;AAClG,mBAAmB;AACrB,uFAAuF;GACrF,kBAAkB;AACpB,sDAAsD;GACpD,aAAa;AACf,yEAAyE;GACvE,8BAA8B;AAChC,4DAA4D;GAC1D,sBAAsB,CAAC;AAE1B,MAAM,MAAM,oBAAoB,GAC7B;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,cAAc,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAE/D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG;IACjD,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;CACvB,CAyCA;AAED;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IACpD,MAAM,EAAE,GAAG,CACV,MAAM,EACN,KAAK,CAAC;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,CACR,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,KACtC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;KACjC,CAAC,CACF,CAAC;CACF,CAAC;AAEF,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,CACR,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,KACtC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;CACjC;AAED,wBAAgB,kBAAkB,CACjC,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,GAAG,MAAM,EACjC,eAAe,EAAE,MAAM,GACrB,cAAc,GAAG,IAAI,CAgBvB;AAED,MAAM,WAAW,oBAAoB;IACpC,gFAAgF;IAChF,aAAa,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,SAAS,EAAE,aAAa,GAAG,MAAM,CAAC;IAClC;;;OAGG;IACH,aAAa,EAAE,CACd,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,kBAAkB,KACtB,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnC,oFAAoF;IACpF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CAClE;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACvC,IAAI,EAAE,oBAAoB,GACxB,CACF,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC,KACtC,OAAO,CAAC,MAAM,CAAC,CA0CnB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export interface RuntimeContextFitInput {
|
|
2
|
+
params: string;
|
|
3
|
+
weightMb: number;
|
|
4
|
+
usableMb: number;
|
|
5
|
+
nativeContext: number;
|
|
6
|
+
minContext?: number;
|
|
7
|
+
workingSetMb?: number;
|
|
8
|
+
contextStep?: number;
|
|
9
|
+
/**
|
|
10
|
+
* When the host has enough headroom to run the more accurate f16 KV cache at
|
|
11
|
+
* (at least) the same window q8_0 would give, prefer f16 instead of leaving
|
|
12
|
+
* precision on the table. Opt-in — q8_0 stays the default per the device-fit
|
|
13
|
+
* contract; this only ever *upgrades* precision and never trades away context
|
|
14
|
+
* (#8809 AC#4). See CONTEXT_SCALING.md §5.
|
|
15
|
+
*/
|
|
16
|
+
preferAccurateKvWhenHeadroom?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface RuntimeContextFit {
|
|
19
|
+
contextSize: number;
|
|
20
|
+
contextDownscaled: boolean;
|
|
21
|
+
maxFittingContext: number;
|
|
22
|
+
kvBytesPerToken: number;
|
|
23
|
+
workingSetMb: number;
|
|
24
|
+
/** The KV cache precision the chosen window was sized against. */
|
|
25
|
+
kvQuant: "q8_0" | "f16";
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Choose the runtime context window that fits the current host budget.
|
|
29
|
+
*
|
|
30
|
+
* The admission gate still decides whether the model may load at all. This
|
|
31
|
+
* helper only sizes the q8_0 KV window for an admitted Eliza-1 tier so a tight
|
|
32
|
+
* host gets the largest safe window instead of blindly taking the catalog
|
|
33
|
+
* ceiling.
|
|
34
|
+
*/
|
|
35
|
+
export declare function computeRuntimeContextFit(input: RuntimeContextFitInput): RuntimeContextFit | null;
|
|
36
|
+
//# sourceMappingURL=context-fit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-fit.d.ts","sourceRoot":"","sources":["../../src/services/context-fit.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC;CACxB;AAMD;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,sBAAsB,GAC3B,iBAAiB,GAAG,IAAI,CA2D1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-registry.d.ts","sourceRoot":"","sources":["../../src/services/conversation-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAIH;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAID;;;;GAIG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IACjE,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6B;IACtD,wFAAwF;IACxF,OAAO,CAAC,aAAa,CAAK;IAE1B;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,oBAAoB,GAAG,kBAAkB;IAqCpD;;;;OAIG;IACH,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI;IAOvE;;;;OAIG;IACH,KAAK,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAcpD;;;;OAIG;IACH,SAAS,CAAC,GAAG,GAAE,MAAmB,GAAG,MAAM,EAAE;IAkB7C;;;OAGG;IACH,QAAQ,IAAI,SAAS,kBAAkB,EAAE;IAIzC,yEAAyE;IACzE,SAAS,IAAI,MAAM;IAInB,wCAAwC;IACxC,IAAI,IAAI,MAAM;IAId;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAM5C;;;;;OAKG;IACH,eAAe,IAAI,IAAI;IAOvB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,YAAY;CAGpB;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,sBAA6B,CAAC"}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* model.
|
|
9
9
|
*
|
|
10
10
|
* - The fused lib's `eliza_inference_llm_stream_open` loads the bundle's text
|
|
11
|
-
* GGUF (`<bundleRoot>/text/*.gguf`) and applies
|
|
11
|
+
* GGUF (`<bundleRoot>/text/*.gguf`) and applies MTP speculative
|
|
12
12
|
* decoding + KV-cache quant + per-load GPU layers natively (ABI v9). The
|
|
13
13
|
* path is gated on the capability probes
|
|
14
14
|
* (`llmStreamSupported && llmMtpSupported && llmKvQuantSupported`).
|
|
@@ -48,7 +48,7 @@ export declare class DesktopFusedFfiBackendRuntime implements FfiBackendRuntime
|
|
|
48
48
|
* Viable only when:
|
|
49
49
|
* - bun:ffi resolves on the current runtime,
|
|
50
50
|
* - the fused dylib is present AND reports ABI-v9 capability: the
|
|
51
|
-
* streaming-LLM surface,
|
|
51
|
+
* streaming-LLM surface, MTP, KV-cache quant, AND native
|
|
52
52
|
* tokenization (`eliza_inference_tokenize`).
|
|
53
53
|
* A pre-v9 fused lib reports the probes as unsupported → refused, and the
|
|
54
54
|
* engine raises LocalInferenceUnavailable. libllama has been retired; there
|
|
@@ -67,10 +67,24 @@ export declare class DesktopFusedFfiBackendRuntime implements FfiBackendRuntime
|
|
|
67
67
|
*/
|
|
68
68
|
visionSupported(): boolean;
|
|
69
69
|
/**
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
70
|
+
* Whether the LIVE session can STREAM a vision describe token-by-token
|
|
71
|
+
* through `eliza_inference_describe_image_stream_open` + the existing
|
|
72
|
+
* `llmStreamNext` loop (ABI v13). A <=v12 lib reports false and the handler
|
|
73
|
+
* uses the buffered one-shot `describeImage` path.
|
|
74
|
+
*/
|
|
75
|
+
visionStreamSupported(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Vision describe through the fused mmproj path. Reuses the mtmd machinery
|
|
78
|
+
* linked for ASR over the bundle's text model + the passed mmproj projector.
|
|
79
|
+
* The `FfiStreamingBackend` forwards `describeImage`/`visionSupported` to this
|
|
80
|
+
* runtime by duck-typing.
|
|
81
|
+
*
|
|
82
|
+
* When `onTextChunk` is supplied AND the fused lib exposes ABI-v13 streaming
|
|
83
|
+
* vision, the description is decoded token-by-token: `describeImageStreamOpen`
|
|
84
|
+
* primes a stream with the image+prompt KV and the EXISTING `llmStreamNext`
|
|
85
|
+
* loop pulls tokens — the same machinery that streams chat text, so vision
|
|
86
|
+
* flows into the dashboard through one pipe. Otherwise it falls back to the
|
|
87
|
+
* buffered one-shot `eliza_inference_describe_image`.
|
|
74
88
|
*/
|
|
75
89
|
describeImage(args: {
|
|
76
90
|
imageBytes: Uint8Array;
|
|
@@ -79,6 +93,8 @@ export declare class DesktopFusedFfiBackendRuntime implements FfiBackendRuntime
|
|
|
79
93
|
maxTokens?: number;
|
|
80
94
|
temperature?: number;
|
|
81
95
|
signal?: AbortSignal;
|
|
96
|
+
onTextChunk?: (chunk: string) => void | Promise<void>;
|
|
97
|
+
maxTokensPerStep?: number;
|
|
82
98
|
}): Promise<{
|
|
83
99
|
text: string;
|
|
84
100
|
projectorMs?: number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"desktop-fused-ffi-backend-runtime.d.ts","sourceRoot":"","sources":["../../src/services/desktop-fused-ffi-backend-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EACX,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,yBAAyB,CAAC;AA6BjC;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACtC,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,GAAG,GAAE,MAAM,CAAC,UAAwB,GAClC,MAAM,GAAG,IAAI,CAgBf;AAmBD,qBAAa,6BAA8B,YAAW,iBAAiB;IACtE,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,aAAa,CAAsB;IAC3C,+EAA+E;IAC/E,OAAO,CAAC,cAAc,CAAwB;IAE9C;;;;;;;;;OASG;IACH,SAAS,IAAI,OAAO;IAMpB,iEAAiE;IACjE,mBAAmB,IAAI,IAAI;IAI3B,OAAO,CAAC,gBAAgB;IAsClB,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqF5D,aAAa,IAAI,MAAM;IAMvB;;;;OAIG;IACH,eAAe,IAAI,OAAO;IAS1B;;;;;OAKG;IACH,qBAAqB,IAAI,OAAO;IAYhC;;;;;;;;;;;;OAYG;IACG,aAAa,CAAC,IAAI,EAAE;QACzB,UAAU,EAAE,UAAU,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC1B,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAiFhE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAgB9B;AAED;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,+BACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-bridge.d.ts","sourceRoot":"","sources":["../../src/services/device-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-resource-metrics.d.ts","sourceRoot":"","sources":["../../src/services/device-resource-metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE1E,MAAM,MAAM,kBAAkB,GAC3B,SAAS,GACT,MAAM,GACN,SAAS,GACT,UAAU,GACV,SAAS,CAAC;AAUb,0EAA0E;AAC1E,MAAM,WAAW,qBAAqB;IACrC,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC9B,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iDAAiD;IACjD,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,4BAA4B;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oFAAoF;IACpF,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACzC,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,iCAAiC;IACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,8FAA8F;IAC9F,aAAa,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,gBAAgB,EAAE,OAAO,CAAC;IAC1B,0FAA0F;IAC1F,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,6DAA6D;IAC7D,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,kBAAkB,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACxC,qDAAqD;IACrD,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,sEAAsE;IACtE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,wFAAwF;IACxF,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,gBAAgB,CAAC;IACzC,qBAAqB,EAAE,gBAAgB,CAAC;IACxC,uBAAuB,EAAE,gBAAgB,CAAC;IAC1C,MAAM,EAAE,gBAAgB,CAAC;IACzB,GAAG,EAAE,UAAU,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,YAAY,EAAE,eAAe,CAAC;CAC9B;AAoBD,qBAAa,qBAAqB;IA+BrB,OAAO,CAAC,QAAQ,CAAC,IAAI;IA9BjC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;IACxE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4C;IACvE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4C;IACzE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IAErE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAE3C,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,WAAW,CAA8C;IACjE,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,cAAc,CAAmC;IACzD,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,eAAe,CAAmC;IAC1D,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,mBAAmB,CAAK;gBAEH,IAAI,GAAE;QAAE,qBAAqB,CAAC,EAAE,MAAM,CAAA;KAAO;IAE1E,sDAAsD;IACtD,gBAAgB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IAWlD,mDAAmD;IACnD,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IA4DlD,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,cAAc;IAetB,OAAO,IAAI,qBAAqB;CAkBhC"}
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
* background-task model breaks long-running local inference (iOS jetsam
|
|
27
27
|
* 3–4 GB ceiling; Android foreground-service requirement).
|
|
28
28
|
*/
|
|
29
|
+
import { type Eliza1Fit } from "@elizaos/shared/local-inference";
|
|
29
30
|
import type { HardwareProbe } from "./types";
|
|
30
31
|
/** The four device tiers used by the runtime + UI. */
|
|
31
32
|
export type DeviceTier = "MAX" | "GOOD" | "OKAY" | "POOR";
|
|
@@ -58,7 +59,8 @@ export declare const DEVICE_TIER_THRESHOLDS: {
|
|
|
58
59
|
readonly effectiveModelMemoryGb: 6;
|
|
59
60
|
readonly freeRamGbAtSession: 3;
|
|
60
61
|
readonly minTotalRamGb: 16;
|
|
61
|
-
readonly mobileMinTotalRamGb:
|
|
62
|
+
readonly mobileMinTotalRamGb: 6;
|
|
63
|
+
readonly mobileEffectiveModelMemoryGb: 3;
|
|
62
64
|
};
|
|
63
65
|
};
|
|
64
66
|
/** What the runtime should do by default given the tier classification. */
|
|
@@ -76,6 +78,12 @@ export interface DeviceTierAssessment {
|
|
|
76
78
|
canRunLocalVoice: boolean;
|
|
77
79
|
/** Default backend mode for the user. */
|
|
78
80
|
recommendedMode: RecommendedMode;
|
|
81
|
+
/**
|
|
82
|
+
* The biggest eliza-1 tier (+ 128k-targeted QJL context) that fits this device,
|
|
83
|
+
* or `null` when nothing local fits and the modality should route to Cloud.
|
|
84
|
+
* This is the single forced-model decision the consumer UI renders read-only.
|
|
85
|
+
*/
|
|
86
|
+
recommendedFit: Eliza1Fit | null;
|
|
79
87
|
/** Numeric snapshot to drive UI badges and first-run copy. */
|
|
80
88
|
numericContext: {
|
|
81
89
|
totalRamGb: number;
|
|
@@ -93,6 +101,16 @@ export interface DeviceTierAssessment {
|
|
|
93
101
|
* Mirrors `recommendation.ts:effectiveMemoryGb`.
|
|
94
102
|
*/
|
|
95
103
|
export declare function effectiveModelMemoryGb(probe: HardwareProbe): number;
|
|
104
|
+
/**
|
|
105
|
+
* The canonical "biggest eliza-1 that fits this device" decision: normalize the
|
|
106
|
+
* hardware probe to usable model memory, then pick the largest tier at a 128k QJL
|
|
107
|
+
* window (or a downscaled 2B window, or `null` → route to Cloud). This is the one
|
|
108
|
+
* function callers should use to answer "what local model runs here" — it always
|
|
109
|
+
* applies TurboQuant weights + the QJL KV cache and targets a 128k window. On
|
|
110
|
+
* mobile it caps the tier at 4B and the context at 64k (a phone cannot hold a 128k
|
|
111
|
+
* cache).
|
|
112
|
+
*/
|
|
113
|
+
export declare function selectBestEliza1FitForDevice(probe: HardwareProbe): Eliza1Fit | null;
|
|
96
114
|
/**
|
|
97
115
|
* The single-pass classifier. Returns a complete assessment including the
|
|
98
116
|
* tier, the reasons, the recommended default mode, and the numeric context
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-tier.d.ts","sourceRoot":"","sources":["../../src/services/device-tier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EACN,KAAK,SAAS,EAKd,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,sDAAsD;AACtD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE1D,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,EAAE,aAAa,CAAC,UAAU,CAKvD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;CAwBzB,CAAC;AAEX,2EAA2E;AAC3E,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,wBAAwB,GAAG,YAAY,CAAC;AAEhF,oFAAoF;AACpF,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0DAA0D;IAC1D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iEAAiE;IACjE,aAAa,EAAE,OAAO,CAAC;IACvB,6DAA6D;IAC7D,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yCAAyC;IACzC,eAAe,EAAE,eAAe,CAAC;IACjC;;;;OAIG;IACH,cAAc,EAAE,SAAS,GAAG,IAAI,CAAC;IACjC,8DAA8D;IAC9D,cAAc,EAAE;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,OAAO,CAAC;QACtB,MAAM,EAAE,OAAO,CAAC;KAChB,CAAC;CACF;AAID;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAMnE;AA4BD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC3C,KAAK,EAAE,aAAa,GAClB,SAAS,GAAG,IAAI,CA2BlB;AAgDD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CA+E7E;AAsID;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CACvC,MAAM,CACL,UAAU,EACV;IACC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb,CACD,CAkBD,CAAC;AAEF,oCAAoC;AACpC,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAEvD"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* stream that can be piped into a Node WriteStream.
|
|
16
16
|
*/
|
|
17
17
|
import { type Eliza1DeviceCaps } from "./manifest";
|
|
18
|
-
import type
|
|
18
|
+
import { type CatalogModel, type DownloadEvent, type DownloadJob, type HardwareProbe } from "./types";
|
|
19
19
|
type DownloadListener = (event: DownloadEvent) => void;
|
|
20
20
|
/**
|
|
21
21
|
* Thrown before any weight byte is fetched when an Eliza-1 bundle's manifest
|
|
@@ -47,6 +47,8 @@ export interface DownloaderOptions {
|
|
|
47
47
|
probeDeviceCaps?: () => Promise<Eliza1DeviceCaps>;
|
|
48
48
|
/** Verify-on-device smoke run; see {@link VerifyBundleOnDevice}. */
|
|
49
49
|
verifyOnDevice?: VerifyBundleOnDevice;
|
|
50
|
+
/** Override the hardware probe used by the disk-space preflight (tests). */
|
|
51
|
+
probeHardware?: () => Promise<HardwareProbe>;
|
|
50
52
|
}
|
|
51
53
|
export declare class Downloader {
|
|
52
54
|
private readonly active;
|
|
@@ -55,14 +57,16 @@ export declare class Downloader {
|
|
|
55
57
|
private readonly lastEmit;
|
|
56
58
|
private readonly probeDeviceCaps;
|
|
57
59
|
private readonly verifyOnDevice?;
|
|
60
|
+
private readonly probeHardware;
|
|
58
61
|
constructor(options?: DownloaderOptions);
|
|
59
62
|
subscribe(listener: DownloadListener): () => void;
|
|
60
63
|
snapshot(): DownloadJob[];
|
|
61
64
|
isActive(modelId: string): boolean;
|
|
62
65
|
/**
|
|
63
|
-
* Start a download for a
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
+
* Start a download for a curated Eliza-1 catalog entry. Object specs are
|
|
67
|
+
* accepted only for internal tests that decorate a known Eliza-1 id; ad-hoc
|
|
68
|
+
* Hugging Face / ModelScope specs are rejected before any reservation or
|
|
69
|
+
* network I/O.
|
|
66
70
|
*/
|
|
67
71
|
start(modelIdOrSpec: string | CatalogModel): Promise<DownloadJob>;
|
|
68
72
|
cancel(modelId: string): boolean;
|
|
@@ -73,6 +77,14 @@ export declare class Downloader {
|
|
|
73
77
|
private rememberTerminalDownload;
|
|
74
78
|
private clearTerminalDownload;
|
|
75
79
|
private throttleEmit;
|
|
80
|
+
/**
|
|
81
|
+
* Disk-space preflight. The remaining download must fit on the models
|
|
82
|
+
* volume with a small headroom margin, or we fail the job up front with an
|
|
83
|
+
* actionable message instead of letting it stream gigabytes and die with
|
|
84
|
+
* ENOSPC near the end. Best-effort: when free disk can't be probed we let
|
|
85
|
+
* the download proceed (the post-hoc ENOSPC handling still catches it).
|
|
86
|
+
*/
|
|
87
|
+
private assertDiskSpaceForJob;
|
|
76
88
|
private runJob;
|
|
77
89
|
private runBundleJob;
|
|
78
90
|
private downloadRemotePath;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"downloader.d.ts","sourceRoot":"","sources":["../../src/services/downloader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAuBH,OAAO,EACN,KAAK,gBAAgB,EAMrB,MAAM,YAAY,CAAC;AAOpB,OAAO,EACN,KAAK,YAAY,EAEjB,KAAK,aAAa,EAClB,KAAK,WAAW,EAEhB,KAAK,aAAa,EAElB,MAAM,SAAS,CAAC;AAUjB,KAAK,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAGvD;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAG,4BAA4B,CAAU;gBAC1C,OAAO,EAAE,MAAM;CAI3B;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACrB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpB,MAAM,WAAW,iBAAiB;IACjC,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClD,oEAAoE;IACpE,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CAC7C;AA4MD,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6B;IACtD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkC;IAClE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+B;gBAEjD,OAAO,GAAE,iBAAsB;IAO3C,SAAS,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAOjD,QAAQ,IAAI,WAAW,EAAE;IAUzB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAQlC;;;;;OAKG;IACG,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAyEvE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAchC,OAAO,CAAC,IAAI;IAWZ,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,wBAAwB;IAkBhC,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,YAAY;IAQpB;;;;;;OAMG;YACW,qBAAqB;YAqBrB,MAAM;YAwJN,YAAY;YAmLZ,kBAAkB;YAkHlB,cAAc;CAkC5B"}
|
|
@@ -61,7 +61,7 @@ export declare class LocalInferenceEngine {
|
|
|
61
61
|
/**
|
|
62
62
|
* In-process FFI backend — the sole text runtime, served by the FUSED
|
|
63
63
|
* `libelizainference` (`desktop-fused-ffi-backend-runtime.ts`). Text gen,
|
|
64
|
-
*
|
|
64
|
+
* MTP speculative decoding, KV-cache quant, native tokenization,
|
|
65
65
|
* and vision-describe all run through the one fused lib the voice subsystem
|
|
66
66
|
* already loads (ABI v9). libllama has been retired: a fused lib that is
|
|
67
67
|
* absent or lacks the v9 capabilities is a loud `LocalInferenceUnavailable`
|
|
@@ -78,6 +78,7 @@ export declare class LocalInferenceEngine {
|
|
|
78
78
|
*/
|
|
79
79
|
private voiceBridge;
|
|
80
80
|
private voiceReadyPromise;
|
|
81
|
+
private asrReadyPromise;
|
|
81
82
|
/**
|
|
82
83
|
* The general onload/offload coordinator (W10 / J5). One registry per
|
|
83
84
|
* engine: text + voice both ref-count their shared resources against it,
|
|
@@ -99,6 +100,14 @@ export declare class LocalInferenceEngine {
|
|
|
99
100
|
private idleUnloadTimer;
|
|
100
101
|
/** Evictable text-target role id registered on `sharedResources`, or null. */
|
|
101
102
|
private textTargetRoleId;
|
|
103
|
+
/**
|
|
104
|
+
* Ids of evictable roles THIS engine registered on `sharedResources`
|
|
105
|
+
* (text-target today). `getResidentFootprintMb()` sums only these so the
|
|
106
|
+
* arbiter never double-counts its own vision/image-gen registry roles.
|
|
107
|
+
*/
|
|
108
|
+
private readonly ownedEvictableRoleIds;
|
|
109
|
+
/** Best-effort resident footprint for the active text bundle, in MiB. */
|
|
110
|
+
private textTargetEstimatedMb;
|
|
102
111
|
/** Evictable drafter role id registered on `sharedResources`, or null. */
|
|
103
112
|
/**
|
|
104
113
|
* The active Eliza-1 bundle (root dir + tier id), resolved at `load()`
|
|
@@ -115,6 +124,18 @@ export declare class LocalInferenceEngine {
|
|
|
115
124
|
* `MemoryMonitor` walks under pressure.
|
|
116
125
|
*/
|
|
117
126
|
getSharedResources(): SharedResourceRegistry;
|
|
127
|
+
/**
|
|
128
|
+
* Resident RAM footprint (MB) of the model weights this engine owns on the
|
|
129
|
+
* shared registry — the active text/embedding bundle today, plus any future
|
|
130
|
+
* engine-registered role (drafter, voice). This is the term `service.ts`
|
|
131
|
+
* feeds into the `MemoryArbiter` as `externalFootprintMb` so the arbiter's
|
|
132
|
+
* proactive `evictToFit` path accounts for the dominant resident consumer
|
|
133
|
+
* (the text target) instead of seeing only its own vision/image-gen handles
|
|
134
|
+
* and never tripping (#8809 AC#1). Summed by role id so it never
|
|
135
|
+
* double-counts the arbiter's own registry roles (vision/image-gen), which
|
|
136
|
+
* the arbiter already counts in its resident map.
|
|
137
|
+
*/
|
|
138
|
+
getResidentFootprintMb(): number;
|
|
118
139
|
/** The RAM-pressure monitor. Exposed for diagnostics / tests. */
|
|
119
140
|
getMemoryMonitor(): MemoryMonitor;
|
|
120
141
|
/** Record `useModel`-style activity so the idle-unload timer stays armed. */
|
|
@@ -149,8 +170,9 @@ export declare class LocalInferenceEngine {
|
|
|
149
170
|
available(): Promise<boolean>;
|
|
150
171
|
currentModelPath(): string | null;
|
|
151
172
|
hasLoadedModel(): boolean;
|
|
152
|
-
activeBackendId(): "
|
|
173
|
+
activeBackendId(): "llama-cpp" | null;
|
|
153
174
|
currentRuntimeLoadConfig(): LocalRuntimeLoadConfig | null;
|
|
175
|
+
private disposeVoiceBridge;
|
|
154
176
|
unload(): Promise<void>;
|
|
155
177
|
load(modelPath: string, resolved?: LocalInferenceLoadArgs): Promise<void>;
|
|
156
178
|
generate(args: GenerateArgs): Promise<string>;
|
|
@@ -170,6 +192,9 @@ export declare class LocalInferenceEngine {
|
|
|
170
192
|
maxTokens?: number;
|
|
171
193
|
temperature?: number;
|
|
172
194
|
signal?: AbortSignal;
|
|
195
|
+
/** Per-token callback for streaming vision describe (ABI v13). */
|
|
196
|
+
onTextChunk?: (chunk: string) => void | Promise<void>;
|
|
197
|
+
maxTokensPerStep?: number;
|
|
173
198
|
}): Promise<{
|
|
174
199
|
text: string;
|
|
175
200
|
projectorMs?: number;
|
|
@@ -317,6 +342,13 @@ export declare class LocalInferenceEngine {
|
|
|
317
342
|
* need custom sinks or test backends.
|
|
318
343
|
*/
|
|
319
344
|
ensureActiveBundleVoiceReady(): Promise<EngineVoiceBridge>;
|
|
345
|
+
private activateAssignedBundleForVoice;
|
|
346
|
+
private localAsrBlockersForBundle;
|
|
347
|
+
private assertLocalAsrEligible;
|
|
348
|
+
private assignedLocalAsrBundle;
|
|
349
|
+
canTranscribeLocally(): Promise<boolean>;
|
|
350
|
+
ensureActiveBundleAsrReady(): Promise<EngineVoiceBridge>;
|
|
351
|
+
private ensureActiveBundleAsrReadyOnce;
|
|
320
352
|
private ensureActiveBundleVoiceReadyOnce;
|
|
321
353
|
/**
|
|
322
354
|
* Assemble + run the full live voice loop on top of `startVoice()` /
|
|
@@ -361,7 +393,7 @@ export declare class LocalInferenceEngine {
|
|
|
361
393
|
/**
|
|
362
394
|
* Use the already-loaded eliza-1 text model as the EOT classifier — see
|
|
363
395
|
* `voice/eliza1-eot-scorer.ts`. When set, the runtime skips the
|
|
364
|
-
* separate LiveKit/Turnsense ONNX and reads P(
|
|
396
|
+
* separate LiveKit/Turnsense ONNX and reads P(`<end_of_turn>`) directly
|
|
365
397
|
* off the live model.
|
|
366
398
|
*
|
|
367
399
|
* `"auto"` (default): use eliza-1 EOT when `ELIZA_VOICE_EOT_BACKEND=eliza-1`
|
|
@@ -455,7 +487,7 @@ export declare class LocalInferenceEngine {
|
|
|
455
487
|
* was played. No-op without a real TTS backend / armed voice.
|
|
456
488
|
*/
|
|
457
489
|
playFirstAudioFiller(): string | null;
|
|
458
|
-
transcribePcm(args: TranscriptionAudio, signal?: AbortSignal): Promise<string>;
|
|
490
|
+
transcribePcm(args: TranscriptionAudio, signal?: AbortSignal, onPartial?: (delta: string) => void): Promise<string>;
|
|
459
491
|
/** Transcribe + per-word timings (fused ASR v12) through the voice bridge. */
|
|
460
492
|
transcribePcmTimed(args: TranscriptionAudio, signal?: AbortSignal): Promise<{
|
|
461
493
|
text: string;
|
|
@@ -472,6 +504,13 @@ export declare class LocalInferenceEngine {
|
|
|
472
504
|
* {@link MtpTextRunner}. When omitted, the active local dispatcher is
|
|
473
505
|
* used.
|
|
474
506
|
*
|
|
507
|
+
* Production caller: the on-device device bridge, via `runDeviceVoiceTurn`
|
|
508
|
+
* (`adapters/capacitor-llama/voice-turn.ts`), which wraps the loaded
|
|
509
|
+
* `CapacitorLlamaContext` in an `MtpTextRunner` and passes it here so the
|
|
510
|
+
* draft/verify loop runs on the on-device text model. The native mic
|
|
511
|
+
* capture hands `runDeviceVoiceTurn` the PCM; everything downstream is
|
|
512
|
+
* in-process JS + the fused FFI (no HTTP, no second voice path).
|
|
513
|
+
*
|
|
475
514
|
* Resolves with the turn's exit reason (`done` / `token-cap` /
|
|
476
515
|
* `cancelled`). A missing ASR region in voice mode surfaces as a
|
|
477
516
|
* `VoiceStartupError` — no silent cloud fallback (AGENTS.md §3).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/services/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAUH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAM7D,OAAO,KAAK,EACX,YAAY,IAAI,mBAAmB,EAGnC,sBAAsB,EACtB,MAAM,WAAW,CAAC;AAOnB,OAAO,EACN,KAAK,kBAAkB,EAEvB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAGN,iBAAiB,EACjB,KAAK,wBAAwB,EAE7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAM1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAC;AAC3E,OAAO,EAEN,sBAAsB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAEX,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,eAAe,CAAC;AAQvB,MAAM,WAAW,eAAe;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B,EAAE,MAAM,CAAC;IACpC,uBAAuB,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAqDD,wBAAgB,mBAAmB,IAAI,MAAM,CAM5C;AAED;;;;;;GAMG;AACH,wBAAgB,wCAAwC,CACvD,aAAa,EAAE,MAAM,GACnB,MAAM,CAOR;AAID,MAAM,MAAM,YAAY,GAAG,mBAAmB,CAAC;AA+G/C;;;;;;;;;;;;GAYG;AACH,qBAAa,oBAAoB;IAChC;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAEzB;IACF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAIzB;IACF;;;;;;OAMG;IACH,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,iBAAiB,CAA2C;IACpE,OAAO,CAAC,eAAe,CAA2C;IAElE;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAM7B;IAEH;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAO3B;IAEH,2DAA2D;IAC3D,OAAO,CAAC,cAAc,CAAc;IACpC,qEAAqE;IACrE,OAAO,CAAC,eAAe,CAA+B;IACtD,8EAA8E;IAC9E,OAAO,CAAC,gBAAgB,CAAuB;IAC/C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAqB;IAC3D,yEAAyE;IACzE,OAAO,CAAC,qBAAqB,CAAK;IAClC,0EAA0E;IAE1E;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB,CAAmC;IAE7D;;;;;OAKG;IACH,kBAAkB,IAAI,sBAAsB;IAI5C;;;;;;;;;;OAUG;IACH,sBAAsB,IAAI,MAAM;IAWhC,iEAAiE;IACjE,gBAAgB,IAAI,aAAa;IAIjC,6EAA6E;IAC7E,OAAO,CAAC,YAAY;IAIpB;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAOjC,2EAA2E;YAC7D,wBAAwB;IAStC,OAAO,CAAC,qBAAqB;YAkBf,uBAAuB;IAerC,OAAO,CAAC,kBAAkB;IAoB1B;;;;;OAKG;IACH,iCAAiC,IAAI,MAAM;IAI3C;;;;;;;;OAQG;IACG,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;IA+B3C,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAIjC,cAAc,IAAI,OAAO;IAIzB,eAAe,IAAI,WAAW,GAAG,IAAI;IAIrC,wBAAwB,IAAI,sBAAsB,GAAG,IAAI;YAK3C,kBAAkB;IAU1B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBvB,IAAI,CACT,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAoCV,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBnD;;;;;;;;OAQG;IACG,aAAa,CAAC,IAAI,EAAE;QACzB,KAAK,EAAE,UAAU,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,kEAAkE;QAClE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC1B,GAAG,OAAO,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAQF,6EAA6E;IAC7E,iBAAiB,IAAI,OAAO;IAM5B;;;;OAIG;IACH,mBAAmB,IAAI;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,EAAE,CAAC;KACf,GAAG,IAAI;IAIR;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,IAAI,EAAE;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,kBAAkB;IAuBtB;;;;;;;;OAQG;IACG,sBAAsB,CAC3B,MAAM,EAAE,kBAAkB,EAC1B,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,GAClC,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,eAAe,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAsEpE;;;;;;;;;;;;;;;OAeG;IACG,mBAAmB,CACxB,gBAAgB,EAAE,kBAAkB,GAAG,MAAM,EAC7C,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAO,GAC7B,OAAO,CAAC,OAAO,CAAC;IAwBnB;;;;OAIG;IACG,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE;;;;OAIG;IACH,YAAY,CACX,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,GACb,kBAAkB,GAAG,IAAI;IAI5B;;;;OAIG;IACH,yBAAyB,IAAI,MAAM;IAInC;;;;;;OAMG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;;;;;;;;OASG;IACH,oBAAoB,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,GAAG,OAAO;IAmBvE;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,IAAI,EAAE,wBAAwB,GAAG,iBAAiB;IA2B7D;;;;;;OAMG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;;;;;;;;;;;OAYG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAW/B;;;;;OAKG;IACG,4BAA4B,IAAI,OAAO,CAAC,iBAAiB,CAAC;YAUlD,8BAA8B;IAsB5C,OAAO,CAAC,yBAAyB;IAcjC,OAAO,CAAC,sBAAsB;YAYhB,sBAAsB;IAa9B,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;IAkBxC,0BAA0B,IAAI,OAAO,CAAC,iBAAiB,CAAC;YAUhD,8BAA8B;YAyC9B,gCAAgC;IAuD9C;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,iBAAiB,CAAC,IAAI,EAAE;QAC7B,MAAM,EAAE,MAAM,CAAC;QACf,iEAAiE;QACjE,SAAS,CAAC,EAAE,OAAO,eAAe,EAAE,SAAS,CAAC;QAC9C,6DAA6D;QAC7D,GAAG,CAAC,EAAE,OAAO,aAAa,EAAE,WAAW,CAAC;QACxC,+EAA+E;QAC/E,QAAQ,EAAE,CACT,OAAO,EAAE,OAAO,yBAAyB,EAAE,oBAAoB,KAC3D,OAAO,CAAC,OAAO,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;QACjE;;;;WAIG;QACH,YAAY,CAAC,EAAE,OAAO,wBAAwB,EAAE,aAAa,GAAG,KAAK,CAAC;QACtE,+DAA+D;QAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B;;;;;;;;;;;WAWG;QACH,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;QAChC;;;;WAIG;QACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,uFAAuF;QACvF,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,MAAM,CAAC,EAAE,OAAO,yBAAyB,EAAE,yBAAyB,CAAC;QACrE;;;;;;;;;;WAUG;QACH,QAAQ,CAAC,EAAE;YACV,OAAO,EAAE,OAAO,CAAC;YACjB,oEAAoE;YACpE,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,4DAA4D;YAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,iEAAiE;YACjE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;SACpB,CAAC;QACF;;;;;;;;;;WAUG;QACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;KAC7B,GAAG,OAAO,CAAC,OAAO,yBAAyB,EAAE,mBAAmB,CAAC;IA6SlE;;;;;OAKG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC;;;;;;OAMG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAY1B,gBAAgB,CACrB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,UAAU,CAAC;IAYhB,mBAAmB,CACxB,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAC5B,IAAI,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACjC,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAO9C;;;;;OAKG;IACG,uBAAuB,CAC5B,IAAI,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACjC,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAM9C;;;;;OAKG;IACH,oBAAoB,IAAI,MAAM,GAAG,IAAI;IAM/B,aAAa,CAClB,IAAI,EAAE,kBAAkB,EACxB,MAAM,CAAC,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GACjC,OAAO,CAAC,MAAM,CAAC;IAkBlB,8EAA8E;IACxE,kBAAkB,CACvB,IAAI,EAAE,kBAAkB,EACxB,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAapD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,YAAY,CACjB,KAAK,EAAE,kBAAkB,EACzB,IAAI,GAAE;QACL,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B;;;;;WAKG;QACH,UAAU,CAAC,EAAE,aAAa,CAAC;KACtB,GACJ,OAAO,CAAC,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;IAc9C;;;;;;OAMG;IACH,KAAK,IAAI,iBAAiB,GAAG,IAAI;IAIjC,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,kBAAkB;IAiL1B;;;;;;;;OAQG;IACG,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBlE;;;;;OAKG;IACH,cAAc,IAAI,IAAI;IAItB;;;;;;OAMG;IACG,kBAAkB,CAAC,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE;;;OAGG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;CAMnC;AAkCD,eAAO,MAAM,oBAAoB,sBAA6B,CAAC"}
|