@vertesia/workflow 0.51.0 → 0.54.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 (387) hide show
  1. package/package.json +9 -6
  2. package/src/activities/advanced/createOrUpdateDocumentFromInteractionRun.ts +20 -1
  3. package/src/activities/chunkDocument.ts +62 -42
  4. package/src/activities/createDocumentFromOther.ts +2 -2
  5. package/src/activities/executeInteraction.ts +92 -47
  6. package/src/activities/extractDocumentText.ts +91 -54
  7. package/src/activities/generateDocumentProperties.ts +37 -16
  8. package/src/activities/generateEmbeddings.ts +91 -79
  9. package/src/activities/generateImageRendition.ts +127 -59
  10. package/src/activities/generateOrAssignContentType.ts +52 -32
  11. package/src/activities/getObjectFromStore.ts +1 -1
  12. package/src/activities/handleError.ts +25 -0
  13. package/src/activities/index-dsl.ts +1 -0
  14. package/src/activities/index.ts +0 -1
  15. package/src/activities/media/processPdfWithTextract.ts +4 -4
  16. package/src/activities/media/transcribeMediaWithGladia.ts +1 -1
  17. package/src/activities/notifyWebhook.ts +2 -2
  18. package/src/activities/setDocumentStatus.ts +1 -1
  19. package/src/conversion/TextractProcessor.ts +9 -9
  20. package/src/conversion/image.test.ts +110 -18
  21. package/src/conversion/image.ts +96 -15
  22. package/src/conversion/markitdown.ts +41 -0
  23. package/src/conversion/mutool.ts +1 -1
  24. package/src/conversion/pandoc.test.ts +8 -6
  25. package/src/conversion/pandoc.ts +38 -42
  26. package/src/dsl/dsl-workflow.ts +80 -12
  27. package/src/dsl/setup/ActivityContext.ts +57 -16
  28. package/src/dsl/validation.test.ts +2 -2
  29. package/src/dsl/vars.test.ts +1 -1
  30. package/src/dsl/vars.ts +6 -6
  31. package/src/dsl/workflow-exec-child.test.ts +14 -4
  32. package/src/dsl/workflow-fetch.test.ts +1 -1
  33. package/src/dsl/workflow-import.test.ts +1 -1
  34. package/src/dsl/workflow.test.ts +12 -2
  35. package/src/dsl.ts +1 -1
  36. package/src/errors.ts +27 -6
  37. package/src/index.ts +1 -1
  38. package/src/iterative-generation/activities/extractToc.ts +1 -1
  39. package/src/iterative-generation/activities/generatePart.ts +2 -2
  40. package/src/iterative-generation/activities/generateToc.ts +1 -1
  41. package/src/iterative-generation/iterativeGenerationWorkflow.ts +3 -2
  42. package/src/iterative-generation/types.ts +4 -4
  43. package/src/iterative-generation/utils.ts +4 -4
  44. package/src/system/notifyWebhookWorkflow.ts +2 -1
  45. package/src/system/recalculateEmbeddingsWorkflow.ts +2 -2
  46. package/src/utils/blobs.ts +11 -6
  47. package/src/utils/chunks.ts +17 -0
  48. package/src/utils/client.ts +4 -3
  49. package/src/utils/memory.ts +3 -8
  50. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js +0 -32
  51. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  52. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +0 -66
  53. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  54. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js +0 -18
  55. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  56. package/lib/cjs/activities/chunkDocument.js +0 -79
  57. package/lib/cjs/activities/chunkDocument.js.map +0 -1
  58. package/lib/cjs/activities/createDocumentFromOther.js +0 -64
  59. package/lib/cjs/activities/createDocumentFromOther.js.map +0 -1
  60. package/lib/cjs/activities/executeInteraction.js +0 -134
  61. package/lib/cjs/activities/executeInteraction.js.map +0 -1
  62. package/lib/cjs/activities/extractDocumentText.js +0 -135
  63. package/lib/cjs/activities/extractDocumentText.js.map +0 -1
  64. package/lib/cjs/activities/generateDocumentProperties.js +0 -59
  65. package/lib/cjs/activities/generateDocumentProperties.js.map +0 -1
  66. package/lib/cjs/activities/generateEmbeddings.js +0 -292
  67. package/lib/cjs/activities/generateEmbeddings.js.map +0 -1
  68. package/lib/cjs/activities/generateImageRendition.js +0 -104
  69. package/lib/cjs/activities/generateImageRendition.js.map +0 -1
  70. package/lib/cjs/activities/generateOrAssignContentType.js +0 -103
  71. package/lib/cjs/activities/generateOrAssignContentType.js.map +0 -1
  72. package/lib/cjs/activities/getObjectFromStore.js +0 -20
  73. package/lib/cjs/activities/getObjectFromStore.js.map +0 -1
  74. package/lib/cjs/activities/index-dsl.js +0 -37
  75. package/lib/cjs/activities/index-dsl.js.map +0 -1
  76. package/lib/cjs/activities/index.js +0 -22
  77. package/lib/cjs/activities/index.js.map +0 -1
  78. package/lib/cjs/activities/media/processPdfWithTextract.js +0 -102
  79. package/lib/cjs/activities/media/processPdfWithTextract.js.map +0 -1
  80. package/lib/cjs/activities/media/transcribeMediaWithGladia.js +0 -51
  81. package/lib/cjs/activities/media/transcribeMediaWithGladia.js.map +0 -1
  82. package/lib/cjs/activities/notifyWebhook.js +0 -34
  83. package/lib/cjs/activities/notifyWebhook.js.map +0 -1
  84. package/lib/cjs/activities/setDocumentStatus.js +0 -15
  85. package/lib/cjs/activities/setDocumentStatus.js.map +0 -1
  86. package/lib/cjs/conversion/TextractProcessor.js +0 -417
  87. package/lib/cjs/conversion/TextractProcessor.js.map +0 -1
  88. package/lib/cjs/conversion/image.js +0 -22
  89. package/lib/cjs/conversion/image.js.map +0 -1
  90. package/lib/cjs/conversion/mutool.js +0 -147
  91. package/lib/cjs/conversion/mutool.js.map +0 -1
  92. package/lib/cjs/conversion/pandoc.js +0 -39
  93. package/lib/cjs/conversion/pandoc.js.map +0 -1
  94. package/lib/cjs/dsl/conditions.js +0 -81
  95. package/lib/cjs/dsl/conditions.js.map +0 -1
  96. package/lib/cjs/dsl/dsl-workflow.js +0 -223
  97. package/lib/cjs/dsl/dsl-workflow.js.map +0 -1
  98. package/lib/cjs/dsl/dslProxyActivities.js +0 -23
  99. package/lib/cjs/dsl/dslProxyActivities.js.map +0 -1
  100. package/lib/cjs/dsl/projections.js +0 -59
  101. package/lib/cjs/dsl/projections.js.map +0 -1
  102. package/lib/cjs/dsl/setup/ActivityContext.js +0 -96
  103. package/lib/cjs/dsl/setup/ActivityContext.js.map +0 -1
  104. package/lib/cjs/dsl/setup/fetch/DataProvider.js +0 -51
  105. package/lib/cjs/dsl/setup/fetch/DataProvider.js.map +0 -1
  106. package/lib/cjs/dsl/setup/fetch/index.js +0 -16
  107. package/lib/cjs/dsl/setup/fetch/index.js.map +0 -1
  108. package/lib/cjs/dsl/setup/fetch/providers.js +0 -67
  109. package/lib/cjs/dsl/setup/fetch/providers.js.map +0 -1
  110. package/lib/cjs/dsl/test/test-child-workflow.js +0 -10
  111. package/lib/cjs/dsl/test/test-child-workflow.js.map +0 -1
  112. package/lib/cjs/dsl/validation.js +0 -122
  113. package/lib/cjs/dsl/validation.js.map +0 -1
  114. package/lib/cjs/dsl/vars.js +0 -341
  115. package/lib/cjs/dsl/vars.js.map +0 -1
  116. package/lib/cjs/dsl/walk.js +0 -100
  117. package/lib/cjs/dsl/walk.js.map +0 -1
  118. package/lib/cjs/dsl.js +0 -20
  119. package/lib/cjs/dsl.js.map +0 -1
  120. package/lib/cjs/errors.js +0 -36
  121. package/lib/cjs/errors.js.map +0 -1
  122. package/lib/cjs/index.js +0 -50
  123. package/lib/cjs/index.js.map +0 -1
  124. package/lib/cjs/iterative-generation/activities/extractToc.js +0 -47
  125. package/lib/cjs/iterative-generation/activities/extractToc.js.map +0 -1
  126. package/lib/cjs/iterative-generation/activities/finalizeOutput.js +0 -69
  127. package/lib/cjs/iterative-generation/activities/finalizeOutput.js.map +0 -1
  128. package/lib/cjs/iterative-generation/activities/generatePart.js +0 -73
  129. package/lib/cjs/iterative-generation/activities/generatePart.js.map +0 -1
  130. package/lib/cjs/iterative-generation/activities/generateToc.js +0 -91
  131. package/lib/cjs/iterative-generation/activities/generateToc.js.map +0 -1
  132. package/lib/cjs/iterative-generation/activities/index.js +0 -12
  133. package/lib/cjs/iterative-generation/activities/index.js.map +0 -1
  134. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js +0 -55
  135. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  136. package/lib/cjs/iterative-generation/types.js +0 -5
  137. package/lib/cjs/iterative-generation/types.js.map +0 -1
  138. package/lib/cjs/iterative-generation/utils.js +0 -121
  139. package/lib/cjs/iterative-generation/utils.js.map +0 -1
  140. package/lib/cjs/package.json +0 -3
  141. package/lib/cjs/result-types.js +0 -10
  142. package/lib/cjs/result-types.js.map +0 -1
  143. package/lib/cjs/system/notifyWebhookWorkflow.js +0 -46
  144. package/lib/cjs/system/notifyWebhookWorkflow.js.map +0 -1
  145. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js +0 -28
  146. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  147. package/lib/cjs/utils/auth.js +0 -15
  148. package/lib/cjs/utils/auth.js.map +0 -1
  149. package/lib/cjs/utils/blobs.js +0 -63
  150. package/lib/cjs/utils/blobs.js.map +0 -1
  151. package/lib/cjs/utils/client.js +0 -25
  152. package/lib/cjs/utils/client.js.map +0 -1
  153. package/lib/cjs/utils/expand-vars.js +0 -33
  154. package/lib/cjs/utils/expand-vars.js.map +0 -1
  155. package/lib/cjs/utils/memory.js +0 -72
  156. package/lib/cjs/utils/memory.js.map +0 -1
  157. package/lib/cjs/utils/tokens.js +0 -38
  158. package/lib/cjs/utils/tokens.js.map +0 -1
  159. package/lib/cjs/vars.js +0 -20
  160. package/lib/cjs/vars.js.map +0 -1
  161. package/lib/cjs/workflows.js +0 -15
  162. package/lib/cjs/workflows.js.map +0 -1
  163. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js +0 -29
  164. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  165. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +0 -63
  166. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  167. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js +0 -15
  168. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  169. package/lib/esm/activities/chunkDocument.js +0 -76
  170. package/lib/esm/activities/chunkDocument.js.map +0 -1
  171. package/lib/esm/activities/createDocumentFromOther.js +0 -58
  172. package/lib/esm/activities/createDocumentFromOther.js.map +0 -1
  173. package/lib/esm/activities/executeInteraction.js +0 -130
  174. package/lib/esm/activities/executeInteraction.js.map +0 -1
  175. package/lib/esm/activities/extractDocumentText.js +0 -132
  176. package/lib/esm/activities/extractDocumentText.js.map +0 -1
  177. package/lib/esm/activities/generateDocumentProperties.js +0 -56
  178. package/lib/esm/activities/generateDocumentProperties.js.map +0 -1
  179. package/lib/esm/activities/generateEmbeddings.js +0 -256
  180. package/lib/esm/activities/generateEmbeddings.js.map +0 -1
  181. package/lib/esm/activities/generateImageRendition.js +0 -98
  182. package/lib/esm/activities/generateImageRendition.js.map +0 -1
  183. package/lib/esm/activities/generateOrAssignContentType.js +0 -100
  184. package/lib/esm/activities/generateOrAssignContentType.js.map +0 -1
  185. package/lib/esm/activities/getObjectFromStore.js +0 -17
  186. package/lib/esm/activities/getObjectFromStore.js.map +0 -1
  187. package/lib/esm/activities/index-dsl.js +0 -18
  188. package/lib/esm/activities/index-dsl.js.map +0 -1
  189. package/lib/esm/activities/index.js +0 -6
  190. package/lib/esm/activities/index.js.map +0 -1
  191. package/lib/esm/activities/media/processPdfWithTextract.js +0 -98
  192. package/lib/esm/activities/media/processPdfWithTextract.js.map +0 -1
  193. package/lib/esm/activities/media/transcribeMediaWithGladia.js +0 -48
  194. package/lib/esm/activities/media/transcribeMediaWithGladia.js.map +0 -1
  195. package/lib/esm/activities/notifyWebhook.js +0 -31
  196. package/lib/esm/activities/notifyWebhook.js.map +0 -1
  197. package/lib/esm/activities/setDocumentStatus.js +0 -12
  198. package/lib/esm/activities/setDocumentStatus.js.map +0 -1
  199. package/lib/esm/conversion/TextractProcessor.js +0 -410
  200. package/lib/esm/conversion/TextractProcessor.js.map +0 -1
  201. package/lib/esm/conversion/image.js +0 -16
  202. package/lib/esm/conversion/image.js.map +0 -1
  203. package/lib/esm/conversion/mutool.js +0 -139
  204. package/lib/esm/conversion/mutool.js.map +0 -1
  205. package/lib/esm/conversion/pandoc.js +0 -36
  206. package/lib/esm/conversion/pandoc.js.map +0 -1
  207. package/lib/esm/dsl/conditions.js +0 -75
  208. package/lib/esm/dsl/conditions.js.map +0 -1
  209. package/lib/esm/dsl/dsl-workflow.js +0 -216
  210. package/lib/esm/dsl/dsl-workflow.js.map +0 -1
  211. package/lib/esm/dsl/dslProxyActivities.js +0 -20
  212. package/lib/esm/dsl/dslProxyActivities.js.map +0 -1
  213. package/lib/esm/dsl/projections.js +0 -55
  214. package/lib/esm/dsl/projections.js.map +0 -1
  215. package/lib/esm/dsl/setup/ActivityContext.js +0 -91
  216. package/lib/esm/dsl/setup/ActivityContext.js.map +0 -1
  217. package/lib/esm/dsl/setup/fetch/DataProvider.js +0 -47
  218. package/lib/esm/dsl/setup/fetch/DataProvider.js.map +0 -1
  219. package/lib/esm/dsl/setup/fetch/index.js +0 -12
  220. package/lib/esm/dsl/setup/fetch/index.js.map +0 -1
  221. package/lib/esm/dsl/setup/fetch/providers.js +0 -61
  222. package/lib/esm/dsl/setup/fetch/providers.js.map +0 -1
  223. package/lib/esm/dsl/test/test-child-workflow.js +0 -5
  224. package/lib/esm/dsl/test/test-child-workflow.js.map +0 -1
  225. package/lib/esm/dsl/validation.js +0 -118
  226. package/lib/esm/dsl/validation.js.map +0 -1
  227. package/lib/esm/dsl/vars.js +0 -335
  228. package/lib/esm/dsl/vars.js.map +0 -1
  229. package/lib/esm/dsl/walk.js +0 -96
  230. package/lib/esm/dsl/walk.js.map +0 -1
  231. package/lib/esm/dsl.js +0 -4
  232. package/lib/esm/dsl.js.map +0 -1
  233. package/lib/esm/errors.js +0 -30
  234. package/lib/esm/errors.js.map +0 -1
  235. package/lib/esm/index.js +0 -32
  236. package/lib/esm/index.js.map +0 -1
  237. package/lib/esm/iterative-generation/activities/extractToc.js +0 -44
  238. package/lib/esm/iterative-generation/activities/extractToc.js.map +0 -1
  239. package/lib/esm/iterative-generation/activities/finalizeOutput.js +0 -66
  240. package/lib/esm/iterative-generation/activities/finalizeOutput.js.map +0 -1
  241. package/lib/esm/iterative-generation/activities/generatePart.js +0 -70
  242. package/lib/esm/iterative-generation/activities/generatePart.js.map +0 -1
  243. package/lib/esm/iterative-generation/activities/generateToc.js +0 -88
  244. package/lib/esm/iterative-generation/activities/generateToc.js.map +0 -1
  245. package/lib/esm/iterative-generation/activities/index.js +0 -5
  246. package/lib/esm/iterative-generation/activities/index.js.map +0 -1
  247. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js +0 -52
  248. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  249. package/lib/esm/iterative-generation/types.js +0 -2
  250. package/lib/esm/iterative-generation/types.js.map +0 -1
  251. package/lib/esm/iterative-generation/utils.js +0 -112
  252. package/lib/esm/iterative-generation/utils.js.map +0 -1
  253. package/lib/esm/result-types.js +0 -7
  254. package/lib/esm/result-types.js.map +0 -1
  255. package/lib/esm/system/notifyWebhookWorkflow.js +0 -43
  256. package/lib/esm/system/notifyWebhookWorkflow.js.map +0 -1
  257. package/lib/esm/system/recalculateEmbeddingsWorkflow.js +0 -25
  258. package/lib/esm/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  259. package/lib/esm/utils/auth.js +0 -8
  260. package/lib/esm/utils/auth.js.map +0 -1
  261. package/lib/esm/utils/blobs.js +0 -52
  262. package/lib/esm/utils/blobs.js.map +0 -1
  263. package/lib/esm/utils/client.js +0 -22
  264. package/lib/esm/utils/client.js.map +0 -1
  265. package/lib/esm/utils/expand-vars.js +0 -30
  266. package/lib/esm/utils/expand-vars.js.map +0 -1
  267. package/lib/esm/utils/memory.js +0 -60
  268. package/lib/esm/utils/memory.js.map +0 -1
  269. package/lib/esm/utils/tokens.js +0 -34
  270. package/lib/esm/utils/tokens.js.map +0 -1
  271. package/lib/esm/vars.js +0 -4
  272. package/lib/esm/vars.js.map +0 -1
  273. package/lib/esm/workflows.js +0 -8
  274. package/lib/esm/workflows.js.map +0 -1
  275. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts +0 -17
  276. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +0 -1
  277. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts +0 -29
  278. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +0 -1
  279. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts +0 -19
  280. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +0 -1
  281. package/lib/types/activities/chunkDocument.d.ts +0 -18
  282. package/lib/types/activities/chunkDocument.d.ts.map +0 -1
  283. package/lib/types/activities/createDocumentFromOther.d.ts +0 -21
  284. package/lib/types/activities/createDocumentFromOther.d.ts.map +0 -1
  285. package/lib/types/activities/executeInteraction.d.ts +0 -44
  286. package/lib/types/activities/executeInteraction.d.ts.map +0 -1
  287. package/lib/types/activities/extractDocumentText.d.ts +0 -10
  288. package/lib/types/activities/extractDocumentText.d.ts.map +0 -1
  289. package/lib/types/activities/generateDocumentProperties.d.ts +0 -32
  290. package/lib/types/activities/generateDocumentProperties.d.ts.map +0 -1
  291. package/lib/types/activities/generateEmbeddings.d.ts +0 -49
  292. package/lib/types/activities/generateEmbeddings.d.ts.map +0 -1
  293. package/lib/types/activities/generateImageRendition.d.ts +0 -17
  294. package/lib/types/activities/generateImageRendition.d.ts.map +0 -1
  295. package/lib/types/activities/generateOrAssignContentType.d.ts +0 -44
  296. package/lib/types/activities/generateOrAssignContentType.d.ts.map +0 -1
  297. package/lib/types/activities/getObjectFromStore.d.ts +0 -14
  298. package/lib/types/activities/getObjectFromStore.d.ts.map +0 -1
  299. package/lib/types/activities/index-dsl.d.ts +0 -17
  300. package/lib/types/activities/index-dsl.d.ts.map +0 -1
  301. package/lib/types/activities/index.d.ts +0 -6
  302. package/lib/types/activities/index.d.ts.map +0 -1
  303. package/lib/types/activities/media/processPdfWithTextract.d.ts +0 -26
  304. package/lib/types/activities/media/processPdfWithTextract.d.ts.map +0 -1
  305. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts +0 -14
  306. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts.map +0 -1
  307. package/lib/types/activities/notifyWebhook.d.ts +0 -17
  308. package/lib/types/activities/notifyWebhook.d.ts.map +0 -1
  309. package/lib/types/activities/setDocumentStatus.d.ts +0 -15
  310. package/lib/types/activities/setDocumentStatus.d.ts.map +0 -1
  311. package/lib/types/conversion/TextractProcessor.d.ts +0 -45
  312. package/lib/types/conversion/TextractProcessor.d.ts.map +0 -1
  313. package/lib/types/conversion/image.d.ts +0 -9
  314. package/lib/types/conversion/image.d.ts.map +0 -1
  315. package/lib/types/conversion/mutool.d.ts +0 -19
  316. package/lib/types/conversion/mutool.d.ts.map +0 -1
  317. package/lib/types/conversion/pandoc.d.ts +0 -2
  318. package/lib/types/conversion/pandoc.d.ts.map +0 -1
  319. package/lib/types/dsl/conditions.d.ts +0 -2
  320. package/lib/types/dsl/conditions.d.ts.map +0 -1
  321. package/lib/types/dsl/dsl-workflow.d.ts +0 -5
  322. package/lib/types/dsl/dsl-workflow.d.ts.map +0 -1
  323. package/lib/types/dsl/dslProxyActivities.d.ts +0 -10
  324. package/lib/types/dsl/dslProxyActivities.d.ts.map +0 -1
  325. package/lib/types/dsl/projections.d.ts +0 -4
  326. package/lib/types/dsl/projections.d.ts.map +0 -1
  327. package/lib/types/dsl/setup/ActivityContext.d.ts +0 -14
  328. package/lib/types/dsl/setup/ActivityContext.d.ts.map +0 -1
  329. package/lib/types/dsl/setup/fetch/DataProvider.d.ts +0 -9
  330. package/lib/types/dsl/setup/fetch/DataProvider.d.ts.map +0 -1
  331. package/lib/types/dsl/setup/fetch/index.d.ts +0 -6
  332. package/lib/types/dsl/setup/fetch/index.d.ts.map +0 -1
  333. package/lib/types/dsl/setup/fetch/providers.d.ts +0 -25
  334. package/lib/types/dsl/setup/fetch/providers.d.ts.map +0 -1
  335. package/lib/types/dsl/test/test-child-workflow.d.ts +0 -4
  336. package/lib/types/dsl/test/test-child-workflow.d.ts.map +0 -1
  337. package/lib/types/dsl/validation.d.ts +0 -4
  338. package/lib/types/dsl/validation.d.ts.map +0 -1
  339. package/lib/types/dsl/vars.d.ts +0 -48
  340. package/lib/types/dsl/vars.d.ts.map +0 -1
  341. package/lib/types/dsl/walk.d.ts +0 -18
  342. package/lib/types/dsl/walk.d.ts.map +0 -1
  343. package/lib/types/dsl.d.ts +0 -4
  344. package/lib/types/dsl.d.ts.map +0 -1
  345. package/lib/types/errors.d.ts +0 -16
  346. package/lib/types/errors.d.ts.map +0 -1
  347. package/lib/types/index.d.ts +0 -31
  348. package/lib/types/index.d.ts.map +0 -1
  349. package/lib/types/iterative-generation/activities/extractToc.d.ts +0 -10
  350. package/lib/types/iterative-generation/activities/extractToc.d.ts.map +0 -1
  351. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts +0 -3
  352. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts.map +0 -1
  353. package/lib/types/iterative-generation/activities/generatePart.d.ts +0 -3
  354. package/lib/types/iterative-generation/activities/generatePart.d.ts.map +0 -1
  355. package/lib/types/iterative-generation/activities/generateToc.d.ts +0 -4
  356. package/lib/types/iterative-generation/activities/generateToc.d.ts.map +0 -1
  357. package/lib/types/iterative-generation/activities/index.d.ts +0 -5
  358. package/lib/types/iterative-generation/activities/index.d.ts.map +0 -1
  359. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts +0 -3
  360. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts.map +0 -1
  361. package/lib/types/iterative-generation/types.d.ts +0 -79
  362. package/lib/types/iterative-generation/types.d.ts.map +0 -1
  363. package/lib/types/iterative-generation/utils.d.ts +0 -27
  364. package/lib/types/iterative-generation/utils.d.ts.map +0 -1
  365. package/lib/types/result-types.d.ts +0 -22
  366. package/lib/types/result-types.d.ts.map +0 -1
  367. package/lib/types/system/notifyWebhookWorkflow.d.ts +0 -3
  368. package/lib/types/system/notifyWebhookWorkflow.d.ts.map +0 -1
  369. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts +0 -40
  370. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts.map +0 -1
  371. package/lib/types/utils/auth.d.ts +0 -4
  372. package/lib/types/utils/auth.d.ts.map +0 -1
  373. package/lib/types/utils/blobs.d.ts +0 -8
  374. package/lib/types/utils/blobs.d.ts.map +0 -1
  375. package/lib/types/utils/client.d.ts +0 -7
  376. package/lib/types/utils/client.d.ts.map +0 -1
  377. package/lib/types/utils/expand-vars.d.ts +0 -8
  378. package/lib/types/utils/expand-vars.d.ts.map +0 -1
  379. package/lib/types/utils/memory.d.ts +0 -12
  380. package/lib/types/utils/memory.d.ts.map +0 -1
  381. package/lib/types/utils/tokens.d.ts +0 -11
  382. package/lib/types/utils/tokens.d.ts.map +0 -1
  383. package/lib/types/vars.d.ts +0 -3
  384. package/lib/types/vars.d.ts.map +0 -1
  385. package/lib/types/workflows.d.ts +0 -8
  386. package/lib/types/workflows.d.ts.map +0 -1
  387. package/lib/workflows-bundle.js +0 -19897
