agentdb 2.0.0-alpha.2 → 2.0.0-alpha.2.2

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 (317) hide show
  1. package/dist/agentdb.min.js +4 -4
  2. package/dist/simulation/cli.js +0 -0
  3. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  4. package/dist/src/cli/agentdb-cli.js +78 -0
  5. package/dist/src/cli/agentdb-cli.js.map +1 -1
  6. package/dist/src/cli/commands/init.js +3 -3
  7. package/dist/src/cli/commands/init.js.map +1 -1
  8. package/package.json +3 -3
  9. package/src/cli/agentdb-cli.ts +78 -0
  10. package/src/cli/commands/init.ts +3 -3
  11. package/dist/agentdb-advanced.js +0 -2110
  12. package/dist/agentdb-advanced.min.js +0 -1
  13. package/dist/backends/GraphBackend.d.ts +0 -196
  14. package/dist/backends/GraphBackend.d.ts.map +0 -1
  15. package/dist/backends/GraphBackend.js +0 -33
  16. package/dist/backends/GraphBackend.js.map +0 -1
  17. package/dist/backends/LearningBackend.d.ts +0 -148
  18. package/dist/backends/LearningBackend.d.ts.map +0 -1
  19. package/dist/backends/LearningBackend.js +0 -27
  20. package/dist/backends/LearningBackend.js.map +0 -1
  21. package/dist/backends/VectorBackend.d.ts +0 -119
  22. package/dist/backends/VectorBackend.d.ts.map +0 -1
  23. package/dist/backends/VectorBackend.js +0 -14
  24. package/dist/backends/VectorBackend.js.map +0 -1
  25. package/dist/backends/detector.d.ts +0 -81
  26. package/dist/backends/detector.d.ts.map +0 -1
  27. package/dist/backends/detector.js +0 -192
  28. package/dist/backends/detector.js.map +0 -1
  29. package/dist/backends/factory.d.ts +0 -50
  30. package/dist/backends/factory.d.ts.map +0 -1
  31. package/dist/backends/factory.js +0 -161
  32. package/dist/backends/factory.js.map +0 -1
  33. package/dist/backends/graph/GraphDatabaseAdapter.d.ts +0 -139
  34. package/dist/backends/graph/GraphDatabaseAdapter.d.ts.map +0 -1
  35. package/dist/backends/graph/GraphDatabaseAdapter.js +0 -194
  36. package/dist/backends/graph/GraphDatabaseAdapter.js.map +0 -1
  37. package/dist/backends/hnswlib/HNSWLibBackend.d.ts +0 -92
  38. package/dist/backends/hnswlib/HNSWLibBackend.d.ts.map +0 -1
  39. package/dist/backends/hnswlib/HNSWLibBackend.js +0 -316
  40. package/dist/backends/hnswlib/HNSWLibBackend.js.map +0 -1
  41. package/dist/backends/hnswlib/index.d.ts +0 -7
  42. package/dist/backends/hnswlib/index.d.ts.map +0 -1
  43. package/dist/backends/hnswlib/index.js +0 -7
  44. package/dist/backends/hnswlib/index.js.map +0 -1
  45. package/dist/backends/index.d.ts +0 -14
  46. package/dist/backends/index.d.ts.map +0 -1
  47. package/dist/backends/index.js +0 -13
  48. package/dist/backends/index.js.map +0 -1
  49. package/dist/backends/ruvector/RuVectorBackend.d.ts +0 -75
  50. package/dist/backends/ruvector/RuVectorBackend.d.ts.map +0 -1
  51. package/dist/backends/ruvector/RuVectorBackend.js +0 -198
  52. package/dist/backends/ruvector/RuVectorBackend.js.map +0 -1
  53. package/dist/backends/ruvector/RuVectorLearning.d.ts +0 -104
  54. package/dist/backends/ruvector/RuVectorLearning.d.ts.map +0 -1
  55. package/dist/backends/ruvector/RuVectorLearning.js +0 -177
  56. package/dist/backends/ruvector/RuVectorLearning.js.map +0 -1
  57. package/dist/backends/ruvector/index.d.ts +0 -9
  58. package/dist/backends/ruvector/index.d.ts.map +0 -1
  59. package/dist/backends/ruvector/index.js +0 -8
  60. package/dist/backends/ruvector/index.js.map +0 -1
  61. package/dist/benchmarks/wasm-vector-benchmark.d.ts +0 -10
  62. package/dist/benchmarks/wasm-vector-benchmark.d.ts.map +0 -1
  63. package/dist/benchmarks/wasm-vector-benchmark.js +0 -196
  64. package/dist/benchmarks/wasm-vector-benchmark.js.map +0 -1
  65. package/dist/browser/AdvancedFeatures.d.ts +0 -144
  66. package/dist/browser/AdvancedFeatures.d.ts.map +0 -1
  67. package/dist/browser/AdvancedFeatures.js +0 -430
  68. package/dist/browser/AdvancedFeatures.js.map +0 -1
  69. package/dist/browser/HNSWIndex.d.ts +0 -117
  70. package/dist/browser/HNSWIndex.d.ts.map +0 -1
  71. package/dist/browser/HNSWIndex.js +0 -402
  72. package/dist/browser/HNSWIndex.js.map +0 -1
  73. package/dist/browser/ProductQuantization.d.ts +0 -107
  74. package/dist/browser/ProductQuantization.d.ts.map +0 -1
  75. package/dist/browser/ProductQuantization.js +0 -337
  76. package/dist/browser/ProductQuantization.js.map +0 -1
  77. package/dist/browser/browser/AdvancedFeatures.d.ts +0 -144
  78. package/dist/browser/browser/AdvancedFeatures.d.ts.map +0 -1
  79. package/dist/browser/browser/AdvancedFeatures.js +0 -427
  80. package/dist/browser/browser/HNSWIndex.d.ts +0 -117
  81. package/dist/browser/browser/HNSWIndex.d.ts.map +0 -1
  82. package/dist/browser/browser/HNSWIndex.js +0 -402
  83. package/dist/browser/browser/ProductQuantization.d.ts +0 -107
  84. package/dist/browser/browser/ProductQuantization.d.ts.map +0 -1
  85. package/dist/browser/browser/ProductQuantization.js +0 -348
  86. package/dist/browser/browser/index.d.ts +0 -223
  87. package/dist/browser/browser/index.d.ts.map +0 -1
  88. package/dist/browser/browser/index.js +0 -233
  89. package/dist/browser/index.d.ts +0 -223
  90. package/dist/browser/index.d.ts.map +0 -1
  91. package/dist/browser/index.js +0 -225
  92. package/dist/browser/index.js.map +0 -1
  93. package/dist/cli/agentdb-cli.d.ts +0 -154
  94. package/dist/cli/agentdb-cli.d.ts.map +0 -1
  95. package/dist/cli/agentdb-cli.js +0 -2273
  96. package/dist/cli/agentdb-cli.js.map +0 -1
  97. package/dist/cli/agentdb.db +0 -0
  98. package/dist/cli/commands/init.d.ts +0 -12
  99. package/dist/cli/commands/init.d.ts.map +0 -1
  100. package/dist/cli/commands/init.js +0 -115
  101. package/dist/cli/commands/init.js.map +0 -1
  102. package/dist/cli/commands/install-embeddings.d.ts +0 -10
  103. package/dist/cli/commands/install-embeddings.d.ts.map +0 -1
  104. package/dist/cli/commands/install-embeddings.js +0 -68
  105. package/dist/cli/commands/install-embeddings.js.map +0 -1
  106. package/dist/cli/commands/migrate.d.ts +0 -15
  107. package/dist/cli/commands/migrate.d.ts.map +0 -1
  108. package/dist/cli/commands/migrate.js +0 -425
  109. package/dist/cli/commands/migrate.js.map +0 -1
  110. package/dist/cli/commands/status.d.ts +0 -10
  111. package/dist/cli/commands/status.d.ts.map +0 -1
  112. package/dist/cli/commands/status.js +0 -129
  113. package/dist/cli/commands/status.js.map +0 -1
  114. package/dist/controllers/CausalMemoryGraph.d.ts +0 -126
  115. package/dist/controllers/CausalMemoryGraph.d.ts.map +0 -1
  116. package/dist/controllers/CausalMemoryGraph.js +0 -323
  117. package/dist/controllers/CausalMemoryGraph.js.map +0 -1
  118. package/dist/controllers/CausalRecall.d.ts +0 -139
  119. package/dist/controllers/CausalRecall.d.ts.map +0 -1
  120. package/dist/controllers/CausalRecall.js +0 -356
  121. package/dist/controllers/CausalRecall.js.map +0 -1
  122. package/dist/controllers/ContextSynthesizer.d.ts +0 -65
  123. package/dist/controllers/ContextSynthesizer.d.ts.map +0 -1
  124. package/dist/controllers/ContextSynthesizer.js +0 -208
  125. package/dist/controllers/ContextSynthesizer.js.map +0 -1
  126. package/dist/controllers/EmbeddingService.d.ts +0 -37
  127. package/dist/controllers/EmbeddingService.d.ts.map +0 -1
  128. package/dist/controllers/EmbeddingService.js +0 -136
  129. package/dist/controllers/EmbeddingService.js.map +0 -1
  130. package/dist/controllers/EnhancedEmbeddingService.d.ts +0 -50
  131. package/dist/controllers/EnhancedEmbeddingService.d.ts.map +0 -1
  132. package/dist/controllers/EnhancedEmbeddingService.js +0 -119
  133. package/dist/controllers/EnhancedEmbeddingService.js.map +0 -1
  134. package/dist/controllers/ExplainableRecall.d.ts +0 -163
  135. package/dist/controllers/ExplainableRecall.d.ts.map +0 -1
  136. package/dist/controllers/ExplainableRecall.js +0 -485
  137. package/dist/controllers/ExplainableRecall.js.map +0 -1
  138. package/dist/controllers/HNSWIndex.d.ts +0 -128
  139. package/dist/controllers/HNSWIndex.d.ts.map +0 -1
  140. package/dist/controllers/HNSWIndex.js +0 -361
  141. package/dist/controllers/HNSWIndex.js.map +0 -1
  142. package/dist/controllers/LearningSystem.d.ts +0 -195
  143. package/dist/controllers/LearningSystem.d.ts.map +0 -1
  144. package/dist/controllers/LearningSystem.js +0 -929
  145. package/dist/controllers/LearningSystem.js.map +0 -1
  146. package/dist/controllers/MMRDiversityRanker.d.ts +0 -50
  147. package/dist/controllers/MMRDiversityRanker.d.ts.map +0 -1
  148. package/dist/controllers/MMRDiversityRanker.js +0 -130
  149. package/dist/controllers/MMRDiversityRanker.js.map +0 -1
  150. package/dist/controllers/MetadataFilter.d.ts +0 -70
  151. package/dist/controllers/MetadataFilter.d.ts.map +0 -1
  152. package/dist/controllers/MetadataFilter.js +0 -243
  153. package/dist/controllers/MetadataFilter.js.map +0 -1
  154. package/dist/controllers/NightlyLearner.d.ts +0 -114
  155. package/dist/controllers/NightlyLearner.d.ts.map +0 -1
  156. package/dist/controllers/NightlyLearner.js +0 -394
  157. package/dist/controllers/NightlyLearner.js.map +0 -1
  158. package/dist/controllers/QUICClient.d.ts +0 -109
  159. package/dist/controllers/QUICClient.d.ts.map +0 -1
  160. package/dist/controllers/QUICClient.js +0 -299
  161. package/dist/controllers/QUICClient.js.map +0 -1
  162. package/dist/controllers/QUICServer.d.ts +0 -121
  163. package/dist/controllers/QUICServer.d.ts.map +0 -1
  164. package/dist/controllers/QUICServer.js +0 -383
  165. package/dist/controllers/QUICServer.js.map +0 -1
  166. package/dist/controllers/ReasoningBank.d.ts +0 -196
  167. package/dist/controllers/ReasoningBank.d.ts.map +0 -1
  168. package/dist/controllers/ReasoningBank.js +0 -494
  169. package/dist/controllers/ReasoningBank.js.map +0 -1
  170. package/dist/controllers/ReflexionMemory.d.ts +0 -125
  171. package/dist/controllers/ReflexionMemory.d.ts.map +0 -1
  172. package/dist/controllers/ReflexionMemory.js +0 -521
  173. package/dist/controllers/ReflexionMemory.js.map +0 -1
  174. package/dist/controllers/SkillLibrary.d.ts +0 -149
  175. package/dist/controllers/SkillLibrary.d.ts.map +0 -1
  176. package/dist/controllers/SkillLibrary.js +0 -547
  177. package/dist/controllers/SkillLibrary.js.map +0 -1
  178. package/dist/controllers/SyncCoordinator.d.ts +0 -120
  179. package/dist/controllers/SyncCoordinator.d.ts.map +0 -1
  180. package/dist/controllers/SyncCoordinator.js +0 -441
  181. package/dist/controllers/SyncCoordinator.js.map +0 -1
  182. package/dist/controllers/WASMVectorSearch.d.ts +0 -89
  183. package/dist/controllers/WASMVectorSearch.d.ts.map +0 -1
  184. package/dist/controllers/WASMVectorSearch.js +0 -234
  185. package/dist/controllers/WASMVectorSearch.js.map +0 -1
  186. package/dist/controllers/frontier-index.d.ts +0 -14
  187. package/dist/controllers/frontier-index.d.ts.map +0 -1
  188. package/dist/controllers/frontier-index.js +0 -10
  189. package/dist/controllers/frontier-index.js.map +0 -1
  190. package/dist/controllers/index.d.ts +0 -30
  191. package/dist/controllers/index.d.ts.map +0 -1
  192. package/dist/controllers/index.js +0 -18
  193. package/dist/controllers/index.js.map +0 -1
  194. package/dist/db-fallback.d.ts +0 -26
  195. package/dist/db-fallback.d.ts.map +0 -1
  196. package/dist/db-fallback.js +0 -264
  197. package/dist/db-fallback.js.map +0 -1
  198. package/dist/db-test.d.ts +0 -13
  199. package/dist/db-test.d.ts.map +0 -1
  200. package/dist/db-test.js +0 -55
  201. package/dist/db-test.js.map +0 -1
  202. package/dist/db-unified.d.ts +0 -76
  203. package/dist/db-unified.d.ts.map +0 -1
  204. package/dist/db-unified.js +0 -278
  205. package/dist/db-unified.js.map +0 -1
  206. package/dist/examples/quic-sync-example.d.ts +0 -9
  207. package/dist/examples/quic-sync-example.d.ts.map +0 -1
  208. package/dist/examples/quic-sync-example.js +0 -169
  209. package/dist/examples/quic-sync-example.js.map +0 -1
  210. package/dist/examples/wasm-vector-usage.d.ts +0 -12
  211. package/dist/examples/wasm-vector-usage.d.ts.map +0 -1
  212. package/dist/examples/wasm-vector-usage.js +0 -190
  213. package/dist/examples/wasm-vector-usage.js.map +0 -1
  214. package/dist/index.d.ts +0 -28
  215. package/dist/index.d.ts.map +0 -1
  216. package/dist/index.js +0 -35
  217. package/dist/index.js.map +0 -1
  218. package/dist/malp/core/ccc.d.ts +0 -99
  219. package/dist/malp/core/ccc.d.ts.map +0 -1
  220. package/dist/malp/core/ccc.js +0 -181
  221. package/dist/malp/core/ccc.js.map +0 -1
  222. package/dist/malp/core/index.d.ts +0 -9
  223. package/dist/malp/core/index.d.ts.map +0 -1
  224. package/dist/malp/core/index.js +0 -9
  225. package/dist/malp/core/index.js.map +0 -1
  226. package/dist/malp/core/linalg.d.ts +0 -101
  227. package/dist/malp/core/linalg.d.ts.map +0 -1
  228. package/dist/malp/core/linalg.js +0 -278
  229. package/dist/malp/core/linalg.js.map +0 -1
  230. package/dist/malp/core/optimizer.d.ts +0 -68
  231. package/dist/malp/core/optimizer.d.ts.map +0 -1
  232. package/dist/malp/core/optimizer.js +0 -160
  233. package/dist/malp/core/optimizer.js.map +0 -1
  234. package/dist/malp/index.d.ts +0 -33
  235. package/dist/malp/index.d.ts.map +0 -1
  236. package/dist/malp/index.js +0 -37
  237. package/dist/malp/index.js.map +0 -1
  238. package/dist/malp/metrics/agreement.d.ts +0 -106
  239. package/dist/malp/metrics/agreement.d.ts.map +0 -1
  240. package/dist/malp/metrics/agreement.js +0 -199
  241. package/dist/malp/metrics/agreement.js.map +0 -1
  242. package/dist/malp/metrics/comparison.d.ts +0 -93
  243. package/dist/malp/metrics/comparison.d.ts.map +0 -1
  244. package/dist/malp/metrics/comparison.js +0 -256
  245. package/dist/malp/metrics/comparison.js.map +0 -1
  246. package/dist/malp/metrics/index.d.ts +0 -8
  247. package/dist/malp/metrics/index.d.ts.map +0 -1
  248. package/dist/malp/metrics/index.js +0 -8
  249. package/dist/malp/metrics/index.js.map +0 -1
  250. package/dist/malp/metrics/performance.d.ts +0 -61
  251. package/dist/malp/metrics/performance.d.ts.map +0 -1
  252. package/dist/malp/metrics/performance.js +0 -190
  253. package/dist/malp/metrics/performance.js.map +0 -1
  254. package/dist/malp/models/index.d.ts +0 -7
  255. package/dist/malp/models/index.d.ts.map +0 -1
  256. package/dist/malp/models/index.js +0 -7
  257. package/dist/malp/models/index.js.map +0 -1
  258. package/dist/malp/models/malp.d.ts +0 -116
  259. package/dist/malp/models/malp.d.ts.map +0 -1
  260. package/dist/malp/models/malp.js +0 -206
  261. package/dist/malp/models/malp.js.map +0 -1
  262. package/dist/malp/models/regressor.d.ts +0 -80
  263. package/dist/malp/models/regressor.d.ts.map +0 -1
  264. package/dist/malp/models/regressor.js +0 -229
  265. package/dist/malp/models/regressor.js.map +0 -1
  266. package/dist/malp/reasoningbank_validator.d.ts +0 -187
  267. package/dist/malp/reasoningbank_validator.d.ts.map +0 -1
  268. package/dist/malp/reasoningbank_validator.js +0 -246
  269. package/dist/malp/reasoningbank_validator.js.map +0 -1
  270. package/dist/malp/wasm_bindings.d.ts +0 -344
  271. package/dist/malp/wasm_bindings.d.ts.map +0 -1
  272. package/dist/malp/wasm_bindings.js +0 -9
  273. package/dist/malp/wasm_bindings.js.map +0 -1
  274. package/dist/mcp/agentdb-mcp-server.d.ts +0 -8
  275. package/dist/mcp/agentdb-mcp-server.d.ts.map +0 -1
  276. package/dist/mcp/agentdb-mcp-server.js +0 -2116
  277. package/dist/mcp/agentdb-mcp-server.js.map +0 -1
  278. package/dist/mcp/learning-tools-handlers.d.ts +0 -16
  279. package/dist/mcp/learning-tools-handlers.d.ts.map +0 -1
  280. package/dist/mcp/learning-tools-handlers.js +0 -105
  281. package/dist/mcp/learning-tools-handlers.js.map +0 -1
  282. package/dist/optimizations/BatchOperations.d.ts +0 -109
  283. package/dist/optimizations/BatchOperations.d.ts.map +0 -1
  284. package/dist/optimizations/BatchOperations.js +0 -407
  285. package/dist/optimizations/BatchOperations.js.map +0 -1
  286. package/dist/optimizations/QueryOptimizer.d.ts +0 -83
  287. package/dist/optimizations/QueryOptimizer.d.ts.map +0 -1
  288. package/dist/optimizations/QueryOptimizer.js +0 -228
  289. package/dist/optimizations/QueryOptimizer.js.map +0 -1
  290. package/dist/optimizations/ToolCache.d.ts +0 -137
  291. package/dist/optimizations/ToolCache.d.ts.map +0 -1
  292. package/dist/optimizations/ToolCache.js +0 -281
  293. package/dist/optimizations/ToolCache.js.map +0 -1
  294. package/dist/optimizations/index.d.ts +0 -10
  295. package/dist/optimizations/index.d.ts.map +0 -1
  296. package/dist/optimizations/index.js +0 -8
  297. package/dist/optimizations/index.js.map +0 -1
  298. package/dist/security/input-validation.d.ts +0 -109
  299. package/dist/security/input-validation.d.ts.map +0 -1
  300. package/dist/security/input-validation.js +0 -398
  301. package/dist/security/input-validation.js.map +0 -1
  302. package/dist/security/limits.d.ts +0 -150
  303. package/dist/security/limits.d.ts.map +0 -1
  304. package/dist/security/limits.js +0 -288
  305. package/dist/security/limits.js.map +0 -1
  306. package/dist/security/path-security.d.ts +0 -100
  307. package/dist/security/path-security.d.ts.map +0 -1
  308. package/dist/security/path-security.js +0 -337
  309. package/dist/security/path-security.js.map +0 -1
  310. package/dist/security/validation.d.ts +0 -95
  311. package/dist/security/validation.d.ts.map +0 -1
  312. package/dist/security/validation.js +0 -315
  313. package/dist/security/validation.js.map +0 -1
  314. package/dist/types/quic.d.ts +0 -518
  315. package/dist/types/quic.d.ts.map +0 -1
  316. package/dist/types/quic.js +0 -272
  317. package/dist/types/quic.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"RuVectorBackend.js","sourceRoot":"","sources":["../../../src/backends/ruvector/RuVectorBackend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,MAAM,OAAO,eAAe;IACjB,IAAI,GAAG,UAAmB,CAAC;IAC5B,EAAE,CAAM,CAAC,+BAA+B;IACxC,MAAM,CAAe;IACrB,QAAQ,GAAqC,IAAI,GAAG,EAAE,CAAC;IACvD,WAAW,GAAG,KAAK,CAAC;IAE5B,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAE7B,IAAI,CAAC;YACH,8DAA8D;YAC9D,IAAI,QAAQ,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC1C,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,wDAAwD;gBACxD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBAC5C,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBAC5C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC1B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM;gBAC9C,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,GAAG;gBACjD,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;aACvB,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,wEAAwE;gBACxE,kDAAkD;gBAClD,UAAW,KAAe,CAAC,OAAO,EAAE,CACrC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,EAAU,EAAE,SAAuB,EAAE,QAA8B;QACxE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,kCAAkC;QAClC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAE1C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAqF;QAC/F,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAmB,EAAE,CAAS,EAAE,OAAuB;QAC5D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,uCAAuC;QACvC,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAErD,sCAAsC;QACtC,OAAO,OAAO;aACX,GAAG,CAAC,CAAC,CAAmC,EAAE,EAAE,CAAC,CAAC;YAC7C,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,UAAU,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;SAClC,CAAC,CAAC;aACF,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE;YAC1B,6BAA6B;YAC7B,IAAI,OAAO,EAAE,SAAS,IAAI,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC3D,OAAO,KAAK,CAAC;YACf,CAAC;YAED,yBAAyB;YACzB,IAAI,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAClC,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CACzC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAC7C,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEzB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;YACtB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAChC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC;SAC1C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,oBAAoB;QACpB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnB,mCAAmC;QACnC,MAAM,YAAY,GAAG,IAAI,GAAG,YAAY,CAAC;QACzC,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACvC,MAAM,EAAE,CAAC,SAAS,CAChB,YAAY,EACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAC3D,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,IAAY;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,oBAAoB;QACpB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnB,gBAAgB;QAChB,MAAM,YAAY,GAAG,IAAI,GAAG,YAAY,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;YAC7D,OAAO,CAAC,KAAK,CAAC,+CAA+C,YAAY,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,6BAA6B;QAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACK,oBAAoB,CAAC,QAAgB;QAC3C,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3B,KAAK,QAAQ;gBACX,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,oCAAoC;YAC3D,KAAK,IAAI;gBACP,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;YAClD,KAAK,IAAI;gBACP,OAAO,CAAC,QAAQ,CAAC,CAAC,kCAAkC;YACtD;gBACE,OAAO,CAAC,GAAG,QAAQ,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;CACF"}
