@n8n/ai-utilities 0.23.3 → 0.24.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 (282) hide show
  1. package/dist/cjs/adapters/langchain-chat-model.js +174 -184
  2. package/dist/cjs/adapters/langchain-chat-model.js.map +1 -1
  3. package/dist/cjs/adapters/langchain-history.js +23 -33
  4. package/dist/cjs/adapters/langchain-history.js.map +1 -1
  5. package/dist/cjs/adapters/langchain-memory.js +32 -42
  6. package/dist/cjs/adapters/langchain-memory.js.map +1 -1
  7. package/dist/cjs/agent-config/config-normalization.d.ts +11 -0
  8. package/dist/cjs/agent-config/config-normalization.js +134 -0
  9. package/dist/cjs/agent-config/config-normalization.js.map +1 -0
  10. package/dist/cjs/agent-config/from-ai-node-parameters.d.ts +7 -0
  11. package/dist/cjs/agent-config/from-ai-node-parameters.js +43 -0
  12. package/dist/cjs/agent-config/from-ai-node-parameters.js.map +1 -0
  13. package/dist/cjs/agent-config/index.d.ts +3 -0
  14. package/dist/cjs/agent-config/index.js +17 -0
  15. package/dist/cjs/agent-config/index.js.map +1 -0
  16. package/dist/cjs/agent-config/model-id.d.ts +5 -0
  17. package/dist/cjs/agent-config/model-id.js +16 -0
  18. package/dist/cjs/agent-config/model-id.js.map +1 -0
  19. package/dist/cjs/agent-config/native-web-search-provider-tools.d.ts +7 -0
  20. package/dist/cjs/agent-config/native-web-search-provider-tools.js +55 -0
  21. package/dist/cjs/agent-config/native-web-search-provider-tools.js.map +1 -0
  22. package/dist/cjs/ai-node-sdk-version.js +4 -14
  23. package/dist/cjs/ai-node-sdk-version.js.map +1 -1
  24. package/dist/cjs/chat-model/base.js +21 -31
  25. package/dist/cjs/chat-model/base.js.map +1 -1
  26. package/dist/cjs/converters/message.js +308 -318
  27. package/dist/cjs/converters/message.js.map +1 -1
  28. package/dist/cjs/converters/tool.js +50 -60
  29. package/dist/cjs/converters/tool.js.map +1 -1
  30. package/dist/cjs/guards.js +26 -36
  31. package/dist/cjs/guards.js.map +1 -1
  32. package/dist/cjs/index.js +99 -108
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/cjs/memory/base-chat-history.js +9 -19
  35. package/dist/cjs/memory/base-chat-history.js.map +1 -1
  36. package/dist/cjs/memory/base-chat-memory.js +6 -16
  37. package/dist/cjs/memory/base-chat-memory.js.map +1 -1
  38. package/dist/cjs/memory/windowed-chat-memory.js +33 -43
  39. package/dist/cjs/memory/windowed-chat-memory.js.map +1 -1
  40. package/dist/cjs/model-discovery/index.js +61 -71
  41. package/dist/cjs/model-discovery/index.js.map +1 -1
  42. package/dist/cjs/model-discovery/providers/anthropic.js +12 -22
  43. package/dist/cjs/model-discovery/providers/anthropic.js.map +1 -1
  44. package/dist/cjs/model-discovery/providers/cohere.js +12 -22
  45. package/dist/cjs/model-discovery/providers/cohere.js.map +1 -1
  46. package/dist/cjs/model-discovery/providers/deepseek.js +5 -15
  47. package/dist/cjs/model-discovery/providers/deepseek.js.map +1 -1
  48. package/dist/cjs/model-discovery/providers/google.js +15 -25
  49. package/dist/cjs/model-discovery/providers/google.js.map +1 -1
  50. package/dist/cjs/model-discovery/providers/groq.js +9 -19
  51. package/dist/cjs/model-discovery/providers/groq.js.map +1 -1
  52. package/dist/cjs/model-discovery/providers/mistral.js +11 -21
  53. package/dist/cjs/model-discovery/providers/mistral.js.map +1 -1
  54. package/dist/cjs/model-discovery/providers/nvidia.js +21 -31
  55. package/dist/cjs/model-discovery/providers/nvidia.js.map +1 -1
  56. package/dist/cjs/model-discovery/providers/openai.js +31 -41
  57. package/dist/cjs/model-discovery/providers/openai.js.map +1 -1
  58. package/dist/cjs/model-discovery/providers/openrouter.js +5 -15
  59. package/dist/cjs/model-discovery/providers/openrouter.js.map +1 -1
  60. package/dist/cjs/model-discovery/providers/vercel.js +5 -15
  61. package/dist/cjs/model-discovery/providers/vercel.js.map +1 -1
  62. package/dist/cjs/model-discovery/providers/xai.js +5 -15
  63. package/dist/cjs/model-discovery/providers/xai.js.map +1 -1
  64. package/dist/cjs/model-discovery/request.js +40 -50
  65. package/dist/cjs/model-discovery/request.js.map +1 -1
  66. package/dist/cjs/model-discovery/types.js +2 -12
  67. package/dist/cjs/node-catalog/discriminator-utils.js +75 -85
  68. package/dist/cjs/node-catalog/discriminator-utils.js.map +1 -1
  69. package/dist/cjs/node-catalog/dynamic-node-parameters.js +169 -179
  70. package/dist/cjs/node-catalog/dynamic-node-parameters.js.map +1 -1
  71. package/dist/cjs/node-catalog/get.js +349 -359
  72. package/dist/cjs/node-catalog/get.js.map +1 -1
  73. package/dist/cjs/node-catalog/index.js +42 -52
  74. package/dist/cjs/node-catalog/index.js.map +1 -1
  75. package/dist/cjs/node-catalog/lean-node-type.js +46 -56
  76. package/dist/cjs/node-catalog/lean-node-type.js.map +1 -1
  77. package/dist/cjs/node-catalog/node-type-parser.js +61 -71
  78. package/dist/cjs/node-catalog/node-type-parser.js.map +1 -1
  79. package/dist/cjs/node-catalog/resource-operation-extractor.js +133 -143
  80. package/dist/cjs/node-catalog/resource-operation-extractor.js.map +1 -1
  81. package/dist/cjs/node-catalog/search-engine.js +285 -295
  82. package/dist/cjs/node-catalog/search-engine.js.map +1 -1
  83. package/dist/cjs/node-catalog/search.js +280 -290
  84. package/dist/cjs/node-catalog/search.js.map +1 -1
  85. package/dist/cjs/node-catalog/suggested-nodes-data.js +235 -245
  86. package/dist/cjs/node-catalog/suggested-nodes-data.js.map +1 -1
  87. package/dist/cjs/node-catalog/suggested.js +63 -73
  88. package/dist/cjs/node-catalog/suggested.js.map +1 -1
  89. package/dist/cjs/node-catalog/types.js +2 -12
  90. package/dist/cjs/suppliers/supplyMemory.js +13 -23
  91. package/dist/cjs/suppliers/supplyMemory.js.map +1 -1
  92. package/dist/cjs/suppliers/supplyModel.js +72 -82
  93. package/dist/cjs/suppliers/supplyModel.js.map +1 -1
  94. package/dist/cjs/typecheck.tsbuildinfo +1 -1
  95. package/dist/cjs/types/chat-model.js +2 -12
  96. package/dist/cjs/types/json.js +2 -12
  97. package/dist/cjs/types/memory.js +2 -12
  98. package/dist/cjs/types/message.js +2 -12
  99. package/dist/cjs/types/openai.js +2 -12
  100. package/dist/cjs/types/output.js +2 -12
  101. package/dist/cjs/types/tool.js +2 -12
  102. package/dist/cjs/utils/embeddings-input-validation.js +24 -34
  103. package/dist/cjs/utils/embeddings-input-validation.js.map +1 -1
  104. package/dist/cjs/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js +27 -37
  105. package/dist/cjs/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js.map +1 -1
  106. package/dist/cjs/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.d.ts +1 -1
  107. package/dist/cjs/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js +23 -33
  108. package/dist/cjs/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js.map +1 -1
  109. package/dist/cjs/utils/follow-redirects.js +38 -48
  110. package/dist/cjs/utils/follow-redirects.js.map +1 -1
  111. package/dist/cjs/utils/fromai-helpers.js +21 -31
  112. package/dist/cjs/utils/fromai-helpers.js.map +1 -1
  113. package/dist/cjs/utils/fromai-tool-factory.js +18 -28
  114. package/dist/cjs/utils/fromai-tool-factory.js.map +1 -1
  115. package/dist/cjs/utils/helpers.js +44 -54
  116. package/dist/cjs/utils/helpers.js.map +1 -1
  117. package/dist/cjs/utils/http-proxy-agent.js +38 -48
  118. package/dist/cjs/utils/http-proxy-agent.js.map +1 -1
  119. package/dist/cjs/utils/lazy-import.d.ts +1 -0
  120. package/dist/cjs/utils/lazy-import.js +7 -0
  121. package/dist/cjs/utils/lazy-import.js.map +1 -0
  122. package/dist/cjs/utils/loaders/n8n-pdf-loader.js +50 -94
  123. package/dist/cjs/utils/loaders/n8n-pdf-loader.js.map +1 -1
  124. package/dist/cjs/utils/log-ai-event.js +10 -20
  125. package/dist/cjs/utils/log-ai-event.js.map +1 -1
  126. package/dist/cjs/utils/log-wrapper.d.ts +1 -1
  127. package/dist/cjs/utils/log-wrapper.js +313 -323
  128. package/dist/cjs/utils/log-wrapper.js.map +1 -1
  129. package/dist/cjs/utils/n8n-binary-loader.js +143 -153
  130. package/dist/cjs/utils/n8n-binary-loader.js.map +1 -1
  131. package/dist/cjs/utils/n8n-json-loader.js +57 -67
  132. package/dist/cjs/utils/n8n-json-loader.js.map +1 -1
  133. package/dist/cjs/utils/n8n-llm-tracing.js +164 -174
  134. package/dist/cjs/utils/n8n-llm-tracing.js.map +1 -1
  135. package/dist/cjs/utils/redact-headers.js +42 -52
  136. package/dist/cjs/utils/redact-headers.js.map +1 -1
  137. package/dist/cjs/utils/shared-fields.js +137 -147
  138. package/dist/cjs/utils/shared-fields.js.map +1 -1
  139. package/dist/cjs/utils/sse.js +83 -93
  140. package/dist/cjs/utils/sse.js.map +1 -1
  141. package/dist/cjs/utils/text-editor.js +274 -284
  142. package/dist/cjs/utils/text-editor.js.map +1 -1
  143. package/dist/cjs/utils/tokenizer/tiktoken.js +38 -48
  144. package/dist/cjs/utils/tokenizer/tiktoken.js.map +1 -1
  145. package/dist/cjs/utils/tokenizer/token-estimator.js +86 -96
  146. package/dist/cjs/utils/tokenizer/token-estimator.js.map +1 -1
  147. package/dist/cjs/utils/vector-store/MemoryManager/MemoryCalculator.js +43 -53
  148. package/dist/cjs/utils/vector-store/MemoryManager/MemoryCalculator.js.map +1 -1
  149. package/dist/cjs/utils/vector-store/MemoryManager/MemoryVectorStoreManager.js +154 -164
  150. package/dist/cjs/utils/vector-store/MemoryManager/MemoryVectorStoreManager.js.map +1 -1
  151. package/dist/cjs/utils/vector-store/MemoryManager/StoreCleanupService.js +82 -92
  152. package/dist/cjs/utils/vector-store/MemoryManager/StoreCleanupService.js.map +1 -1
  153. package/dist/cjs/utils/vector-store/MemoryManager/config.js +34 -44
  154. package/dist/cjs/utils/vector-store/MemoryManager/config.js.map +1 -1
  155. package/dist/cjs/utils/vector-store/MemoryManager/types.js +2 -12
  156. package/dist/cjs/utils/vector-store/createVectorStoreNode/constants.js +44 -54
  157. package/dist/cjs/utils/vector-store/createVectorStoreNode/constants.js.map +1 -1
  158. package/dist/cjs/utils/vector-store/createVectorStoreNode/createVectorStoreNode.js +229 -229
  159. package/dist/cjs/utils/vector-store/createVectorStoreNode/createVectorStoreNode.js.map +1 -1
  160. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/index.js +8 -18
  161. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/index.js.map +1 -1
  162. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/insertOperation.js +33 -43
  163. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/insertOperation.js.map +1 -1
  164. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/loadOperation.js +41 -51
  165. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/loadOperation.js.map +1 -1
  166. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolExecuteOperation.js +59 -69
  167. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolExecuteOperation.js.map +1 -1
  168. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolOperation.js +58 -68
  169. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolOperation.js.map +1 -1
  170. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveOperation.js +26 -36
  171. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/retrieveOperation.js.map +1 -1
  172. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/updateOperation.js +34 -44
  173. package/dist/cjs/utils/vector-store/createVectorStoreNode/operations/updateOperation.js.map +1 -1
  174. package/dist/cjs/utils/vector-store/createVectorStoreNode/types.js +2 -12
  175. package/dist/cjs/utils/vector-store/createVectorStoreNode/utils.d.ts +2 -1
  176. package/dist/cjs/utils/vector-store/createVectorStoreNode/utils.js +34 -29
  177. package/dist/cjs/utils/vector-store/createVectorStoreNode/utils.js.map +1 -1
  178. package/dist/cjs/utils/vector-store/processDocuments.js +37 -47
  179. package/dist/cjs/utils/vector-store/processDocuments.js.map +1 -1
  180. package/dist/cjs/utils/workflow-text-editor.js +50 -60
  181. package/dist/cjs/utils/workflow-text-editor.js.map +1 -1
  182. package/dist/cjs/web-search/brave-search.js +38 -48
  183. package/dist/cjs/web-search/brave-search.js.map +1 -1
  184. package/dist/cjs/web-search/index.js +7 -17
  185. package/dist/cjs/web-search/index.js.map +1 -1
  186. package/dist/cjs/web-search/searxng-search.js +35 -45
  187. package/dist/cjs/web-search/searxng-search.js.map +1 -1
  188. package/dist/cjs/web-search/types.js +2 -12
  189. package/dist/esm/adapters/langchain-chat-model.js.map +1 -1
  190. package/dist/esm/adapters/langchain-history.js.map +1 -1
  191. package/dist/esm/adapters/langchain-memory.js.map +1 -1
  192. package/dist/esm/agent-config/config-normalization.d.ts +11 -0
  193. package/dist/esm/agent-config/config-normalization.js +134 -0
  194. package/dist/esm/agent-config/config-normalization.js.map +1 -0
  195. package/dist/esm/agent-config/from-ai-node-parameters.d.ts +7 -0
  196. package/dist/esm/agent-config/from-ai-node-parameters.js +43 -0
  197. package/dist/esm/agent-config/from-ai-node-parameters.js.map +1 -0
  198. package/dist/esm/agent-config/index.d.ts +3 -0
  199. package/dist/esm/agent-config/index.js +17 -0
  200. package/dist/esm/agent-config/index.js.map +1 -0
  201. package/dist/esm/agent-config/model-id.d.ts +5 -0
  202. package/dist/esm/agent-config/model-id.js +16 -0
  203. package/dist/esm/agent-config/model-id.js.map +1 -0
  204. package/dist/esm/agent-config/native-web-search-provider-tools.d.ts +7 -0
  205. package/dist/esm/agent-config/native-web-search-provider-tools.js +55 -0
  206. package/dist/esm/agent-config/native-web-search-provider-tools.js.map +1 -0
  207. package/dist/esm/chat-model/base.js.map +1 -1
  208. package/dist/esm/converters/message.js.map +1 -1
  209. package/dist/esm/converters/tool.js.map +1 -1
  210. package/dist/esm/guards.js.map +1 -1
  211. package/dist/esm/index.js.map +1 -1
  212. package/dist/esm/memory/base-chat-history.js.map +1 -1
  213. package/dist/esm/memory/base-chat-memory.js.map +1 -1
  214. package/dist/esm/memory/windowed-chat-memory.js.map +1 -1
  215. package/dist/esm/model-discovery/index.js.map +1 -1
  216. package/dist/esm/model-discovery/providers/anthropic.js.map +1 -1
  217. package/dist/esm/model-discovery/providers/cohere.js.map +1 -1
  218. package/dist/esm/model-discovery/providers/google.js.map +1 -1
  219. package/dist/esm/model-discovery/providers/groq.js.map +1 -1
  220. package/dist/esm/model-discovery/providers/mistral.js.map +1 -1
  221. package/dist/esm/model-discovery/providers/nvidia.js.map +1 -1
  222. package/dist/esm/model-discovery/providers/openai.js.map +1 -1
  223. package/dist/esm/model-discovery/request.js.map +1 -1
  224. package/dist/esm/node-catalog/discriminator-utils.js.map +1 -1
  225. package/dist/esm/node-catalog/dynamic-node-parameters.js.map +1 -1
  226. package/dist/esm/node-catalog/get.js.map +1 -1
  227. package/dist/esm/node-catalog/lean-node-type.js.map +1 -1
  228. package/dist/esm/node-catalog/node-type-parser.js.map +1 -1
  229. package/dist/esm/node-catalog/resource-operation-extractor.js.map +1 -1
  230. package/dist/esm/node-catalog/search-engine.js.map +1 -1
  231. package/dist/esm/node-catalog/search.js.map +1 -1
  232. package/dist/esm/node-catalog/suggested-nodes-data.js.map +1 -1
  233. package/dist/esm/node-catalog/suggested.js.map +1 -1
  234. package/dist/esm/suppliers/supplyMemory.js.map +1 -1
  235. package/dist/esm/suppliers/supplyModel.js.map +1 -1
  236. package/dist/esm/typecheck.tsbuildinfo +1 -1
  237. package/dist/esm/utils/embeddings-input-validation.js.map +1 -1
  238. package/dist/esm/utils/failed-attempt-handler/n8nDefaultFailedAttemptHandler.js.map +1 -1
  239. package/dist/esm/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.d.ts +1 -1
  240. package/dist/esm/utils/failed-attempt-handler/n8nLlmFailedAttemptHandler.js.map +1 -1
  241. package/dist/esm/utils/follow-redirects.js.map +1 -1
  242. package/dist/esm/utils/fromai-helpers.js.map +1 -1
  243. package/dist/esm/utils/fromai-tool-factory.js.map +1 -1
  244. package/dist/esm/utils/helpers.js.map +1 -1
  245. package/dist/esm/utils/http-proxy-agent.js.map +1 -1
  246. package/dist/esm/utils/lazy-import.d.ts +1 -0
  247. package/dist/esm/utils/lazy-import.js +7 -0
  248. package/dist/esm/utils/lazy-import.js.map +1 -0
  249. package/dist/esm/utils/loaders/n8n-pdf-loader.js +2 -35
  250. package/dist/esm/utils/loaders/n8n-pdf-loader.js.map +1 -1
  251. package/dist/esm/utils/log-ai-event.js.map +1 -1
  252. package/dist/esm/utils/log-wrapper.d.ts +1 -1
  253. package/dist/esm/utils/log-wrapper.js.map +1 -1
  254. package/dist/esm/utils/n8n-binary-loader.js.map +1 -1
  255. package/dist/esm/utils/n8n-json-loader.js.map +1 -1
  256. package/dist/esm/utils/n8n-llm-tracing.js.map +1 -1
  257. package/dist/esm/utils/redact-headers.js.map +1 -1
  258. package/dist/esm/utils/shared-fields.js.map +1 -1
  259. package/dist/esm/utils/sse.js.map +1 -1
  260. package/dist/esm/utils/text-editor.js.map +1 -1
  261. package/dist/esm/utils/tokenizer/tiktoken.js.map +1 -1
  262. package/dist/esm/utils/tokenizer/token-estimator.js.map +1 -1
  263. package/dist/esm/utils/vector-store/MemoryManager/MemoryCalculator.js.map +1 -1
  264. package/dist/esm/utils/vector-store/MemoryManager/MemoryVectorStoreManager.js.map +1 -1
  265. package/dist/esm/utils/vector-store/MemoryManager/StoreCleanupService.js.map +1 -1
  266. package/dist/esm/utils/vector-store/MemoryManager/config.js.map +1 -1
  267. package/dist/esm/utils/vector-store/createVectorStoreNode/createVectorStoreNode.js +43 -33
  268. package/dist/esm/utils/vector-store/createVectorStoreNode/createVectorStoreNode.js.map +1 -1
  269. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/insertOperation.js.map +1 -1
  270. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/loadOperation.js.map +1 -1
  271. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolExecuteOperation.js.map +1 -1
  272. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/retrieveAsToolOperation.js.map +1 -1
  273. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/retrieveOperation.js.map +1 -1
  274. package/dist/esm/utils/vector-store/createVectorStoreNode/operations/updateOperation.js.map +1 -1
  275. package/dist/esm/utils/vector-store/createVectorStoreNode/utils.d.ts +2 -1
  276. package/dist/esm/utils/vector-store/createVectorStoreNode/utils.js +15 -0
  277. package/dist/esm/utils/vector-store/createVectorStoreNode/utils.js.map +1 -1
  278. package/dist/esm/utils/vector-store/processDocuments.js.map +1 -1
  279. package/dist/esm/utils/workflow-text-editor.js.map +1 -1
  280. package/dist/esm/web-search/brave-search.js.map +1 -1
  281. package/dist/esm/web-search/searxng-search.js.map +1 -1
  282. package/package.json +24 -9
