@qvac/sdk 0.8.1 → 1.0.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 (608) hide show
  1. package/LICENSE +24 -1
  2. package/README.md +191 -373
  3. package/dist/client/api/cancel.d.ts +4 -22
  4. package/dist/client/api/cancel.js +6 -25
  5. package/dist/client/api/completion-stream.d.ts +30 -24
  6. package/dist/client/api/completion-stream.js +70 -121
  7. package/dist/client/api/delete-cache.js +2 -3
  8. package/dist/client/api/download-asset.d.ts +5 -6
  9. package/dist/client/api/download-asset.js +20 -16
  10. package/dist/client/api/embed.d.ts +4 -21
  11. package/dist/client/api/embed.js +14 -4
  12. package/dist/client/api/index.d.ts +2 -6
  13. package/dist/client/api/index.js +2 -6
  14. package/dist/client/api/load-model.d.ts +21 -49
  15. package/dist/client/api/load-model.js +134 -40
  16. package/dist/client/api/logging-stream.d.ts +4 -7
  17. package/dist/client/api/logging-stream.js +5 -9
  18. package/dist/client/api/ping.d.ts +11 -0
  19. package/dist/client/api/ping.js +18 -0
  20. package/dist/client/api/provide.d.ts +1 -1
  21. package/dist/client/api/provide.js +3 -4
  22. package/dist/client/api/rag.d.ts +21 -216
  23. package/dist/client/api/rag.js +36 -396
  24. package/dist/client/api/stop-provider.d.ts +1 -1
  25. package/dist/client/api/stop-provider.js +3 -4
  26. package/dist/client/api/text-to-speech.d.ts +2 -2
  27. package/dist/client/api/text-to-speech.js +3 -3
  28. package/dist/client/api/transcribe.d.ts +5 -9
  29. package/dist/client/api/transcribe.js +9 -11
  30. package/dist/client/api/translate.d.ts +3 -3
  31. package/dist/client/api/translate.js +15 -15
  32. package/dist/client/api/unload-model.d.ts +1 -5
  33. package/dist/client/api/unload-model.js +4 -17
  34. package/dist/client/index.d.ts +1 -1
  35. package/dist/client/index.js +1 -1
  36. package/dist/client/logging-stream-registry.d.ts +1 -1
  37. package/dist/client/logging-stream-registry.js +13 -14
  38. package/dist/client/rpc/bare-client.d.ts +139 -3
  39. package/dist/client/rpc/bare-client.js +16 -117
  40. package/dist/client/rpc/bare-rpc-client.d.ts +4 -0
  41. package/dist/client/rpc/bare-rpc-client.js +87 -0
  42. package/dist/client/rpc/expo-rpc-client.d.ts +1 -2
  43. package/dist/client/rpc/expo-rpc-client.js +14 -57
  44. package/dist/client/rpc/node-rpc-client.d.ts +8 -3
  45. package/dist/client/rpc/node-rpc-client.js +62 -218
  46. package/dist/client/rpc/rpc-client.d.ts +2 -3
  47. package/dist/client/rpc/rpc-client.js +49 -184
  48. package/dist/constants/audio.d.ts +2 -1
  49. package/dist/constants/audio.js +17 -1
  50. package/dist/constants/index.d.ts +0 -1
  51. package/dist/constants/index.js +0 -1
  52. package/dist/examples/delegated-inference/consumer.js +2 -3
  53. package/dist/examples/download-with-cancel.js +4 -3
  54. package/dist/examples/embed-hyperdrive.d.ts +2 -0
  55. package/dist/examples/embed-hyperdrive.js +19 -0
  56. package/dist/examples/kv-cache-cleanup.js +2 -1
  57. package/dist/examples/kv-cache-custom-key.js +2 -16
  58. package/dist/examples/kv-cache-example.js +2 -1
  59. package/dist/examples/llamacpp-file-logging.d.ts +2 -0
  60. package/dist/examples/{logging-file-transport.js → llamacpp-file-logging.js} +8 -3
  61. package/dist/examples/llamacpp-filesystem.js +2 -2
  62. package/dist/examples/llamacpp-http.js +1 -0
  63. package/dist/examples/llamacpp-hyperdrive.d.ts +2 -0
  64. package/dist/examples/{llamacpp-p2p.js → llamacpp-hyperdrive.js} +2 -1
  65. package/dist/examples/llamacpp-multimodal.js +4 -3
  66. package/dist/examples/llamacpp-native-tools.js +30 -72
  67. package/dist/examples/multi-model-demo.js +3 -2
  68. package/dist/examples/parallel-download.js +14 -46
  69. package/dist/examples/rag/rag-chromadb.js +1 -0
  70. package/dist/examples/rag/rag-hyperdb-workspaces.d.ts +2 -0
  71. package/dist/examples/rag/rag-hyperdb-workspaces.js +107 -0
  72. package/dist/examples/rag/rag-hyperdb.d.ts +2 -0
  73. package/dist/examples/rag/{rag-hyperdb/ingest.js → rag-hyperdb.js} +5 -10
  74. package/dist/examples/rag/rag-lancedb.js +1 -0
  75. package/dist/examples/rag/rag-sqlite.js +1 -0
  76. package/dist/examples/seed-hyperdrive.d.ts +2 -0
  77. package/dist/examples/text-to-speech.d.ts +3 -0
  78. package/dist/examples/{tts/utils.js → text-to-speech.js} +63 -18
  79. package/dist/examples/translation/translation-indic.js +1 -4
  80. package/dist/examples/translation/translation-llm-context.js +1 -0
  81. package/dist/examples/translation/translation-llm.js +2 -2
  82. package/dist/examples/translation/translation-opus.js +3 -6
  83. package/dist/examples/translation/translation-stream.js +3 -3
  84. package/dist/examples/whispercpp-filesystem.js +43 -0
  85. package/dist/examples/{transcription/whispercpp-microphone-record.js → whispercpp-microphone-record.js} +9 -8
  86. package/dist/expo/plugins/index.d.ts +0 -3
  87. package/dist/expo/plugins/index.js +0 -3
  88. package/dist/expo/plugins/withMobileBundle.d.ts +2 -5
  89. package/dist/expo/plugins/withMobileBundle.js +40 -121
  90. package/dist/expo/plugins/withQvacSDK.d.ts +0 -4
  91. package/dist/expo/plugins/withQvacSDK.js +1 -26
  92. package/dist/index.d.ts +4 -9
  93. package/dist/index.js +5 -11
  94. package/dist/logging/base-logger.js +16 -26
  95. package/dist/logging/index.d.ts +1 -7
  96. package/dist/logging/index.js +1 -7
  97. package/dist/logging/logger.d.ts +2 -0
  98. package/dist/logging/logger.js +6 -11
  99. package/dist/logging/stream-logger.d.ts +1 -1
  100. package/dist/logging/stream-logger.js +3 -6
  101. package/dist/logging/transport.js +2 -2
  102. package/dist/logging/types.d.ts +0 -2
  103. package/dist/logging/utils.d.ts +0 -2
  104. package/dist/logging/utils.js +0 -62
  105. package/dist/models/{registry → hyperdrive}/index.js +1 -1
  106. package/dist/models/hyperdrive/models.d.ts +619 -0
  107. package/dist/models/hyperdrive/models.js +693 -0
  108. package/dist/schemas/cancel.d.ts +0 -18
  109. package/dist/schemas/cancel.js +0 -7
  110. package/dist/schemas/common.d.ts +166 -3012
  111. package/dist/schemas/common.js +4 -27
  112. package/dist/schemas/completion-stream.d.ts +60 -31
  113. package/dist/schemas/completion-stream.js +44 -20
  114. package/dist/schemas/delegate.d.ts +0 -9
  115. package/dist/schemas/delegate.js +2 -6
  116. package/dist/schemas/download-asset.d.ts +3 -125
  117. package/dist/schemas/download-asset.js +5 -22
  118. package/dist/schemas/embed.d.ts +3 -3
  119. package/dist/schemas/embed.js +2 -9
  120. package/dist/schemas/index.d.ts +2 -20
  121. package/dist/schemas/index.js +2 -20
  122. package/dist/schemas/llamacpp-config.d.ts +12 -243
  123. package/dist/schemas/llamacpp-config.js +14 -50
  124. package/dist/schemas/load-model.d.ts +893 -14471
  125. package/dist/schemas/load-model.js +72 -325
  126. package/dist/schemas/logging-stream.d.ts +4 -11
  127. package/dist/schemas/logging-stream.js +3 -4
  128. package/dist/schemas/ping.d.ts +11 -0
  129. package/dist/schemas/ping.js +8 -0
  130. package/dist/schemas/rag.d.ts +52 -183
  131. package/dist/schemas/rag.js +23 -152
  132. package/dist/schemas/text-to-speech.d.ts +1 -692
  133. package/dist/schemas/text-to-speech.js +3 -35
  134. package/dist/schemas/transcription.d.ts +0 -3
  135. package/dist/schemas/transcription.js +0 -1
  136. package/dist/schemas/translate.d.ts +23 -68
  137. package/dist/schemas/translate.js +11 -37
  138. package/dist/schemas/translation-config.d.ts +7 -810
  139. package/dist/schemas/translation-config.js +7 -113
  140. package/dist/schemas/unload-model.d.ts +0 -2
  141. package/dist/schemas/unload-model.js +0 -2
  142. package/dist/schemas/whispercpp-config.d.ts +25 -0
  143. package/dist/schemas/whispercpp-config.js +18 -0
  144. package/dist/server/bare/{ops → addons}/cancel.js +1 -2
  145. package/dist/server/bare/addons/index.d.ts +4 -0
  146. package/dist/server/bare/addons/index.js +3 -0
  147. package/dist/server/bare/addons/llamacpp/create-model.d.ts +5 -0
  148. package/dist/server/bare/addons/llamacpp/create-model.js +67 -0
  149. package/dist/server/bare/{plugins/llamacpp-completion/ops → addons/llamacpp/handlers}/completion-stream.d.ts +1 -2
  150. package/dist/server/bare/{plugins/llamacpp-completion/ops → addons/llamacpp/handlers}/completion-stream.js +87 -54
  151. package/dist/server/bare/addons/llamacpp/handlers/embed.d.ts +4 -0
  152. package/dist/server/bare/{ops → addons/llamacpp/handlers}/embed.js +7 -22
  153. package/dist/server/bare/addons/llamacpp/index.d.ts +4 -0
  154. package/dist/server/bare/addons/llamacpp/index.js +3 -0
  155. package/dist/server/bare/{ops → addons/llamacpp}/kv-cache-utils.d.ts +1 -4
  156. package/dist/server/bare/{ops → addons/llamacpp}/kv-cache-utils.js +19 -54
  157. package/dist/server/bare/addons/load-model.d.ts +3 -0
  158. package/dist/server/bare/addons/load-model.js +62 -0
  159. package/dist/server/bare/addons/translation/create-model.d.ts +4 -0
  160. package/dist/server/bare/addons/translation/create-model.js +45 -0
  161. package/dist/server/bare/addons/translation/handlers/translate.d.ts +3 -0
  162. package/dist/server/bare/{ops → addons/translation/handlers}/translate.js +14 -47
  163. package/dist/server/bare/addons/translation/index.d.ts +3 -0
  164. package/dist/server/bare/addons/translation/index.js +2 -0
  165. package/dist/server/bare/addons/tts/create-model.d.ts +6 -0
  166. package/dist/server/bare/addons/tts/create-model.js +40 -0
  167. package/dist/server/bare/{plugins/onnx-tts/ops → addons/tts/handlers}/text-to-speech.js +3 -25
  168. package/dist/server/bare/addons/tts/index.d.ts +3 -0
  169. package/dist/server/bare/addons/tts/index.js +2 -0
  170. package/dist/server/bare/addons/unload-model.js +20 -0
  171. package/dist/server/bare/addons/whispercpp/create-model.d.ts +6 -0
  172. package/dist/server/bare/addons/whispercpp/create-model.js +55 -0
  173. package/dist/server/bare/addons/whispercpp/handlers/transcribe-stream.d.ts +3 -0
  174. package/dist/server/bare/addons/whispercpp/handlers/transcribe-stream.js +48 -0
  175. package/dist/server/bare/addons/whispercpp/index.d.ts +3 -0
  176. package/dist/server/bare/addons/whispercpp/index.js +2 -0
  177. package/dist/server/bare/delegate-rpc-client.d.ts +0 -6
  178. package/dist/server/bare/delegate-rpc-client.js +45 -187
  179. package/dist/server/bare/hyperswarm.d.ts +0 -3
  180. package/dist/server/bare/hyperswarm.js +6 -29
  181. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
  182. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +10 -9
  183. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +4 -7
  184. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +14 -13
  185. package/dist/server/bare/rag-hyperdb/handlers/search.js +10 -10
  186. package/dist/server/bare/rag-hyperdb/index.d.ts +1 -8
  187. package/dist/server/bare/rag-hyperdb/index.js +1 -8
  188. package/dist/server/bare/rag-hyperdb/rag-manager.d.ts +5 -0
  189. package/dist/server/bare/rag-hyperdb/rag-manager.js +65 -0
  190. package/dist/server/bare/registry/logging-stream-registry.d.ts +7 -24
  191. package/dist/server/bare/registry/logging-stream-registry.js +20 -99
  192. package/dist/server/bare/registry/model-registry.d.ts +26 -16
  193. package/dist/server/bare/registry/model-registry.js +13 -34
  194. package/dist/server/error-handlers.d.ts +2 -3
  195. package/dist/server/error-handlers.js +10 -15
  196. package/dist/server/http-server.d.ts +2 -0
  197. package/dist/server/http-server.js +189 -0
  198. package/dist/server/rpc/create-server.js +3 -5
  199. package/dist/server/rpc/handle-request.d.ts +9 -0
  200. package/dist/server/rpc/handle-request.js +242 -92
  201. package/dist/server/rpc/handlers/cancelHandler.js +3 -14
  202. package/dist/server/rpc/handlers/completion-stream-delegated.d.ts +1 -3
  203. package/dist/server/rpc/handlers/completion-stream-delegated.js +8 -20
  204. package/dist/server/rpc/handlers/completion-stream.js +41 -2
  205. package/dist/server/rpc/handlers/delete-cache.js +2 -4
  206. package/dist/server/rpc/handlers/download-asset.js +6 -59
  207. package/dist/server/rpc/handlers/embed.js +19 -2
  208. package/dist/server/rpc/handlers/index.d.ts +0 -13
  209. package/dist/server/rpc/handlers/index.js +0 -13
  210. package/dist/server/rpc/handlers/load-model/download-manager.d.ts +11 -12
  211. package/dist/server/rpc/handlers/load-model/download-manager.js +28 -43
  212. package/dist/server/rpc/handlers/load-model/http.d.ts +1 -2
  213. package/dist/server/rpc/handlers/load-model/http.js +55 -424
  214. package/dist/server/rpc/handlers/load-model/hyperdrive.d.ts +1 -2
  215. package/dist/server/rpc/handlers/load-model/hyperdrive.js +171 -364
  216. package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
  217. package/dist/server/rpc/handlers/load-model/index.js +2 -2
  218. package/dist/server/rpc/handlers/load-model/resolve.d.ts +1 -3
  219. package/dist/server/rpc/handlers/load-model/resolve.js +29 -110
  220. package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -6
  221. package/dist/server/rpc/handlers/load-model-delegated.js +20 -60
  222. package/dist/server/rpc/handlers/{load-model/handler.d.ts → load-model.d.ts} +2 -2
  223. package/dist/server/rpc/handlers/load-model.js +57 -0
  224. package/dist/server/rpc/handlers/logging-stream.js +4 -4
  225. package/dist/server/rpc/handlers/provideHandler/connection.js +10 -12
  226. package/dist/server/rpc/handlers/provideHandler/handler.js +17 -20
  227. package/dist/server/rpc/handlers/provideHandler/proxy.js +6 -8
  228. package/dist/server/rpc/handlers/rag.d.ts +2 -2
  229. package/dist/server/rpc/handlers/rag.js +43 -130
  230. package/dist/server/rpc/handlers/stopProvideHandler.js +2 -6
  231. package/dist/server/rpc/handlers/text-to-speech.js +5 -2
  232. package/dist/server/rpc/handlers/transcribe-stream.js +24 -2
  233. package/dist/server/rpc/handlers/translate.js +49 -2
  234. package/dist/server/rpc/handlers/unload-model.js +3 -12
  235. package/dist/server/rpc/index.d.ts +1 -1
  236. package/dist/server/utils/audio/decoder.d.ts +1 -2
  237. package/dist/server/utils/audio/decoder.js +12 -49
  238. package/dist/server/utils/cache.d.ts +8 -19
  239. package/dist/server/utils/cache.js +15 -100
  240. package/dist/server/utils/hash.d.ts +5 -0
  241. package/dist/server/utils/hash.js +11 -0
  242. package/dist/server/utils/index.d.ts +2 -7
  243. package/dist/server/utils/index.js +2 -7
  244. package/dist/server/utils/tool-parser.js +14 -28
  245. package/dist/server/worker.d.ts +5 -4
  246. package/dist/server/worker.js +89 -22
  247. package/package.json +41 -148
  248. package/NOTICE +0 -695
  249. package/bare-imports.json +0 -44
  250. package/dist/client/api/get-model-info.d.ts +0 -36
  251. package/dist/client/api/get-model-info.js +0 -14
  252. package/dist/client/api/heartbeat.d.ts +0 -30
  253. package/dist/client/api/heartbeat.js +0 -38
  254. package/dist/client/api/invoke-plugin.d.ts +0 -15
  255. package/dist/client/api/invoke-plugin.js +0 -38
  256. package/dist/client/api/ocr.d.ts +0 -31
  257. package/dist/client/api/ocr.js +0 -88
  258. package/dist/client/api/registry.d.ts +0 -14
  259. package/dist/client/api/registry.js +0 -37
  260. package/dist/client/config-loader/config-utils.d.ts +0 -5
  261. package/dist/client/config-loader/config-utils.js +0 -20
  262. package/dist/client/config-loader/resolve-config.bare.d.ts +0 -9
  263. package/dist/client/config-loader/resolve-config.bare.js +0 -87
  264. package/dist/client/config-loader/resolve-config.expo.d.ts +0 -11
  265. package/dist/client/config-loader/resolve-config.expo.js +0 -62
  266. package/dist/client/config-loader/resolve-config.node.d.ts +0 -10
  267. package/dist/client/config-loader/resolve-config.node.js +0 -145
  268. package/dist/client/init-hooks.d.ts +0 -21
  269. package/dist/client/init-hooks.js +0 -66
  270. package/dist/client/rpc/expo-device-info.d.ts +0 -6
  271. package/dist/client/rpc/expo-device-info.js +0 -32
  272. package/dist/client/rpc/profiling/index.d.ts +0 -2
  273. package/dist/client/rpc/profiling/index.js +0 -1
  274. package/dist/client/rpc/profiling/profiler.d.ts +0 -27
  275. package/dist/client/rpc/profiling/profiler.js +0 -139
  276. package/dist/constants/registry.d.ts +0 -2
  277. package/dist/constants/registry.js +0 -1
  278. package/dist/examples/cache-management.d.ts +0 -2
  279. package/dist/examples/cache-management.js +0 -97
  280. package/dist/examples/config/blind-relay/blind-relay.config.d.ts +0 -5
  281. package/dist/examples/config/blind-relay/blind-relay.config.js +0 -7
  282. package/dist/examples/config/default/default.config.d.ts +0 -8
  283. package/dist/examples/config/default/default.config.js +0 -6
  284. package/dist/examples/config/plugins/plugins.config.d.ts +0 -5
  285. package/dist/examples/config/plugins/plugins.config.js +0 -4
  286. package/dist/examples/config-reload.d.ts +0 -2
  287. package/dist/examples/config-reload.js +0 -49
  288. package/dist/examples/default-config-usage.d.ts +0 -17
  289. package/dist/examples/default-config-usage.js +0 -47
  290. package/dist/examples/delegated-inference/consumer-profiled.d.ts +0 -2
  291. package/dist/examples/delegated-inference/consumer-profiled.js +0 -67
  292. package/dist/examples/download-with-blind-relays.d.ts +0 -2
  293. package/dist/examples/download-with-blind-relays.js +0 -49
  294. package/dist/examples/embed-p2p.d.ts +0 -2
  295. package/dist/examples/embed-p2p.js +0 -54
  296. package/dist/examples/llamacpp-p2p.d.ts +0 -2
  297. package/dist/examples/llamacpp-sharded.d.ts +0 -2
  298. package/dist/examples/llamacpp-sharded.js +0 -53
  299. package/dist/examples/logging-file-transport.d.ts +0 -2
  300. package/dist/examples/logging-streaming.d.ts +0 -2
  301. package/dist/examples/logging-streaming.js +0 -75
  302. package/dist/examples/mcp-websearch.d.ts +0 -13
  303. package/dist/examples/mcp-websearch.js +0 -176
  304. package/dist/examples/ocr-fasttext.d.ts +0 -2
  305. package/dist/examples/ocr-fasttext.js +0 -52
  306. package/dist/examples/plugins.d.ts +0 -14
  307. package/dist/examples/plugins.js +0 -129
  308. package/dist/examples/profiling/basic.d.ts +0 -2
  309. package/dist/examples/profiling/basic.js +0 -71
  310. package/dist/examples/profiling/per-call.d.ts +0 -2
  311. package/dist/examples/profiling/per-call.js +0 -30
  312. package/dist/examples/quickstart.d.ts +0 -2
  313. package/dist/examples/quickstart.js +0 -28
  314. package/dist/examples/rag/rag-hyperdb/cancellation.d.ts +0 -2
  315. package/dist/examples/rag/rag-hyperdb/cancellation.js +0 -75
  316. package/dist/examples/rag/rag-hyperdb/ingest.d.ts +0 -2
  317. package/dist/examples/rag/rag-hyperdb/pipeline.d.ts +0 -2
  318. package/dist/examples/rag/rag-hyperdb/pipeline.js +0 -74
  319. package/dist/examples/rag/rag-hyperdb/workspaces.d.ts +0 -2
  320. package/dist/examples/rag/rag-hyperdb/workspaces.js +0 -178
  321. package/dist/examples/registry-query.d.ts +0 -2
  322. package/dist/examples/registry-query.js +0 -87
  323. package/dist/examples/seed-p2p.d.ts +0 -2
  324. package/dist/examples/transcription/parakeet-ctc-filesystem.d.ts +0 -2
  325. package/dist/examples/transcription/parakeet-ctc-filesystem.js +0 -40
  326. package/dist/examples/transcription/parakeet-microphone-record.d.ts +0 -2
  327. package/dist/examples/transcription/parakeet-microphone-record.js +0 -95
  328. package/dist/examples/transcription/parakeet-sortformer.d.ts +0 -2
  329. package/dist/examples/transcription/parakeet-sortformer.js +0 -115
  330. package/dist/examples/transcription/parakeet-tdt-filesystem.d.ts +0 -2
  331. package/dist/examples/transcription/parakeet-tdt-filesystem.js +0 -44
  332. package/dist/examples/transcription/whispercpp-filesystem.js +0 -69
  333. package/dist/examples/transcription/whispercpp-prompt.d.ts +0 -2
  334. package/dist/examples/transcription/whispercpp-prompt.js +0 -67
  335. package/dist/examples/translation/translation-bergamot-batch.d.ts +0 -2
  336. package/dist/examples/translation/translation-bergamot-batch.js +0 -49
  337. package/dist/examples/translation/translation-bergamot-pivot.d.ts +0 -2
  338. package/dist/examples/translation/translation-bergamot-pivot.js +0 -73
  339. package/dist/examples/translation/translation-bergamot.d.ts +0 -2
  340. package/dist/examples/translation/translation-bergamot.js +0 -39
  341. package/dist/examples/translation/translation-llm-afriquegemma.d.ts +0 -2
  342. package/dist/examples/translation/translation-llm-afriquegemma.js +0 -39
  343. package/dist/examples/tts/chatterbox.d.ts +0 -2
  344. package/dist/examples/tts/chatterbox.js +0 -59
  345. package/dist/examples/tts/supertonic.d.ts +0 -2
  346. package/dist/examples/tts/supertonic.js +0 -51
  347. package/dist/examples/tts/utils.d.ts +0 -17
  348. package/dist/expo/plugins/resolve-sdk-package-dir.d.ts +0 -15
  349. package/dist/expo/plugins/resolve-sdk-package-dir.js +0 -31
  350. package/dist/expo/plugins/withAndroidArchitecture.d.ts +0 -8
  351. package/dist/expo/plugins/withAndroidArchitecture.js +0 -52
  352. package/dist/expo/plugins/withAndroidNdkVersion.d.ts +0 -8
  353. package/dist/expo/plugins/withAndroidNdkVersion.js +0 -31
  354. package/dist/expo/plugins/withDeviceInfo.d.ts +0 -10
  355. package/dist/expo/plugins/withDeviceInfo.js +0 -48
  356. package/dist/logging/addon.d.ts +0 -6
  357. package/dist/logging/addon.js +0 -75
  358. package/dist/logging/client-logger.d.ts +0 -3
  359. package/dist/logging/client-logger.js +0 -24
  360. package/dist/logging/namespaces.d.ts +0 -6
  361. package/dist/logging/namespaces.js +0 -6
  362. package/dist/logging/registry.d.ts +0 -31
  363. package/dist/logging/registry.js +0 -62
  364. package/dist/logging/server-logger.d.ts +0 -3
  365. package/dist/logging/server-logger.js +0 -16
  366. package/dist/models/registry/models.d.ts +0 -10417
  367. package/dist/models/registry/models.js +0 -10757
  368. package/dist/models/update-models/codegen.d.ts +0 -3
  369. package/dist/models/update-models/codegen.js +0 -135
  370. package/dist/models/update-models/history.d.ts +0 -24
  371. package/dist/models/update-models/history.js +0 -107
  372. package/dist/models/update-models/index.d.ts +0 -2
  373. package/dist/models/update-models/index.js +0 -125
  374. package/dist/models/update-models/naming.d.ts +0 -4
  375. package/dist/models/update-models/naming.js +0 -370
  376. package/dist/models/update-models/processing.d.ts +0 -8
  377. package/dist/models/update-models/processing.js +0 -67
  378. package/dist/models/update-models/registry.d.ts +0 -4
  379. package/dist/models/update-models/registry.js +0 -67
  380. package/dist/models/update-models/shards.d.ts +0 -4
  381. package/dist/models/update-models/shards.js +0 -57
  382. package/dist/models/update-models/types.d.ts +0 -60
  383. package/dist/models/update-models/types.js +0 -1
  384. package/dist/models/update-models/utils.d.ts +0 -3
  385. package/dist/models/update-models/utils.js +0 -21
  386. package/dist/pear/pre.d.ts +0 -18
  387. package/dist/pear/pre.js +0 -433
  388. package/dist/profiling/aggregator.d.ts +0 -15
  389. package/dist/profiling/aggregator.js +0 -100
  390. package/dist/profiling/clock.d.ts +0 -12
  391. package/dist/profiling/clock.js +0 -51
  392. package/dist/profiling/controller.d.ts +0 -33
  393. package/dist/profiling/controller.js +0 -123
  394. package/dist/profiling/envelope.d.ts +0 -10
  395. package/dist/profiling/envelope.js +0 -36
  396. package/dist/profiling/events.d.ts +0 -20
  397. package/dist/profiling/events.js +0 -37
  398. package/dist/profiling/exporters.d.ts +0 -10
  399. package/dist/profiling/exporters.js +0 -236
  400. package/dist/profiling/index.d.ts +0 -36
  401. package/dist/profiling/index.js +0 -31
  402. package/dist/profiling/ring-buffer.d.ts +0 -19
  403. package/dist/profiling/ring-buffer.js +0 -83
  404. package/dist/profiling/types.d.ts +0 -47
  405. package/dist/profiling/types.js +0 -1
  406. package/dist/schemas/archive.d.ts +0 -9
  407. package/dist/schemas/archive.js +0 -17
  408. package/dist/schemas/engine-addon-map.d.ts +0 -5
  409. package/dist/schemas/engine-addon-map.js +0 -52
  410. package/dist/schemas/get-model-info.d.ts +0 -120
  411. package/dist/schemas/get-model-info.js +0 -58
  412. package/dist/schemas/heartbeat.d.ts +0 -17
  413. package/dist/schemas/heartbeat.js +0 -10
  414. package/dist/schemas/json-schema.d.ts +0 -16
  415. package/dist/schemas/json-schema.js +0 -2
  416. package/dist/schemas/mcp-adapter.d.ts +0 -47
  417. package/dist/schemas/mcp-adapter.js +0 -1
  418. package/dist/schemas/model-src-utils.d.ts +0 -148
  419. package/dist/schemas/model-src-utils.js +0 -35
  420. package/dist/schemas/model-types.d.ts +0 -183
  421. package/dist/schemas/model-types.js +0 -168
  422. package/dist/schemas/ocr.d.ts +0 -125
  423. package/dist/schemas/ocr.js +0 -57
  424. package/dist/schemas/path-validation.d.ts +0 -10
  425. package/dist/schemas/path-validation.js +0 -22
  426. package/dist/schemas/plugin.d.ts +0 -226
  427. package/dist/schemas/plugin.js +0 -158
  428. package/dist/schemas/profiling.d.ts +0 -105
  429. package/dist/schemas/profiling.js +0 -66
  430. package/dist/schemas/registry.d.ts +0 -356
  431. package/dist/schemas/registry.js +0 -93
  432. package/dist/schemas/reload-config.d.ts +0 -476
  433. package/dist/schemas/reload-config.js +0 -44
  434. package/dist/schemas/runtime-context.d.ts +0 -19
  435. package/dist/schemas/runtime-context.js +0 -7
  436. package/dist/schemas/sdk-config.d.ts +0 -2973
  437. package/dist/schemas/sdk-config.js +0 -136
  438. package/dist/schemas/sdk-errors-client.d.ts +0 -31
  439. package/dist/schemas/sdk-errors-client.js +0 -143
  440. package/dist/schemas/sdk-errors-registry.d.ts +0 -6
  441. package/dist/schemas/sdk-errors-registry.js +0 -8
  442. package/dist/schemas/sdk-errors-server.d.ts +0 -89
  443. package/dist/schemas/sdk-errors-server.js +0 -451
  444. package/dist/schemas/shard.d.ts +0 -21
  445. package/dist/schemas/shard.js +0 -17
  446. package/dist/schemas/tools.d.ts +0 -65
  447. package/dist/schemas/tools.js +0 -43
  448. package/dist/schemas/transcription-config.d.ts +0 -383
  449. package/dist/schemas/transcription-config.js +0 -95
  450. package/dist/scripts/run-security-tests-bare.d.ts +0 -2
  451. package/dist/scripts/run-security-tests-bare.js +0 -78
  452. package/dist/scripts/run-security-tests.d.ts +0 -2
  453. package/dist/scripts/run-security-tests.js +0 -22
  454. package/dist/scripts/run-unit-tests.d.ts +0 -2
  455. package/dist/scripts/run-unit-tests.js +0 -17
  456. package/dist/server/bare/ops/embed.d.ts +0 -12
  457. package/dist/server/bare/ops/load-model.d.ts +0 -9
  458. package/dist/server/bare/ops/load-model.js +0 -85
  459. package/dist/server/bare/ops/transcribe.d.ts +0 -3
  460. package/dist/server/bare/ops/transcribe.js +0 -75
  461. package/dist/server/bare/ops/translate.d.ts +0 -5
  462. package/dist/server/bare/ops/unload-model.js +0 -41
  463. package/dist/server/bare/plugins/index.d.ts +0 -8
  464. package/dist/server/bare/plugins/index.js +0 -7
  465. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.d.ts +0 -6
  466. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.js +0 -34
  467. package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +0 -220
  468. package/dist/server/bare/plugins/llamacpp-completion/plugin.js +0 -155
  469. package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +0 -54
  470. package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +0 -87
  471. package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +0 -367
  472. package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +0 -201
  473. package/dist/server/bare/plugins/onnx-ocr/ops/ocr-stream.d.ts +0 -10
  474. package/dist/server/bare/plugins/onnx-ocr/ops/ocr-stream.js +0 -110
  475. package/dist/server/bare/plugins/onnx-ocr/plugin.d.ts +0 -86
  476. package/dist/server/bare/plugins/onnx-ocr/plugin.js +0 -117
  477. package/dist/server/bare/plugins/onnx-tts/plugin.d.ts +0 -373
  478. package/dist/server/bare/plugins/onnx-tts/plugin.js +0 -182
  479. package/dist/server/bare/plugins/onnx-tts/wav-helper.d.ts +0 -14
  480. package/dist/server/bare/plugins/onnx-tts/wav-helper.js +0 -107
  481. package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +0 -317
  482. package/dist/server/bare/plugins/parakeet-transcription/plugin.js +0 -154
  483. package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +0 -237
  484. package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +0 -86
  485. package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +0 -3
  486. package/dist/server/bare/rag-hyperdb/handlers/chunk.js +0 -7
  487. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +0 -3
  488. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +0 -9
  489. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +0 -3
  490. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +0 -14
  491. package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +0 -9
  492. package/dist/server/bare/rag-hyperdb/handlers/ingest.js +0 -18
  493. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +0 -3
  494. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +0 -4
  495. package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +0 -9
  496. package/dist/server/bare/rag-hyperdb/handlers/reindex.js +0 -16
  497. package/dist/server/bare/rag-hyperdb/rag-operation-manager.d.ts +0 -7
  498. package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +0 -39
  499. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.d.ts +0 -15
  500. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +0 -136
  501. package/dist/server/bare/registry/config-registry.d.ts +0 -14
  502. package/dist/server/bare/registry/config-registry.js +0 -82
  503. package/dist/server/bare/registry/model-config-registry.d.ts +0 -4
  504. package/dist/server/bare/registry/model-config-registry.js +0 -15
  505. package/dist/server/bare/registry/model-config-utils.d.ts +0 -15
  506. package/dist/server/bare/registry/model-config-utils.js +0 -112
  507. package/dist/server/bare/registry/registry-client.d.ts +0 -5
  508. package/dist/server/bare/registry/registry-client.js +0 -37
  509. package/dist/server/bare/registry/runtime-context-registry.d.ts +0 -7
  510. package/dist/server/bare/registry/runtime-context-registry.js +0 -26
  511. package/dist/server/bare/utils/audio-input.d.ts +0 -10
  512. package/dist/server/bare/utils/audio-input.js +0 -33
  513. package/dist/server/bare/utils/loader-adapter.d.ts +0 -7
  514. package/dist/server/bare/utils/loader-adapter.js +0 -9
  515. package/dist/server/env.d.ts +0 -22
  516. package/dist/server/env.js +0 -57
  517. package/dist/server/plugins/index.d.ts +0 -2
  518. package/dist/server/plugins/index.js +0 -1
  519. package/dist/server/plugins/registry.d.ts +0 -9
  520. package/dist/server/plugins/registry.js +0 -79
  521. package/dist/server/rpc/delegate-transport.d.ts +0 -19
  522. package/dist/server/rpc/delegate-transport.js +0 -236
  523. package/dist/server/rpc/delegate-utils.d.ts +0 -2
  524. package/dist/server/rpc/delegate-utils.js +0 -5
  525. package/dist/server/rpc/handler-registry.d.ts +0 -3
  526. package/dist/server/rpc/handler-registry.js +0 -113
  527. package/dist/server/rpc/handler-utils.d.ts +0 -23
  528. package/dist/server/rpc/handler-utils.js +0 -170
  529. package/dist/server/rpc/handlers/cancel-delegated.d.ts +0 -4
  530. package/dist/server/rpc/handlers/cancel-delegated.js +0 -71
  531. package/dist/server/rpc/handlers/get-model-info.d.ts +0 -3
  532. package/dist/server/rpc/handlers/get-model-info.js +0 -164
  533. package/dist/server/rpc/handlers/heartbeat-delegated.d.ts +0 -4
  534. package/dist/server/rpc/handlers/heartbeat-delegated.js +0 -32
  535. package/dist/server/rpc/handlers/heartbeat.d.ts +0 -3
  536. package/dist/server/rpc/handlers/heartbeat.js +0 -3
  537. package/dist/server/rpc/handlers/load-model/download-stats.d.ts +0 -6
  538. package/dist/server/rpc/handlers/load-model/download-stats.js +0 -87
  539. package/dist/server/rpc/handlers/load-model/handler.js +0 -187
  540. package/dist/server/rpc/handlers/load-model/registry.d.ts +0 -11
  541. package/dist/server/rpc/handlers/load-model/registry.js +0 -548
  542. package/dist/server/rpc/handlers/load-model/types.d.ts +0 -29
  543. package/dist/server/rpc/handlers/load-model/types.js +0 -1
  544. package/dist/server/rpc/handlers/ocr-stream.d.ts +0 -3
  545. package/dist/server/rpc/handlers/ocr-stream.js +0 -4
  546. package/dist/server/rpc/handlers/plugin-dispatch.d.ts +0 -15
  547. package/dist/server/rpc/handlers/plugin-dispatch.js +0 -59
  548. package/dist/server/rpc/handlers/plugin-invoke.d.ts +0 -4
  549. package/dist/server/rpc/handlers/plugin-invoke.js +0 -92
  550. package/dist/server/rpc/handlers/registry.d.ts +0 -5
  551. package/dist/server/rpc/handlers/registry.js +0 -157
  552. package/dist/server/rpc/handlers/unload-model-delegated.d.ts +0 -3
  553. package/dist/server/rpc/handlers/unload-model-delegated.js +0 -32
  554. package/dist/server/rpc/profiling/context.d.ts +0 -18
  555. package/dist/server/rpc/profiling/context.js +0 -38
  556. package/dist/server/rpc/profiling/delegation-profiler.d.ts +0 -32
  557. package/dist/server/rpc/profiling/delegation-profiler.js +0 -154
  558. package/dist/server/rpc/profiling/index.d.ts +0 -5
  559. package/dist/server/rpc/profiling/index.js +0 -4
  560. package/dist/server/rpc/profiling/operation-metrics.d.ts +0 -25
  561. package/dist/server/rpc/profiling/operation-metrics.js +0 -199
  562. package/dist/server/rpc/profiling/operation-wrappers.d.ts +0 -18
  563. package/dist/server/rpc/profiling/operation-wrappers.js +0 -124
  564. package/dist/server/rpc/profiling/profiler.d.ts +0 -13
  565. package/dist/server/rpc/profiling/profiler.js +0 -97
  566. package/dist/server/utils/archive.d.ts +0 -4
  567. package/dist/server/utils/archive.js +0 -179
  568. package/dist/server/utils/checksum.d.ts +0 -4
  569. package/dist/server/utils/checksum.js +0 -31
  570. package/dist/server/utils/config-transform.d.ts +0 -3
  571. package/dist/server/utils/config-transform.js +0 -23
  572. package/dist/server/utils/formatting.d.ts +0 -19
  573. package/dist/server/utils/formatting.js +0 -61
  574. package/dist/server/utils/gguf-tensor-extractor.d.ts +0 -15
  575. package/dist/server/utils/gguf-tensor-extractor.js +0 -314
  576. package/dist/server/utils/path-security.d.ts +0 -12
  577. package/dist/server/utils/path-security.js +0 -25
  578. package/dist/server/utils/shard-utils.d.ts +0 -48
  579. package/dist/server/utils/shard-utils.js +0 -125
  580. package/dist/server/utils/tool-integration.d.ts +0 -13
  581. package/dist/server/utils/tool-integration.js +0 -43
  582. package/dist/server/worker-core.d.ts +0 -6
  583. package/dist/server/worker-core.js +0 -88
  584. package/dist/utils/errors-base.d.ts +0 -3
  585. package/dist/utils/errors-base.js +0 -13
  586. package/dist/utils/errors-client.d.ts +0 -137
  587. package/dist/utils/errors-client.js +0 -240
  588. package/dist/utils/errors-server.d.ts +0 -236
  589. package/dist/utils/errors-server.js +0 -412
  590. package/dist/utils/global-singleton.d.ts +0 -2
  591. package/dist/utils/global-singleton.js +0 -10
  592. package/dist/utils/mcp-adapter.d.ts +0 -12
  593. package/dist/utils/mcp-adapter.js +0 -103
  594. package/dist/utils/object.d.ts +0 -2
  595. package/dist/utils/object.js +0 -3
  596. package/dist/utils/path-sanitize.d.ts +0 -17
  597. package/dist/utils/path-sanitize.js +0 -54
  598. package/dist/utils/tool-helpers.d.ts +0 -25
  599. package/dist/utils/tool-helpers.js +0 -112
  600. package/expo/plugins/patches/android-link.mjs +0 -63
  601. package/expo/plugins/patches/ios-link.mjs +0 -63
  602. /package/dist/examples/{seed-p2p.js → seed-hyperdrive.js} +0 -0
  603. /package/dist/examples/{transcription/whispercpp-filesystem.d.ts → whispercpp-filesystem.d.ts} +0 -0
  604. /package/dist/examples/{transcription/whispercpp-microphone-record.d.ts → whispercpp-microphone-record.d.ts} +0 -0
  605. /package/dist/models/{registry → hyperdrive}/index.d.ts +0 -0
  606. /package/dist/server/bare/{ops → addons}/cancel.d.ts +0 -0
  607. /package/dist/server/bare/{plugins/onnx-tts/ops → addons/tts/handlers}/text-to-speech.d.ts +0 -0
  608. /package/dist/server/bare/{ops → addons}/unload-model.d.ts +0 -0
