@qvac/sdk 0.14.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (798) hide show
  1. package/NOTICE +27 -11
  2. package/README.md +34 -35
  3. package/dist/client/api/batch-completion.d.ts +15 -0
  4. package/dist/client/api/batch-completion.js +332 -0
  5. package/dist/client/api/bci-transcribe.d.ts +1 -1
  6. package/dist/client/api/bci-transcribe.js +31 -31
  7. package/dist/client/api/cancel.d.ts +1 -1
  8. package/dist/client/api/cancel.js +18 -18
  9. package/dist/client/api/classify.d.ts +1 -1
  10. package/dist/client/api/classify.js +9 -6
  11. package/dist/client/api/client-request-id.js +1 -1
  12. package/dist/client/api/completion-stream.d.ts +3 -3
  13. package/dist/client/api/completion-stream.js +18 -18
  14. package/dist/client/api/delete-cache.js +9 -9
  15. package/dist/client/api/diffusion.d.ts +1 -1
  16. package/dist/client/api/diffusion.js +17 -11
  17. package/dist/client/api/download-asset.d.ts +1 -1
  18. package/dist/client/api/download-asset.js +11 -11
  19. package/dist/client/api/embed.d.ts +1 -1
  20. package/dist/client/api/embed.js +10 -10
  21. package/dist/client/api/finetune.d.ts +1 -1
  22. package/dist/client/api/finetune.js +25 -27
  23. package/dist/client/api/get-loaded-model-info.d.ts +2 -2
  24. package/dist/client/api/get-loaded-model-info.js +8 -8
  25. package/dist/client/api/get-model-info.d.ts +1 -1
  26. package/dist/client/api/get-model-info.js +7 -7
  27. package/dist/client/api/heartbeat.d.ts +2 -2
  28. package/dist/client/api/heartbeat.js +7 -7
  29. package/dist/client/api/index.d.ts +33 -32
  30. package/dist/client/api/index.js +33 -32
  31. package/dist/client/api/invoke-plugin.d.ts +1 -1
  32. package/dist/client/api/invoke-plugin.js +10 -10
  33. package/dist/client/api/load-model.d.ts +1 -1
  34. package/dist/client/api/load-model.js +32 -32
  35. package/dist/client/api/logging-stream.d.ts +1 -1
  36. package/dist/client/api/logging-stream.js +6 -6
  37. package/dist/client/api/ocr.d.ts +1 -1
  38. package/dist/client/api/ocr.js +11 -11
  39. package/dist/client/api/provide.d.ts +1 -1
  40. package/dist/client/api/provide.js +7 -7
  41. package/dist/client/api/rag.d.ts +1 -1
  42. package/dist/client/api/rag.js +65 -66
  43. package/dist/client/api/registry.d.ts +1 -1
  44. package/dist/client/api/registry.js +8 -8
  45. package/dist/client/api/resume.js +5 -5
  46. package/dist/client/api/state.d.ts +1 -1
  47. package/dist/client/api/state.js +5 -5
  48. package/dist/client/api/stop-provider.js +6 -6
  49. package/dist/client/api/subscribe-logs.d.ts +1 -1
  50. package/dist/client/api/subscribe-logs.js +3 -3
  51. package/dist/client/api/suspend.js +5 -5
  52. package/dist/client/api/text-to-speech.d.ts +1 -1
  53. package/dist/client/api/text-to-speech.js +37 -39
  54. package/dist/client/api/transcribe.d.ts +2 -2
  55. package/dist/client/api/transcribe.js +44 -45
  56. package/dist/client/api/translate.d.ts +1 -1
  57. package/dist/client/api/translate.js +14 -14
  58. package/dist/client/api/unload-model.d.ts +1 -1
  59. package/dist/client/api/unload-model.js +11 -11
  60. package/dist/client/api/upscale.d.ts +1 -1
  61. package/dist/client/api/upscale.js +9 -9
  62. package/dist/client/api/video.d.ts +1 -1
  63. package/dist/client/api/video.js +16 -14
  64. package/dist/client/api/vla-helpers.d.ts +2 -2
  65. package/dist/client/api/vla-helpers.js +6 -11
  66. package/dist/client/api/vla.d.ts +1 -1
  67. package/dist/client/api/vla.js +13 -13
  68. package/dist/client/config-loader/config-utils.d.ts +1 -1
  69. package/dist/client/config-loader/config-utils.js +3 -3
  70. package/dist/client/config-loader/resolve-config.bare.d.ts +1 -1
  71. package/dist/client/config-loader/resolve-config.bare.js +11 -11
  72. package/dist/client/config-loader/resolve-config.expo.d.ts +1 -1
  73. package/dist/client/config-loader/resolve-config.expo.js +6 -6
  74. package/dist/client/config-loader/resolve-config.node.d.ts +1 -1
  75. package/dist/client/config-loader/resolve-config.node.js +27 -27
  76. package/dist/client/index.d.ts +1 -1
  77. package/dist/client/index.js +1 -1
  78. package/dist/client/init-hooks.d.ts +1 -1
  79. package/dist/client/init-hooks.js +12 -12
  80. package/dist/client/logging-stream-registry.d.ts +1 -1
  81. package/dist/client/logging-stream-registry.js +6 -6
  82. package/dist/client/parse-input.d.ts +1 -1
  83. package/dist/client/parse-input.js +3 -3
  84. package/dist/client/plugins-factory.d.ts +2 -2
  85. package/dist/client/plugins-factory.js +2 -2
  86. package/dist/client/rpc/bare-client.d.ts +2 -1
  87. package/dist/client/rpc/bare-client.js +37 -39
  88. package/dist/client/rpc/ensure-worker-ready.js +4 -4
  89. package/dist/client/rpc/expo-device-info.d.ts +1 -1
  90. package/dist/client/rpc/expo-device-info.js +11 -11
  91. package/dist/client/rpc/expo-rpc-client.d.ts +2 -1
  92. package/dist/client/rpc/expo-rpc-client.js +38 -47
  93. package/dist/client/rpc/node-rpc-client.d.ts +2 -1
  94. package/dist/client/rpc/node-rpc-client.js +103 -75
  95. package/dist/client/rpc/profiling/index.d.ts +1 -1
  96. package/dist/client/rpc/profiling/index.js +1 -1
  97. package/dist/client/rpc/profiling/profiler.d.ts +2 -2
  98. package/dist/client/rpc/profiling/profiler.js +31 -34
  99. package/dist/client/rpc/rpc-client.d.ts +2 -2
  100. package/dist/client/rpc/rpc-client.js +113 -72
  101. package/dist/client/rpc/rpc-error.d.ts +1 -1
  102. package/dist/client/rpc/rpc-error.js +14 -14
  103. package/dist/commands/bundle/bare-pack.d.ts +1 -1
  104. package/dist/commands/bundle/bare-pack.js +20 -20
  105. package/dist/commands/bundle/constants.js +21 -21
  106. package/dist/commands/bundle/entry-gen.d.ts +1 -1
  107. package/dist/commands/bundle/entry-gen.js +10 -10
  108. package/dist/commands/bundle/index.js +47 -47
  109. package/dist/commands/bundle/manifest.d.ts +1 -1
  110. package/dist/commands/bundle/manifest.js +44 -46
  111. package/dist/commands/bundle/plugins.d.ts +2 -2
  112. package/dist/commands/bundle/plugins.js +7 -7
  113. package/dist/commands/bundle/resolve-sdk-import.d.ts +6 -0
  114. package/dist/commands/bundle/resolve-sdk-import.js +53 -0
  115. package/dist/commands/index.d.ts +4 -4
  116. package/dist/commands/index.js +2 -2
  117. package/dist/commands/verify/abi.d.ts +9 -9
  118. package/dist/commands/verify/abi.js +31 -31
  119. package/dist/commands/verify/addon-source.d.ts +1 -1
  120. package/dist/commands/verify/addon-source.js +13 -14
  121. package/dist/commands/verify/bundle-source.d.ts +1 -1
  122. package/dist/commands/verify/bundle-source.js +7 -7
  123. package/dist/commands/verify/index.d.ts +3 -3
  124. package/dist/commands/verify/index.js +18 -17
  125. package/dist/commands/verify/node-modules-source.d.ts +1 -1
  126. package/dist/commands/verify/node-modules-source.js +11 -11
  127. package/dist/commands/verify/prebuilds.d.ts +3 -3
  128. package/dist/commands/verify/prebuilds.js +8 -8
  129. package/dist/constants/audio.d.ts +1 -1
  130. package/dist/constants/audio.js +1 -1
  131. package/dist/constants/index.d.ts +2 -2
  132. package/dist/constants/index.js +2 -2
  133. package/dist/constants/registry.js +1 -1
  134. package/dist/examples/audio/mic-input.d.ts +1 -1
  135. package/dist/examples/audio/mic-input.js +31 -31
  136. package/dist/examples/batch-completion.d.ts +38 -0
  137. package/dist/examples/batch-completion.js +100 -0
  138. package/dist/examples/bci/bci-filesystem-streaming.js +20 -20
  139. package/dist/examples/bci/bci-filesystem.js +17 -17
  140. package/dist/examples/cache-management.js +32 -32
  141. package/dist/examples/cancel-by-request-id.js +11 -11
  142. package/dist/examples/classification/classify-image.js +5 -5
  143. package/dist/examples/completion-events.js +16 -18
  144. package/dist/examples/completion-stop-reason.js +13 -13
  145. package/dist/examples/concurrent-completion-collision.js +20 -20
  146. package/dist/examples/config/blind-relay/blind-relay.config.js +4 -4
  147. package/dist/examples/config/default/default.config.js +2 -2
  148. package/dist/examples/config/plugins/plugins.config.js +2 -2
  149. package/dist/examples/config-reload.js +14 -14
  150. package/dist/examples/default-config-usage.js +10 -13
  151. package/dist/examples/delegated-inference/composite.js +23 -23
  152. package/dist/examples/delegated-inference/consumer-profiled.js +19 -19
  153. package/dist/examples/delegated-inference/consumer.js +11 -11
  154. package/dist/examples/delegated-inference/provider.js +24 -24
  155. package/dist/examples/diffusion-esrgan-upscale.js +19 -19
  156. package/dist/examples/diffusion-flux2-klein-img2img.js +17 -17
  157. package/dist/examples/diffusion-flux2-klein.js +14 -14
  158. package/dist/examples/diffusion-img2img.js +13 -13
  159. package/dist/examples/diffusion-img2vid.js +22 -23
  160. package/dist/examples/diffusion-simple.js +7 -7
  161. package/dist/examples/diffusion-txt2img.js +13 -14
  162. package/dist/examples/diffusion-txt2vid.js +18 -18
  163. package/dist/examples/download-with-blind-relays.js +7 -8
  164. package/dist/examples/download-with-cancel.js +9 -9
  165. package/dist/examples/embed-multi-gpu.js +9 -9
  166. package/dist/examples/embed-p2p.js +24 -24
  167. package/dist/examples/finetune/llamacpp-finetune.js +21 -21
  168. package/dist/examples/kv-cache-cleanup.js +34 -34
  169. package/dist/examples/kv-cache-custom-key.js +30 -30
  170. package/dist/examples/kv-cache-example.js +18 -20
  171. package/dist/examples/llamacpp-cache.js +33 -33
  172. package/dist/examples/llamacpp-dynamic-tools.js +38 -38
  173. package/dist/examples/llamacpp-filesystem.js +13 -15
  174. package/dist/examples/llamacpp-http.js +12 -14
  175. package/dist/examples/llamacpp-multi-gpu.js +12 -12
  176. package/dist/examples/llamacpp-multimodal.js +16 -16
  177. package/dist/examples/llamacpp-p2p.js +11 -11
  178. package/dist/examples/llamacpp-sharded.js +12 -12
  179. package/dist/examples/llamacpp-structured-output.js +37 -37
  180. package/dist/examples/logging-file-transport.js +19 -21
  181. package/dist/examples/logging-global.js +8 -8
  182. package/dist/examples/logging-streaming.js +16 -18
  183. package/dist/examples/mcp-websearch.js +44 -44
  184. package/dist/examples/multi-model-demo.js +33 -33
  185. package/dist/examples/ocr-fasttext.js +17 -17
  186. package/dist/examples/parallel-download.js +11 -13
  187. package/dist/examples/plugins.js +43 -43
  188. package/dist/examples/profiling/basic.js +34 -36
  189. package/dist/examples/profiling/per-call.js +16 -16
  190. package/dist/examples/quickstart.bare.js +4 -6
  191. package/dist/examples/quickstart.js +7 -7
  192. package/dist/examples/rag/rag-chromadb.js +26 -26
  193. package/dist/examples/rag/rag-hyperdb/cancellation.js +19 -20
  194. package/dist/examples/rag/rag-hyperdb/ingest.js +19 -19
  195. package/dist/examples/rag/rag-hyperdb/pipeline.js +26 -26
  196. package/dist/examples/rag/rag-hyperdb/workspaces.js +46 -46
  197. package/dist/examples/rag/rag-lancedb.js +29 -32
  198. package/dist/examples/rag/rag-sqlite.js +25 -25
  199. package/dist/examples/registry-query.js +15 -15
  200. package/dist/examples/seed-p2p.js +8 -8
  201. package/dist/examples/suspend-resume.js +20 -20
  202. package/dist/examples/tools/llamacpp-native-tools.js +25 -25
  203. package/dist/examples/tools/llamacpp-tools-gemma4.js +14 -14
  204. package/dist/examples/tools/llamacpp-tools-harmony-multiturn.js +15 -15
  205. package/dist/examples/tools/llamacpp-tools-pythonic.js +15 -15
  206. package/dist/examples/tools/llamacpp-tools-qwen35.js +14 -14
  207. package/dist/examples/tools/shared.d.ts +2 -2
  208. package/dist/examples/tools/shared.js +17 -17
  209. package/dist/examples/transcription/parakeet-ctc-filesystem.js +12 -12
  210. package/dist/examples/transcription/parakeet-microphone-record.js +19 -19
  211. package/dist/examples/transcription/parakeet-microphone-stream.js +23 -23
  212. package/dist/examples/transcription/parakeet-sortformer-streaming.js +18 -28
  213. package/dist/examples/transcription/parakeet-sortformer.js +21 -21
  214. package/dist/examples/transcription/parakeet-tdt-filesystem.js +13 -13
  215. package/dist/examples/transcription/whispercpp-filesystem-streaming.js +34 -34
  216. package/dist/examples/transcription/whispercpp-filesystem.js +19 -19
  217. package/dist/examples/transcription/whispercpp-microphone-conversation.js +27 -27
  218. package/dist/examples/transcription/whispercpp-microphone-record.js +21 -21
  219. package/dist/examples/transcription/whispercpp-prompt.js +18 -18
  220. package/dist/examples/translation/translation-bergamot-batch.js +17 -17
  221. package/dist/examples/translation/translation-bergamot-pivot.js +16 -16
  222. package/dist/examples/translation/translation-bergamot.js +11 -11
  223. package/dist/examples/translation/translation-indic.js +10 -10
  224. package/dist/examples/translation/translation-llm-afriquegemma.js +10 -10
  225. package/dist/examples/translation/translation-llm-context.js +10 -10
  226. package/dist/examples/translation/translation-llm.js +13 -13
  227. package/dist/examples/translation/translation-stream.js +11 -11
  228. package/dist/examples/tts/chatterbox-enhanced.d.ts +2 -0
  229. package/dist/examples/tts/chatterbox-enhanced.js +55 -0
  230. package/dist/examples/tts/chatterbox-multilingual.d.ts +2 -0
  231. package/dist/examples/tts/chatterbox-multilingual.js +54 -0
  232. package/dist/examples/tts/chatterbox.js +18 -18
  233. package/dist/examples/tts/llm-to-tts-streaming.js +30 -30
  234. package/dist/examples/tts/supertonic-enhanced.d.ts +2 -0
  235. package/dist/examples/tts/supertonic-enhanced.js +57 -0
  236. package/dist/examples/tts/supertonic-multilingual.js +19 -19
  237. package/dist/examples/tts/supertonic.js +18 -18
  238. package/dist/examples/tts/utils.js +24 -32
  239. package/dist/examples/vla-pi05.js +14 -14
  240. package/dist/examples/vla-smolvla.js +14 -14
  241. package/dist/examples/voice-assistant/voice-assistant.js +46 -46
  242. package/dist/expo/plugins/find-in-ancestor-node-modules.js +3 -3
  243. package/dist/expo/plugins/get-project-root.d.ts +2 -2
  244. package/dist/expo/plugins/get-project-root.js +1 -1
  245. package/dist/expo/plugins/index.d.ts +11 -11
  246. package/dist/expo/plugins/index.js +10 -10
  247. package/dist/expo/plugins/resolve-sdk-package-dir.js +7 -11
  248. package/dist/expo/plugins/withAndroidArchitecture.d.ts +1 -1
  249. package/dist/expo/plugins/withAndroidArchitecture.js +12 -12
  250. package/dist/expo/plugins/withAndroidNdkVersion.d.ts +1 -1
  251. package/dist/expo/plugins/withAndroidNdkVersion.js +9 -9
  252. package/dist/expo/plugins/withDeviceInfo.d.ts +1 -1
  253. package/dist/expo/plugins/withDeviceInfo.js +13 -13
  254. package/dist/expo/plugins/withMobileBundle.d.ts +1 -1
  255. package/dist/expo/plugins/withMobileBundle.js +34 -42
  256. package/dist/expo/plugins/withOpenCL.d.ts +1 -1
  257. package/dist/expo/plugins/withOpenCL.js +14 -16
  258. package/dist/expo/plugins/withQvacSDK.d.ts +1 -1
  259. package/dist/expo/plugins/withQvacSDK.js +12 -12
  260. package/dist/index.d.ts +16 -16
  261. package/dist/index.js +16 -17
  262. package/dist/logging/addon.d.ts +1 -1
  263. package/dist/logging/addon.js +13 -13
  264. package/dist/logging/base-logger.d.ts +2 -2
  265. package/dist/logging/base-logger.js +6 -6
  266. package/dist/logging/client-logger.d.ts +1 -1
  267. package/dist/logging/client-logger.js +3 -3
  268. package/dist/logging/index.d.ts +9 -9
  269. package/dist/logging/index.js +8 -8
  270. package/dist/logging/logger.d.ts +1 -1
  271. package/dist/logging/logger.js +4 -4
  272. package/dist/logging/namespaces.d.ts +1 -1
  273. package/dist/logging/namespaces.js +5 -5
  274. package/dist/logging/registry.d.ts +2 -2
  275. package/dist/logging/registry.js +3 -3
  276. package/dist/logging/server-logger.d.ts +1 -1
  277. package/dist/logging/server-logger.js +2 -2
  278. package/dist/logging/stream-logger.d.ts +1 -1
  279. package/dist/logging/stream-logger.js +4 -4
  280. package/dist/logging/transport.d.ts +1 -1
  281. package/dist/logging/types.d.ts +1 -1
  282. package/dist/logging/utils.d.ts +2 -2
  283. package/dist/logging/utils.js +40 -41
  284. package/dist/models/registry/index.d.ts +1 -1
  285. package/dist/models/registry/index.js +5 -5
  286. package/dist/models/registry/models.d.ts +429 -122
  287. package/dist/models/registry/models.js +13693 -13369
  288. package/dist/models/update-models/codegen.d.ts +1 -1
  289. package/dist/models/update-models/codegen.js +8 -8
  290. package/dist/models/update-models/companions.d.ts +6 -1
  291. package/dist/models/update-models/companions.js +104 -39
  292. package/dist/models/update-models/history.d.ts +1 -1
  293. package/dist/models/update-models/history.js +11 -11
  294. package/dist/models/update-models/index.js +32 -34
  295. package/dist/models/update-models/naming.d.ts +2 -2
  296. package/dist/models/update-models/naming.js +177 -186
  297. package/dist/models/update-models/processing.d.ts +2 -2
  298. package/dist/models/update-models/processing.js +17 -19
  299. package/dist/models/update-models/registry.d.ts +2 -2
  300. package/dist/models/update-models/registry.js +9 -9
  301. package/dist/models/update-models/shards.d.ts +1 -1
  302. package/dist/models/update-models/shards.js +3 -3
  303. package/dist/models/update-models/types.d.ts +1 -1
  304. package/dist/models/update-models/utils.js +5 -5
  305. package/dist/pear/pre.js +84 -84
  306. package/dist/profiling/aggregator.d.ts +1 -1
  307. package/dist/profiling/aggregator.js +6 -6
  308. package/dist/profiling/clock.d.ts +1 -1
  309. package/dist/profiling/clock.js +10 -10
  310. package/dist/profiling/controller.d.ts +2 -2
  311. package/dist/profiling/controller.js +11 -12
  312. package/dist/profiling/envelope.d.ts +1 -1
  313. package/dist/profiling/envelope.js +4 -6
  314. package/dist/profiling/events.d.ts +2 -2
  315. package/dist/profiling/events.js +8 -10
  316. package/dist/profiling/exporters.d.ts +1 -1
  317. package/dist/profiling/exporters.js +81 -79
  318. package/dist/profiling/index.d.ts +8 -8
  319. package/dist/profiling/index.js +7 -7
  320. package/dist/profiling/model-execution.js +2 -1
  321. package/dist/profiling/ring-buffer.js +2 -2
  322. package/dist/profiling/types.d.ts +3 -3
  323. package/dist/schemas/archive.d.ts +1 -1
  324. package/dist/schemas/archive.js +8 -14
  325. package/dist/schemas/batch-completion-stream.d.ts +463 -0
  326. package/dist/schemas/batch-completion-stream.js +124 -0
  327. package/dist/schemas/bci-config.d.ts +1 -1
  328. package/dist/schemas/bci-config.js +7 -7
  329. package/dist/schemas/bci.d.ts +3 -3
  330. package/dist/schemas/bci.js +25 -31
  331. package/dist/schemas/cancel.d.ts +6 -1
  332. package/dist/schemas/cancel.js +33 -34
  333. package/dist/schemas/classification.d.ts +1 -1
  334. package/dist/schemas/classification.js +7 -7
  335. package/dist/schemas/common.d.ts +194 -25
  336. package/dist/schemas/common.js +40 -37
  337. package/dist/schemas/completion-event.d.ts +11 -8
  338. package/dist/schemas/completion-event.js +27 -26
  339. package/dist/schemas/completion-stream.d.ts +4 -3
  340. package/dist/schemas/completion-stream.js +51 -67
  341. package/dist/schemas/delegate.d.ts +1 -1
  342. package/dist/schemas/delegate.js +7 -7
  343. package/dist/schemas/delete-cache.d.ts +1 -1
  344. package/dist/schemas/delete-cache.js +8 -8
  345. package/dist/schemas/download-asset.d.ts +2 -2
  346. package/dist/schemas/download-asset.js +21 -21
  347. package/dist/schemas/embed.d.ts +3 -3
  348. package/dist/schemas/embed.js +16 -27
  349. package/dist/schemas/engine-addon-map.d.ts +2 -2
  350. package/dist/schemas/engine-addon-map.js +24 -24
  351. package/dist/schemas/error.d.ts +1 -1
  352. package/dist/schemas/error.js +12 -13
  353. package/dist/schemas/finetune.d.ts +1 -1
  354. package/dist/schemas/finetune.js +35 -41
  355. package/dist/schemas/get-loaded-model-info.d.ts +1 -1
  356. package/dist/schemas/get-loaded-model-info.js +10 -10
  357. package/dist/schemas/get-model-info.d.ts +1 -1
  358. package/dist/schemas/get-model-info.js +48 -91
  359. package/dist/schemas/heartbeat.d.ts +1 -1
  360. package/dist/schemas/heartbeat.js +6 -6
  361. package/dist/schemas/index.d.ts +52 -51
  362. package/dist/schemas/index.js +52 -51
  363. package/dist/schemas/json-schema.d.ts +1 -1
  364. package/dist/schemas/llamacpp-config.d.ts +33 -25
  365. package/dist/schemas/llamacpp-config.js +43 -30
  366. package/dist/schemas/load-model.d.ts +160 -128
  367. package/dist/schemas/load-model.js +120 -126
  368. package/dist/schemas/logging-stream.d.ts +1 -1
  369. package/dist/schemas/logging-stream.js +6 -12
  370. package/dist/schemas/mcp-adapter.d.ts +1 -1
  371. package/dist/schemas/model-src-utils.d.ts +1 -1
  372. package/dist/schemas/model-src-utils.js +13 -13
  373. package/dist/schemas/model-types.d.ts +1 -1
  374. package/dist/schemas/model-types.js +27 -27
  375. package/dist/schemas/ocr.d.ts +1 -1
  376. package/dist/schemas/ocr.js +18 -18
  377. package/dist/schemas/path-validation.d.ts +1 -1
  378. package/dist/schemas/path-validation.js +4 -4
  379. package/dist/schemas/plugin.d.ts +9 -10
  380. package/dist/schemas/plugin.js +47 -47
  381. package/dist/schemas/profiling.d.ts +1 -1
  382. package/dist/schemas/profiling.js +16 -16
  383. package/dist/schemas/provide.d.ts +1 -1
  384. package/dist/schemas/provide.js +8 -8
  385. package/dist/schemas/rag.d.ts +3 -3
  386. package/dist/schemas/rag.js +65 -70
  387. package/dist/schemas/registry.d.ts +1 -1
  388. package/dist/schemas/registry.js +44 -66
  389. package/dist/schemas/reload-config.d.ts +1 -1
  390. package/dist/schemas/reload-config.js +14 -18
  391. package/dist/schemas/resume.d.ts +1 -1
  392. package/dist/schemas/resume.js +3 -3
  393. package/dist/schemas/runtime-context.d.ts +1 -1
  394. package/dist/schemas/runtime-context.js +4 -4
  395. package/dist/schemas/sdcpp-config.d.ts +9 -9
  396. package/dist/schemas/sdcpp-config.js +298 -300
  397. package/dist/schemas/sdk-config.d.ts +55 -43
  398. package/dist/schemas/sdk-config.js +25 -29
  399. package/dist/schemas/sdk-errors-client.d.ts +1 -1
  400. package/dist/schemas/sdk-errors-client.js +80 -80
  401. package/dist/schemas/sdk-errors-registry.js +1 -1
  402. package/dist/schemas/sdk-errors-server.d.ts +1 -1
  403. package/dist/schemas/sdk-errors-server.js +200 -199
  404. package/dist/schemas/shard.d.ts +1 -1
  405. package/dist/schemas/shard.js +4 -4
  406. package/dist/schemas/state.d.ts +1 -1
  407. package/dist/schemas/state.js +5 -10
  408. package/dist/schemas/stop-provide.d.ts +1 -1
  409. package/dist/schemas/stop-provide.js +4 -4
  410. package/dist/schemas/suspend.d.ts +1 -1
  411. package/dist/schemas/suspend.js +3 -3
  412. package/dist/schemas/text-to-speech.d.ts +455 -3
  413. package/dist/schemas/text-to-speech.js +146 -110
  414. package/dist/schemas/tools.d.ts +1 -1
  415. package/dist/schemas/tools.js +17 -24
  416. package/dist/schemas/transcription-config.d.ts +1 -1
  417. package/dist/schemas/transcription-config.js +18 -18
  418. package/dist/schemas/transcription.d.ts +5 -5
  419. package/dist/schemas/transcription.js +31 -33
  420. package/dist/schemas/translate.d.ts +3 -3
  421. package/dist/schemas/translate.js +38 -67
  422. package/dist/schemas/translation-config.d.ts +1 -1
  423. package/dist/schemas/translation-config.js +116 -123
  424. package/dist/schemas/unload-model.d.ts +1 -1
  425. package/dist/schemas/unload-model.js +6 -6
  426. package/dist/schemas/vla.d.ts +1 -1
  427. package/dist/schemas/vla.js +30 -30
  428. package/dist/scripts/run-security-tests.js +9 -10
  429. package/dist/scripts/run-unit-tests.js +11 -12
  430. package/dist/server/bare/delegate-connect-diagnostics.js +13 -19
  431. package/dist/server/bare/delegate-rpc-client.d.ts +2 -2
  432. package/dist/server/bare/delegate-rpc-client.js +32 -34
  433. package/dist/server/bare/hyperswarm.d.ts +3 -3
  434. package/dist/server/bare/hyperswarm.js +14 -14
  435. package/dist/server/bare/ops/bci-transcribe.d.ts +1 -1
  436. package/dist/server/bare/ops/bci-transcribe.js +44 -44
  437. package/dist/server/bare/ops/cancel.d.ts +2 -2
  438. package/dist/server/bare/ops/cancel.js +6 -6
  439. package/dist/server/bare/ops/embed.d.ts +1 -1
  440. package/dist/server/bare/ops/embed.js +26 -16
  441. package/dist/server/bare/ops/kv-cache-utils.d.ts +1 -1
  442. package/dist/server/bare/ops/kv-cache-utils.js +17 -19
  443. package/dist/server/bare/ops/load-model.d.ts +2 -2
  444. package/dist/server/bare/ops/load-model.js +14 -18
  445. package/dist/server/bare/ops/transcribe.d.ts +3 -3
  446. package/dist/server/bare/ops/transcribe.js +62 -62
  447. package/dist/server/bare/ops/translate.d.ts +1 -1
  448. package/dist/server/bare/ops/translate.js +39 -30
  449. package/dist/server/bare/ops/unload-model.d.ts +1 -1
  450. package/dist/server/bare/ops/unload-model.js +12 -12
  451. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.d.ts +2 -2
  452. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.js +3 -3
  453. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.d.ts +2 -2
  454. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.js +33 -33
  455. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.d.ts +1 -1
  456. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.js +1 -1
  457. package/dist/server/bare/plugins/ggml-classification/ops/classify.d.ts +1 -1
  458. package/dist/server/bare/plugins/ggml-classification/ops/classify.js +8 -8
  459. package/dist/server/bare/plugins/ggml-classification/plugin.d.ts +1 -1
  460. package/dist/server/bare/plugins/ggml-classification/plugin.js +14 -14
  461. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.d.ts +1 -1
  462. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.js +27 -26
  463. package/dist/server/bare/plugins/ggml-ocr/plugin.d.ts +1 -1
  464. package/dist/server/bare/plugins/ggml-ocr/plugin.js +38 -38
  465. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.d.ts +1 -1
  466. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.js +3 -3
  467. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.d.ts +1 -1
  468. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.js +23 -23
  469. package/dist/server/bare/plugins/ggml-vla/plugin.d.ts +1 -1
  470. package/dist/server/bare/plugins/ggml-vla/plugin.js +15 -15
  471. package/dist/server/bare/plugins/index.d.ts +11 -11
  472. package/dist/server/bare/plugins/index.js +11 -11
  473. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.d.ts +23 -0
  474. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.js +30 -0
  475. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.d.ts +32 -0
  476. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.js +99 -0
  477. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.d.ts +1 -1
  478. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.js +8 -8
  479. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.d.ts +3 -2
  480. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.js +4 -1
  481. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.d.ts +22 -4
  482. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.js +55 -59
  483. package/dist/server/bare/plugins/llamacpp-completion/ops/context-overflow.js +5 -5
  484. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.d.ts +2 -2
  485. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.js +34 -34
  486. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.d.ts +7 -7
  487. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.js +19 -23
  488. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.js +4 -6
  489. package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +186 -17
  490. package/dist/server/bare/plugins/llamacpp-completion/plugin.js +235 -70
  491. package/dist/server/bare/plugins/llamacpp-completion/transform.d.ts +1 -1
  492. package/dist/server/bare/plugins/llamacpp-completion/transform.js +15 -15
  493. package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +3 -3
  494. package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +27 -29
  495. package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +1 -1
  496. package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +38 -39
  497. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.d.ts +1 -1
  498. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.js +19 -22
  499. package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +1 -1
  500. package/dist/server/bare/plugins/parakeet-transcription/plugin.js +36 -36
  501. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.d.ts +1 -1
  502. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.js +15 -17
  503. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.d.ts +1 -1
  504. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.js +11 -11
  505. package/dist/server/bare/plugins/sdcpp-generation/ops/video.d.ts +1 -1
  506. package/dist/server/bare/plugins/sdcpp-generation/ops/video.js +42 -44
  507. package/dist/server/bare/plugins/sdcpp-generation/plugin.d.ts +4 -4
  508. package/dist/server/bare/plugins/sdcpp-generation/plugin.js +69 -63
  509. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.d.ts +2 -2
  510. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.js +19 -21
  511. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.d.ts +2 -2
  512. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.js +22 -24
  513. package/dist/server/bare/plugins/tts-ggml/plugin.d.ts +3 -2
  514. package/dist/server/bare/plugins/tts-ggml/plugin.js +95 -49
  515. package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +1 -1
  516. package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +52 -52
  517. package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +1 -1
  518. package/dist/server/bare/rag-hyperdb/handlers/chunk.js +2 -2
  519. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +1 -1
  520. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +2 -2
  521. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
  522. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +4 -4
  523. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +1 -1
  524. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +3 -3
  525. package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +2 -2
  526. package/dist/server/bare/rag-hyperdb/handlers/ingest.js +4 -4
  527. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +1 -1
  528. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +1 -1
  529. package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +2 -2
  530. package/dist/server/bare/rag-hyperdb/handlers/reindex.js +5 -5
  531. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +2 -2
  532. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +3 -3
  533. package/dist/server/bare/rag-hyperdb/handlers/search.d.ts +1 -1
  534. package/dist/server/bare/rag-hyperdb/handlers/search.js +3 -3
  535. package/dist/server/bare/rag-hyperdb/index.d.ts +11 -11
  536. package/dist/server/bare/rag-hyperdb/index.js +11 -11
  537. package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +3 -3
  538. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.d.ts +1 -1
  539. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +20 -20
  540. package/dist/server/bare/registry/config-registry.d.ts +1 -1
  541. package/dist/server/bare/registry/config-registry.js +13 -16
  542. package/dist/server/bare/registry/logging-stream-registry.d.ts +1 -1
  543. package/dist/server/bare/registry/logging-stream-registry.js +2 -2
  544. package/dist/server/bare/registry/model-config-registry.d.ts +2 -2
  545. package/dist/server/bare/registry/model-config-registry.js +6 -6
  546. package/dist/server/bare/registry/model-config-utils.d.ts +2 -2
  547. package/dist/server/bare/registry/model-config-utils.js +35 -35
  548. package/dist/server/bare/registry/model-registry.d.ts +3 -3
  549. package/dist/server/bare/registry/model-registry.js +11 -11
  550. package/dist/server/bare/registry/registry-client.d.ts +1 -1
  551. package/dist/server/bare/registry/registry-client.js +18 -18
  552. package/dist/server/bare/registry/runtime-context-registry.d.ts +1 -1
  553. package/dist/server/bare/registry/runtime-context-registry.js +3 -3
  554. package/dist/server/bare/runtime/disposable-scope.js +3 -3
  555. package/dist/server/bare/runtime/index.d.ts +7 -7
  556. package/dist/server/bare/runtime/index.js +3 -3
  557. package/dist/server/bare/runtime/request-context.d.ts +4 -4
  558. package/dist/server/bare/runtime/request-id.js +1 -1
  559. package/dist/server/bare/runtime/request-registry-singleton.d.ts +1 -1
  560. package/dist/server/bare/runtime/request-registry-singleton.js +23 -4
  561. package/dist/server/bare/runtime/request-registry.d.ts +27 -12
  562. package/dist/server/bare/runtime/request-registry.js +39 -34
  563. package/dist/server/bare/runtime/with-request-context.d.ts +1 -1
  564. package/dist/server/bare/runtime/with-request-context.js +11 -11
  565. package/dist/server/bare/runtime-lifecycle.d.ts +1 -1
  566. package/dist/server/bare/runtime-lifecycle.js +27 -31
  567. package/dist/server/bare/types/addon-responses.d.ts +5 -4
  568. package/dist/server/bare/utils/audio-input.d.ts +2 -2
  569. package/dist/server/bare/utils/audio-input.js +7 -7
  570. package/dist/server/bare/utils/transcribe-metadata.d.ts +1 -1
  571. package/dist/server/bare/utils/transcribe-metadata.js +4 -4
  572. package/dist/server/bare/utils/tts-stats.d.ts +1 -1
  573. package/dist/server/bare/utils/tts-stats.js +3 -3
  574. package/dist/server/env.js +8 -8
  575. package/dist/server/error-handlers.d.ts +3 -3
  576. package/dist/server/error-handlers.js +11 -11
  577. package/dist/server/plugins/index.d.ts +1 -1
  578. package/dist/server/plugins/index.js +1 -1
  579. package/dist/server/plugins/registry.d.ts +1 -1
  580. package/dist/server/plugins/registry.js +12 -14
  581. package/dist/server/rpc/create-server.d.ts +1 -1
  582. package/dist/server/rpc/create-server.js +11 -12
  583. package/dist/server/rpc/delegate-transport.d.ts +3 -3
  584. package/dist/server/rpc/delegate-transport.js +43 -44
  585. package/dist/server/rpc/handle-request.d.ts +1 -1
  586. package/dist/server/rpc/handle-request.js +28 -30
  587. package/dist/server/rpc/handler-registry.d.ts +1 -1
  588. package/dist/server/rpc/handler-registry.js +97 -92
  589. package/dist/server/rpc/handler-selection.d.ts +3 -3
  590. package/dist/server/rpc/handler-selection.js +3 -3
  591. package/dist/server/rpc/handler-utils.d.ts +7 -7
  592. package/dist/server/rpc/handler-utils.js +32 -35
  593. package/dist/server/rpc/handlers/batch-completion-stream.d.ts +78 -0
  594. package/dist/server/rpc/handlers/batch-completion-stream.js +4 -0
  595. package/dist/server/rpc/handlers/bci-transcribe-stream.d.ts +1 -1
  596. package/dist/server/rpc/handlers/bci-transcribe-stream.js +2 -2
  597. package/dist/server/rpc/handlers/bci-transcribe.d.ts +1 -1
  598. package/dist/server/rpc/handlers/bci-transcribe.js +2 -2
  599. package/dist/server/rpc/handlers/cancel-delegated.d.ts +2 -2
  600. package/dist/server/rpc/handlers/cancel-delegated.js +13 -13
  601. package/dist/server/rpc/handlers/cancelHandler.d.ts +1 -1
  602. package/dist/server/rpc/handlers/cancelHandler.js +11 -11
  603. package/dist/server/rpc/handlers/classify.d.ts +1 -1
  604. package/dist/server/rpc/handlers/classify.js +2 -2
  605. package/dist/server/rpc/handlers/completion-stream-delegated.d.ts +2 -2
  606. package/dist/server/rpc/handlers/completion-stream-delegated.js +14 -14
  607. package/dist/server/rpc/handlers/completion-stream.d.ts +1 -1
  608. package/dist/server/rpc/handlers/completion-stream.js +2 -2
  609. package/dist/server/rpc/handlers/delete-cache.d.ts +1 -1
  610. package/dist/server/rpc/handlers/delete-cache.js +10 -10
  611. package/dist/server/rpc/handlers/diffusion-stream.d.ts +1 -1
  612. package/dist/server/rpc/handlers/diffusion-stream.js +2 -2
  613. package/dist/server/rpc/handlers/download-asset.d.ts +1 -1
  614. package/dist/server/rpc/handlers/download-asset.js +20 -20
  615. package/dist/server/rpc/handlers/embed.d.ts +1 -1
  616. package/dist/server/rpc/handlers/embed.js +2 -2
  617. package/dist/server/rpc/handlers/finetune.d.ts +1 -1
  618. package/dist/server/rpc/handlers/finetune.js +8 -6
  619. package/dist/server/rpc/handlers/get-loaded-model-info.d.ts +1 -1
  620. package/dist/server/rpc/handlers/get-loaded-model-info.js +9 -9
  621. package/dist/server/rpc/handlers/get-model-info.d.ts +1 -1
  622. package/dist/server/rpc/handlers/get-model-info.js +20 -20
  623. package/dist/server/rpc/handlers/heartbeat-delegated.d.ts +2 -2
  624. package/dist/server/rpc/handlers/heartbeat-delegated.js +7 -7
  625. package/dist/server/rpc/handlers/heartbeat.d.ts +1 -1
  626. package/dist/server/rpc/handlers/heartbeat.js +1 -1
  627. package/dist/server/rpc/handlers/index.d.ts +33 -31
  628. package/dist/server/rpc/handlers/index.js +34 -32
  629. package/dist/server/rpc/handlers/load-model/download-manager.d.ts +4 -4
  630. package/dist/server/rpc/handlers/load-model/download-manager.js +19 -17
  631. package/dist/server/rpc/handlers/load-model/download-stats.d.ts +4 -3
  632. package/dist/server/rpc/handlers/load-model/download-stats.js +9 -11
  633. package/dist/server/rpc/handlers/load-model/handler.d.ts +1 -1
  634. package/dist/server/rpc/handlers/load-model/handler.js +42 -43
  635. package/dist/server/rpc/handlers/load-model/http.d.ts +2 -2
  636. package/dist/server/rpc/handlers/load-model/http.js +100 -107
  637. package/dist/server/rpc/handlers/load-model/hyperdrive.d.ts +2 -2
  638. package/dist/server/rpc/handlers/load-model/hyperdrive.js +72 -74
  639. package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
  640. package/dist/server/rpc/handlers/load-model/index.js +2 -2
  641. package/dist/server/rpc/handlers/load-model/registry-client-options.d.ts +2 -2
  642. package/dist/server/rpc/handlers/load-model/registry-client-options.js +2 -3
  643. package/dist/server/rpc/handlers/load-model/registry-companion-set.d.ts +5 -5
  644. package/dist/server/rpc/handlers/load-model/registry-companion-set.js +19 -21
  645. package/dist/server/rpc/handlers/load-model/registry-download-utils.d.ts +6 -6
  646. package/dist/server/rpc/handlers/load-model/registry-download-utils.js +16 -18
  647. package/dist/server/rpc/handlers/load-model/registry-metadata.d.ts +11 -0
  648. package/dist/server/rpc/handlers/load-model/registry-metadata.js +23 -0
  649. package/dist/server/rpc/handlers/load-model/registry.d.ts +4 -3
  650. package/dist/server/rpc/handlers/load-model/registry.js +50 -56
  651. package/dist/server/rpc/handlers/load-model/resolve-session.d.ts +3 -3
  652. package/dist/server/rpc/handlers/load-model/resolve-session.js +7 -7
  653. package/dist/server/rpc/handlers/load-model/resolve.d.ts +3 -3
  654. package/dist/server/rpc/handlers/load-model/resolve.js +36 -35
  655. package/dist/server/rpc/handlers/load-model/types.d.ts +3 -3
  656. package/dist/server/rpc/handlers/load-model/types.js +7 -7
  657. package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -2
  658. package/dist/server/rpc/handlers/load-model-delegated.js +31 -30
  659. package/dist/server/rpc/handlers/logging-stream.d.ts +1 -1
  660. package/dist/server/rpc/handlers/logging-stream.js +3 -3
  661. package/dist/server/rpc/handlers/ocr-stream.d.ts +1 -1
  662. package/dist/server/rpc/handlers/ocr-stream.js +2 -2
  663. package/dist/server/rpc/handlers/plugin-dispatch.js +9 -9
  664. package/dist/server/rpc/handlers/plugin-invoke.d.ts +1 -1
  665. package/dist/server/rpc/handlers/plugin-invoke.js +16 -16
  666. package/dist/server/rpc/handlers/provideHandler/connection.d.ts +1 -1
  667. package/dist/server/rpc/handlers/provideHandler/connection.js +16 -16
  668. package/dist/server/rpc/handlers/provideHandler/handler.d.ts +1 -1
  669. package/dist/server/rpc/handlers/provideHandler/handler.js +18 -18
  670. package/dist/server/rpc/handlers/provideHandler/proxy.d.ts +1 -1
  671. package/dist/server/rpc/handlers/provideHandler/proxy.js +11 -11
  672. package/dist/server/rpc/handlers/provideHandler.d.ts +1 -1
  673. package/dist/server/rpc/handlers/provideHandler.js +1 -1
  674. package/dist/server/rpc/handlers/rag.d.ts +1 -1
  675. package/dist/server/rpc/handlers/rag.js +50 -50
  676. package/dist/server/rpc/handlers/registry.d.ts +1 -1
  677. package/dist/server/rpc/handlers/registry.js +34 -36
  678. package/dist/server/rpc/handlers/resume.d.ts +1 -1
  679. package/dist/server/rpc/handlers/resume.js +3 -3
  680. package/dist/server/rpc/handlers/state.d.ts +1 -1
  681. package/dist/server/rpc/handlers/state.js +3 -3
  682. package/dist/server/rpc/handlers/stopProvideHandler.d.ts +1 -1
  683. package/dist/server/rpc/handlers/stopProvideHandler.js +7 -7
  684. package/dist/server/rpc/handlers/suspend.d.ts +1 -1
  685. package/dist/server/rpc/handlers/suspend.js +3 -3
  686. package/dist/server/rpc/handlers/text-to-speech-stream.d.ts +1 -1
  687. package/dist/server/rpc/handlers/text-to-speech-stream.js +2 -2
  688. package/dist/server/rpc/handlers/text-to-speech.d.ts +1 -1
  689. package/dist/server/rpc/handlers/text-to-speech.js +2 -2
  690. package/dist/server/rpc/handlers/transcribe-stream.d.ts +1 -1
  691. package/dist/server/rpc/handlers/transcribe-stream.js +2 -2
  692. package/dist/server/rpc/handlers/transcribe.d.ts +1 -1
  693. package/dist/server/rpc/handlers/transcribe.js +2 -2
  694. package/dist/server/rpc/handlers/translate.d.ts +1 -1
  695. package/dist/server/rpc/handlers/translate.js +2 -2
  696. package/dist/server/rpc/handlers/unload-model-delegated.d.ts +1 -1
  697. package/dist/server/rpc/handlers/unload-model-delegated.js +10 -10
  698. package/dist/server/rpc/handlers/unload-model.d.ts +1 -1
  699. package/dist/server/rpc/handlers/unload-model.js +10 -10
  700. package/dist/server/rpc/handlers/upscale-stream.d.ts +1 -1
  701. package/dist/server/rpc/handlers/upscale-stream.js +2 -2
  702. package/dist/server/rpc/handlers/video-stream.d.ts +1 -1
  703. package/dist/server/rpc/handlers/video-stream.js +2 -2
  704. package/dist/server/rpc/index.d.ts +2 -2
  705. package/dist/server/rpc/index.js +2 -2
  706. package/dist/server/rpc/profiling/context.d.ts +1 -1
  707. package/dist/server/rpc/profiling/context.js +9 -10
  708. package/dist/server/rpc/profiling/delegation-profiler.d.ts +2 -2
  709. package/dist/server/rpc/profiling/delegation-profiler.js +23 -24
  710. package/dist/server/rpc/profiling/index.d.ts +4 -4
  711. package/dist/server/rpc/profiling/index.js +4 -4
  712. package/dist/server/rpc/profiling/operation-metrics.d.ts +2 -2
  713. package/dist/server/rpc/profiling/operation-metrics.js +102 -102
  714. package/dist/server/rpc/profiling/operation-wrappers.d.ts +1 -1
  715. package/dist/server/rpc/profiling/operation-wrappers.js +16 -14
  716. package/dist/server/rpc/profiling/profiler.d.ts +2 -2
  717. package/dist/server/rpc/profiling/profiler.js +9 -13
  718. package/dist/server/rpc/rpc-utils.js +1 -4
  719. package/dist/server/rpc/transport-selector.d.ts +1 -1
  720. package/dist/server/rpc/transport-selector.js +4 -4
  721. package/dist/server/utils/archive.js +27 -29
  722. package/dist/server/utils/audio/decoder.d.ts +2 -2
  723. package/dist/server/utils/audio/decoder.js +11 -11
  724. package/dist/server/utils/cache/auto-history.d.ts +1 -1
  725. package/dist/server/utils/cache/auto-history.js +5 -5
  726. package/dist/server/utils/cache/paths.d.ts +2 -2
  727. package/dist/server/utils/cache/paths.js +14 -14
  728. package/dist/server/utils/checksum.d.ts +1 -1
  729. package/dist/server/utils/checksum.js +10 -12
  730. package/dist/server/utils/clear-storage.d.ts +1 -1
  731. package/dist/server/utils/clear-storage.js +8 -11
  732. package/dist/server/utils/completion-normalizer.d.ts +1 -1
  733. package/dist/server/utils/completion-normalizer.js +106 -113
  734. package/dist/server/utils/config-transform.d.ts +1 -1
  735. package/dist/server/utils/config-transform.js +2 -2
  736. package/dist/server/utils/expand-gguf-shards.js +4 -4
  737. package/dist/server/utils/formatting.js +6 -12
  738. package/dist/server/utils/gguf-tensor-extractor.js +17 -21
  739. package/dist/server/utils/index.d.ts +11 -11
  740. package/dist/server/utils/index.js +11 -11
  741. package/dist/server/utils/multi-gpu-mobile.js +1 -1
  742. package/dist/server/utils/path-security.d.ts +1 -1
  743. package/dist/server/utils/path-security.js +6 -6
  744. package/dist/server/utils/qvac-paths.js +3 -3
  745. package/dist/server/utils/response-format.d.ts +1 -1
  746. package/dist/server/utils/response-format.js +4 -4
  747. package/dist/server/utils/shard-utils.d.ts +1 -1
  748. package/dist/server/utils/shard-utils.js +14 -16
  749. package/dist/server/utils/tool-integration.d.ts +1 -1
  750. package/dist/server/utils/tool-integration.js +5 -9
  751. package/dist/server/utils/tools/dialect.d.ts +1 -1
  752. package/dist/server/utils/tools/dialect.js +7 -7
  753. package/dist/server/utils/tools/index.d.ts +2 -2
  754. package/dist/server/utils/tools/index.js +2 -2
  755. package/dist/server/utils/tools/parser.d.ts +1 -1
  756. package/dist/server/utils/tools/parser.js +14 -14
  757. package/dist/server/utils/tools/parsers/gemma4native.d.ts +2 -2
  758. package/dist/server/utils/tools/parsers/gemma4native.js +13 -8
  759. package/dist/server/utils/tools/parsers/harmony.d.ts +2 -2
  760. package/dist/server/utils/tools/parsers/harmony.js +9 -11
  761. package/dist/server/utils/tools/parsers/hermes.d.ts +2 -2
  762. package/dist/server/utils/tools/parsers/hermes.js +16 -16
  763. package/dist/server/utils/tools/parsers/json.d.ts +2 -2
  764. package/dist/server/utils/tools/parsers/json.js +14 -14
  765. package/dist/server/utils/tools/parsers/pythonic.d.ts +2 -2
  766. package/dist/server/utils/tools/parsers/pythonic.js +43 -43
  767. package/dist/server/utils/tools/parsers/qwen35.d.ts +2 -2
  768. package/dist/server/utils/tools/parsers/qwen35.js +20 -20
  769. package/dist/server/utils/tools/shared.d.ts +1 -1
  770. package/dist/server/utils/tools/shared.js +10 -12
  771. package/dist/server/utils/worker-lock.js +10 -10
  772. package/dist/server/worker-core.d.ts +1 -1
  773. package/dist/server/worker-core.js +44 -43
  774. package/dist/server/worker.js +9 -9
  775. package/dist/utils/aggregate-events.d.ts +2 -2
  776. package/dist/utils/aggregate-events.js +17 -19
  777. package/dist/utils/cache-normalize.js +1 -4
  778. package/dist/utils/encoding.js +1 -1
  779. package/dist/utils/errors-base.d.ts +1 -1
  780. package/dist/utils/errors-base.js +1 -1
  781. package/dist/utils/errors-client.d.ts +1 -1
  782. package/dist/utils/errors-client.js +5 -5
  783. package/dist/utils/errors-server.d.ts +3 -3
  784. package/dist/utils/errors-server.js +19 -18
  785. package/dist/utils/load-model-validation.js +3 -3
  786. package/dist/utils/mcp-adapter.d.ts +4 -4
  787. package/dist/utils/mcp-adapter.js +31 -38
  788. package/dist/utils/path-sanitize.js +14 -17
  789. package/dist/utils/tool-helpers.d.ts +2 -2
  790. package/dist/utils/tool-helpers.js +25 -26
  791. package/dist/utils/withTimeout.d.ts +7 -0
  792. package/dist/utils/withTimeout.js +11 -1
  793. package/dist/utils/zod-error.d.ts +1 -1
  794. package/dist/utils/zod-error.js +1 -1
  795. package/electron-forge/index.cjs +274 -317
  796. package/expo/plugins/patches/android-link.mjs +25 -30
  797. package/expo/plugins/patches/ios-link.mjs +25 -30
  798. package/package.json +17 -16