@@ -1,104 +0,0 @@
1
- /**
2
- * RuVectorLearning - GNN-Enhanced Vector Search
3
- *
4
- * Integrates Graph Neural Networks for query enhancement using @ruvector/gnn.
5
- * Requires optional @ruvector/gnn package.
6
- *
7
- * Features:
8
- * - Query enhancement using neighbor context with multi-head attention
9
- * - Differentiable search with soft weights
10
- * - Hierarchical forward pass through GNN layers
11
- * - Graceful degradation when GNN not available
12
- *
13
- * Note: @ruvector/gnn provides stateless GNN layers (inference only).
14
- * Training is handled separately by the consuming application.
15
- */
16
- export interface LearningConfig {
17
- inputDim: number;
18
- hiddenDim: number;
19
- heads: number;
20
- dropout?: number;
21
- }
22
- export interface EnhancementOptions {
23
- temperature?: number;
24
- k?: number;
25
- }
26
- export declare class RuVectorLearning {
27
- private gnnLayer;
28
- private config;
29
- private initialized;
30
- private differentiableSearch;
31
- private hierarchicalForward;
32
- constructor(config: LearningConfig);
33
- /**
34
- * Initialize GNN layer with optional dependency handling
35
- */
36
- initialize(): Promise<void>;
37
- /**
38
- * Enhance query embedding using neighbor context
39
- *
40
- * Uses Graph Attention Network to aggregate information from
41
- * nearest neighbors, weighted by their relevance scores.
42
- *
43
- * @param query - Query embedding to enhance
44
- * @param neighbors - Neighbor embeddings
45
- * @param weights - Edge weights (relevance scores)
46
- * @returns Enhanced query embedding
47
- */
48
- enhance(query: Float32Array, neighbors: Float32Array[], weights: number[]): Float32Array;
49
- /**
50
- * Differentiable search with soft attention
51
- *
52
- * Uses soft attention mechanism instead of hard top-k selection.
53
- * Returns indices and weights that can be used for gradient-based optimization.
54
- *
55
- * @param query - Query embedding
56
- * @param candidates - Candidate embeddings
57
- * @param options - Search options
58
- * @returns Search result with indices and soft weights
59
- */
60
- search(query: Float32Array, candidates: Float32Array[], options?: EnhancementOptions): {
61
- indices: number[];
62
- weights: number[];
63
- };
64
- /**
65
- * Hierarchical forward pass through multiple GNN layers
66
- *
67
- * Used for HNSW-style hierarchical search where embeddings
68
- * are organized by graph layers.
69
- *
70
- * @param query - Query embedding
71
- * @param layerEmbeddings - Embeddings organized by layer
72
- * @returns Final enhanced embedding
73
- */
74
- enhanceHierarchical(query: Float32Array, layerEmbeddings: Float32Array[][]): Float32Array;
75
- /**
76
- * Serialize GNN layer to JSON
77
- *
78
- * Allows saving/loading the GNN layer configuration.
79
- *
80
- * @returns JSON string representation
81
- */
82
- toJson(): string;
83
- /**
84
- * Create GNN layer from JSON
85
- *
86
- * @param json - JSON string from toJson()
87
- * @returns New RuVectorLearning instance
88
- */
89
- static fromJson(json: string, config: LearningConfig): Promise<RuVectorLearning>;
90
- /**
91
- * Get current state
92
- */
93
- getState(): {
94
- initialized: boolean;
95
- config: LearningConfig;
96
- hiddenDim: number;
97
- heads: number;
98
- };
99
- /**
100
- * Ensure GNN is initialized before operations
101
- */
102
- private ensureInitialized;
103
- }
104
- //# sourceMappingURL=RuVectorLearning.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RuVectorLearning.d.ts","sourceRoot":"","sources":["../../../src/backends/ruvector/RuVectorLearning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAM;IACtB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,oBAAoB,CAAM;IAClC,OAAO,CAAC,mBAAmB,CAAM;gBAErB,MAAM,EAAE,cAAc;IAOlC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BjC;;;;;;;;;;OAUG;IACH,OAAO,CACL,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GAChB,YAAY;IAsBf;;;;;;;;;;OAUG;IACH,MAAM,CACJ,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,YAAY,EAAE,EAC1B,OAAO,GAAE,kBAAuB,GAC/B;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAyB3C;;;;;;;;;OASG;IACH,mBAAmB,CACjB,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,YAAY,EAAE,EAAE,GAChC,YAAY;IAwBf;;;;;;OAMG;IACH,MAAM,IAAI,MAAM;IAKhB;;;;;OAKG;WACU,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAatF;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,OAAO,CAAC;QACrB,MAAM,EAAE,cAAc,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACf;IASD;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -1,177 +0,0 @@
1
- /**
2
- * RuVectorLearning - GNN-Enhanced Vector Search
3
- *
4
- * Integrates Graph Neural Networks for query enhancement using @ruvector/gnn.
5
- * Requires optional @ruvector/gnn package.
6
- *
7
- * Features:
8
- * - Query enhancement using neighbor context with multi-head attention
9
- * - Differentiable search with soft weights
10
- * - Hierarchical forward pass through GNN layers
11
- * - Graceful degradation when GNN not available
12
- *
13
- * Note: @ruvector/gnn provides stateless GNN layers (inference only).
14
- * Training is handled separately by the consuming application.
15
- */
16
- export class RuVectorLearning {
17
- gnnLayer; // RuvectorLayer from @ruvector/gnn
18
- config;
19
- initialized = false;
20
- differentiableSearch;
21
- hierarchicalForward;
22
- constructor(config) {
23
- this.config = {
24
- ...config,
25
- dropout: config.dropout ?? 0.1,
26
- };
27
- }
28
- /**
29
- * Initialize GNN layer with optional dependency handling
30
- */
31
- async initialize() {
32
- if (this.initialized)
33
- return;
34
- try {
35
- // Dynamic import with runtime property access
36
- const gnnModule = await import('@ruvector/gnn');
37
- this.gnnLayer = new gnnModule.RuvectorLayer(this.config.inputDim, this.config.hiddenDim, this.config.heads, this.config.dropout);
38
- this.differentiableSearch = gnnModule.differentiableSearch;
39
- this.hierarchicalForward = gnnModule.hierarchicalForward;
40
- this.initialized = true;
41
- }
42
- catch (error) {
43
- throw new Error(`GNN initialization failed. Please install: npm install @ruvector/gnn\n` +
44
- `Error: ${error.message}`);
45
- }
46
- }
47
- /**
48
- * Enhance query embedding using neighbor context
49
- *
50
- * Uses Graph Attention Network to aggregate information from
51
- * nearest neighbors, weighted by their relevance scores.
52
- *
53
- * @param query - Query embedding to enhance
54
- * @param neighbors - Neighbor embeddings
55
- * @param weights - Edge weights (relevance scores)
56
- * @returns Enhanced query embedding
57
- */
58
- enhance(query, neighbors, weights) {
59
- this.ensureInitialized();
60
- if (neighbors.length === 0) {
61
- return query;
62
- }
63
- try {
64
- // Forward pass through GNN layer
65
- const result = this.gnnLayer.forward(Array.from(query), neighbors.map(n => Array.from(n)), weights);
66
- return new Float32Array(result);
67
- }
68
- catch (error) {
69
- console.warn(`[RuVectorLearning] Enhancement failed: ${error.message}`);
70
- return query;
71
- }
72
- }
73
- /**
74
- * Differentiable search with soft attention
75
- *
76
- * Uses soft attention mechanism instead of hard top-k selection.
77
- * Returns indices and weights that can be used for gradient-based optimization.
78
- *
79
- * @param query - Query embedding
80
- * @param candidates - Candidate embeddings
81
- * @param options - Search options
82
- * @returns Search result with indices and soft weights
83
- */
84
- search(query, candidates, options = {}) {
85
- this.ensureInitialized();
86
- const k = options.k ?? Math.min(5, candidates.length);
87
- const temperature = options.temperature ?? 1.0;
88
- try {
89
- const result = this.differentiableSearch(Array.from(query), candidates.map(c => Array.from(c)), k, temperature);
90
- return result;
91
- }
92
- catch (error) {
93
- console.warn(`[RuVectorLearning] Differentiable search failed: ${error.message}`);
94
- // Fallback: return top-k indices with uniform weights
95
- return {
96
- indices: Array.from({ length: k }, (_, i) => i),
97
- weights: Array.from({ length: k }, () => 1.0 / k)
98
- };
99
- }
100
- }
101
- /**
102
- * Hierarchical forward pass through multiple GNN layers
103
- *
104
- * Used for HNSW-style hierarchical search where embeddings
105
- * are organized by graph layers.
106
- *
107
- * @param query - Query embedding
108
- * @param layerEmbeddings - Embeddings organized by layer
109
- * @returns Final enhanced embedding
110
- */
111
- enhanceHierarchical(query, layerEmbeddings) {
112
- this.ensureInitialized();
113
- if (layerEmbeddings.length === 0) {
114
- return query;
115
- }
116
- try {
117
- // Serialize GNN layer for hierarchical processing
118
- const layerJson = this.gnnLayer.toJson();
119
- const result = this.hierarchicalForward(Array.from(query), layerEmbeddings.map(layer => layer.map(e => Array.from(e))), [layerJson] // Single layer for now
120
- );
121
- return new Float32Array(result);
122
- }
123
- catch (error) {
124
- console.warn(`[RuVectorLearning] Hierarchical enhancement failed: ${error.message}`);
125
- return query;
126
- }
127
- }
128
- /**
129
- * Serialize GNN layer to JSON
130
- *
131
- * Allows saving/loading the GNN layer configuration.
132
- *
133
- * @returns JSON string representation
134
- */
135
- toJson() {
136
- this.ensureInitialized();
137
- return this.gnnLayer.toJson();
138
- }
139
- /**
140
- * Create GNN layer from JSON
141
- *
142
- * @param json - JSON string from toJson()
143
- * @returns New RuVectorLearning instance
144
- */
145
- static async fromJson(json, config) {
146
- const learning = new RuVectorLearning(config);
147
- await learning.initialize();
148
- try {
149
- const gnnModule = await import('@ruvector/gnn');
150
- learning.gnnLayer = gnnModule.RuvectorLayer.fromJson(json);
151
- return learning;
152
- }
153
- catch (error) {
154
- throw new Error(`Failed to load GNN from JSON: ${error.message}`);
155
- }
156
- }
157
- /**
158
- * Get current state
159
- */
160
- getState() {
161
- return {
162
- initialized: this.initialized,
163
- config: this.config,
164
- hiddenDim: this.config.hiddenDim,
165
- heads: this.config.heads,
166
- };
167
- }
168
- /**
169
- * Ensure GNN is initialized before operations
170
- */
171
- ensureInitialized() {
172
- if (!this.initialized) {
173
- throw new Error('RuVectorLearning not initialized. Call initialize() first.');
174
- }
175
- }
176
- }
177
- //# sourceMappingURL=RuVectorLearning.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RuVectorLearning.js","sourceRoot":"","sources":["../../../src/backends/ruvector/RuVectorLearning.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- /**
2
- * RuVector Backend - Exports
3
- *
4
- * High-performance vector storage with optional GNN learning.
5
- */
6
- export { RuVectorBackend } from './RuVectorBackend.js';
7
- export { RuVectorLearning } from './RuVectorLearning.js';
8
- export type { LearningConfig, EnhancementOptions } from './RuVectorLearning.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backends/ruvector/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * RuVector Backend - Exports
3
- *
4
- * High-performance vector storage with optional GNN learning.
5
- */
6
- export { RuVectorBackend } from './RuVectorBackend.js';
7
- export { RuVectorLearning } from './RuVectorLearning.js';
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/backends/ruvector/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * WASM Vector Operations Benchmark
3
- *
4
- * Measures actual performance improvements of WASM-accelerated vector operations
5
- * compared to pure JavaScript implementations.
6
- *
7
- * Run with: npx tsx src/benchmarks/wasm-vector-benchmark.ts
8
- */
9
- export {};
10
- //# sourceMappingURL=wasm-vector-benchmark.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wasm-vector-benchmark.d.ts","sourceRoot":"","sources":["../../src/benchmarks/wasm-vector-benchmark.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -1,196 +0,0 @@
1
- /**
2
- * WASM Vector Operations Benchmark
3
- *
4
- * Measures actual performance improvements of WASM-accelerated vector operations
5
- * compared to pure JavaScript implementations.
6
- *
7
- * Run with: npx tsx src/benchmarks/wasm-vector-benchmark.ts
8
- */
9
- import { WASMVectorSearch } from '../controllers/WASMVectorSearch.js';
10
- class VectorBenchmark {
11
- dimensions;
12
- vectorCount;
13
- constructor(dimensions = 384, vectorCount = 1000) {
14
- this.dimensions = dimensions;
15
- this.vectorCount = vectorCount;
16
- }
17
- /**
18
- * Generate random normalized vector
19
- */
20
- generateRandomVector() {
21
- const vector = new Float32Array(this.dimensions);
22
- let norm = 0;
23
- for (let i = 0; i < this.dimensions; i++) {
24
- vector[i] = Math.random() * 2 - 1;
25
- norm += vector[i] * vector[i];
26
- }
27
- norm = Math.sqrt(norm);
28
- for (let i = 0; i < this.dimensions; i++) {
29
- vector[i] /= norm;
30
- }
31
- return vector;
32
- }
33
- /**
34
- * Pure JavaScript cosine similarity (baseline)
35
- */
36
- cosineSimilarityJS(a, b) {
37
- let dotProduct = 0;
38
- let normA = 0;
39
- let normB = 0;
40
- for (let i = 0; i < a.length; i++) {
41
- dotProduct += a[i] * b[i];
42
- normA += a[i] * a[i];
43
- normB += b[i] * b[i];
44
- }
45
- const denom = Math.sqrt(normA) * Math.sqrt(normB);
46
- return denom === 0 ? 0 : dotProduct / denom;
47
- }
48
- /**
49
- * Benchmark cosine similarity (pure JS)
50
- */
51
- async benchmarkJSSimilarity(iterations = 10000) {
52
- const vectorA = this.generateRandomVector();
53
- const vectorB = this.generateRandomVector();
54
- const start = performance.now();
55
- for (let i = 0; i < iterations; i++) {
56
- this.cosineSimilarityJS(vectorA, vectorB);
57
- }
58
- const duration = performance.now() - start;
59
- return {
60
- name: 'Cosine Similarity (Pure JS)',
61
- operations: iterations,
62
- duration,
63
- opsPerSecond: (iterations / duration) * 1000,
64
- avgLatency: duration / iterations,
65
- };
66
- }
67
- /**
68
- * Benchmark cosine similarity (WASM-accelerated)
69
- */
70
- async benchmarkWASMSimilarity(iterations = 10000) {
71
- const mockDb = {
72
- prepare: () => ({ all: () => [], get: () => null, run: () => ({}) }),
73
- exec: () => { },
74
- };
75
- const wasmSearch = new WASMVectorSearch(mockDb, { enableWASM: true });
76
- const vectorA = this.generateRandomVector();
77
- const vectorB = this.generateRandomVector();
78
- const start = performance.now();
79
- for (let i = 0; i < iterations; i++) {
80
- wasmSearch.cosineSimilarity(vectorA, vectorB);
81
- }
82
- const duration = performance.now() - start;
83
- return {
84
- name: 'Cosine Similarity (WASM-Optimized)',
85
- operations: iterations,
86
- duration,
87
- opsPerSecond: (iterations / duration) * 1000,
88
- avgLatency: duration / iterations,
89
- };
90
- }
91
- /**
92
- * Benchmark batch similarity operations
93
- */
94
- async benchmarkBatchSimilarity() {
95
- const mockDb = {
96
- prepare: () => ({ all: () => [], get: () => null, run: () => ({}) }),
97
- exec: () => { },
98
- };
99
- const wasmSearch = new WASMVectorSearch(mockDb, { enableWASM: true });
100
- const query = this.generateRandomVector();
101
- const vectors = [];
102
- for (let i = 0; i < this.vectorCount; i++) {
103
- vectors.push(this.generateRandomVector());
104
- }
105
- const start = performance.now();
106
- wasmSearch.batchSimilarity(query, vectors);
107
- const duration = performance.now() - start;
108
- return {
109
- name: 'Batch Similarity Search',
110
- operations: this.vectorCount,
111
- duration,
112
- opsPerSecond: (this.vectorCount / duration) * 1000,
113
- avgLatency: duration / this.vectorCount,
114
- };
115
- }
116
- /**
117
- * Benchmark k-NN search
118
- */
119
- async benchmarkKNNSearch(k = 10) {
120
- const mockDb = {
121
- prepare: () => ({ all: () => [], get: () => null, run: () => ({}) }),
122
- exec: () => { },
123
- };
124
- const wasmSearch = new WASMVectorSearch(mockDb, { enableWASM: true });
125
- const query = this.generateRandomVector();
126
- const vectors = [];
127
- const ids = [];
128
- for (let i = 0; i < this.vectorCount; i++) {
129
- vectors.push(this.generateRandomVector());
130
- ids.push(i);
131
- }
132
- // Build index
133
- wasmSearch.buildIndex(vectors, ids);
134
- const start = performance.now();
135
- wasmSearch.searchIndex(query, k);
136
- const duration = performance.now() - start;
137
- return {
138
- name: `k-NN Search (k=${k}, n=${this.vectorCount})`,
139
- operations: 1,
140
- duration,
141
- opsPerSecond: (1 / duration) * 1000,
142
- avgLatency: duration,
143
- };
144
- }
145
- /**
146
- * Run all benchmarks
147
- */
148
- async runAll() {
149
- console.log('='.repeat(80));
150
- console.log('WASM Vector Operations Benchmark');
151
- console.log('='.repeat(80));
152
- console.log(`Configuration: ${this.dimensions}D vectors, ${this.vectorCount} dataset size\n`);
153
- const results = [];
154
- // Cosine similarity benchmarks
155
- console.log('Running similarity benchmarks...');
156
- const jsResult = await this.benchmarkJSSimilarity();
157
- results.push(jsResult);
158
- const wasmResult = await this.benchmarkWASMSimilarity();
159
- results.push(wasmResult);
160
- const speedup = wasmResult.opsPerSecond / jsResult.opsPerSecond;
161
- console.log(` Speedup: ${speedup.toFixed(2)}x\n`);
162
- // Batch similarity
163
- console.log('Running batch similarity benchmark...');
164
- const batchResult = await this.benchmarkBatchSimilarity();
165
- results.push(batchResult);
166
- // k-NN search
167
- console.log('Running k-NN search benchmark...');
168
- const knnResult = await this.benchmarkKNNSearch();
169
- results.push(knnResult);
170
- // Print results table
171
- console.log('\n' + '='.repeat(80));
172
- console.log('Results:');
173
- console.log('='.repeat(80));
174
- console.log('Benchmark'.padEnd(40) +
175
- 'Operations'.padStart(12) +
176
- 'Duration (ms)'.padStart(15) +
177
- 'Ops/sec'.padStart(15));
178
- console.log('-'.repeat(80));
179
- results.forEach(result => {
180
- console.log(result.name.padEnd(40) +
181
- result.operations.toLocaleString().padStart(12) +
182
- result.duration.toFixed(2).padStart(15) +
183
- result.opsPerSecond.toLocaleString(undefined, { maximumFractionDigits: 0 }).padStart(15));
184
- });
185
- console.log('='.repeat(80));
186
- console.log('\nKey Findings:');
187
- console.log(`- WASM provides ${speedup.toFixed(2)}x speedup for cosine similarity`);
188
- console.log(`- Batch processing: ${batchResult.opsPerSecond.toFixed(0)} vectors/sec`);
189
- console.log(`- k-NN search latency: ${knnResult.avgLatency.toFixed(2)}ms`);
190
- console.log('='.repeat(80));
191
- }
192
- }
193
- // Run benchmarks
194
- const benchmark = new VectorBenchmark(384, 1000);
195
- benchmark.runAll().catch(console.error);
196
- //# sourceMappingURL=wasm-vector-benchmark.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wasm-vector-benchmark.js","sourceRoot":"","sources":["../../src/benchmarks/wasm-vector-benchmark.ts"],"names":[],"mappings":"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"}