@@ -1,370 +0,0 @@
1
- import { getAddonFromEngine } from "../../schemas/engine-addon-map";
2
- import { detectShardedModel } from "./shards.js";
3
- // Normalizes a name part to a valid JS export name fragment.
4
- // Strips ggml/gguf prefixes, shortens "instruct" to "inst",
5
- // and uppercases with underscore separators.
6
- export function cleanPart(p) {
7
- if (!p)
8
- return "";
9
- return p
10
- .replace(/ggml-?/gi, "")
11
- .replace(/gguf-?/gi, "")
12
- .replace(/instruct/gi, "inst")
13
- .replace(/^-+|-+$/g, "")
14
- .toUpperCase()
15
- .replace(/[^A-Z0-9]+/g, "_");
16
- }
17
- // Generates a unique export constant name for a model based on its
18
- // registry metadata, engine type, tags, and filename.
19
- export function generateExportName({ path: registryPath, engine, name: modelName, quantization, params, tags, usedNames, }) {
20
- let addon = getAddonFromEngine(engine);
21
- // Override addon classification when tags clearly indicate a different type.
22
- // e.g. SmolVLM2 f16 uses translation-llamacpp engine (→nmt) but is actually a multimodal LLM.
23
- if (addon === "nmt" &&
24
- tags.some((t) => t === "generation" || t === "multimodal")) {
25
- addon = "llm";
26
- }
27
- let exportName = "";
28
- const filename = decodeURIComponent(registryPath.split("/").pop() || registryPath);
29
- const lowerFilename = filename.toLowerCase();
30
- const lowerPath = registryPath.toLowerCase();
31
- // Extract structured info from tags array.
32
- // Tags typically contain: [function, type, modelName, langPair/other]
33
- const tagType = tags[1] || "";
34
- const tagName = tags[2] || "";
35
- const tagExtra = tags[3] || "";
36
- exportName = generateBaseName({
37
- addon,
38
- engine,
39
- filename,
40
- lowerFilename,
41
- lowerPath,
42
- modelName,
43
- quantization,
44
- params,
45
- tagType,
46
- tagName,
47
- tagExtra,
48
- tags,
49
- });
50
- exportName = exportName.replace(/^_+|_+$/g, "").replace(/_+/g, "_");
51
- // Add suffix for metadata files (tensors.txt are shard metadata, not actual models)
52
- if (lowerFilename.endsWith(".tensors.txt")) {
53
- exportName = `${exportName}_TENSORS`;
54
- }
55
- // Add SHARD suffix for sharded models
56
- if (detectShardedModel(filename).isSharded) {
57
- exportName = `${exportName}_SHARD`;
58
- }
59
- return resolveCollision(exportName, quantization, usedNames);
60
- }
61
- // Resolves name collisions by appending quantization or a sequential counter.
62
- function resolveCollision(exportName, quantization, usedNames) {
63
- let finalName = exportName || "UNKNOWN_MODEL";
64
- if (usedNames.has(finalName) && quantization) {
65
- const cleanedQuant = cleanPart(quantization);
66
- // Only append quantization if it's not already at the end of the name
67
- if (cleanedQuant && !exportName.endsWith(cleanedQuant)) {
68
- const withQuant = `${exportName}_${cleanedQuant}`;
69
- if (!usedNames.has(withQuant)) {
70
- finalName = withQuant;
71
- }
72
- }
73
- }
74
- let counter = 1;
75
- while (usedNames.has(finalName)) {
76
- finalName = `${exportName}_${counter++}`;
77
- }
78
- usedNames.add(finalName);
79
- return finalName;
80
- }
81
- function generateBaseName(input) {
82
- const { addon, lowerFilename } = input;
83
- // Detect VAD Silero before whisper (same engine, different model type)
84
- if (lowerFilename.includes("silero")) {
85
- return generateVadSileroName(input);
86
- }
87
- switch (addon) {
88
- case "whisper":
89
- return generateWhisperName(input);
90
- case "vad":
91
- return generateVadName(input);
92
- case "nmt":
93
- return generateNmtName(input);
94
- case "llm":
95
- return generateLlmName(input);
96
- case "embeddings":
97
- return generateEmbeddingsName(input);
98
- case "tts":
99
- return generateTtsName(input);
100
- case "ocr":
101
- return generateOcrName(input);
102
- case "parakeet":
103
- return generateParakeetName(input);
104
- default:
105
- return cleanPart(input.filename.replace(/\.\w+$/, ""));
106
- }
107
- }
108
- function generateVadSileroName({ filename }) {
109
- const versionMatch = filename.match(/v(\d+\.\d+\.\d+)/i);
110
- const version = versionMatch ? versionMatch[1] : "";
111
- const nameParts = ["SILERO", version].filter((p) => p && p !== "");
112
- return `VAD_${nameParts.map(cleanPart).join("_")}`;
113
- }
114
- function generateWhisperName({ filename, lowerFilename, quantization, }) {
115
- // Extract language from filename prefix (e.g. "de-tiny-ggml-model-f16.bin")
116
- const langPrefixMatch = filename.match(/^([a-z]{2})-/i);
117
- // Detect English-only models from ".en" or ".en-" in filename
118
- const isEnglishOnly = /\.en[-.]/.test(lowerFilename) || lowerFilename.endsWith(".en.bin");
119
- // Extract size from filename
120
- const sizeMatch = filename.match(/\b(tiny|base|small|medium|large(?:-v[0-9]+)?(?:-turbo)?)\b/i);
121
- const modelSize = sizeMatch ? sizeMatch[1] : "";
122
- // Extract quant from filename (f16, q8_0, etc.)
123
- const quantMatch = filename.match(/[-_](f16|q[0-9]+[_][0-9]+|q8)\b/i);
124
- const fileQuant = quantMatch ? quantMatch[1] : quantization;
125
- const nameParts = [];
126
- if (langPrefixMatch) {
127
- const langCode = langPrefixMatch[1].toLowerCase();
128
- const langMap = {
129
- de: "GERMAN",
130
- es: "SPANISH",
131
- fr: "FRENCH",
132
- it: "ITALIAN",
133
- ja: "JAPANESE",
134
- pt: "PORTUGUESE",
135
- ru: "RUSSIAN",
136
- nb: "NORWEGIAN",
137
- en: "ENGLISH",
138
- };
139
- const langName = langMap[langCode] || langCode.toUpperCase();
140
- nameParts.push(langName);
141
- }
142
- else if (isEnglishOnly) {
143
- nameParts.push("EN");
144
- }
145
- if (modelSize)
146
- nameParts.push(modelSize);
147
- if (fileQuant)
148
- nameParts.push(fileQuant);
149
- return `WHISPER_${nameParts.map(cleanPart).join("_")}`;
150
- }
151
- function generateVadName({ filename, tagType, tagName, }) {
152
- const versionMatch = filename.match(/v(\d+\.\d+\.\d+)/i);
153
- const version = versionMatch ? versionMatch[1] : "";
154
- const typeName = tagType || tagName || "SILERO";
155
- const nameParts = [typeName, version].filter((p) => p && p !== "");
156
- return `VAD_${nameParts.map(cleanPart).join("_")}`;
157
- }
158
- function generateNmtName(input) {
159
- const { lowerPath, lowerFilename } = input;
160
- if (lowerPath.includes("salamandra") ||
161
- lowerFilename.includes("salamandra")) {
162
- return generateNmtSalamandraName(input);
163
- }
164
- if (lowerPath.includes("indictrans") ||
165
- lowerFilename.includes("indictrans")) {
166
- return generateNmtIndictransName(input);
167
- }
168
- if (lowerPath.includes("opus") || lowerFilename.includes("opus")) {
169
- return generateNmtOpusName(input);
170
- }
171
- if (lowerPath.includes("bergamot") || lowerFilename.includes("bergamot")) {
172
- return generateNmtBergamotName(input);
173
- }
174
- const nameParts = [input.modelName, input.quantization].filter((p) => p && p !== "");
175
- return `NMT_${nameParts.map(cleanPart).join("_")}`;
176
- }
177
- function generateNmtSalamandraName({ filename }) {
178
- const base = filename.replace(/\.\w+$/, "").replace(/-\d{5}-of-\d{5}/, "");
179
- return cleanPart(base);
180
- }
181
- function generateNmtIndictransName({ filename, quantization, }) {
182
- const langMatch = filename.match(/(en-indic|indic-en|indic-indic)/i);
183
- const langDir = langMatch ? langMatch[1] : "";
184
- const langMap = {
185
- "en-indic": "EN_HI",
186
- "indic-en": "HI_EN",
187
- "indic-indic": "HI_HI",
188
- };
189
- const langPair = langMap[langDir.toLowerCase()] || cleanPart(langDir);
190
- const sizeMatch = filename.match(/(\d+[MB])/i);
191
- const size = sizeMatch ? sizeMatch[1] : "";
192
- const nameParts = [langPair, "INDIC", size, quantization].filter((p) => p && p !== "");
193
- return `MARIAN_${nameParts.map(cleanPart).join("_")}`;
194
- }
195
- function generateNmtOpusName({ filename, quantization, tagExtra, }) {
196
- const langMatch = filename.match(/-([a-z]{2,3})-([a-z]{2,3})\./i);
197
- let langPair = "";
198
- if (langMatch) {
199
- langPair = `${langMatch[1].toUpperCase()}_${langMatch[2].toUpperCase()}`;
200
- }
201
- else {
202
- const tagLang = tagExtra || "";
203
- if (tagLang.match(/^[a-z]{2}-[a-z]{2}$/i)) {
204
- const [src, tgt] = tagLang.split("-");
205
- langPair = `${src.toUpperCase()}_${tgt.toUpperCase()}`;
206
- }
207
- }
208
- if (!langPair) {
209
- const roaMatch = filename.match(/-([a-z]{2,3})-([a-z]{2,3})-f16/i);
210
- if (roaMatch) {
211
- langPair = `${roaMatch[1].toUpperCase()}_${roaMatch[2].toUpperCase()}`;
212
- }
213
- }
214
- const nameParts = [langPair, quantization].filter((p) => p && p !== "");
215
- return `MARIAN_OPUS_${nameParts.map(cleanPart).join("_")}`;
216
- }
217
- function generateNmtBergamotName({ filename }) {
218
- const langMatch = filename.match(/[.]([a-z]{2,4})[.]/i);
219
- let langPair = "";
220
- if (langMatch) {
221
- const code = langMatch[1];
222
- if (code.length === 4) {
223
- langPair = `${code.slice(0, 2).toUpperCase()}_${code.slice(2).toUpperCase()}`;
224
- }
225
- else {
226
- langPair = code.toUpperCase();
227
- }
228
- }
229
- let suffix = "";
230
- if (filename.startsWith("model.")) {
231
- suffix = "";
232
- }
233
- else if (filename.match(/^vocab\./)) {
234
- suffix = "_VOCAB";
235
- }
236
- else if (filename.match(/^srcvocab\./)) {
237
- suffix = "_SRCVOCAB";
238
- }
239
- else if (filename.match(/^trgvocab\./)) {
240
- suffix = "_TRGVOCAB";
241
- }
242
- else if (filename.startsWith("lex.")) {
243
- suffix = "_LEX";
244
- }
245
- else if (filename === "metadata.json") {
246
- suffix = "_METADATA";
247
- }
248
- return `BERGAMOT_${langPair}${suffix}`;
249
- }
250
- function generateLlmName({ filename, tagType, tagName, modelName, quantization, params, }) {
251
- const type = tagType || "";
252
- const name = tagName || modelName || "";
253
- const isMMProj = filename.includes("mmproj");
254
- // Try to extract model family from filename to recover version info
255
- // that tags may omit (e.g., tag "qwen" but filename "Qwen3-1.7B-...")
256
- let familyName = name;
257
- if (params) {
258
- const parseFn = filename
259
- .replace(/^mmproj[-_]/i, "")
260
- .replace(/\.tensors\.txt$/, "")
261
- .replace(/\.\w+$/, "")
262
- .replace(/-\d{5}-of-\d{5}/, "");
263
- const paramsEsc = params.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
264
- const familyMatch = parseFn.match(new RegExp(`^(.+?)[-_]${paramsEsc}`, "i"));
265
- if (familyMatch?.[1]) {
266
- const candidate = familyMatch[1];
267
- // Use filename family only if it extends the tag name
268
- // Strip common engine/format suffixes from tag before comparing
269
- const tagCore = name.replace(/[-_](ggml|cpp|onnx|llamacpp|metal)$/i, "");
270
- const cleanedCandidate = candidate.replace(/[-_.]/g, "").toLowerCase();
271
- const cleanedTagCore = tagCore.replace(/[-_.]/g, "").toLowerCase();
272
- if (cleanedCandidate.startsWith(cleanedTagCore) &&
273
- cleanedCandidate.length >= cleanedTagCore.length) {
274
- familyName = candidate;
275
- }
276
- }
277
- }
278
- const nameParts = [familyName, params, type, quantization].filter((p) => p && p !== "");
279
- let exportName = nameParts.map(cleanPart).join("_");
280
- if (isMMProj) {
281
- exportName = "MMPROJ_" + exportName;
282
- }
283
- return exportName;
284
- }
285
- function generateEmbeddingsName({ tagName, modelName, params, quantization, }) {
286
- const name = tagName || modelName || "";
287
- const nameParts = [name, params, quantization].filter((p) => p && p !== "");
288
- return nameParts.map(cleanPart).join("_");
289
- }
290
- function generateTtsName({ filename, tagName, modelName, tagExtra, tagType, quantization, }) {
291
- const name = tagName || modelName || "";
292
- const language = tagExtra || "";
293
- const type = tagType || "";
294
- const nameParts = [name, language, type, quantization].filter((p) => p && p !== "");
295
- let exportName = `TTS_${nameParts.map(cleanPart).join("_")}`;
296
- if (filename.endsWith(".onnx.json") || filename.includes("config.json")) {
297
- exportName = exportName + "_CONFIG";
298
- }
299
- if (filename.endsWith(".onnx_data")) {
300
- exportName = exportName + "_DATA";
301
- }
302
- return exportName;
303
- }
304
- function generateOcrName({ filename, tagName, modelName, tagExtra, }) {
305
- const name = tagName || modelName || "";
306
- const language = tagExtra || "";
307
- let fileType = "";
308
- if (filename.includes("detector")) {
309
- fileType = "DETECTOR";
310
- }
311
- else if (filename.includes("recognizer")) {
312
- fileType = "RECOGNIZER";
313
- }
314
- const nameParts = [name, language, fileType].filter((p) => p && p !== "");
315
- return `OCR_${nameParts.map(cleanPart).join("_")}`;
316
- }
317
- function generateParakeetName({ filename, lowerPath, quantization, }) {
318
- const lower = filename.toLowerCase();
319
- // Detect model variant from registry path
320
- let variant = "";
321
- if (lowerPath.includes("parakeet-tdt") || lowerPath.includes("parakeet/")) {
322
- variant = "TDT";
323
- }
324
- else if (lowerPath.includes("parakeet-ctc")) {
325
- variant = "CTC";
326
- }
327
- else if (lowerPath.includes("eou") || lowerPath.includes("parakeet-rs")) {
328
- variant = "EOU";
329
- }
330
- else if (lowerPath.includes("sortformer")) {
331
- variant = "SORTFORMER";
332
- }
333
- // Detect file role from filename
334
- let fileRole = "";
335
- if (lower.includes("encoder") && (lower.endsWith(".data") || lower.endsWith(".onnx.data"))) {
336
- fileRole = "ENCODER_DATA";
337
- }
338
- else if (lower.includes("encoder")) {
339
- fileRole = "ENCODER";
340
- }
341
- else if (lower.includes("decoder")) {
342
- fileRole = "DECODER";
343
- }
344
- else if (lower.includes("vocab")) {
345
- fileRole = "VOCAB";
346
- }
347
- else if (lower.includes("tokenizer")) {
348
- fileRole = "TOKENIZER";
349
- }
350
- else if (lower.includes("preprocessor") || lower.includes("nemo")) {
351
- fileRole = "PREPROCESSOR";
352
- }
353
- else if (lower === "config.json") {
354
- fileRole = "CONFIG";
355
- }
356
- else if (lower.endsWith(".onnx.data") || lower.endsWith(".onnx_data")) {
357
- fileRole = "DATA";
358
- }
359
- else if (lower.includes("sortformer")) {
360
- fileRole = "";
361
- }
362
- else if (lower.endsWith(".onnx") || lower.endsWith(".int8.onnx")) {
363
- fileRole = "";
364
- }
365
- else {
366
- fileRole = cleanPart(filename.replace(/\.\w+$/, ""));
367
- }
368
- const nameParts = [variant, fileRole, quantization].filter((p) => p && p !== "");
369
- return `PARAKEET_${nameParts.map(cleanPart).join("_")}`;
370
- }
@@ -1,8 +0,0 @@
1
- import type { QVACModelEntry } from "@qvac/registry-client";
2
- import type { ProcessedModel } from "./types";
3
- export declare function toHexString(value: Buffer | string | {
4
- data: number[];
5
- } | undefined): string;
6
- export declare function extractModelName(registryPath: string): string;
7
- export declare function processRegistryModel(model: QVACModelEntry): ProcessedModel | null;
8
- //# sourceMappingURL=processing.d.ts.map
@@ -1,67 +0,0 @@
1
- import { getAddonFromEngine, resolveCanonicalEngine, } from "../../schemas/engine-addon-map";
2
- import { detectShardedModel } from "./shards.js";
3
- export function toHexString(value) {
4
- if (!value)
5
- return "";
6
- if (Buffer.isBuffer(value))
7
- return value.toString("hex");
8
- if (typeof value === "string")
9
- return value;
10
- if (typeof value === "object" && "data" in value) {
11
- return Buffer.from(value.data).toString("hex");
12
- }
13
- return "";
14
- }
15
- export function extractModelName(registryPath) {
16
- const parts = registryPath.split("/");
17
- if (parts.length >= 2) {
18
- return parts[1] || parts[0] || "";
19
- }
20
- return (registryPath
21
- .split("/")
22
- .pop()
23
- ?.replace(/\.\w+$/, "") || "");
24
- }
25
- export function processRegistryModel(model) {
26
- const engine = resolveCanonicalEngine(model.engine);
27
- if (!engine) {
28
- console.warn(`⚠️ Skipping model with unknown engine "${model.engine}": ${model.path}`);
29
- return null;
30
- }
31
- const filename = model.path.split("/").pop() || model.path;
32
- const blobBinding = model.blobBinding;
33
- const blobCoreKey = toHexString(blobBinding?.coreKey);
34
- const blobBlockOffset = blobBinding?.blockOffset ?? 0;
35
- const blobBlockLength = blobBinding?.blockLength ?? 0;
36
- const blobByteOffset = blobBinding?.byteOffset ?? 0;
37
- const expectedSize = blobBinding?.byteLength ?? 0;
38
- // The sha256 lives on blobBinding at runtime (per the hyperschema),
39
- // even though the TS types define it on QVACModelEntry. Try blobBinding first.
40
- const sha256Checksum = blobBinding?.["sha256"] ||
41
- model.sha256 ||
42
- "";
43
- const addon = getAddonFromEngine(engine);
44
- const result = {
45
- registryPath: model.path,
46
- registrySource: model.source,
47
- blobCoreKey,
48
- blobBlockOffset,
49
- blobBlockLength,
50
- blobByteOffset,
51
- modelId: filename,
52
- addon,
53
- expectedSize,
54
- sha256Checksum,
55
- engine,
56
- modelName: extractModelName(model.path),
57
- quantization: model.quantization || "",
58
- params: model.params || "",
59
- tags: model.tags || [],
60
- };
61
- const shardDetection = detectShardedModel(filename);
62
- if (shardDetection.isSharded) {
63
- result.isShardPart = true;
64
- result.shardInfo = shardDetection;
65
- }
66
- return result;
67
- }
@@ -1,4 +0,0 @@
1
- import type { CollectOptions, ProcessedModel } from "./types";
2
- export { processRegistryModel, extractModelName, toHexString, } from "./processing";
3
- export declare function collectModels(options?: CollectOptions): Promise<ProcessedModel[]>;
4
- //# sourceMappingURL=registry.d.ts.map
@@ -1,67 +0,0 @@
1
- import { QVACRegistryClient } from "@qvac/registry-client";
2
- import { groupShardedModels } from "./shards.js";
3
- import { processRegistryModel } from "./processing.js";
4
- import { DEFAULT_REGISTRY_CORE_KEY } from "../../constants/index.js";
5
- // Re-export for backward compat
6
- export { processRegistryModel, extractModelName, toHexString, } from "./processing.js";
7
- export async function collectModels(options = {}) {
8
- const { showDuplicates = false, noDedup = false } = options;
9
- const models = [];
10
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
11
- const registryCoreKey = process.env["QVAC_REGISTRY_CORE_KEY"] ?? DEFAULT_REGISTRY_CORE_KEY;
12
- const client = new QVACRegistryClient({ registryCoreKey });
13
- try {
14
- await client.ready();
15
- const registryModels = await client.findModels({});
16
- console.log(`📦 Found ${registryModels.length} entries in registry`);
17
- for (const registryModel of registryModels) {
18
- const processed = processRegistryModel(registryModel);
19
- if (processed)
20
- models.push(processed);
21
- }
22
- }
23
- finally {
24
- await client.close();
25
- }
26
- const groupedModels = groupShardedModels(models);
27
- if (noDedup) {
28
- console.log(`\n⏭️ Skipping deduplication (--no-dedup flag set)`);
29
- return groupedModels;
30
- }
31
- return deduplicateModels(groupedModels, showDuplicates);
32
- }
33
- function deduplicateModels(models, showDuplicates) {
34
- const seenChecksums = new Map();
35
- const dedupedModels = [];
36
- const skipped = [];
37
- for (const model of models) {
38
- if (!model.sha256Checksum || model.sha256Checksum === "") {
39
- dedupedModels.push(model);
40
- continue;
41
- }
42
- if (seenChecksums.has(model.sha256Checksum)) {
43
- skipped.push({
44
- name: model.registryPath,
45
- checksum: model.sha256Checksum,
46
- reason: `Duplicate of ${seenChecksums.get(model.sha256Checksum)}`,
47
- });
48
- continue;
49
- }
50
- seenChecksums.set(model.sha256Checksum, model.registryPath);
51
- dedupedModels.push(model);
52
- }
53
- if (skipped.length > 0) {
54
- console.log(`\n🧹 Removed ${skipped.length} duplicate model(s)`);
55
- if (showDuplicates) {
56
- skipped.forEach(({ name, checksum, reason }) => {
57
- console.log(` - ${name}`);
58
- console.log(` Checksum: ${checksum}`);
59
- console.log(` ${reason}`);
60
- });
61
- }
62
- else {
63
- console.log(` Use --show-duplicates to see details`);
64
- }
65
- }
66
- return dedupedModels;
67
- }
@@ -1,4 +0,0 @@
1
- import type { ProcessedModel, ShardDetection } from "./types";
2
- export declare function detectShardedModel(filename: string): ShardDetection;
3
- export declare function groupShardedModels(models: ProcessedModel[]): ProcessedModel[];
4
- //# sourceMappingURL=shards.d.ts.map
@@ -1,57 +0,0 @@
1
- export function detectShardedModel(filename) {
2
- const shardPattern = /^(.+)-(\d{5})-of-(\d{5})(\.\w+)$/;
3
- const match = filename.match(shardPattern);
4
- if (match) {
5
- return {
6
- isSharded: true,
7
- baseFilename: match[1],
8
- currentShard: parseInt(match[2], 10),
9
- totalShards: parseInt(match[3], 10),
10
- extension: match[4],
11
- };
12
- }
13
- return { isSharded: false };
14
- }
15
- export function groupShardedModels(models) {
16
- const shardGroups = new Map();
17
- const nonShardedModels = [];
18
- for (const model of models) {
19
- if (model.isShardPart && model.shardInfo) {
20
- const baseKey = `${model.registrySource}:${model.shardInfo.baseFilename}`;
21
- if (!shardGroups.has(baseKey)) {
22
- shardGroups.set(baseKey, []);
23
- }
24
- shardGroups.get(baseKey).push(model);
25
- }
26
- else {
27
- nonShardedModels.push(model);
28
- }
29
- }
30
- const processedShards = [];
31
- for (const [baseKey, shards] of shardGroups) {
32
- shards.sort((a, b) => (a.shardInfo?.currentShard ?? 0) - (b.shardInfo?.currentShard ?? 0));
33
- const firstShard = shards[0];
34
- const totalExpectedShards = firstShard.shardInfo?.totalShards ?? 0;
35
- if (shards.length !== totalExpectedShards) {
36
- console.warn(`⚠️ Expected ${totalExpectedShards} shards but found ${shards.length} for ${baseKey}`);
37
- }
38
- const totalSize = shards.reduce((sum, s) => sum + s.expectedSize, 0);
39
- const shardMetadata = shards.map((s) => ({
40
- filename: s.modelId,
41
- expectedSize: s.expectedSize,
42
- sha256Checksum: s.sha256Checksum,
43
- blobCoreKey: s.blobCoreKey,
44
- blobBlockOffset: s.blobBlockOffset,
45
- blobBlockLength: s.blobBlockLength,
46
- blobByteOffset: s.blobByteOffset,
47
- }));
48
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
49
- const { isShardPart: _shard, shardInfo: _info, ...rest } = firstShard;
50
- processedShards.push({
51
- ...rest,
52
- expectedSize: totalSize,
53
- shardMetadata,
54
- });
55
- }
56
- return [...nonShardedModels, ...processedShards];
57
- }
@@ -1,60 +0,0 @@
1
- import type { ModelRegistryEntryAddon, ModelRegistryEngine } from "../../schemas/registry";
2
- export interface ShardInfo {
3
- isSharded: true;
4
- baseFilename: string;
5
- currentShard: number;
6
- totalShards: number;
7
- extension: string;
8
- }
9
- export interface NotSharded {
10
- isSharded: false;
11
- }
12
- export type ShardDetection = ShardInfo | NotSharded;
13
- export interface ShardMetadataEntry {
14
- filename: string;
15
- expectedSize: number;
16
- sha256Checksum: string;
17
- blobCoreKey: string;
18
- blobBlockOffset: number;
19
- blobBlockLength: number;
20
- blobByteOffset: number;
21
- }
22
- export interface ProcessedModel {
23
- registryPath: string;
24
- registrySource: string;
25
- blobCoreKey: string;
26
- blobBlockOffset: number;
27
- blobBlockLength: number;
28
- blobByteOffset: number;
29
- modelId: string;
30
- addon: ModelRegistryEntryAddon;
31
- expectedSize: number;
32
- sha256Checksum: string;
33
- engine: ModelRegistryEngine;
34
- modelName: string;
35
- quantization: string;
36
- params: string;
37
- tags: string[];
38
- isShardPart?: boolean;
39
- shardInfo?: ShardInfo;
40
- shardMetadata?: ShardMetadataEntry[];
41
- name?: string;
42
- }
43
- export interface CurrentModel {
44
- name: string;
45
- registryPath: string;
46
- }
47
- export interface CollectOptions {
48
- showDuplicates?: boolean;
49
- noDedup?: boolean;
50
- }
51
- export interface ExportNameInput {
52
- path: string;
53
- engine: ModelRegistryEngine;
54
- name: string;
55
- quantization: string;
56
- params: string;
57
- tags: string[];
58
- usedNames: Set<string>;
59
- }
60
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- export {};
@@ -1,3 +0,0 @@
1
- export declare function formatSize(bytes: number): string;
2
- export declare function getCommitHash(short?: boolean): string;
3
- //# sourceMappingURL=utils.d.ts.map
@@ -1,21 +0,0 @@
1
- import { execSync } from "child_process";
2
- export function formatSize(bytes) {
3
- if (bytes < 1024)
4
- return `${bytes}B`;
5
- if (bytes < 1024 * 1024)
6
- return `${(bytes / 1024).toFixed(1)}KB`;
7
- if (bytes < 1024 * 1024 * 1024)
8
- return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
9
- return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)}GB`;
10
- }
11
- export function getCommitHash(short = false) {
12
- try {
13
- const cmd = short ? "git rev-parse --short HEAD" : "git rev-parse HEAD";
14
- return execSync(cmd, { encoding: "utf-8" }).trim();
15
- }
16
- catch (error) {
17
- throw new Error("Git is required to generate history file", {
18
- cause: error,
19
- });
20
- }
21
- }