@@ -1,5 +1,5 @@
1
- import { type TtsRequest, type TtsStats } from "../../../../../schemas/index";
2
- import { type TtsOpYield } from "../../../utils/tts-stats";
1
+ import { type TtsRequest, type TtsStats } from '../../../../../schemas/index';
2
+ import { type TtsOpYield } from '../../../utils/tts-stats';
3
3
  export declare function textToSpeech(params: TtsRequest): AsyncGenerator<TtsOpYield, {
4
4
  modelExecutionMs: number;
5
5
  stats?: TtsStats;
@@ -1,31 +1,29 @@
1
- import { getModel } from "../../../registry/model-registry.js";
2
- import { ttsRequestSchema, } from "../../../../../schemas/index.js";
3
- import { nowMs } from "../../../../../profiling/index.js";
4
- import { buildStreamResult, hasDefinedValues } from "../../../../../profiling/model-execution.js";
5
- import { TextToSpeechFailedError } from "../../../../../utils/errors-server.js";
6
- import { collectTtsStats, } from "../../../utils/tts-stats.js";
1
+ import { getModel } from '../../../registry/model-registry.js';
2
+ import { ttsRequestSchema } from '../../../../../schemas/index.js';
3
+ import { nowMs } from '../../../../../profiling/index.js';
4
+ import { buildStreamResult, hasDefinedValues } from '../../../../../profiling/model-execution.js';
5
+ import { TextToSpeechFailedError } from '../../../../../utils/errors-server.js';
6
+ import { collectTtsStats } from '../../../utils/tts-stats.js';
7
7
  function hasRunStream(model) {
8
- return (typeof model === "object" &&
8
+ return (typeof model === 'object' &&
9
9
  model !== null &&
10
- "runStream" in model &&
11
- typeof model.runStream === "function");
10
+ 'runStream' in model &&
11
+ typeof model.runStream === 'function');
12
12
  }
13
13
  export async function* textToSpeech(params) {
14
- const { modelId, inputType, text, stream, sentenceStream, sentenceStreamLocale, sentenceStreamMaxChunkScalars, } = ttsRequestSchema.parse(params);
14
+ const { modelId, inputType, text, stream, sentenceStream, sentenceStreamLocale, sentenceStreamMaxChunkScalars } = ttsRequestSchema.parse(params);
15
15
  const model = getModel(modelId);
16
16
  const modelStart = nowMs();
17
17
  if (sentenceStream) {
18
18
  if (!hasRunStream(model)) {
19
- throw new TextToSpeechFailedError("sentenceStream requires a TTS model with runStream");
19
+ throw new TextToSpeechFailedError('sentenceStream requires a TTS model with runStream');
20
20
  }
21
21
  const streamOpts = sentenceStreamLocale !== undefined || sentenceStreamMaxChunkScalars !== undefined
22
22
  ? {
23
- ...(sentenceStreamLocale !== undefined
24
- ? { locale: sentenceStreamLocale }
25
- : {}),
23
+ ...(sentenceStreamLocale !== undefined ? { locale: sentenceStreamLocale } : {}),
26
24
  ...(sentenceStreamMaxChunkScalars !== undefined
27
25
  ? { maxChunkScalars: sentenceStreamMaxChunkScalars }
28
- : {}),
26
+ : {})
29
27
  }
30
28
  : undefined;
31
29
  const response = await model.runStream(text, streamOpts);
@@ -50,9 +48,9 @@ export async function* textToSpeech(params) {
50
48
  yield {
51
49
  buffer: buf,
52
50
  ...(data.chunkIndex !== undefined ? { chunkIndex: data.chunkIndex } : {}),
53
- ...(typeof data.sentenceChunk === "string" && data.sentenceChunk.length > 0
51
+ ...(typeof data.sentenceChunk === 'string' && data.sentenceChunk.length > 0
54
52
  ? { sentenceChunk: data.sentenceChunk }
55
- : {}),
53
+ : {})
56
54
  };
57
55
  }
58
56
  const modelExecutionMs = nowMs() - modelStart;
@@ -62,7 +60,7 @@ export async function* textToSpeech(params) {
62
60
  const response = (await model.run({
63
61
  input: text,
64
62
  inputType,
65
- ...(stream ? { streamOutput: true } : {}),
63
+ ...(stream ? { streamOutput: true } : {})
66
64
  }));
67
65
  if (!stream) {
68
66
  let completeBuffer = [];
@@ -72,11 +70,11 @@ export async function* textToSpeech(params) {
72
70
  const modelExecutionMs = nowMs() - modelStart;
73
71
  const stats = {
74
72
  ...(response.stats?.audioDurationMs !== undefined && {
75
- audioDuration: response.stats.audioDurationMs,
73
+ audioDuration: response.stats.audioDurationMs
76
74
  }),
77
75
  ...(response.stats?.totalSamples !== undefined && {
78
- totalSamples: response.stats.totalSamples,
79
- }),
76
+ totalSamples: response.stats.totalSamples
77
+ })
80
78
  };
81
79
  yield { buffer: completeBuffer };
82
80
  return buildStreamResult(modelExecutionMs, hasDefinedValues(stats) ? stats : undefined);
@@ -87,11 +85,11 @@ export async function* textToSpeech(params) {
87
85
  const modelExecutionMs = nowMs() - modelStart;
88
86
  const stats = {
89
87
  ...(response.stats?.audioDurationMs !== undefined && {
90
- audioDuration: response.stats.audioDurationMs,
88
+ audioDuration: response.stats.audioDurationMs
91
89
  }),
92
90
  ...(response.stats?.totalSamples !== undefined && {
93
- totalSamples: response.stats.totalSamples,
94
- }),
91
+ totalSamples: response.stats.totalSamples
92
+ })
95
93
  };
96
94
  return buildStreamResult(modelExecutionMs, hasDefinedValues(stats) ? stats : undefined);
97
95
  }
@@ -1,4 +1,4 @@
1
- import { type CreateModelParams, type PluginModelResult, type ResolveContext, type ResolveResult } from "../../../../schemas/index";
1
+ import { type CreateModelParams, type PluginModelResult, type ResolveContext, type ResolveResult } from '../../../../schemas/index';
2
2
  export declare const ttsPlugin: {
3
3
  modelType: "tts-ggml";
4
4
  displayName: string;
@@ -10,7 +10,7 @@ export declare const ttsPlugin: {
10
10
  }, import("zod/v4/core").$strict>], "ttsEngine">;
11
11
  resolveConfig(cfg: Record<string, unknown>, ctx: ResolveContext): Promise<ResolveResult<{
12
12
  ttsEngine: "chatterbox";
13
- language: "en" | "ar" | "de" | "es" | "fi" | "fr" | "it" | "ko" | "nl" | "pl" | "pt" | "ru" | "zh" | "da" | "el" | "he" | "hi" | "ms" | "no" | "sv" | "tr" | "sw";
13
+ language: "en" | "ar" | "de" | "es" | "fi" | "fr" | "it" | "ja" | "ko" | "nl" | "pl" | "pt" | "ru" | "zh" | "da" | "el" | "he" | "hi" | "ms" | "no" | "sv" | "tr" | "sw";
14
14
  voice?: string | undefined;
15
15
  useGPU?: boolean | undefined;
16
16
  streamChunkTokens?: number | undefined;
@@ -26,6 +26,7 @@ export declare const ttsPlugin: {
26
26
  ttsSpeed?: number | undefined;
27
27
  ttsNumInferenceSteps?: number | undefined;
28
28
  useGPU?: boolean | undefined;
29
+ outputSampleRate?: number | undefined;
29
30
  }, string>>;
30
31
  createModel(params: CreateModelParams): PluginModelResult;
31
32
  handlers: {
@@ -1,11 +1,11 @@
1
- import ttsAddonLogging from "@qvac/tts-ggml/addonLogging.js";
2
- import TTSGgml from "@qvac/tts-ggml";
3
- import { definePlugin, defineHandler, defineDuplexHandler, ttsRequestSchema, ttsResponseSchema, textToSpeechStreamRequestSchema, textToSpeechStreamResponseSchema, ModelType, ttsConfigSchema, ADDON_TTS, LEGACY_TTS_ONNX_MODEL_CONFIG_FIELDS, } from "../../../../schemas/index.js";
4
- import { createStreamLogger, registerAddonLogger } from "../../../../logging/index.js";
5
- import { TtsArtifactsRequiredError, LegacyTtsModelDeprecatedError, } from "../../../../utils/errors-server.js";
6
- import { textToSpeech } from "./ops/text-to-speech.js";
7
- import { textToSpeechStream } from "./ops/text-to-speech-stream.js";
8
- import { attachModelExecutionMs } from "../../../../profiling/model-execution.js";
1
+ import ttsAddonLogging from '@qvac/tts-ggml/addonLogging.js';
2
+ import TTSGgml from '@qvac/tts-ggml';
3
+ import { definePlugin, defineHandler, defineDuplexHandler, ttsRequestSchema, ttsResponseSchema, textToSpeechStreamRequestSchema, textToSpeechStreamResponseSchema, ModelType, ttsConfigSchema, ADDON_TTS, LEGACY_TTS_ONNX_MODEL_CONFIG_FIELDS } from '../../../../schemas/index.js';
4
+ import { createStreamLogger, registerAddonLogger } from '../../../../logging/index.js';
5
+ import { TtsArtifactsRequiredError, LegacyTtsModelDeprecatedError } from '../../../../utils/errors-server.js';
6
+ import { textToSpeech } from './ops/text-to-speech.js';
7
+ import { textToSpeechStream } from './ops/text-to-speech-stream.js';
8
+ import { attachModelExecutionMs } from '../../../../profiling/model-execution.js';
9
9
  function rejectLegacyOnnxFields(cfg) {
10
10
  const record = cfg;
11
11
  const legacyFields = LEGACY_TTS_ONNX_MODEL_CONFIG_FIELDS.filter((name) => record[name] !== undefined);
@@ -13,33 +13,72 @@ function rejectLegacyOnnxFields(cfg) {
13
13
  throw new LegacyTtsModelDeprecatedError(legacyFields);
14
14
  }
15
15
  }
16
+ function dirname(path) {
17
+ const normalized = path.replace(/\\/g, '/');
18
+ const index = normalized.lastIndexOf('/');
19
+ if (index <= 0)
20
+ return index === 0 ? '/' : '.';
21
+ return path.slice(0, index);
22
+ }
23
+ // Resolve the optional LavaSR enhancer/denoiser GGUFs shared by both engines.
24
+ async function resolveLavasrArtifacts(lavasrEnhancerModelSrc, lavasrDenoiserModelSrc, ctx) {
25
+ const resolve = ctx.resolveModelPath;
26
+ const [lavasrEnhancerPath, lavasrDenoiserPath] = await Promise.all([
27
+ lavasrEnhancerModelSrc ? resolve(lavasrEnhancerModelSrc) : Promise.resolve(undefined),
28
+ lavasrDenoiserModelSrc ? resolve(lavasrDenoiserModelSrc) : Promise.resolve(undefined)
29
+ ]);
30
+ return {
31
+ ...(lavasrEnhancerPath ? { lavasrEnhancerPath } : {}),
32
+ ...(lavasrDenoiserPath ? { lavasrDenoiserPath } : {})
33
+ };
34
+ }
16
35
  async function resolveChatterboxConfig(config, ctx) {
17
36
  rejectLegacyOnnxFields(config);
18
- const { s3genModelSrc, referenceAudioSrc, ...runtime } = config;
37
+ const { s3genModelSrc, referenceAudioSrc, mecabDictSrc, cangjieTsvSrc, lavasrEnhancerModelSrc, lavasrDenoiserModelSrc, ...runtime } = config;
19
38
  if (!s3genModelSrc) {
20
39
  throw new TtsArtifactsRequiredError();
21
40
  }
22
41
  const resolve = ctx.resolveModelPath;
23
- const [s3genPath, referenceAudioPath] = await Promise.all([
42
+ const [s3genPath, referenceAudioPath, mecabDictFilePath, cangjieTsvPath, lavasrArtifacts] = await Promise.all([
24
43
  resolve(s3genModelSrc),
25
44
  referenceAudioSrc ? resolve(referenceAudioSrc) : Promise.resolve(undefined),
45
+ mecabDictSrc ? resolve(mecabDictSrc) : Promise.resolve(undefined),
46
+ cangjieTsvSrc ? resolve(cangjieTsvSrc) : Promise.resolve(undefined),
47
+ resolveLavasrArtifacts(lavasrEnhancerModelSrc, lavasrDenoiserModelSrc, ctx)
26
48
  ]);
27
49
  return {
28
50
  config: runtime,
29
51
  artifacts: {
30
52
  s3genPath,
31
53
  ...(referenceAudioPath ? { referenceAudioPath } : {}),
32
- },
54
+ ...(mecabDictFilePath ? { mecabDictPath: dirname(mecabDictFilePath) } : {}),
55
+ ...(cangjieTsvPath ? { cangjieTsvPath } : {}),
56
+ ...lavasrArtifacts
57
+ }
33
58
  };
34
59
  }
35
- function resolveSupertonicConfig(config) {
60
+ async function resolveSupertonicConfig(config, ctx) {
36
61
  rejectLegacyOnnxFields(config);
37
- return Promise.resolve({ config });
62
+ const { lavasrEnhancerModelSrc, lavasrDenoiserModelSrc, ...runtime } = config;
63
+ const lavasrArtifacts = await resolveLavasrArtifacts(lavasrEnhancerModelSrc, lavasrDenoiserModelSrc, ctx);
64
+ return { config: runtime, artifacts: lavasrArtifacts };
65
+ }
66
+ // Build the optional LavaSR `files` entries from resolved artifacts. Supplying
67
+ // a path is what enables the stage in @qvac/tts-ggml — there is no on/off flag.
68
+ function lavasrFiles(artifacts) {
69
+ const lavasrEnhancer = artifacts['lavasrEnhancerPath'];
70
+ const lavasrDenoiser = artifacts['lavasrDenoiserPath'];
71
+ return {
72
+ ...(lavasrEnhancer ? { lavasrEnhancer } : {}),
73
+ ...(lavasrDenoiser ? { lavasrDenoiser } : {})
74
+ };
38
75
  }
39
76
  function createChatterboxModel(modelId, config, params, artifacts) {
40
77
  const t3Model = params.modelPath;
41
- const s3genModel = artifacts["s3genPath"];
42
- const referenceAudioPath = artifacts["referenceAudioPath"];
78
+ const s3genModel = artifacts['s3genPath'];
79
+ const referenceAudioPath = artifacts['referenceAudioPath'];
80
+ const mecabDictPath = artifacts['mecabDictPath'];
81
+ const cangjieTsvPath = artifacts['cangjieTsvPath'];
43
82
  if (!t3Model || !s3genModel) {
44
83
  throw new TtsArtifactsRequiredError();
45
84
  }
@@ -47,7 +86,13 @@ function createChatterboxModel(modelId, config, params, artifacts) {
47
86
  registerAddonLogger(modelId, ModelType.ttsGgml, logger);
48
87
  const model = new TTSGgml({
49
88
  engine: TTSGgml.ENGINE_CHATTERBOX,
50
- files: { t3Model, s3genModel },
89
+ files: {
90
+ t3Model,
91
+ s3genModel,
92
+ ...(mecabDictPath ? { mecabDictPath } : {}),
93
+ ...(cangjieTsvPath ? { cangjieTsvPath } : {}),
94
+ ...lavasrFiles(artifacts)
95
+ },
51
96
  ...(referenceAudioPath ? { referenceAudio: referenceAudioPath } : {}),
52
97
  ...(config.streamChunkTokens !== undefined
53
98
  ? { streamChunkTokens: config.streamChunkTokens }
@@ -57,21 +102,19 @@ function createChatterboxModel(modelId, config, params, artifacts) {
57
102
  : {}),
58
103
  ...(config.cfmSteps !== undefined ? { cfmSteps: config.cfmSteps } : {}),
59
104
  ...(config.threads !== undefined ? { threads: config.threads } : {}),
60
- ...(config.nGpuLayers !== undefined
61
- ? { nGpuLayers: config.nGpuLayers }
62
- : {}),
105
+ ...(config.nGpuLayers !== undefined ? { nGpuLayers: config.nGpuLayers } : {}),
63
106
  ...(config.seed !== undefined ? { seed: config.seed } : {}),
64
107
  config: {
65
- language: config.language ?? "en",
66
- ...(config.useGPU !== undefined ? { useGPU: config.useGPU } : {}),
108
+ language: config.language ?? 'en',
109
+ ...(config.useGPU !== undefined ? { useGPU: config.useGPU } : {})
67
110
  },
68
111
  logger,
69
112
  opts: { stats: true },
70
- exclusiveRun: true,
113
+ exclusiveRun: true
71
114
  });
72
115
  return { model };
73
116
  }
74
- function createSupertonicModel(modelId, config, params) {
117
+ function createSupertonicModel(modelId, config, params, artifacts) {
75
118
  const supertonicModel = params.modelPath;
76
119
  if (!supertonicModel) {
77
120
  throw new TtsArtifactsRequiredError();
@@ -80,40 +123,43 @@ function createSupertonicModel(modelId, config, params) {
80
123
  registerAddonLogger(modelId, ModelType.ttsGgml, logger);
81
124
  const model = new TTSGgml({
82
125
  engine: TTSGgml.ENGINE_SUPERTONIC,
83
- files: { supertonicModel },
84
- voice: config.voice ?? "F1",
126
+ files: { supertonicModel, ...lavasrFiles(artifacts) },
127
+ voice: config.voice ?? 'F1',
85
128
  ...(config.ttsSpeed !== undefined ? { speed: config.ttsSpeed } : {}),
86
129
  ...(config.ttsNumInferenceSteps !== undefined
87
130
  ? { numInferenceSteps: config.ttsNumInferenceSteps }
88
131
  : {}),
89
132
  config: {
90
- language: config.language ?? "en",
133
+ language: config.language ?? 'en',
91
134
  useGPU: config.useGPU ?? false,
135
+ ...(config.outputSampleRate !== undefined
136
+ ? { outputSampleRate: config.outputSampleRate }
137
+ : {})
92
138
  },
93
139
  logger,
94
140
  opts: { stats: true },
95
- exclusiveRun: true,
141
+ exclusiveRun: true
96
142
  });
97
143
  return { model };
98
144
  }
99
145
  export const ttsPlugin = definePlugin({
100
146
  modelType: ModelType.ttsGgml,
101
- displayName: "TTS (GGML)",
147
+ displayName: 'TTS (GGML)',
102
148
  addonPackage: ADDON_TTS,
103
149
  loadConfigSchema: ttsConfigSchema,
104
150
  async resolveConfig(cfg, ctx) {
105
151
  const { ttsEngine } = cfg;
106
152
  // Same default as the former onnx-tts plugin: omitting `ttsEngine` → Chatterbox.
107
- if (ttsEngine === "supertonic") {
108
- return resolveSupertonicConfig(cfg);
153
+ if (ttsEngine === 'supertonic') {
154
+ return resolveSupertonicConfig(cfg, ctx);
109
155
  }
110
156
  return resolveChatterboxConfig(cfg, ctx);
111
157
  },
112
158
  createModel(params) {
113
159
  const config = (params.modelConfig ?? {});
114
160
  const artifacts = params.artifacts ?? {};
115
- if (config.ttsEngine === "supertonic") {
116
- return createSupertonicModel(params.modelId, config, params);
161
+ if (config.ttsEngine === 'supertonic') {
162
+ return createSupertonicModel(params.modelId, config, params, artifacts);
117
163
  }
118
164
  return createChatterboxModel(params.modelId, config, params, artifacts);
119
165
  },
@@ -122,80 +168,80 @@ export const ttsPlugin = definePlugin({
122
168
  requestSchema: ttsRequestSchema,
123
169
  responseSchema: ttsResponseSchema,
124
170
  streaming: true,
125
- cancel: { scope: "model", hard: true },
171
+ cancel: { scope: 'model', hard: true },
126
172
  handler: async function* (request) {
127
173
  const stream = textToSpeech(request);
128
174
  try {
129
175
  let result = await stream.next();
130
176
  while (!result.done) {
131
177
  yield {
132
- type: "textToSpeech",
178
+ type: 'textToSpeech',
133
179
  buffer: result.value.buffer,
134
180
  done: false,
135
181
  ...(result.value.chunkIndex !== undefined
136
182
  ? { chunkIndex: result.value.chunkIndex }
137
183
  : {}),
138
- ...(typeof result.value.sentenceChunk === "string" &&
184
+ ...(typeof result.value.sentenceChunk === 'string' &&
139
185
  result.value.sentenceChunk.length > 0
140
186
  ? { sentenceChunk: result.value.sentenceChunk }
141
- : {}),
187
+ : {})
142
188
  };
143
189
  result = await stream.next();
144
190
  }
145
191
  const { modelExecutionMs, stats } = result.value;
146
192
  yield attachModelExecutionMs({
147
- type: "textToSpeech",
193
+ type: 'textToSpeech',
148
194
  buffer: [],
149
195
  done: true,
150
- ...(stats && { stats }),
196
+ ...(stats && { stats })
151
197
  }, modelExecutionMs);
152
198
  }
153
199
  finally {
154
200
  await stream.return?.(undefined);
155
201
  }
156
- },
202
+ }
157
203
  }),
158
204
  textToSpeechStream: defineDuplexHandler({
159
205
  requestSchema: textToSpeechStreamRequestSchema,
160
206
  responseSchema: textToSpeechStreamResponseSchema,
161
207
  streaming: true,
162
208
  duplex: true,
163
- cancel: { scope: "model", hard: true },
209
+ cancel: { scope: 'model', hard: true },
164
210
  handler: async function* (request, inputStream) {
165
211
  const stream = textToSpeechStream(request, inputStream);
166
212
  try {
167
213
  let result = await stream.next();
168
214
  while (!result.done) {
169
215
  yield {
170
- type: "textToSpeechStream",
216
+ type: 'textToSpeechStream',
171
217
  buffer: result.value.buffer,
172
218
  done: false,
173
219
  ...(result.value.chunkIndex !== undefined
174
220
  ? { chunkIndex: result.value.chunkIndex }
175
221
  : {}),
176
- ...(typeof result.value.sentenceChunk === "string" &&
222
+ ...(typeof result.value.sentenceChunk === 'string' &&
177
223
  result.value.sentenceChunk.length > 0
178
224
  ? { sentenceChunk: result.value.sentenceChunk }
179
- : {}),
225
+ : {})
180
226
  };
181
227
  result = await stream.next();
182
228
  }
183
229
  const { modelExecutionMs, stats } = result.value;
184
230
  yield attachModelExecutionMs({
185
- type: "textToSpeechStream",
231
+ type: 'textToSpeechStream',
186
232
  buffer: [],
187
233
  done: true,
188
- ...(stats && { stats }),
234
+ ...(stats && { stats })
189
235
  }, modelExecutionMs);
190
236
  }
191
237
  finally {
192
238
  await stream.return?.(undefined);
193
239
  }
194
- },
195
- }),
240
+ }
241
+ })
196
242
  },
197
243
  logging: {
198
244
  module: ttsAddonLogging,
199
- namespace: ModelType.ttsGgml,
200
- },
245
+ namespace: ModelType.ttsGgml
246
+ }
201
247
  });
@@ -1,4 +1,4 @@
1
- import { type CreateModelParams, type PluginModelResult, type ResolveContext, type WhisperConfig } from "../../../../schemas/index";
1
+ import { type CreateModelParams, type PluginModelResult, type ResolveContext, type WhisperConfig } from '../../../../schemas/index';
2
2
  export declare const whisperPlugin: {
3
3
  modelType: "whispercpp-transcription";
4
4
  displayName: string;
@@ -1,34 +1,34 @@
1
- import whisperAddonLogging from "@qvac/transcription-whispercpp/addonLogging.js";
2
- import TranscriptionWhispercpp, {} from "@qvac/transcription-whispercpp";
3
- import { definePlugin, defineHandler, defineDuplexHandler, transcribeRequestSchema, transcribeResponseSchema, transcribeStreamRequestSchema, transcribeStreamResponseSchema, ModelType, whisperConfigSchema, ADDON_WHISPER, } from "../../../../schemas/index.js";
4
- import { createStreamLogger, registerAddonLogger } from "../../../../logging/index.js";
5
- import { transcribe, transcribeStream } from "../../ops/transcribe.js";
6
- import { attachModelExecutionMs } from "../../../../profiling/model-execution.js";
1
+ import whisperAddonLogging from '@qvac/transcription-whispercpp/addonLogging.js';
2
+ import TranscriptionWhispercpp, {} from '@qvac/transcription-whispercpp';
3
+ import { definePlugin, defineHandler, defineDuplexHandler, transcribeRequestSchema, transcribeResponseSchema, transcribeStreamRequestSchema, transcribeStreamResponseSchema, ModelType, whisperConfigSchema, ADDON_WHISPER } from '../../../../schemas/index.js';
4
+ import { createStreamLogger, registerAddonLogger } from '../../../../logging/index.js';
5
+ import { transcribe, transcribeStream } from '../../ops/transcribe.js';
6
+ import { attachModelExecutionMs } from '../../../../profiling/model-execution.js';
7
7
  function createWhisperModel(modelId, modelPath, whisperConfig, vadModelPath) {
8
8
  const logger = createStreamLogger(modelId, ModelType.whispercppTranscription);
9
9
  registerAddonLogger(modelId, ModelType.whispercppTranscription, logger);
10
10
  const args = {
11
11
  files: {
12
12
  model: modelPath,
13
- ...(vadModelPath && { vadModel: vadModelPath }),
13
+ ...(vadModelPath && { vadModel: vadModelPath })
14
14
  },
15
15
  logger,
16
16
  opts: {
17
- stats: true,
18
- },
17
+ stats: true
18
+ }
19
19
  };
20
20
  const { contextParams, miscConfig, ...whisperParams } = whisperConfig;
21
21
  const config = {
22
22
  whisperConfig: whisperParams,
23
23
  ...(contextParams && { contextParams }),
24
- ...(miscConfig && { miscConfig }),
24
+ ...(miscConfig && { miscConfig })
25
25
  };
26
26
  const model = new TranscriptionWhispercpp(args, config);
27
27
  return { model };
28
28
  }
29
29
  export const whisperPlugin = definePlugin({
30
30
  modelType: ModelType.whispercppTranscription,
31
- displayName: "Whisper (whisper.cpp)",
31
+ displayName: 'Whisper (whisper.cpp)',
32
32
  addonPackage: ADDON_WHISPER,
33
33
  loadConfigSchema: whisperConfigSchema,
34
34
  async resolveConfig(cfg, ctx) {
@@ -39,12 +39,12 @@ export const whisperPlugin = definePlugin({
39
39
  const vadModelPath = await ctx.resolveModelPath(vadModelSrc);
40
40
  return {
41
41
  config: whisperConfig,
42
- artifacts: { vadModelPath },
42
+ artifacts: { vadModelPath }
43
43
  };
44
44
  },
45
45
  createModel(params) {
46
46
  const whisperConfig = (params.modelConfig ?? {});
47
- const { model } = createWhisperModel(params.modelId, params.modelPath, whisperConfig, params.artifacts?.["vadModelPath"]);
47
+ const { model } = createWhisperModel(params.modelId, params.modelPath, whisperConfig, params.artifacts?.['vadModelPath']);
48
48
  return { model };
49
49
  },
50
50
  handlers: {
@@ -54,7 +54,7 @@ export const whisperPlugin = definePlugin({
54
54
  streaming: true,
55
55
  // whisper.cpp addon exposes a model-wide hard cancel — compute
56
56
  // is interrupted on the currently-running transcription.
57
- cancel: { scope: "model", hard: true },
57
+ cancel: { scope: 'model', hard: true },
58
58
  handler: async function* (request) {
59
59
  const metadata = request.metadata === true;
60
60
  const stream = metadata
@@ -62,39 +62,39 @@ export const whisperPlugin = definePlugin({
62
62
  modelId: request.modelId,
63
63
  audioChunk: request.audioChunk,
64
64
  prompt: request.prompt,
65
- metadata: true,
65
+ metadata: true
66
66
  }, request.requestId)
67
67
  : transcribe({
68
68
  modelId: request.modelId,
69
69
  audioChunk: request.audioChunk,
70
- prompt: request.prompt,
70
+ prompt: request.prompt
71
71
  }, request.requestId);
72
72
  try {
73
73
  let result = await stream.next();
74
74
  while (!result.done) {
75
75
  yield metadata
76
76
  ? {
77
- type: "transcribe",
78
- segment: result.value,
77
+ type: 'transcribe',
78
+ segment: result.value
79
79
  }
80
80
  : {
81
- type: "transcribe",
82
- text: result.value,
81
+ type: 'transcribe',
82
+ text: result.value
83
83
  };
84
84
  result = await stream.next();
85
85
  }
86
86
  const { modelExecutionMs, stats } = result.value;
87
87
  yield attachModelExecutionMs({
88
- type: "transcribe",
89
- text: "",
88
+ type: 'transcribe',
89
+ text: '',
90
90
  done: true,
91
- ...(stats && { stats }),
91
+ ...(stats && { stats })
92
92
  }, modelExecutionMs);
93
93
  }
94
94
  finally {
95
95
  await stream.return?.(undefined);
96
96
  }
97
- },
97
+ }
98
98
  }),
99
99
  transcribeStream: defineDuplexHandler({
100
100
  requestSchema: transcribeStreamRequestSchema,
@@ -103,50 +103,50 @@ export const whisperPlugin = definePlugin({
103
103
  duplex: true,
104
104
  // Same model-wide hard cancel surface as `transcribe` — both
105
105
  // route through the whisper.cpp addon.
106
- cancel: { scope: "model", hard: true },
106
+ cancel: { scope: 'model', hard: true },
107
107
  handler: async function* (request, inputStream) {
108
108
  const streamOpts = {
109
109
  ...(request.emitVadEvents !== undefined && {
110
- emitVadEvents: request.emitVadEvents,
110
+ emitVadEvents: request.emitVadEvents
111
111
  }),
112
112
  ...(request.endOfTurnSilenceMs !== undefined && {
113
- endOfTurnSilenceMs: request.endOfTurnSilenceMs,
113
+ endOfTurnSilenceMs: request.endOfTurnSilenceMs
114
114
  }),
115
115
  ...(request.vadRunIntervalMs !== undefined && {
116
- vadRunIntervalMs: request.vadRunIntervalMs,
117
- }),
116
+ vadRunIntervalMs: request.vadRunIntervalMs
117
+ })
118
118
  };
119
119
  const metadata = request.metadata === true;
120
120
  const iterator = metadata
121
121
  ? transcribeStream(request.modelId, inputStream, request.prompt, true, streamOpts, request.requestId)
122
122
  : transcribeStream(request.modelId, inputStream, request.prompt, false, streamOpts, request.requestId);
123
123
  for await (const value of iterator) {
124
- if (typeof value === "object" && value !== null && "type" in value) {
125
- if (value.type === "vad") {
124
+ if (typeof value === 'object' && value !== null && 'type' in value) {
125
+ if (value.type === 'vad') {
126
126
  yield {
127
- type: "transcribeStream",
127
+ type: 'transcribeStream',
128
128
  vad: {
129
129
  speaking: value.speaking,
130
- probability: value.probability,
131
- },
130
+ probability: value.probability
131
+ }
132
132
  };
133
133
  continue;
134
134
  }
135
- if (value.type === "endOfTurn") {
135
+ if (value.type === 'endOfTurn') {
136
136
  // Whisper addon emits legacy `{ type, silenceDurationMs }` frames
137
137
  // without `source`. Parakeet must never surface here.
138
- if (value.source === "parakeet") {
138
+ if (value.source === 'parakeet') {
139
139
  continue;
140
140
  }
141
- if (typeof value.silenceDurationMs !== "number") {
141
+ if (typeof value.silenceDurationMs !== 'number') {
142
142
  continue;
143
143
  }
144
144
  yield {
145
- type: "transcribeStream",
145
+ type: 'transcribeStream',
146
146
  endOfTurn: {
147
- source: "whisper",
148
- silenceDurationMs: value.silenceDurationMs,
149
- },
147
+ source: 'whisper',
148
+ silenceDurationMs: value.silenceDurationMs
149
+ }
150
150
  };
151
151
  continue;
152
152
  }
@@ -154,24 +154,24 @@ export const whisperPlugin = definePlugin({
154
154
  }
155
155
  yield metadata
156
156
  ? {
157
- type: "transcribeStream",
158
- segment: value,
157
+ type: 'transcribeStream',
158
+ segment: value
159
159
  }
160
160
  : {
161
- type: "transcribeStream",
162
- text: value,
161
+ type: 'transcribeStream',
162
+ text: value
163
163
  };
164
164
  }
165
165
  yield {
166
- type: "transcribeStream",
167
- text: "",
168
- done: true,
166
+ type: 'transcribeStream',
167
+ text: '',
168
+ done: true
169
169
  };
170
- },
171
- }),
170
+ }
171
+ })
172
172
  },
173
173
  logging: {
174
174
  module: whisperAddonLogging,
175
- namespace: ModelType.whispercppTranscription,
176
- },
175
+ namespace: ModelType.whispercppTranscription
176
+ }
177
177
  });