@@ -1,59 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateDocumentProperties = generateDocumentProperties;
4
- const activity_1 = require("@temporalio/activity");
5
- const ActivityContext_js_1 = require("../dsl/setup/ActivityContext.js");
6
- const executeInteraction_js_1 = require("./executeInteraction.js");
7
- const INT_EXTRACT_INFORMATION = "sys:ExtractInformation";
8
- async function generateDocumentProperties(payload) {
9
- const context = await (0, ActivityContext_js_1.setupActivity)(payload);
10
- const { params, client, objectId } = context;
11
- const interactionName = params.interactionName ?? INT_EXTRACT_INFORMATION;
12
- const project = await context.fetchProject();
13
- const doc = await client.objects.retrieve(objectId, "+text");
14
- const type = doc.type ? await client.types.retrieve(doc.type.id) : undefined;
15
- if (!doc?.text && !params.use_vision && !doc?.content?.type?.startsWith("image/")) {
16
- activity_1.log.warn(`Object ${objectId} not found or text is empty`);
17
- return { status: "failed", error: "no-text" };
18
- }
19
- if (!type || !type.object_schema) {
20
- activity_1.log.info(`Object ${objectId} has no schema`);
21
- return { document: objectId, status: "skipped", message: "no schema defined on type" };
22
- }
23
- const getImageRef = () => {
24
- if (doc.content?.type?.startsWith("image/")) {
25
- return "store:" + doc.id;
26
- }
27
- if (params.use_vision && doc.content?.type?.startsWith("application/pdf")) {
28
- return "store:" + doc.id;
29
- }
30
- activity_1.log.info(`Object ${objectId} is not an image or pdf`);
31
- return undefined;
32
- };
33
- const promptData = {
34
- content: doc.text ?? undefined,
35
- image: getImageRef() ?? undefined,
36
- human_context: project?.configuration?.human_context ?? undefined,
37
- };
38
- activity_1.log.info(` Extracting information from object ${objectId} with type ${type.name}`, payload.debug_mode ? { params, } : undefined);
39
- const infoRes = await (0, executeInteraction_js_1.executeInteractionFromActivity)(client, interactionName, {
40
- ...params,
41
- include_previous_error: true,
42
- result_schema: type.object_schema,
43
- }, promptData, payload.debug_mode ?? false);
44
- activity_1.log.info(`Extracted information from object ${objectId} with type ${type.name}`, { runId: infoRes.id });
45
- await client.objects.update(doc.id, {
46
- properties: {
47
- ...infoRes.result,
48
- etag: doc.text_etag
49
- },
50
- text: infoRes.result.description ?? undefined,
51
- generation_run_info: {
52
- id: infoRes.id,
53
- date: new Date().toISOString(),
54
- model: infoRes.modelId,
55
- }
56
- });
57
- return { status: "completed" };
58
- }
59
- //# sourceMappingURL=generateDocumentProperties.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateDocumentProperties.js","sourceRoot":"","sources":["../../../src/activities/generateDocumentProperties.ts"],"names":[],"mappings":"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"}
@@ -1,292 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.generateEmbeddings = generateEmbeddings;
37
- const common_1 = require("@vertesia/common");
38
- const activity_1 = require("@temporalio/activity");
39
- const tf = __importStar(require("@tensorflow/tfjs-node"));
40
- const ActivityContext_js_1 = require("../dsl/setup/ActivityContext.js");
41
- const errors_js_1 = require("../errors.js");
42
- const blobs_js_1 = require("../utils/blobs.js");
43
- const tokens_js_1 = require("../utils/tokens.js");
44
- async function generateEmbeddings(payload) {
45
- const { params, client, objectId, fetchProject } = await (0, ActivityContext_js_1.setupActivity)(payload);
46
- const { force, type } = params;
47
- const projectData = await fetchProject();
48
- const config = projectData?.configuration.embeddings[type];
49
- if (!projectData) {
50
- throw new errors_js_1.NoDocumentFound('Project not found', [payload.project_id]);
51
- }
52
- if (!config) {
53
- throw new errors_js_1.NoDocumentFound('Embeddings configuration not found', [objectId]);
54
- }
55
- if (!projectData) {
56
- throw new errors_js_1.NoDocumentFound('Project not found', [payload.project_id]);
57
- }
58
- if (!projectData?.configuration.embeddings[type]?.enabled) {
59
- activity_1.log.info(`Embeddings generation disabled for type ${type} on project: ${projectData.name} (${projectData.namespace})`, { config });
60
- return { id: objectId, status: "skipped", message: `Embeddings generation disabled for type ${type}` };
61
- }
62
- activity_1.log.info(`${type} embedding generation starting for object ${objectId}`, { force, config });
63
- if (!config.environment) {
64
- throw new Error('No environment found in project configuration. Set environment in project configuration to generate embeddings.');
65
- }
66
- const document = await client.objects.retrieve(objectId, "+text +parts +embeddings +tokens +properties");
67
- if (!document) {
68
- throw new errors_js_1.NoDocumentFound('Document not found', [objectId]);
69
- }
70
- if (!document.content) {
71
- throw new errors_js_1.NoDocumentFound('Document content not found', [objectId]);
72
- }
73
- let res;
74
- switch (type) {
75
- case common_1.SupportedEmbeddingTypes.text:
76
- res = await generateTextEmbeddings({
77
- client,
78
- config,
79
- document,
80
- type
81
- });
82
- break;
83
- case common_1.SupportedEmbeddingTypes.properties:
84
- res = await generateTextEmbeddings({
85
- client,
86
- config,
87
- document,
88
- type,
89
- });
90
- break;
91
- case common_1.SupportedEmbeddingTypes.image:
92
- res = await generateImageEmbeddings({
93
- client,
94
- config,
95
- document,
96
- type
97
- });
98
- break;
99
- default:
100
- res = { id: objectId, status: "failed", message: `unsupported embedding type: ${type}` };
101
- }
102
- return res;
103
- }
104
- async function generateTextEmbeddings({ document, client, type, config }) {
105
- // if (!force && document.embeddings[type]?.etag === (document.text_etag ?? md5(document.text))) {
106
- // return { id: objectId, status: "skipped", message: "embeddings already generated" }
107
- // }
108
- if (!document) {
109
- return { status: "error", message: "document is null or undefined" };
110
- }
111
- if (type !== common_1.SupportedEmbeddingTypes.text && type !== common_1.SupportedEmbeddingTypes.properties) {
112
- return { id: document.id, status: "failed", message: `unsupported embedding type: ${type}` };
113
- }
114
- if (type === common_1.SupportedEmbeddingTypes.text && !document.text) {
115
- return { id: document.id, status: "failed", message: "no text found" };
116
- }
117
- if (type === common_1.SupportedEmbeddingTypes.properties && !document?.properties) {
118
- return { id: document.id, status: "failed", message: "no properties found" };
119
- }
120
- const { environment, model } = config;
121
- // Count tokens if not already done
122
- if (!document.tokens?.count && type === common_1.SupportedEmbeddingTypes.text) {
123
- activity_1.log.debug('Updating token count for document: ' + document.id);
124
- const tokensData = (0, tokens_js_1.countTokens)(document.text);
125
- await client.objects.update(document.id, {
126
- tokens: {
127
- ...tokensData,
128
- etag: document.text_etag ?? (0, blobs_js_1.md5)(document.text)
129
- }
130
- });
131
- document.tokens = {
132
- ...tokensData,
133
- etag: document.text_etag ?? (0, blobs_js_1.md5)(document.text)
134
- };
135
- }
136
- const maxTokens = config.max_tokens ?? 8000;
137
- //generate embeddings for the main doc if document isn't too large
138
- //if too large, we'll just generate embeddings for the parts
139
- //then we can generate embeddings for the main document by averaging the tensors
140
- activity_1.log.info(`Generating ${type} embeddings for document ${document.id}`);
141
- if (type === common_1.SupportedEmbeddingTypes.text && document.tokens?.count && document.tokens?.count > maxTokens) {
142
- activity_1.log.info('Document too large, generating embeddings for parts');
143
- if (!document.parts || document.parts.length === 0) {
144
- return { id: document.id, status: "skipped", message: "no parts found" };
145
- }
146
- const docParts = await Promise.all(document.parts?.map(async (partId) => client.objects.retrieve(partId, "+text +embeddings +properties +tokens")));
147
- activity_1.log.info(`Retrieved ${docParts.length} parts`);
148
- const generatePartEmbeddings = async (part, i) => {
149
- try {
150
- activity_1.log.info(`Generating embeddings for part ${part.id}`, { text_len: part.text?.length });
151
- if (!part.text) {
152
- return { id: part.id, number: i, result: null, status: "skipped", message: "no text found" };
153
- }
154
- if (part.tokens?.count && part.tokens.count > maxTokens) {
155
- activity_1.log.info('Part too large, skipping embeddings generation for part', { part: part.id, tokens: part.tokens.count });
156
- return { id: part.id, number: i, result: null, message: "part too large" };
157
- }
158
- const e = await generateEmbeddingsFromStudio(part.text, environment, client, model).catch(e => {
159
- activity_1.log.error('Error generating embeddings for part', { part: part.id, tokens: part.tokens, text_length: part.text?.length, error: e });
160
- return null;
161
- });
162
- if (!e || !e.values) {
163
- return { id: part.id, number: i, result: null, message: "no embeddings generated" };
164
- }
165
- activity_1.log.info(`Embeddings generated for part ${part.id}, updating object in the store.`);
166
- await client.objects.setEmbedding(part.id, common_1.SupportedEmbeddingTypes.text, {
167
- values: e.values,
168
- model: e.model,
169
- etag: part.text_etag
170
- }).catch(err => {
171
- activity_1.log.info(`Error updating embeddings on part ${part.id}`);
172
- return { id: part.id, number: i, result: null, message: "error setting embeddings on part", error: err.message };
173
- });
174
- activity_1.log.info('Generated embeddings for part: ' + part.id);
175
- return { id: part.id, number: i, result: e };
176
- }
177
- catch (err) {
178
- activity_1.log.info(`Error generating ${type} embeddings for part ${part.id} of ${document.id}`, { error: err });
179
- return { id: part.id, number: i, result: null, message: "error generating embeddings", error: err.message };
180
- }
181
- };
182
- const promises = docParts.map((p, i) => generatePartEmbeddings(p, i));
183
- const res = await Promise.all(promises);
184
- // let i = 0;
185
- // for (const p of docParts) {
186
- // log.info(`Processing part ${p.id}`)
187
- // const r = await generatePartEmbeddings(p, i++);
188
- // res.push(r)
189
- // }
190
- // Filter out parts without embeddings
191
- const validEmbeddings = res.filter(item => item.result !== null);
192
- // Compute the document-level embedding using TensorFlow for attention mechanism
193
- activity_1.log.info('Computing document-level embedding using TF');
194
- const documentEmbedding = computeAttentionEmbedding(validEmbeddings.map(item => item.result.values));
195
- // Save the document-level embedding
196
- await client.objects.setEmbedding(document.id, type, {
197
- values: documentEmbedding,
198
- model: "attention",
199
- etag: document.text_etag
200
- });
201
- return { id: document.id, status: "completed", parts: docParts.map(i => i.id), len: documentEmbedding.length, part_embeddings: res.map(r => { return { id: r.id, status: r.status, error: r.error, message: r.message }; }) };
202
- }
203
- else {
204
- activity_1.log.info(`Generating ${type} embeddings for document`);
205
- const res = await generateEmbeddingsFromStudio(JSON.stringify(document[type]), environment, client);
206
- if (!res || !res.values) {
207
- return { id: document.id, status: "failed", message: "no embeddings generated" };
208
- }
209
- activity_1.log.info(`${type} embeddings generated for document ${document.id}`, { len: res.values.length });
210
- await client.objects.setEmbedding(document.id, type, {
211
- values: res.values,
212
- model: res.model,
213
- etag: document.text_etag
214
- });
215
- return { id: document.id, type, status: "completed", len: res.values.length };
216
- }
217
- }
218
- async function generateImageEmbeddings({ document, client, type, config }) {
219
- activity_1.log.info('Generating image embeddings for document ' + document.id, { content: document.content });
220
- if (!document.content?.type?.startsWith('image/') && !document.content?.type?.includes('pdf')) {
221
- return { id: document.id, type, status: "failed", message: "content is not an image" };
222
- }
223
- const { environment, model } = config;
224
- const resRnd = await client.store.objects.getRendition(document.id, {
225
- format: "image/png",
226
- max_hw: 1024,
227
- generate_if_missing: true
228
- });
229
- if (resRnd.status === 'generating') {
230
- throw new Error("Rendition is generating, will retry later");
231
- }
232
- else if (resRnd.status === "failed" || !resRnd.rendition) {
233
- throw new errors_js_1.NoDocumentFound("Rendition retrieval failed", [document.id]);
234
- }
235
- if (!resRnd.rendition.content.source) {
236
- throw new errors_js_1.NoDocumentFound("No source found in rendition", [document.id]);
237
- }
238
- const image = await (0, blobs_js_1.fetchBlobAsBase64)(client, resRnd.rendition.content.source);
239
- const res = await client.environments.embeddings(environment, {
240
- image,
241
- model
242
- }).then(res => res).catch(e => {
243
- activity_1.log.error('Error generating embeddings for image', { error: e });
244
- throw e;
245
- });
246
- if (!res || !res.values) {
247
- return { id: document.id, status: "failed", message: "no embeddings generated" };
248
- }
249
- await client.objects.setEmbedding(document.id, common_1.SupportedEmbeddingTypes.image, {
250
- values: res.values,
251
- model: res.model,
252
- etag: document.text_etag
253
- });
254
- return { id: document.id, type, status: "completed", len: res.values.length };
255
- }
256
- async function generateEmbeddingsFromStudio(text, env, client, model) {
257
- activity_1.log.info(`Generating embeddings for text of ${text.length} chars with environment ${env}`);
258
- return client.environments.embeddings(env, {
259
- text,
260
- model
261
- }).then(res => res).catch(e => {
262
- activity_1.log.error('Error generating embeddings for text', { error: e });
263
- throw e;
264
- });
265
- }
266
- function computeAttentionEmbedding(embeddingsArray, axis = 0) {
267
- if (embeddingsArray.length === 0)
268
- return [];
269
- activity_1.log.info('Computing attention embedding for', { embeddingsArrays: embeddingsArray.map(a => a.length) });
270
- const start = new Date().getTime();
271
- // Convert embeddings array to TensorFlow tensor
272
- const embeddingsTensor = tf.tensor(embeddingsArray);
273
- // Initialize trainable attention weights
274
- const attentionWeights = tf.variable(tf.randomNormal([embeddingsArray.length]), true);
275
- // Compute attention scoresje sui
276
- const attentionScores = tf.softmax(attentionWeights);
277
- // Compute weighted sum of embeddings
278
- const weightedEmbeddings = tf.mul(embeddingsTensor.transpose(), attentionScores).transpose();
279
- const documentEmbeddingTensor = tf.sum(weightedEmbeddings, axis);
280
- // Convert the result back to a JavaScript array
281
- const documentEmbedding = documentEmbeddingTensor.arraySync();
282
- const duration = (new Date().getTime() - start);
283
- activity_1.log.info(`Computed attention embeddings in ${duration}ms - array size: ${documentEmbedding.length}`, { length: documentEmbedding.length });
284
- // Clean up tensors
285
- embeddingsTensor.dispose();
286
- attentionWeights.dispose();
287
- attentionScores.dispose();
288
- weightedEmbeddings.dispose();
289
- documentEmbeddingTensor.dispose();
290
- return documentEmbedding;
291
- }
292
- //# sourceMappingURL=generateEmbeddings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateEmbeddings.js","sourceRoot":"","sources":["../../../src/activities/generateEmbeddings.ts"],"names":[],"mappings":"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"}
@@ -1,104 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateImageRendition = generateImageRendition;
7
- const activity_1 = require("@temporalio/activity");
8
- const fs_1 = __importDefault(require("fs"));
9
- const sharp_1 = __importDefault(require("sharp"));
10
- const image_js_1 = require("../conversion/image.js");
11
- const mutool_js_1 = require("../conversion/mutool.js");
12
- const ActivityContext_js_1 = require("../dsl/setup/ActivityContext.js");
13
- const errors_js_1 = require("../errors.js");
14
- const blobs_js_1 = require("../utils/blobs.js");
15
- const memory_js_1 = require("../utils/memory.js");
16
- async function generateImageRendition(payload) {
17
- const { client, objectId, params } = await (0, ActivityContext_js_1.setupActivity)(payload);
18
- const supportedNonImageInputTypes = ['application/pdf'];
19
- const inputObject = await client.objects.retrieve(objectId).catch((err) => {
20
- activity_1.log.error(`Failed to retrieve document ${objectId}`, err);
21
- if (err.response?.status === 404) {
22
- throw new errors_js_1.NoDocumentFound(`Document ${objectId} not found`, [objectId]);
23
- }
24
- throw err;
25
- });
26
- const renditionType = await client.types.getTypeByName('Rendition');
27
- if (!params.format) {
28
- activity_1.log.error(`Format not found`);
29
- throw new errors_js_1.WorkflowParamNotFound(`format`);
30
- }
31
- if (!renditionType) {
32
- activity_1.log.error(`Rendition type not found`);
33
- throw new errors_js_1.NoDocumentFound(`Rendition type not found`, [objectId]);
34
- }
35
- if (!inputObject.content?.source) {
36
- activity_1.log.error(`Document ${objectId} has no source`);
37
- throw new errors_js_1.NoDocumentFound(`Document ${objectId} has no source`, [objectId]);
38
- }
39
- if (!inputObject.content.type || (!inputObject.content.type?.startsWith('image/') && !supportedNonImageInputTypes.includes(inputObject.content.type))) {
40
- activity_1.log.error(`Document ${objectId} is not an image`);
41
- throw new errors_js_1.NoDocumentFound(`Document ${objectId} is not an image or pdf: ${inputObject.content.type}`, [objectId]);
42
- }
43
- //array of rendition files to upload
44
- let renditionPages = [];
45
- //if PDF, convert to pages
46
- if (inputObject.content.type === 'application/pdf') {
47
- const pdfBuffer = await (0, blobs_js_1.fetchBlobAsBuffer)(client, inputObject.content.source);
48
- const pages = await (0, mutool_js_1.pdfToImages)(pdfBuffer);
49
- if (!pages.length) {
50
- activity_1.log.error(`Failed to convert pdf to image`);
51
- throw new Error(`Failed to convert pdf to image`);
52
- }
53
- renditionPages = [...pages];
54
- }
55
- else if (inputObject.content.type.startsWith('image/')) {
56
- const tmpFile = await (0, blobs_js_1.saveBlobToTempFile)(client, inputObject.content.source);
57
- const filestats = fs_1.default.statSync(tmpFile);
58
- activity_1.log.info(`Image ${objectId} copied to ${tmpFile}`, { filestats });
59
- renditionPages.push(tmpFile);
60
- }
61
- //generate rendition name, pass an index for multi parts
62
- const getRenditionName = (index = 0) => {
63
- const name = `renditions/${objectId}/${params.max_hw}/${index}.${params.format}`;
64
- return name;
65
- };
66
- if (!renditionPages || !renditionPages.length) {
67
- activity_1.log.error(`Failed to generate rendition for ${objectId}`);
68
- throw new Error(`Failed to generate rendition for ${objectId}`);
69
- }
70
- activity_1.log.info(`Uploading rendition for ${objectId} with ${renditionPages.length} pages (max_hw: ${params.max_hw}, format: ${params.format})`, { renditionPages });
71
- const uploads = renditionPages.map(async (page, i) => {
72
- const pageId = getRenditionName(i);
73
- const resized = (0, sharp_1.default)(page).pipe((0, image_js_1.imageResizer)(params.max_hw, params.format));
74
- const source = new memory_js_1.NodeStreamSource(resized, pageId.replace('renditions/', '').replace('/', '_'), 'image/' + params.format, pageId);
75
- activity_1.log.info(`Uploading rendition for ${objectId} page ${i} with max_hw: ${params.max_hw} and format: ${params.format}`);
76
- return client.objects.upload(source).catch((err) => {
77
- activity_1.log.error(`Failed to upload rendition for ${objectId} page ${i}`, err);
78
- return Promise.resolve(null);
79
- });
80
- });
81
- const uploaded = await Promise.all(uploads);
82
- if (!uploaded || !uploaded.length || !uploaded[0]) {
83
- activity_1.log.error(`Failed to upload rendition for ${objectId}`);
84
- throw new Error(`Failed to upload rendition for ${objectId}`);
85
- }
86
- activity_1.log.info(`Creating rendition for ${objectId} with max_hw: ${params.max_hw} and format: ${params.format}`, { uploaded });
87
- const rendition = await client.objects.create({
88
- name: inputObject.name + ` [Rendition ${params.max_hw}]`,
89
- type: renditionType.id,
90
- parent: inputObject.id,
91
- content: uploaded[0],
92
- properties: {
93
- mime_type: 'image/' + params.format,
94
- source_etag: inputObject.content.source,
95
- height: params.max_hw,
96
- width: params.max_hw,
97
- multipart: uploaded.length > 1,
98
- total_parts: uploaded.length
99
- }
100
- });
101
- activity_1.log.info(`Rendition ${rendition.id} created for ${objectId}`, { rendition });
102
- return { id: rendition.id, format: params.format, status: "success" };
103
- }
104
- //# sourceMappingURL=generateImageRendition.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateImageRendition.js","sourceRoot":"","sources":["../../../src/activities/generateImageRendition.ts"],"names":[],"mappings":"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"}
@@ -1,103 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateOrAssignContentType = generateOrAssignContentType;
4
- const activity_1 = require("@temporalio/activity");
5
- const ActivityContext_js_1 = require("../dsl/setup/ActivityContext.js");
6
- const tokens_js_1 = require("../utils/tokens.js");
7
- const executeInteraction_js_1 = require("./executeInteraction.js");
8
- const INT_SELECT_DOCUMENT_TYPE = "sys:SelectDocumentType";
9
- const INT_GENERATE_METADATA_MODEL = "sys:GenerateMetadataModel";
10
- async function generateOrAssignContentType(payload) {
11
- const context = await (0, ActivityContext_js_1.setupActivity)(payload);
12
- const { params, client, objectId } = context;
13
- const interactionName = params.interactionNames?.selectDocumentType ?? INT_SELECT_DOCUMENT_TYPE;
14
- activity_1.log.info("SelectDocumentType for object: " + objectId, { payload });
15
- const object = await client.objects.retrieve(objectId, "+text");
16
- //Expects object.type to be null on first ingestion of content
17
- //User initiated Content Type change via the Composable UI,
18
- //sets object.type to null when they let Composable choose for them.
19
- //sets object.type to chosen type (thus non-null) when user picks a type.
20
- if (object.type) {
21
- activity_1.log.warn(`Object ${objectId} has already a type. Skipping type creation.`);
22
- return { status: "skipped", message: "Object already has a type: " + object.type.name };
23
- }
24
- if (!object || (!object.text && !object.content?.type?.startsWith("image/") && !object.content?.type?.startsWith("application/pdf"))) {
25
- activity_1.log.info(`Object ${objectId} not found or text is empty and not an image`, { object });
26
- return { status: "failed", error: "no-text" };
27
- }
28
- const types = await client.types.list();
29
- //make a list of all existing types, and add hints if any
30
- const existing_types = types.map(t => t.name).filter(n => !["DocumentPart", "Rendition"].includes(n));
31
- if (params.typesHint) {
32
- const newHints = params.typesHint.filter((t) => !existing_types.includes(t));
33
- existing_types.push(...newHints);
34
- }
35
- const content = object.text ? (0, tokens_js_1.truncByMaxTokens)(object.text, params.truncate || 4000) : undefined;
36
- const getImage = async () => {
37
- if (object.content?.type?.includes("pdf") && object.text?.length && object.text?.length < 100) {
38
- return "store:" + objectId;
39
- }
40
- if (!object.content?.type?.startsWith("image/")) {
41
- return undefined;
42
- }
43
- const res = await client.objects.getRendition(objectId, { max_hw: 1024, format: "image/png", generate_if_missing: true });
44
- if (!res.rendition && res.status === "generating") {
45
- //throw to try again
46
- throw new Error(`Rendition for object ${objectId} is in progress`);
47
- }
48
- else if (res.rendition) {
49
- return "store:" + objectId;
50
- }
51
- };
52
- const fileRef = await getImage();
53
- activity_1.log.info("Execute SelectDocumentType interaction on content with \nexisting types: " + existing_types.join(","));
54
- const res = await (0, executeInteraction_js_1.executeInteractionFromActivity)(client, interactionName, params, {
55
- existing_types, content, image: fileRef
56
- });
57
- activity_1.log.info("Selected Content Type Result: " + JSON.stringify(res.result));
58
- //if type is not identified or not present in the database, generate a new type
59
- let selectedType = undefined;
60
- selectedType = types.find(t => t.name === res.result.document_type);
61
- if (!selectedType) {
62
- activity_1.log.warn("Document type not idenfified: starting type generation");
63
- const newType = await generateNewType(context, existing_types, content, fileRef);
64
- selectedType = { id: newType.id, name: newType.name };
65
- }
66
- if (!selectedType) {
67
- activity_1.log.error("Type not found: ", res.result);
68
- throw new Error("Type not found: " + res.result.document_type);
69
- }
70
- //update object with selected type
71
- await client.objects.update(objectId, {
72
- type: selectedType.id,
73
- });
74
- return {
75
- id: selectedType.id,
76
- name: selectedType.name,
77
- isNew: !types.find(t => t.name === selectedType.name)
78
- };
79
- }
80
- async function generateNewType(context, existing_types, content, fileRef) {
81
- const { client, params } = context;
82
- const project = await context.fetchProject();
83
- const interactionName = params.interactionNames?.generateMetadataModel ?? INT_GENERATE_METADATA_MODEL;
84
- const genTypeRes = await (0, executeInteraction_js_1.executeInteractionFromActivity)(client, interactionName, params, {
85
- existing_types: existing_types,
86
- content: content,
87
- human_context: project?.configuration?.human_context ?? undefined,
88
- image: fileRef ? fileRef : undefined
89
- });
90
- if (!genTypeRes.result.document_type) {
91
- activity_1.log.error("No name generated for type", genTypeRes);
92
- throw new Error("No name generated for type");
93
- }
94
- activity_1.log.info("Generated schema for type", genTypeRes.result.metadata_schema);
95
- const typeData = {
96
- name: genTypeRes.result.document_type,
97
- object_schema: genTypeRes.result.metadata_schema,
98
- is_chunkable: genTypeRes.result.is_chunkable,
99
- };
100
- const type = await client.types.create(typeData);
101
- return type;
102
- }
103
- //# sourceMappingURL=generateOrAssignContentType.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateOrAssignContentType.js","sourceRoot":"","sources":["../../../src/activities/generateOrAssignContentType.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getObjectFromStore = getObjectFromStore;
4
- const projections_js_1 = require("../dsl/projections.js");
5
- const ActivityContext_js_1 = require("../dsl/setup/ActivityContext.js");
6
- /**
7
- * We are using a union type for the status parameter since typescript enumbs breaks the workflow code generation
8
- * @param objectId
9
- * @param status
10
- */
11
- async function getObjectFromStore(payload) {
12
- const { client, params, objectId } = await (0, ActivityContext_js_1.setupActivity)(payload);
13
- const obj = await client.objects.retrieve(objectId, params.select);
14
- const projection = (0, projections_js_1.projectResult)(payload, params, obj, obj);
15
- return {
16
- ...projection,
17
- id: obj.id,
18
- };
19
- }
20
- //# sourceMappingURL=getObjectFromStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getObjectFromStore.js","sourceRoot":"","sources":["../../../src/activities/getObjectFromStore.ts"],"names":[],"mappings":";;AAkBA,gDAYC;AA7BD,0DAAsD;AACtD,wEAAgE;AAWhE;;;;GAIG;AACI,KAAK,UAAU,kBAAkB,CAAC,OAAqD;IAC1F,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,kCAAa,EAAkB,OAAO,CAAC,CAAC;IAEnF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAEnE,MAAM,UAAU,GAAG,IAAA,8BAAa,EAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAE5D,OAAO;QACH,GAAG,UAAU;QACb,EAAE,EAAE,GAAG,CAAC,EAAE;KACb,CAAA;AAEL,CAAC"}