@elizaos/plugin-local-inference 2.0.3-beta.2 → 2.0.3-beta.4
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,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* On a mobile platform (`ELIZA_PLATFORM=android` / `ios`) the runtime skips
|
|
3
|
+
* nearly every boot helper because they shell out to subprocesses,
|
|
4
|
+
* platform-specific binaries, or optional packages that aren't in the mobile
|
|
5
|
+
* bundle. Three mobile-safe inference paths need wiring:
|
|
6
|
+
*
|
|
7
|
+
* - `ELIZA_DEVICE_BRIDGE_ENABLED=1`: the agent (this process) hosts the
|
|
8
|
+
* device-bridge WSS and dials whichever paired device connects. On the
|
|
9
|
+
* Capacitor APK the WebView's `@elizaos/capacitor-llama` is the intended
|
|
10
|
+
* dialer over loopback. The Capacitor build always exports this env so
|
|
11
|
+
* the bridge is ready as soon as first-run picks the local mode.
|
|
12
|
+
*
|
|
13
|
+
* - `ELIZA_LOCAL_LLAMA=1`: AOSP path that loads `libllama.so` directly
|
|
14
|
+
* inside the Android process via `bun:ffi`. Wired here so the gate is
|
|
15
|
+
* in place ahead of sub-task 2 — the AOSP build flag flips this on.
|
|
16
|
+
*
|
|
17
|
+
* - `process.arch === "riscv64"`: `capacitor-llama` has no riscv64 prebuild
|
|
18
|
+
* and we can't NAPI-build it on-device, so the in-process FFI path
|
|
19
|
+
* (same loader contract as the AOSP path) is the only viable option.
|
|
20
|
+
* Auto-firing here keeps the riscv64 mobile boot path zero-config; an
|
|
21
|
+
* operator can hard-disable via `ELIZA_DISABLE_FFI_LLAMA=1` to skip the
|
|
22
|
+
* loader and route inference through Cloud instead. See
|
|
23
|
+
* `plugin-aosp-local-inference/src/aosp-llama-adapter.ts:isAospEnabled`
|
|
24
|
+
* and `plugin-local-inference/src/runtime/ensure-local-inference-handler.ts:shouldAttemptAospLlamaLoader`
|
|
25
|
+
* — the three predicates agree on the trigger set.
|
|
26
|
+
*
|
|
27
|
+
* Kept dependency-free so it can be unit-tested without instantiating the
|
|
28
|
+
* full runtime.
|
|
29
|
+
*/
|
|
30
|
+
export declare function shouldEnableMobileLocalInference(env?: NodeJS.ProcessEnv, arch?: NodeJS.Architecture): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Boot-time invariant check for the mobile voice backend selector.
|
|
33
|
+
*
|
|
34
|
+
* The voice engine passes `mobile: isMobilePlatform()` into `selectVoiceBackend`
|
|
35
|
+
* (`services/engine.ts`). That flag is what pins mobile to the Kokoro-exclusive
|
|
36
|
+
* TTS path — OmniVoice is never shipped on a phone. But `isMobilePlatform()`
|
|
37
|
+
* keys solely off `ELIZA_PLATFORM ∈ {ios, android}`, whereas
|
|
38
|
+
* {@link shouldEnableMobileLocalInference} also fires on the device-bridge /
|
|
39
|
+
* `ELIZA_LOCAL_LLAMA` / riscv64 triggers — none of which set `ELIZA_PLATFORM`.
|
|
40
|
+
* So a build that enables the mobile local-inference gate without exporting
|
|
41
|
+
* `ELIZA_PLATFORM` leaves `mobile` false in the selector and could pick
|
|
42
|
+
* OmniVoice on a phone, violating the Kokoro-exclusive mobile voice invariant.
|
|
43
|
+
*
|
|
44
|
+
* This emits exactly one boot-time warning when the gate is active but the
|
|
45
|
+
* platform flag is absent (the real mismatch). It is a diagnostic, not a
|
|
46
|
+
* behavior change: the fix is to export `ELIZA_PLATFORM` from the offending
|
|
47
|
+
* build, which this surfaces. The caller MUST evaluate it on a boot path where
|
|
48
|
+
* BOTH predicates are checked (i.e. outside any `if (isMobilePlatform())`
|
|
49
|
+
* branch) — passing the already-computed `mobilePlatform` makes that explicit.
|
|
50
|
+
*
|
|
51
|
+
* Kept dependency-free (injectable `warn` + the already-resolved
|
|
52
|
+
* `mobilePlatform` boolean) so it can be unit-tested without the runtime or a
|
|
53
|
+
* logger instance, matching the `engine.warnIfParallelTooLow({ warn })` pattern.
|
|
54
|
+
*
|
|
55
|
+
* @returns `true` when the warning fired (the mismatch is real), else `false`.
|
|
56
|
+
*/
|
|
57
|
+
export declare function warnIfMobileGateActiveWithoutPlatform(args: {
|
|
58
|
+
mobilePlatform: boolean;
|
|
59
|
+
warn: (message: string) => void;
|
|
60
|
+
env?: NodeJS.ProcessEnv;
|
|
61
|
+
arch?: NodeJS.Architecture;
|
|
62
|
+
}): boolean;
|
|
63
|
+
//# sourceMappingURL=mobile-local-inference-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mobile-local-inference-gate.d.ts","sourceRoot":"","sources":["../../src/runtime/mobile-local-inference-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gCAAgC,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAM,CAAC,YAA2B,GACtC,OAAO,CAqBT;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,qCAAqC,CAAC,IAAI,EAAE;IAC3D,cAAc,EAAE,OAAO,CAAC;IACxB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC;CAC3B,GAAG,OAAO,CAYV"}
|
|
@@ -76,6 +76,16 @@ export interface HandleLiveVoiceAttributionOptions {
|
|
|
76
76
|
* (which has both ASR + diarization) passes the real transcript.
|
|
77
77
|
*/
|
|
78
78
|
transcript?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Cosine similarity (0..1) between this turn's live WeSpeaker embedding and
|
|
81
|
+
* the agent's own TTS-voice centroid. High means the open mic is hearing the
|
|
82
|
+
* agent's playback, not a human user.
|
|
83
|
+
*/
|
|
84
|
+
selfVoiceSimilarity?: number | null;
|
|
85
|
+
/** True while the agent is currently playing TTS. */
|
|
86
|
+
agentSpeaking?: boolean;
|
|
87
|
+
/** Age of the most recent agent-spoken reply in ms. */
|
|
88
|
+
replyAgeMs?: number;
|
|
79
89
|
}
|
|
80
90
|
/**
|
|
81
91
|
* Handle a live per-turn attribution result. This is the single automatic seam
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice-entity-binding.d.ts","sourceRoot":"","sources":["../../src/runtime/voice-entity-binding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,EAEN,KAAK,aAAa,EAGlB,KAAK,uBAAuB,EAC5B,MAAM,eAAe,CAAC;AAKvB,OAAO,KAAK,EAEX,eAAe,EACf,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mDAAmD,CAAC;AAQhG,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,iBAAiB,GAAG,IAAI,GAC7B,IAAI,CAEN;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAOvE;AAMD,MAAM,WAAW,yBAAyB;IACzC,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,gBAAgB,EAAE,MAAM,CAAC;IACzB,8CAA8C;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,yBAAyB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAWf;AAWD,MAAM,WAAW,iCAAiC;IACjD;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C;;;;;OAKG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,uEAAuE;IACvE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mEAAmE;IACnE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,qDAAqD;IACrD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAuGD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,0BAA0B,CAC/C,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,sBAAsB,EAC9B,IAAI,GAAE,iCAAsC,GAC1C,OAAO,CAAC,eAAe,CAAC,CAmD1B;AAMD;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC3C,OAAO,EAAE,uBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
import type { AgentRuntime } from "@elizaos/core";
|
|
13
13
|
import { ELIZA_1_PLACEHOLDER_IDS, FIRST_RUN_DEFAULT_MODEL_ID } from "./catalog";
|
|
14
|
+
import { type Eliza1Kernel, type Eliza1Tier } from "./manifest";
|
|
14
15
|
import { type ManifestLoader, type RamFitOptions } from "./ram-budget";
|
|
15
16
|
import { recommendForFirstRun } from "./recommendation";
|
|
16
17
|
import type { ActiveModelState, CatalogModel, HardwareProbe, InstalledModel } from "./types";
|
|
@@ -91,6 +92,7 @@ export interface LocalInferenceLoadOverrides {
|
|
|
91
92
|
}
|
|
92
93
|
interface ResolveLocalInferenceLoadArgsOptions {
|
|
93
94
|
manifestLoader?: ManifestLoader;
|
|
95
|
+
hardware?: HardwareProbe;
|
|
94
96
|
}
|
|
95
97
|
/**
|
|
96
98
|
* Resolve the per-tier mmproj GGUF path for a given installed model when
|
|
@@ -241,6 +243,32 @@ export declare class CandidateModelActivationError extends Error {
|
|
|
241
243
|
* silently otherwise.
|
|
242
244
|
*/
|
|
243
245
|
export declare function assertManifestEvalsPassed(installed: InstalledModel, manifestLoader?: ManifestLoader): void;
|
|
246
|
+
/**
|
|
247
|
+
* Refusal raised when activation is asked for a manifest-shipping bundle whose
|
|
248
|
+
* declared `kernels.required` is missing one of the kernels its tier requires
|
|
249
|
+
* (`REQUIRED_KERNELS_BY_TIER`). native/CLAUDE.md §3#5 makes this a hard error:
|
|
250
|
+
* a bundle that doesn't declare its required quant/attention kernels would emit
|
|
251
|
+
* garbage (or silently fall back to an un-optimized path), so we refuse to
|
|
252
|
+
* activate it rather than run a broken model.
|
|
253
|
+
*/
|
|
254
|
+
export declare class MissingRequiredKernelsError extends Error {
|
|
255
|
+
readonly modelId: string;
|
|
256
|
+
readonly tier: Eliza1Tier;
|
|
257
|
+
readonly missing: ReadonlyArray<Eliza1Kernel>;
|
|
258
|
+
constructor(args: {
|
|
259
|
+
modelId: string;
|
|
260
|
+
tier: Eliza1Tier;
|
|
261
|
+
missing: ReadonlyArray<Eliza1Kernel>;
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Activation kernel gate (native/CLAUDE.md §3#5). When the installed bundle
|
|
266
|
+
* ships a manifest, verify it declares every kernel its tier requires; throw
|
|
267
|
+
* `MissingRequiredKernelsError` otherwise. A bundle with no manifest (bare
|
|
268
|
+
* GGUF, external scan, dev path) is NOT gated — there is no kernel contract to
|
|
269
|
+
* check, so it is a no-op.
|
|
270
|
+
*/
|
|
271
|
+
export declare function assertRequiredKernelsPresent(installed: InstalledModel, manifestLoader?: ManifestLoader): void;
|
|
244
272
|
export declare class ActiveModelCoordinator {
|
|
245
273
|
private state;
|
|
246
274
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"active-model.d.ts","sourceRoot":"","sources":["../../src/services/active-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const QWEN_PROVENANCE_RE: RegExp;
|
|
2
|
+
export declare function collectQwenAsrProvenanceBlockers(input: unknown): string[];
|
|
3
|
+
export declare function readBundleAsrProvenanceBlockers(bundleRoot: string): string[];
|
|
4
|
+
export declare function bundleHasAsrModelFiles(bundleRoot: string): boolean;
|
|
5
|
+
//# sourceMappingURL=asr-provenance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asr-provenance.d.ts","sourceRoot":"","sources":["../../src/services/asr-provenance.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,kBAAkB,QAAY,CAAC;AAc5C,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAoBzE;AAED,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAS5E;AAWD,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAQlE"}
|
|
@@ -11,14 +11,27 @@
|
|
|
11
11
|
* enough to rewrite on every change — we never mutate in place.
|
|
12
12
|
*/
|
|
13
13
|
import type { AgentModelSlot, InstalledModel, ModelAssignments } from "./types";
|
|
14
|
+
/**
|
|
15
|
+
* Raised when a slot assignment is outside the curated Eliza-1 catalog. The
|
|
16
|
+
* local stack is Eliza-1 only, so the assignment policy rejects anything else.
|
|
17
|
+
*/
|
|
18
|
+
export declare class AssignmentRejectedError extends Error {
|
|
19
|
+
readonly code: "ASSIGNMENT_REJECTED";
|
|
20
|
+
readonly slot: AgentModelSlot;
|
|
21
|
+
readonly modelId: string;
|
|
22
|
+
constructor(args: {
|
|
23
|
+
slot: AgentModelSlot;
|
|
24
|
+
modelId: string;
|
|
25
|
+
message: string;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
14
28
|
export declare function readAssignments(): Promise<ModelAssignments>;
|
|
15
29
|
/**
|
|
16
30
|
* Build slot recommendations from currently-installed models.
|
|
17
31
|
*
|
|
18
32
|
* Only default-eligible Eliza-1 downloads are auto-recommended.
|
|
19
|
-
* External-scan blobs and ad-hoc Hugging Face downloads are
|
|
20
|
-
*
|
|
21
|
-
* any agent slot.
|
|
33
|
+
* External-scan blobs and ad-hoc Hugging Face downloads are never assigned to
|
|
34
|
+
* agent slots.
|
|
22
35
|
*
|
|
23
36
|
* Why: external blobs may use newer architectures or quant formats outside
|
|
24
37
|
* the bundled `capacitor-llama` binding's supported set. Auto-loading
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assignments.d.ts","sourceRoot":"","sources":["../../src/services/assignments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAIhF;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAG,qBAAqB,CAAU;IAC/C,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE;QACjB,IAAI,EAAE,cAAc,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KAChB;CAMD;AAoCD,wBAAsB,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC,CASjE;AAYD;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAC1C,SAAS,EAAE,cAAc,EAAE,GACzB,gBAAgB,CAmBlB;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAS1E;AAED,wBAAsB,gBAAgB,CACrC,WAAW,EAAE,gBAAgB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAsB,aAAa,CAClC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,MAAM,GAAG,IAAI,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAkB3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAe3D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAC5C,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC,CA4B3B;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACrC,SAAS,EAAE,cAAc,EAAE,GACzB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAclC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local-inference backend selector.
|
|
3
|
+
*
|
|
4
|
+
* One choice per host process: route generation through the in-process
|
|
5
|
+
* FFI streaming runner (`ffi-streaming-runner.ts`). The selection is
|
|
6
|
+
* deterministic so callers can mock it in tests and so no platform falls
|
|
7
|
+
* back to a server sidecar by accident.
|
|
8
|
+
*
|
|
9
|
+
* Rules:
|
|
10
|
+
* - Mobile (Android / iOS) ALWAYS uses `ffi-streaming`. The
|
|
11
|
+
* `llama-server` child-process path cannot ship on mobile (sandbox
|
|
12
|
+
* restrictions, App Store review, ~10–30 ms HTTP round-trip per
|
|
13
|
+
* token, no slot persistence on Android's APK private dir). When
|
|
14
|
+
* the FFI symbols are absent on a mobile build we throw — there is
|
|
15
|
+
* no second backend to fall back to.
|
|
16
|
+
* - Desktop also uses `ffi-streaming`. Missing streaming-LLM symbols are
|
|
17
|
+
* a bad build, not a reason to start a server backend.
|
|
18
|
+
* - `ELIZA_INFERENCE_BACKEND=ffi` forces the streaming runner and
|
|
19
|
+
* throws if the symbols are absent. `=auto` (or unset) follows the
|
|
20
|
+
* rules above.
|
|
21
|
+
*
|
|
22
|
+
* The selector intentionally does NOT inspect the live process to detect
|
|
23
|
+
* mobile — callers pass that information in. The mobile bootstrap
|
|
24
|
+
* (`aosp-mtp-adapter.ts` / the iOS bridge) knows what it is; tests
|
|
25
|
+
* pass synthetic values. Keeping detection out of the selector matches
|
|
26
|
+
* AGENTS.md §7 (single source of truth for inputs) and lets the
|
|
27
|
+
* decision be replayed offline.
|
|
28
|
+
*/
|
|
29
|
+
export type LocalInferenceBackend = "ffi-streaming";
|
|
30
|
+
export type LocalInferencePlatform = "desktop" | "mobile";
|
|
31
|
+
export interface BackendSelectInput {
|
|
32
|
+
/** Where the host is running. */
|
|
33
|
+
platform: LocalInferencePlatform;
|
|
34
|
+
/**
|
|
35
|
+
* `llmStreamSupported()` from the loaded FFI binding. All builds MUST
|
|
36
|
+
* have this true; false means the runtime was built without the unified
|
|
37
|
+
* llama.cpp FFI path.
|
|
38
|
+
*/
|
|
39
|
+
ffiSupported: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Optional env override (`ELIZA_INFERENCE_BACKEND`). `"ffi"` forces
|
|
42
|
+
* the FFI path, while `"auto"` or unset follows the default rule.
|
|
43
|
+
*/
|
|
44
|
+
envOverride?: string | null;
|
|
45
|
+
}
|
|
46
|
+
/** Read the `ELIZA_INFERENCE_BACKEND` env var into a normalised value. */
|
|
47
|
+
export declare function readBackendEnvOverride(env?: NodeJS.ProcessEnv): "ffi" | "auto" | null;
|
|
48
|
+
/**
|
|
49
|
+
* Decide which local-inference backend should service text generation.
|
|
50
|
+
* See file header for the full rule set. Throws when the chosen
|
|
51
|
+
* combination is incoherent (no FFI support, explicit FFI with a bad
|
|
52
|
+
* runtime build, …).
|
|
53
|
+
*/
|
|
54
|
+
export declare function selectBackend(input: BackendSelectInput): LocalInferenceBackend;
|
|
55
|
+
//# sourceMappingURL=backend-selector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend-selector.d.ts","sourceRoot":"","sources":["../../src/services/backend-selector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAMH,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC;AAEpD,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IAClC,iCAAiC;IACjC,QAAQ,EAAE,sBAAsB,CAAC;IACjC;;;;OAIG;IACH,YAAY,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,0EAA0E;AAC1E,wBAAgB,sBAAsB,CACrC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAClC,KAAK,GAAG,MAAM,GAAG,IAAI,CAKvB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,kBAAkB,GACvB,qBAAqB,CAuBvB"}
|
|
@@ -1,21 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Local-inference backend interface and dispatcher.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Both shipping backends are served by the SAME in-process FFI
|
|
5
|
+
* `libelizainference` library behind the SAME streaming symbols — the
|
|
6
|
+
* difference is which in-process runtime the FFI's `llm_backend_select` drives:
|
|
5
7
|
*
|
|
6
|
-
* - `llama-cpp`
|
|
8
|
+
* - `llama-cpp` → the optimized in-process FFI llama.cpp path (the default).
|
|
7
9
|
* MTP, n-gram drafter, lookahead, `-ot` MoE offload, TurboQuant KV
|
|
8
|
-
* cache, mlock/no-mmap/mmproj, etc. all live here.
|
|
10
|
+
* cache, mlock/no-mmap/mmproj, etc. all live here. Serves the `.gguf`.
|
|
11
|
+
* - `litert-lm` → the in-process LiteRT-LM backend (Android NPU / GPU
|
|
12
|
+
* delegate, gated `-DELIZA_ENABLE_LITERT`). Serves a `.litertlm` text
|
|
13
|
+
* artifact staged under `<bundleRoot>/text/`. The dispatcher passes
|
|
14
|
+
* `ELIZA_LLM_BACKEND=litert-lm` through the load; the C-side
|
|
15
|
+
* `llm_backend_select` reads it (and probes `text/*.litertlm`) and routes
|
|
16
|
+
* to the LiteRT factory. See `tools/omnivoice/src/llm-backend.h`.
|
|
9
17
|
*
|
|
10
18
|
* The dispatcher decides which one to use per-load based on:
|
|
11
19
|
*
|
|
12
|
-
* 1.
|
|
20
|
+
* 1. `ELIZA_INFERENCE_BACKEND` env override — `llama-cpp` / `litert-lm` /
|
|
21
|
+
* `auto`. A `litert-lm` force is honoured only when the build/platform
|
|
22
|
+
* supports LiteRT and the bundle ships a `.litertlm` (else hard error).
|
|
23
|
+
* 2. A `.litertlm` text artifact in the bundle AND LiteRT support on this
|
|
24
|
+
* build/platform → `litert-lm`. GGUF stays the default whenever the
|
|
25
|
+
* LiteRT artifact or the build support is absent.
|
|
26
|
+
* 3. Catalog `runtime.optimizations.requiresKernel` — if any specialised
|
|
13
27
|
* llama.cpp kernel is required (e.g. `turbo3`), the
|
|
14
|
-
* dispatcher
|
|
28
|
+
* dispatcher picks `llama-cpp`. Legacy bindings cannot
|
|
15
29
|
* provide these kernels at all.
|
|
16
|
-
*
|
|
17
|
-
* compatibility, but generation still routes through `llama-cpp`.
|
|
18
|
-
* 3. Default: optimized llama.cpp FFI.
|
|
30
|
+
* 4. Default: optimized llama.cpp FFI.
|
|
19
31
|
*
|
|
20
32
|
* The dispatcher does NOT own backend internals. It owns selection only,
|
|
21
33
|
* plus a small load-state
|
|
@@ -52,6 +64,13 @@ export interface BackendLoadOverrides {
|
|
|
52
64
|
bundleRoot?: string;
|
|
53
65
|
/** Manifest path for direct bundle loads not present in the registry. */
|
|
54
66
|
manifestPath?: string;
|
|
67
|
+
/**
|
|
68
|
+
* Absolute path to a `.litertlm` LiteRT-LM text artifact staged under
|
|
69
|
+
* `<bundleRoot>/text/`, when the bundle ships one. Presence (plus LiteRT
|
|
70
|
+
* build/platform support) routes the load to the `litert-lm` backend; the
|
|
71
|
+
* `.gguf` `modelPath` stays the GGUF default otherwise.
|
|
72
|
+
*/
|
|
73
|
+
litertModelPath?: string;
|
|
55
74
|
}
|
|
56
75
|
export interface BackendPlan {
|
|
57
76
|
/** Absolute path to the GGUF on disk. */
|
|
@@ -109,6 +128,14 @@ export interface GenerateArgs extends StructuredGenerateParams {
|
|
|
109
128
|
* streams even when a `grammar` is set).
|
|
110
129
|
*/
|
|
111
130
|
onTextChunk?: (chunk: string) => void | Promise<void>;
|
|
131
|
+
/**
|
|
132
|
+
* Max tokens the FFI backend decodes per `llmStreamNext` step — i.e. the
|
|
133
|
+
* granularity of `onTextChunk` emission. Smaller ⇒ smoother token-by-token
|
|
134
|
+
* streaming to the UI at the cost of more FFI round-trips per response.
|
|
135
|
+
* Unset ⇒ the backend default (coarse, throughput-tuned). The text/chat
|
|
136
|
+
* handler sets a small value for smooth streaming; voice leaves it unset.
|
|
137
|
+
*/
|
|
138
|
+
maxTokensPerStep?: number;
|
|
112
139
|
/**
|
|
113
140
|
* Whether this generation is user-visible text and therefore eligible for
|
|
114
141
|
* voice-mode TTS. Internal JSON / planner calls must not be spoken.
|
|
@@ -137,6 +164,15 @@ export interface LocalGenerateWithUsageResult {
|
|
|
137
164
|
acceptanceRate: number | null;
|
|
138
165
|
};
|
|
139
166
|
}
|
|
167
|
+
/**
|
|
168
|
+
* The in-process runtime the FFI streaming pipe drives for a given load.
|
|
169
|
+
* `llama-cpp` is the default GGUF path; `litert-lm` is the LiteRT-LM
|
|
170
|
+
* `.litertlm` path (same FFI symbols, selected via `ELIZA_LLM_BACKEND` +
|
|
171
|
+
* the C-side `llm_backend_select`). This is the dispatcher's *selection*,
|
|
172
|
+
* distinct from `LocalInferenceBackend.id` (the implementation surface, which
|
|
173
|
+
* stays the single fused FFI backend regardless of the runtime it drives).
|
|
174
|
+
*/
|
|
175
|
+
export type BackendId = "llama-cpp" | "litert-lm";
|
|
140
176
|
export interface LocalRuntimeLoadConfig {
|
|
141
177
|
modelId: string | null;
|
|
142
178
|
modelPath: string | null;
|
|
@@ -146,7 +182,7 @@ export interface LocalRuntimeLoadConfig {
|
|
|
146
182
|
gpuLayers: number | null;
|
|
147
183
|
parallel: number;
|
|
148
184
|
binaryPath: string | null;
|
|
149
|
-
backend:
|
|
185
|
+
backend: BackendId | null;
|
|
150
186
|
mtp: {
|
|
151
187
|
specType: "draft-mtp";
|
|
152
188
|
draftMin: number;
|
|
@@ -162,7 +198,7 @@ export interface LocalRuntimeLoadConfig {
|
|
|
162
198
|
*/
|
|
163
199
|
export interface LocalInferenceBackend {
|
|
164
200
|
/** Identifier for the concrete backend implementation. */
|
|
165
|
-
readonly id: "
|
|
201
|
+
readonly id: "llama-cpp";
|
|
166
202
|
available(): Promise<boolean>;
|
|
167
203
|
load(plan: BackendPlan): Promise<void>;
|
|
168
204
|
unload(): Promise<void>;
|
|
@@ -184,6 +220,12 @@ export interface LocalInferenceBackend {
|
|
|
184
220
|
maxTokens?: number;
|
|
185
221
|
temperature?: number;
|
|
186
222
|
signal?: AbortSignal;
|
|
223
|
+
/** Per-token callback for streaming vision describe (ABI v13). When set and
|
|
224
|
+
* the backend supports streaming, the description is decoded token-by-token
|
|
225
|
+
* through the same pipe as chat text; otherwise the backend returns the
|
|
226
|
+
* full description and ignores it. */
|
|
227
|
+
onTextChunk?: (chunk: string) => void | Promise<void>;
|
|
228
|
+
maxTokensPerStep?: number;
|
|
187
229
|
}): Promise<{
|
|
188
230
|
text: string;
|
|
189
231
|
projectorMs?: number;
|
|
@@ -220,8 +262,34 @@ export interface LocalInferenceBackend {
|
|
|
220
262
|
*/
|
|
221
263
|
currentRuntimeLoadConfig?(): LocalRuntimeLoadConfig | null;
|
|
222
264
|
}
|
|
223
|
-
export type BackendOverride = "auto" | "llama-cpp";
|
|
265
|
+
export type BackendOverride = "auto" | "llama-cpp" | "litert-lm";
|
|
266
|
+
/**
|
|
267
|
+
* The env name the C-side `llm_backend_select` reads to HARD-select an
|
|
268
|
+
* in-process runtime. The dispatcher sets it to `litert-lm` for a LiteRT load
|
|
269
|
+
* and clears it for a llama.cpp load so a prior LiteRT select never leaks into
|
|
270
|
+
* the next GGUF load. Mirrors `tools/omnivoice/src/llm-backend.h`.
|
|
271
|
+
*/
|
|
272
|
+
export declare const ELIZA_LLM_BACKEND_ENV: "ELIZA_LLM_BACKEND";
|
|
224
273
|
export declare function readBackendOverride(): BackendOverride;
|
|
274
|
+
/**
|
|
275
|
+
* Whether the LiteRT-LM in-process backend is usable on THIS build/platform.
|
|
276
|
+
* The C-side `LlmBackendFactory::available()` is the runtime authority (it is
|
|
277
|
+
* compiled in only under `-DELIZA_ENABLE_LITERT` and reports false when the
|
|
278
|
+
* NPU/GPU delegate is absent), but the TS dispatcher must decide *before* the
|
|
279
|
+
* FFI load whether to route there at all, so we gate on the same signals the
|
|
280
|
+
* build/launcher exports:
|
|
281
|
+
*
|
|
282
|
+
* - `ELIZA_ENABLE_LITERT=1` — the explicit opt-in the LiteRT-enabled build
|
|
283
|
+
* sets (matches the `-DELIZA_ENABLE_LITERT` CMake gate).
|
|
284
|
+
* - `ELIZA_PLATFORM=android` — the NPU/GPU-delegate target where a LiteRT
|
|
285
|
+
* `.litertlm` bundle is the on-device path.
|
|
286
|
+
*
|
|
287
|
+
* A bundle that ships a `.litertlm` but runs on a build without LiteRT support
|
|
288
|
+
* loads the GGUF (`llama-cpp`) instead — the artifact is additive, never a
|
|
289
|
+
* requirement. Returns false unless one of the signals is present, so GGUF
|
|
290
|
+
* stays the default everywhere LiteRT is not wired.
|
|
291
|
+
*/
|
|
292
|
+
export declare function litertBackendSupported(env?: NodeJS.ProcessEnv): boolean;
|
|
225
293
|
/**
|
|
226
294
|
* Opt-in "reduced-optimization local mode" (the cross-platform escape hatch
|
|
227
295
|
* documented in `docs/voice-interactive.md` and `packages/inference/AGENTS.md`
|
|
@@ -247,9 +315,24 @@ export declare function warnReducedOptimizationLocalMode(detail: string): void;
|
|
|
247
315
|
/** Reset the one-time warning latch (tests only). */
|
|
248
316
|
export declare function __resetReducedModeWarnedForTests(): void;
|
|
249
317
|
export interface BackendDecision {
|
|
250
|
-
|
|
318
|
+
/**
|
|
319
|
+
* In-process runtime the dispatcher routes this load to. `llama-cpp` (the
|
|
320
|
+
* GGUF path) is the default; `litert-lm` is selected only when the bundle
|
|
321
|
+
* ships a `.litertlm` AND the build/platform supports LiteRT (or it was
|
|
322
|
+
* forced via `ELIZA_INFERENCE_BACKEND=litert-lm`). Both run through the same
|
|
323
|
+
* fused `libelizainference` FFI — the selection only changes the env the
|
|
324
|
+
* C-side `llm_backend_select` reads.
|
|
325
|
+
*/
|
|
326
|
+
backend: BackendId;
|
|
251
327
|
/** Why this backend was chosen — for diagnostics and warnings. */
|
|
252
|
-
reason: "env-override" | "kernel-required" | "preferred-backend" | "default";
|
|
328
|
+
reason: "env-override" | "kernel-required" | "preferred-backend" | "litert-artifact" | "default";
|
|
329
|
+
/**
|
|
330
|
+
* Absolute path to the selected `.litertlm` artifact when `backend ===
|
|
331
|
+
* "litert-lm"`, else undefined. The dispatcher exports
|
|
332
|
+
* `ELIZA_LLM_BACKEND=litert-lm` for this load so the FFI picks the LiteRT
|
|
333
|
+
* factory; the path is surfaced for diagnostics.
|
|
334
|
+
*/
|
|
335
|
+
litertModelPath?: string;
|
|
253
336
|
/** Required kernels declared by the catalog, when any. */
|
|
254
337
|
kernels: LocalRuntimeKernel[];
|
|
255
338
|
/**
|
|
@@ -267,19 +350,30 @@ export interface BackendDecision {
|
|
|
267
350
|
* Pure decision function. Easy to unit-test without spawning anything.
|
|
268
351
|
*
|
|
269
352
|
* Inputs are deliberately explicit — the caller resolves the catalog entry,
|
|
270
|
-
* the binary availability,
|
|
353
|
+
* the binary availability, the env override, and (for LiteRT) the staged
|
|
354
|
+
* `.litertlm` path + the build/platform support flag before calling us.
|
|
271
355
|
*
|
|
272
356
|
* `binaryKernels`, when present, is the parsed CAPABILITIES.json kernels
|
|
273
357
|
* map from the installed llama.cpp FFI runtime. The dispatcher uses it to
|
|
274
358
|
* compute `unsatisfiedKernels`; null means the binary is older / has no
|
|
275
359
|
* capabilities probe, in which case we trust the model's declaration and
|
|
276
360
|
* let the load attempt clarify.
|
|
361
|
+
*
|
|
362
|
+
* `litertModelPath` is the absolute path to a `.litertlm` text artifact when
|
|
363
|
+
* the bundle ships one (else undefined); `litertSupported` is whether this
|
|
364
|
+
* build/platform can run LiteRT ({@link litertBackendSupported}). LiteRT is
|
|
365
|
+
* selected only when BOTH hold, or when forced via
|
|
366
|
+
* `ELIZA_INFERENCE_BACKEND=litert-lm` (a forced LiteRT select with no
|
|
367
|
+
* `.litertlm` or no support throws — no silent downgrade to GGUF). GGUF stays
|
|
368
|
+
* the default in every other case.
|
|
277
369
|
*/
|
|
278
370
|
export declare function decideBackend(input: {
|
|
279
371
|
override: BackendOverride;
|
|
280
372
|
catalog: CatalogModel | undefined;
|
|
281
373
|
llamaCppAvailable: boolean;
|
|
282
374
|
binaryKernels?: Partial<Record<LocalRuntimeKernel | string, boolean>> | null;
|
|
375
|
+
litertModelPath?: string | null;
|
|
376
|
+
litertSupported?: boolean;
|
|
283
377
|
}): BackendDecision;
|
|
284
378
|
/**
|
|
285
379
|
* Resolve the catalog entry for a `BackendPlan`. Plans may carry the entry
|
|
@@ -305,7 +399,7 @@ export declare class BackendDispatcher implements LocalInferenceBackend {
|
|
|
305
399
|
* generation time.
|
|
306
400
|
*/
|
|
307
401
|
private readonly probeBinaryKernels?;
|
|
308
|
-
readonly id: "
|
|
402
|
+
readonly id: "llama-cpp";
|
|
309
403
|
private active;
|
|
310
404
|
constructor(ffiStreaming: LocalInferenceBackend, probeFfiAvailable: () => boolean,
|
|
311
405
|
/**
|
|
@@ -318,7 +412,7 @@ export declare class BackendDispatcher implements LocalInferenceBackend {
|
|
|
318
412
|
*/
|
|
319
413
|
probeBinaryKernels?: (() => Partial<Record<string, boolean>> | null) | undefined);
|
|
320
414
|
available(): Promise<boolean>;
|
|
321
|
-
activeBackendId(): "
|
|
415
|
+
activeBackendId(): "llama-cpp" | null;
|
|
322
416
|
hasLoadedModel(): boolean;
|
|
323
417
|
currentModelPath(): string | null;
|
|
324
418
|
decide(plan: BackendPlan): BackendDecision;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/services/backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,27 @@ export declare class BionicHostLoader implements LocalInferenceLoader {
|
|
|
37
37
|
temperature?: number;
|
|
38
38
|
cacheKey?: string;
|
|
39
39
|
}): Promise<string>;
|
|
40
|
+
/**
|
|
41
|
+
* On-device STT: transcribe mono fp32 PCM via the bionic host's fused
|
|
42
|
+
* Gemma ASR path (op="asr"). The musl agent can't load the fused lib, so
|
|
43
|
+
* the TRANSCRIPTION delegate routes the audio here over the UDS and gets
|
|
44
|
+
* the transcript back. `pcm` is little-endian fp32 already base64-encoded.
|
|
45
|
+
*/
|
|
46
|
+
transcribe(args: {
|
|
47
|
+
pcmBase64: string;
|
|
48
|
+
sampleRate: number;
|
|
49
|
+
}): Promise<string>;
|
|
50
|
+
/**
|
|
51
|
+
* On-device vision / screen-recognition: describe a raw image (PNG/JPEG/WebP
|
|
52
|
+
* bytes, base64) via the bionic host's mmproj describe-image (op="image").
|
|
53
|
+
* `mmprojPath` may be empty — the host resolves the projector from the
|
|
54
|
+
* bundle's `vision/` dir.
|
|
55
|
+
*/
|
|
56
|
+
describeImage(args: {
|
|
57
|
+
imageBase64: string;
|
|
58
|
+
mmprojPath?: string;
|
|
59
|
+
prompt?: string;
|
|
60
|
+
}): Promise<string>;
|
|
40
61
|
/**
|
|
41
62
|
* One request → one response over a fresh connection. Length-prefixed frames:
|
|
42
63
|
* `[int32 BE byte length][UTF-8 JSON]` in each direction.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bionic-host-loader.d.ts","sourceRoot":"","sources":["../../src/services/bionic-host-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,EACX,sBAAsB,EACtB,oBAAoB,EACpB,MAAM,gBAAgB,CAAC;AAwCxB,qBAAa,gBAAiB,YAAW,oBAAoB;IAKhD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAJvC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,SAAS,CAAM;IAEvB,yEAAyE;gBAC5C,UAAU,EAAE,MAAM;IAEzC,SAAS,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAI3B,QAAQ,CAAC,IAAI,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBnB;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BnB;;;;;OAKG;IACG,aAAa,CAAC,IAAI,EAAE;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBnB;;;OAGG;IACH,OAAO,CAAC,SAAS;CAmEjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundled-models.d.ts","sourceRoot":"","sources":["../../src/services/bundled-models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AA2DH;;;;;GAKG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAsC7D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-bridge.d.ts","sourceRoot":"","sources":["../../src/services/cache-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local inference catalog re-exports.
|
|
3
|
+
*
|
|
4
|
+
* The canonical catalog (Eliza-1 tier ids, default-eligibility set,
|
|
5
|
+
* `MODEL_CATALOG`, HuggingFace URL builders) lives in
|
|
6
|
+
* `@elizaos/shared/local-inference`. This shim preserves the historical
|
|
7
|
+
* import path `./catalog` for server-side code.
|
|
8
|
+
*/
|
|
9
|
+
export { buildHuggingFaceResolveUrl, buildHuggingFaceResolveUrlForPath, DEFAULT_ELIGIBLE_MODEL_IDS, ELIZA_1_HF_REPO, ELIZA_1_HOSTED_MTP_TIER_IDS, ELIZA_1_MTP_TIER_IDS, ELIZA_1_PLACEHOLDER_IDS, ELIZA_1_RELEASE_TIER_IDS, ELIZA_1_TIER_IDS, ELIZA_1_TIER_PUBLISH_STATUS, ELIZA_1_VISION_TIER_IDS, type Eliza1TierId, eliza1TierPublishStatus, FIRST_RUN_DEFAULT_MODEL_ID, findCatalogModel, hasHuggingFaceToken, isDefaultEligibleId, isHuggingFaceHost, MODEL_CATALOG, resolveHfDownloadBase, resolveHubAuthHeaders, resolveHuggingFaceToken, } from "@elizaos/shared";
|
|
10
|
+
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/services/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACN,0BAA0B,EAC1B,iCAAiC,EACjC,0BAA0B,EAC1B,eAAe,EACf,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,EAChB,2BAA2B,EAC3B,uBAAuB,EACvB,KAAK,YAAY,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,GACvB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoint-client.d.ts","sourceRoot":"","sources":["../../src/services/checkpoint-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAChC,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAC7B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IACN,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB,KACG,OAAO,CAAC;IACZ,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACxB,CAAC,CAAC;AAEH;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAClB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;CAMjE;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID;;;;GAIG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAE9B,IAAI,EAAE,uBAAuB;IAMzC;;;;;OAKG;IACG,cAAc,CACnB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,gBAAgB,CAAC;IAe5B;;;;OAIG;IACG,iBAAiB,CACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAUhB;;;;;OAKG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE;;;;;;OAMG;IACG,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;YAuB9C,OAAO;CAmCrB"}
|