@@ -1 +1 @@
1
- {"version":3,"file":"text-editor.js","sourceRoot":"","sources":["../../../src/utils/text-editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-editor.js","sourceRoot":"","sources":["../../../src/utils/text-editor.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,40 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEncoding = getEncoding;
4
+ exports.encodingForModel = encodingForModel;
5
+ const promises_1 = require("fs/promises");
6
+ const lite_1 = require("js-tiktoken/lite");
7
+ const n8n_workflow_1 = require("n8n-workflow");
8
+ const path_1 = require("path");
9
+ const cache = {};
10
+ const loadJSONFile = async (filename) => {
11
+ const filePath = (0, path_1.join)(__dirname, filename);
12
+ const content = await (0, promises_1.readFile)(filePath, 'utf-8');
13
+ return await (0, n8n_workflow_1.jsonParse)(content);
14
+ };
15
+ async function getEncoding(encoding) {
16
+ if (!(encoding in cache)) {
17
+ cache[encoding] = (async () => {
18
+ let jsonData;
19
+ switch (encoding) {
20
+ case 'o200k_base':
21
+ jsonData = await loadJSONFile('./o200k_base.json');
22
+ break;
23
+ case 'cl100k_base':
24
+ jsonData = await loadJSONFile('./cl100k_base.json');
25
+ break;
26
+ default:
27
+ jsonData = await loadJSONFile('./cl100k_base.json');
28
+ }
29
+ return new lite_1.Tiktoken(jsonData);
30
+ })().catch((error) => {
31
+ delete cache[encoding];
32
+ throw error;
33
+ });
5
34
  }
6
- else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "fs/promises", "js-tiktoken/lite", "n8n-workflow", "path"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getEncoding = getEncoding;
13
- exports.encodingForModel = encodingForModel;
14
- const promises_1 = require("fs/promises");
15
- const lite_1 = require("js-tiktoken/lite");
16
- const n8n_workflow_1 = require("n8n-workflow");
17
- const path_1 = require("path");
18
- const cache = {};
19
- const loadJSONFile = async (filename) => {
20
- const filePath = (0, path_1.join)(__dirname, filename);
21
- const content = await (0, promises_1.readFile)(filePath, 'utf-8');
22
- return await (0, n8n_workflow_1.jsonParse)(content);
23
- };
24
- async function getEncoding(encoding) {
25
- if (!(encoding in cache)) {
26
- cache[encoding] = (async () => {
27
- let jsonData;
28
- switch (encoding) {
29
- case 'o200k_base':
30
- jsonData = await loadJSONFile('./o200k_base.json');
31
- break;
32
- case 'cl100k_base':
33
- jsonData = await loadJSONFile('./cl100k_base.json');
34
- break;
35
- default:
36
- jsonData = await loadJSONFile('./cl100k_base.json');
37
- }
38
- return new lite_1.Tiktoken(jsonData);
39
- })().catch((error) => {
40
- delete cache[encoding];
41
- throw error;
42
- });
43
- }
44
- return await cache[encoding];
45
- }
46
- async function encodingForModel(model) {
47
- return await getEncoding((0, lite_1.getEncodingNameForModel)(model));
48
- }
49
- });
35
+ return await cache[encoding];
36
+ }
37
+ async function encodingForModel(model) {
38
+ return await getEncoding((0, lite_1.getEncodingNameForModel)(model));
39
+ }
50
40
  //# sourceMappingURL=tiktoken.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tiktoken.js","sourceRoot":"","sources":["../../../../src/utils/tokenizer/tiktoken.ts"],"names":[],"mappings":";;;;;;;;;;;IAcA,kCA0BC;IAED,4CAEC;IA5CD,0CAAuC;IAEvC,2CAAqE;IACrE,+CAAyC;IACzC,+BAA4B;IAE5B,MAAM,KAAK,GAAsC,EAAE,CAAC;IAEpD,MAAM,YAAY,GAAG,KAAK,EAAE,QAAgB,EAAwB,EAAE;QACrE,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAQ,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,MAAM,IAAA,wBAAS,EAAC,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;IAEK,KAAK,UAAU,WAAW,CAAC,QAA0B;QAC3D,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC;YAE1B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,QAAqB,CAAC;gBAE1B,QAAQ,QAAQ,EAAE,CAAC;oBAClB,KAAK,YAAY;wBAChB,QAAQ,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC,CAAC;wBACnD,MAAM;oBACP,KAAK,aAAa;wBACjB,QAAQ,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,CAAC;wBACpD,MAAM;oBACP;wBAEC,QAAQ,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,CAAC;gBACtD,CAAC;gBAED,OAAO,IAAI,eAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpB,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACvB,MAAM,KAAK,CAAC;YACb,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAEM,KAAK,UAAU,gBAAgB,CAAC,KAAoB;QAC1D,OAAO,MAAM,WAAW,CAAC,IAAA,8BAAuB,EAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC"}
1
+ {"version":3,"file":"tiktoken.js","sourceRoot":"","sources":["../../../../src/utils/tokenizer/tiktoken.ts"],"names":[],"mappings":";;;;AAAA,0CAAuC;AAEvC,2CAAqE;AACrE,+CAAyC;AACzC,+BAA4B;AAE5B,MAAM,KAAK,GAAsC,EAAE,CAAC;AAEpD,MAAM,YAAY,GAAG,KAAK,EAAE,QAAgB,EAAwB,EAAE;IACrE,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,IAAA,mBAAQ,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,OAAO,MAAM,IAAA,wBAAS,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC;AAEK,KAAK,sBAAsB,QAA0B;IAC3D,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC;QAE1B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YAC7B,IAAI,QAAqB,CAAC;YAE1B,QAAQ,QAAQ,EAAE,CAAC;gBAClB,KAAK,YAAY;oBAChB,QAAQ,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC,CAAC;oBACnD,MAAM;gBACP,KAAK,aAAa;oBACjB,QAAQ,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,CAAC;oBACpD,MAAM;gBACP;oBAEC,QAAQ,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,CAAC;YACtD,CAAC;YAED,OAAO,IAAI,eAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACpB,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvB,MAAM,KAAK,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAEM,KAAK,2BAA2B,KAAoB;IAC1D,OAAO,MAAM,WAAW,CAAC,IAAA,8BAAuB,EAAC,KAAK,CAAC,CAAC,CAAC;AAC1D,CAAC"}
@@ -1,108 +1,98 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.estimateTokensByCharCount = estimateTokensByCharCount;
4
+ exports.estimateTextSplitsByTokens = estimateTextSplitsByTokens;
5
+ exports.estimateTokensFromStringList = estimateTokensFromStringList;
6
+ const tiktoken_1 = require("./tiktoken");
7
+ const helpers_1 = require("../helpers");
8
+ const MODEL_CHAR_PER_TOKEN_RATIOS = {
9
+ 'gpt-4o': 3.8,
10
+ 'gpt-4': 4.0,
11
+ 'gpt-3.5-turbo': 4.0,
12
+ cl100k_base: 4.0,
13
+ o200k_base: 3.5,
14
+ p50k_base: 4.2,
15
+ r50k_base: 4.2,
16
+ };
17
+ function estimateTokensByCharCount(text, model = 'cl100k_base') {
18
+ try {
19
+ if (!text || typeof text !== 'string' || text.length === 0) {
20
+ return 0;
21
+ }
22
+ const charsPerToken = MODEL_CHAR_PER_TOKEN_RATIOS[model] || 4.0;
23
+ if (!Number.isFinite(charsPerToken) || charsPerToken <= 0) {
24
+ const estimatedTokens = Math.ceil(text.length / 4.0);
25
+ return estimatedTokens;
26
+ }
27
+ const estimatedTokens = Math.ceil(text.length / charsPerToken);
28
+ return estimatedTokens;
5
29
  }
6
- else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./tiktoken", "../helpers"], factory);
30
+ catch (error) {
31
+ return Math.ceil((text?.length || 0) / 4.0);
8
32
  }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.estimateTokensByCharCount = estimateTokensByCharCount;
13
- exports.estimateTextSplitsByTokens = estimateTextSplitsByTokens;
14
- exports.estimateTokensFromStringList = estimateTokensFromStringList;
15
- const tiktoken_1 = require("./tiktoken");
16
- const helpers_1 = require("../helpers");
17
- const MODEL_CHAR_PER_TOKEN_RATIOS = {
18
- 'gpt-4o': 3.8,
19
- 'gpt-4': 4.0,
20
- 'gpt-3.5-turbo': 4.0,
21
- cl100k_base: 4.0,
22
- o200k_base: 3.5,
23
- p50k_base: 4.2,
24
- r50k_base: 4.2,
25
- };
26
- function estimateTokensByCharCount(text, model = 'cl100k_base') {
27
- try {
28
- if (!text || typeof text !== 'string' || text.length === 0) {
29
- return 0;
30
- }
31
- const charsPerToken = MODEL_CHAR_PER_TOKEN_RATIOS[model] || 4.0;
32
- if (!Number.isFinite(charsPerToken) || charsPerToken <= 0) {
33
- const estimatedTokens = Math.ceil(text.length / 4.0);
34
- return estimatedTokens;
35
- }
36
- const estimatedTokens = Math.ceil(text.length / charsPerToken);
37
- return estimatedTokens;
33
+ }
34
+ function estimateTextSplitsByTokens(text, chunkSize, chunkOverlap, model = 'cl100k_base') {
35
+ try {
36
+ if (!text || typeof text !== 'string' || text.length === 0) {
37
+ return [];
38
38
  }
39
- catch (error) {
40
- return Math.ceil((text?.length || 0) / 4.0);
39
+ if (!Number.isFinite(chunkSize) || chunkSize <= 0) {
40
+ return [text];
41
41
  }
42
- }
43
- function estimateTextSplitsByTokens(text, chunkSize, chunkOverlap, model = 'cl100k_base') {
44
- try {
45
- if (!text || typeof text !== 'string' || text.length === 0) {
46
- return [];
47
- }
48
- if (!Number.isFinite(chunkSize) || chunkSize <= 0) {
49
- return [text];
50
- }
51
- const validOverlap = Number.isFinite(chunkOverlap) && chunkOverlap >= 0
52
- ? Math.min(chunkOverlap, chunkSize - 1)
53
- : 0;
54
- const charsPerToken = MODEL_CHAR_PER_TOKEN_RATIOS[model] || 4.0;
55
- const chunkSizeInChars = Math.floor(chunkSize * charsPerToken);
56
- const overlapInChars = Math.floor(validOverlap * charsPerToken);
57
- const chunks = [];
58
- let start = 0;
59
- while (start < text.length) {
60
- const end = Math.min(start + chunkSizeInChars, text.length);
61
- chunks.push(text.slice(start, end));
62
- if (end >= text.length) {
63
- break;
64
- }
65
- start = Math.max(end - overlapInChars, start + 1);
42
+ const validOverlap = Number.isFinite(chunkOverlap) && chunkOverlap >= 0
43
+ ? Math.min(chunkOverlap, chunkSize - 1)
44
+ : 0;
45
+ const charsPerToken = MODEL_CHAR_PER_TOKEN_RATIOS[model] || 4.0;
46
+ const chunkSizeInChars = Math.floor(chunkSize * charsPerToken);
47
+ const overlapInChars = Math.floor(validOverlap * charsPerToken);
48
+ const chunks = [];
49
+ let start = 0;
50
+ while (start < text.length) {
51
+ const end = Math.min(start + chunkSizeInChars, text.length);
52
+ chunks.push(text.slice(start, end));
53
+ if (end >= text.length) {
54
+ break;
66
55
  }
67
- return chunks;
68
- }
69
- catch (error) {
70
- return text ? [text] : [];
56
+ start = Math.max(end - overlapInChars, start + 1);
71
57
  }
58
+ return chunks;
72
59
  }
73
- async function estimateTokensFromStringList(list, model) {
74
- try {
75
- if (!Array.isArray(list)) {
76
- return 0;
77
- }
78
- const encoder = await (0, tiktoken_1.encodingForModel)(model);
79
- const encodedListLength = await Promise.all(list.map(async (text) => {
60
+ catch (error) {
61
+ return text ? [text] : [];
62
+ }
63
+ }
64
+ async function estimateTokensFromStringList(list, model) {
65
+ try {
66
+ if (!Array.isArray(list)) {
67
+ return 0;
68
+ }
69
+ const encoder = await (0, tiktoken_1.encodingForModel)(model);
70
+ const encodedListLength = await Promise.all(list.map(async (text) => {
71
+ try {
72
+ if (!text || typeof text !== 'string') {
73
+ return 0;
74
+ }
75
+ if ((0, helpers_1.hasLongSequentialRepeat)(text)) {
76
+ const estimatedTokens = estimateTokensByCharCount(text, model);
77
+ return estimatedTokens;
78
+ }
80
79
  try {
81
- if (!text || typeof text !== 'string') {
82
- return 0;
83
- }
84
- if ((0, helpers_1.hasLongSequentialRepeat)(text)) {
85
- const estimatedTokens = estimateTokensByCharCount(text, model);
86
- return estimatedTokens;
87
- }
88
- try {
89
- const tokens = encoder.encode(text);
90
- return tokens.length;
91
- }
92
- catch (encodingError) {
93
- return estimateTokensByCharCount(text, model);
94
- }
80
+ const tokens = encoder.encode(text);
81
+ return tokens.length;
95
82
  }
96
- catch (itemError) {
97
- return 0;
83
+ catch (encodingError) {
84
+ return estimateTokensByCharCount(text, model);
98
85
  }
99
- }));
100
- const totalTokens = encodedListLength.reduce((acc, curr) => acc + curr, 0);
101
- return totalTokens;
102
- }
103
- catch (error) {
104
- return 0;
105
- }
86
+ }
87
+ catch (itemError) {
88
+ return 0;
89
+ }
90
+ }));
91
+ const totalTokens = encodedListLength.reduce((acc, curr) => acc + curr, 0);
92
+ return totalTokens;
93
+ }
94
+ catch (error) {
95
+ return 0;
106
96
  }
107
- });
97
+ }
108
98
  //# sourceMappingURL=token-estimator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../../../src/utils/tokenizer/token-estimator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../../../src/utils/tokenizer/token-estimator.ts"],"names":[],"mappings":"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"}
@@ -1,60 +1,50 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
5
- }
6
- else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.MemoryCalculator = void 0;
13
- const FLOAT_SIZE_BYTES = 8;
14
- const CHAR_SIZE_BYTES = 2;
15
- const VECTOR_OVERHEAD_BYTES = 200;
16
- const EMBEDDING_DIMENSIONS = 1536;
17
- const EMBEDDING_SIZE_BYTES = EMBEDDING_DIMENSIONS * FLOAT_SIZE_BYTES;
18
- const AVG_METADATA_SIZE_BYTES = 100;
19
- class MemoryCalculator {
20
- estimateBatchSize(documents) {
21
- if (documents.length === 0)
22
- return 0;
23
- let totalContentSize = 0;
24
- let totalMetadataSize = 0;
25
- for (const doc of documents) {
26
- if (doc.pageContent) {
27
- totalContentSize += doc.pageContent.length * CHAR_SIZE_BYTES;
28
- }
29
- if (doc.metadata) {
30
- const metadataKeys = Object.keys(doc.metadata).length;
31
- if (metadataKeys > 0) {
32
- totalMetadataSize += metadataKeys * AVG_METADATA_SIZE_BYTES;
33
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MemoryCalculator = void 0;
4
+ const FLOAT_SIZE_BYTES = 8;
5
+ const CHAR_SIZE_BYTES = 2;
6
+ const VECTOR_OVERHEAD_BYTES = 200;
7
+ const EMBEDDING_DIMENSIONS = 1536;
8
+ const EMBEDDING_SIZE_BYTES = EMBEDDING_DIMENSIONS * FLOAT_SIZE_BYTES;
9
+ const AVG_METADATA_SIZE_BYTES = 100;
10
+ class MemoryCalculator {
11
+ estimateBatchSize(documents) {
12
+ if (documents.length === 0)
13
+ return 0;
14
+ let totalContentSize = 0;
15
+ let totalMetadataSize = 0;
16
+ for (const doc of documents) {
17
+ if (doc.pageContent) {
18
+ totalContentSize += doc.pageContent.length * CHAR_SIZE_BYTES;
19
+ }
20
+ if (doc.metadata) {
21
+ const metadataKeys = Object.keys(doc.metadata).length;
22
+ if (metadataKeys > 0) {
23
+ totalMetadataSize += metadataKeys * AVG_METADATA_SIZE_BYTES;
34
24
  }
35
25
  }
36
- const embeddingSize = documents.length * EMBEDDING_SIZE_BYTES;
37
- const overhead = documents.length * VECTOR_OVERHEAD_BYTES;
38
- const calculatedSize = totalContentSize + totalMetadataSize + embeddingSize + overhead;
39
- return Math.ceil(calculatedSize);
40
26
  }
41
- calculateVectorStoreSize(vectorStore) {
42
- if (!vectorStore.memoryVectors || vectorStore.memoryVectors.length === 0) {
43
- return 0;
44
- }
45
- let storeSize = 0;
46
- for (const vector of vectorStore.memoryVectors) {
47
- storeSize += vector.embedding.length * FLOAT_SIZE_BYTES;
48
- storeSize += vector.content ? vector.content.length * CHAR_SIZE_BYTES : 0;
49
- if (vector.metadata) {
50
- const metadataStr = JSON.stringify(vector.metadata);
51
- storeSize += metadataStr.length * CHAR_SIZE_BYTES;
52
- }
53
- storeSize += VECTOR_OVERHEAD_BYTES;
27
+ const embeddingSize = documents.length * EMBEDDING_SIZE_BYTES;
28
+ const overhead = documents.length * VECTOR_OVERHEAD_BYTES;
29
+ const calculatedSize = totalContentSize + totalMetadataSize + embeddingSize + overhead;
30
+ return Math.ceil(calculatedSize);
31
+ }
32
+ calculateVectorStoreSize(vectorStore) {
33
+ if (!vectorStore.memoryVectors || vectorStore.memoryVectors.length === 0) {
34
+ return 0;
35
+ }
36
+ let storeSize = 0;
37
+ for (const vector of vectorStore.memoryVectors) {
38
+ storeSize += vector.embedding.length * FLOAT_SIZE_BYTES;
39
+ storeSize += vector.content ? vector.content.length * CHAR_SIZE_BYTES : 0;
40
+ if (vector.metadata) {
41
+ const metadataStr = JSON.stringify(vector.metadata);
42
+ storeSize += metadataStr.length * CHAR_SIZE_BYTES;
54
43
  }
55
- return Math.ceil(storeSize);
44
+ storeSize += VECTOR_OVERHEAD_BYTES;
56
45
  }
46
+ return Math.ceil(storeSize);
57
47
  }
58
- exports.MemoryCalculator = MemoryCalculator;
59
- });
48
+ }
49
+ exports.MemoryCalculator = MemoryCalculator;
60
50
  //# sourceMappingURL=MemoryCalculator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryCalculator.js","sourceRoot":"","sources":["../../../../../src/utils/vector-store/MemoryManager/MemoryCalculator.ts"],"names":[],"mappings":";;;;;;;;;;;;IAMA,MAAM,gBAAgB,GAAG,CAAC,CAAC;IAC3B,MAAM,eAAe,GAAG,CAAC,CAAC;IAC1B,MAAM,qBAAqB,GAAG,GAAG,CAAC;IAClC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IAClC,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;IACrE,MAAM,uBAAuB,GAAG,GAAG,CAAC;IAKpC,MAAa,gBAAgB;QAI5B,iBAAiB,CAAC,SAAqB;YACtC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,CAAC,CAAC;YAErC,IAAI,gBAAgB,GAAG,CAAC,CAAC;YACzB,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAG1B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC7B,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;oBACrB,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,eAAe,CAAC;gBAC9D,CAAC;gBAGD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAElB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;oBACtD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;wBAGtB,iBAAiB,IAAI,YAAY,GAAG,uBAAuB,CAAC;oBAC7D,CAAC;gBACF,CAAC;YACF,CAAC;YAID,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,GAAG,oBAAoB,CAAC;YAG9D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,GAAG,qBAAqB,CAAC;YAG1D,MAAM,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,GAAG,QAAQ,CAAC;YAEvF,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;QAKD,wBAAwB,CAAC,WAA8B;YACtD,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,WAAW,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1E,OAAO,CAAC,CAAC;YACV,CAAC;YAED,IAAI,SAAS,GAAG,CAAC,CAAC;YAGlB,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;gBAEhD,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC;gBAGxD,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;gBAG1E,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAErB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACpD,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,eAAe,CAAC;gBACnD,CAAC;gBAGD,SAAS,IAAI,qBAAqB,CAAC;YACpC,CAAC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;KACD;IAxED,4CAwEC"}
1
+ {"version":3,"file":"MemoryCalculator.js","sourceRoot":"","sources":["../../../../../src/utils/vector-store/MemoryManager/MemoryCalculator.ts"],"names":[],"mappings":";;;AAMA,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAClC,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;AACrE,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAKpC;IAIC,iBAAiB,CAAC,SAAqB;QACtC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAErC,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAG1B,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,gBAAgB,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,eAAe,CAAC;YAC9D,CAAC;YAGD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAElB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;gBACtD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;oBAGtB,iBAAiB,IAAI,YAAY,GAAG,uBAAuB,CAAC;gBAC7D,CAAC;YACF,CAAC;QACF,CAAC;QAID,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,GAAG,oBAAoB,CAAC;QAG9D,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,GAAG,qBAAqB,CAAC;QAG1D,MAAM,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,aAAa,GAAG,QAAQ,CAAC;QAEvF,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAKD,wBAAwB,CAAC,WAA8B;QACtD,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,WAAW,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1E,OAAO,CAAC,CAAC;QACV,CAAC;QAED,IAAI,SAAS,GAAG,CAAC,CAAC;QAGlB,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,aAAa,EAAE,CAAC;YAEhD,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC;YAGxD,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAG1E,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAErB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACpD,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,eAAe,CAAC;YACnD,CAAC;YAGD,SAAS,IAAI,qBAAqB,CAAC;QACpC,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;CACD"}