@vertesia/workflow 0.56.0 → 0.58.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.
- package/lib/cjs/activities/generateEmbeddings.js +158 -61
- package/lib/cjs/activities/generateEmbeddings.js.map +1 -1
- package/lib/cjs/activities/generateOrAssignContentType.js +19 -8
- package/lib/cjs/activities/generateOrAssignContentType.js.map +1 -1
- package/lib/cjs/activities/index-dsl.js +4 -2
- package/lib/cjs/activities/index-dsl.js.map +1 -1
- package/lib/cjs/activities/renditions/generateImageRendition.js +57 -0
- package/lib/cjs/activities/renditions/generateImageRendition.js.map +1 -0
- package/lib/cjs/activities/renditions/generateVideoRendition.js +196 -0
- package/lib/cjs/activities/renditions/generateVideoRendition.js.map +1 -0
- package/lib/cjs/dsl/dsl-workflow.js +8 -0
- package/lib/cjs/dsl/dsl-workflow.js.map +1 -1
- package/lib/cjs/index.js +3 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/utils/renditions.js +88 -0
- package/lib/cjs/utils/renditions.js.map +1 -0
- package/lib/esm/activities/generateEmbeddings.js +160 -63
- package/lib/esm/activities/generateEmbeddings.js.map +1 -1
- package/lib/esm/activities/generateOrAssignContentType.js +21 -10
- package/lib/esm/activities/generateOrAssignContentType.js.map +1 -1
- package/lib/esm/activities/index-dsl.js +2 -1
- package/lib/esm/activities/index-dsl.js.map +1 -1
- package/lib/esm/activities/renditions/generateImageRendition.js +54 -0
- package/lib/esm/activities/renditions/generateImageRendition.js.map +1 -0
- package/lib/esm/activities/renditions/generateVideoRendition.js +190 -0
- package/lib/esm/activities/renditions/generateVideoRendition.js.map +1 -0
- package/lib/esm/dsl/dsl-workflow.js +8 -0
- package/lib/esm/dsl/dsl-workflow.js.map +1 -1
- package/lib/esm/index.js +3 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/utils/renditions.js +80 -0
- package/lib/esm/utils/renditions.js.map +1 -0
- package/lib/types/activities/generateEmbeddings.d.ts +1 -1
- package/lib/types/activities/generateEmbeddings.d.ts.map +1 -1
- package/lib/types/activities/generateOrAssignContentType.d.ts.map +1 -1
- package/lib/types/activities/index-dsl.d.ts +2 -1
- package/lib/types/activities/index-dsl.d.ts.map +1 -1
- package/lib/types/activities/{generateImageRendition.d.ts → renditions/generateImageRendition.d.ts} +4 -5
- package/lib/types/activities/renditions/generateImageRendition.d.ts.map +1 -0
- package/lib/types/activities/renditions/generateVideoRendition.d.ts +15 -0
- package/lib/types/activities/renditions/generateVideoRendition.d.ts.map +1 -0
- package/lib/types/dsl/dsl-workflow.d.ts.map +1 -1
- package/lib/types/index.d.ts +3 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/utils/renditions.d.ts +23 -0
- package/lib/types/utils/renditions.d.ts.map +1 -0
- package/lib/workflows-bundle.js +99 -34
- package/package.json +3 -3
- package/src/activities/generateEmbeddings.ts +440 -296
- package/src/activities/generateOrAssignContentType.ts +185 -144
- package/src/activities/index-dsl.ts +2 -1
- package/src/activities/renditions/generateImageRendition.ts +99 -0
- package/src/activities/renditions/generateVideoRendition.ts +288 -0
- package/src/dsl/dsl-workflow.ts +8 -0
- package/src/dsl/workflow-exec-child.test.ts +1 -0
- package/src/dsl/workflow.test.ts +1 -0
- package/src/index.ts +3 -1
- package/src/utils/renditions.ts +124 -0
- package/lib/cjs/activities/generateImageRendition.js +0 -167
- package/lib/cjs/activities/generateImageRendition.js.map +0 -1
- package/lib/esm/activities/generateImageRendition.js +0 -161
- package/lib/esm/activities/generateImageRendition.js.map +0 -1
- package/lib/types/activities/generateImageRendition.d.ts.map +0 -1
- package/src/activities/generateImageRendition.ts +0 -202
@@ -1,7 +1,7 @@
|
|
1
1
|
import { log } from "@temporalio/activity";
|
2
|
-
import { SupportedEmbeddingTypes } from "@vertesia/common";
|
2
|
+
import { ImageRenditionFormat, SupportedEmbeddingTypes, } from "@vertesia/common";
|
3
3
|
import { setupActivity } from "../dsl/setup/ActivityContext.js";
|
4
|
-
import { NoDocumentFound } from
|
4
|
+
import { NoDocumentFound } from "../errors.js";
|
5
5
|
import { fetchBlobAsBase64, md5 } from "../utils/blobs.js";
|
6
6
|
import { getContentParts } from "../utils/chunks.js";
|
7
7
|
import { countTokens } from "../utils/tokens.js";
|
@@ -11,28 +11,35 @@ export async function generateEmbeddings(payload) {
|
|
11
11
|
const projectData = await fetchProject();
|
12
12
|
const config = projectData?.configuration.embeddings[type];
|
13
13
|
if (!projectData) {
|
14
|
-
throw new NoDocumentFound(
|
14
|
+
throw new NoDocumentFound("Project not found", [payload.project_id]);
|
15
15
|
}
|
16
16
|
if (!config) {
|
17
|
-
throw new NoDocumentFound(
|
17
|
+
throw new NoDocumentFound("Embeddings configuration not found", [objectId]);
|
18
18
|
}
|
19
19
|
if (!projectData) {
|
20
|
-
throw new NoDocumentFound(
|
20
|
+
throw new NoDocumentFound("Project not found", [payload.project_id]);
|
21
21
|
}
|
22
22
|
if (!projectData?.configuration.embeddings[type]?.enabled) {
|
23
23
|
log.info(`Embeddings generation disabled for type ${type} on project: ${projectData.name} (${projectData.namespace})`, { config });
|
24
|
-
return {
|
24
|
+
return {
|
25
|
+
id: objectId,
|
26
|
+
status: "skipped",
|
27
|
+
message: `Embeddings generation disabled for type ${type}`,
|
28
|
+
};
|
25
29
|
}
|
26
|
-
log.info(`${type} embedding generation starting for object ${objectId}`, {
|
30
|
+
log.info(`${type} embedding generation starting for object ${objectId}`, {
|
31
|
+
force,
|
32
|
+
config,
|
33
|
+
});
|
27
34
|
if (!config.environment) {
|
28
|
-
throw new Error(
|
35
|
+
throw new Error("No environment found in project configuration. Set environment in project configuration to generate embeddings.");
|
29
36
|
}
|
30
37
|
const document = await client.objects.retrieve(objectId, "+text +parts +embeddings +tokens +properties");
|
31
38
|
if (!document) {
|
32
|
-
throw new NoDocumentFound(
|
39
|
+
throw new NoDocumentFound("Document not found", [objectId]);
|
33
40
|
}
|
34
41
|
if (!document.content) {
|
35
|
-
throw new NoDocumentFound(
|
42
|
+
throw new NoDocumentFound("Document content not found", [objectId]);
|
36
43
|
}
|
37
44
|
let res;
|
38
45
|
switch (type) {
|
@@ -41,7 +48,7 @@ export async function generateEmbeddings(payload) {
|
|
41
48
|
client,
|
42
49
|
config,
|
43
50
|
document,
|
44
|
-
type
|
51
|
+
type,
|
45
52
|
});
|
46
53
|
break;
|
47
54
|
case SupportedEmbeddingTypes.properties:
|
@@ -57,11 +64,15 @@ export async function generateEmbeddings(payload) {
|
|
57
64
|
client,
|
58
65
|
config,
|
59
66
|
document,
|
60
|
-
type
|
67
|
+
type,
|
61
68
|
});
|
62
69
|
break;
|
63
70
|
default:
|
64
|
-
res = {
|
71
|
+
res = {
|
72
|
+
id: objectId,
|
73
|
+
status: "failed",
|
74
|
+
message: `unsupported embedding type: ${type}`,
|
75
|
+
};
|
65
76
|
}
|
66
77
|
return res;
|
67
78
|
}
|
@@ -72,30 +83,39 @@ async function generateTextEmbeddings({ document, client, type, config }, parts)
|
|
72
83
|
if (!document) {
|
73
84
|
return { status: "error", message: "document is null or undefined" };
|
74
85
|
}
|
75
|
-
if (type !== SupportedEmbeddingTypes.text &&
|
76
|
-
|
86
|
+
if (type !== SupportedEmbeddingTypes.text &&
|
87
|
+
type !== SupportedEmbeddingTypes.properties) {
|
88
|
+
return {
|
89
|
+
id: document.id,
|
90
|
+
status: "failed",
|
91
|
+
message: `unsupported embedding type: ${type}`,
|
92
|
+
};
|
77
93
|
}
|
78
94
|
if (type === SupportedEmbeddingTypes.text && !document.text) {
|
79
95
|
return { id: document.id, status: "failed", message: "no text found" };
|
80
96
|
}
|
81
97
|
if (type === SupportedEmbeddingTypes.properties && !document?.properties) {
|
82
|
-
return {
|
98
|
+
return {
|
99
|
+
id: document.id,
|
100
|
+
status: "failed",
|
101
|
+
message: "no properties found",
|
102
|
+
};
|
83
103
|
}
|
84
104
|
const { environment, model } = config;
|
85
105
|
const partDefinitions = parts ?? [];
|
86
106
|
// Count tokens if not already done
|
87
107
|
if (!document.tokens?.count && type === SupportedEmbeddingTypes.text) {
|
88
|
-
log.debug(
|
108
|
+
log.debug("Updating token count for document: " + document.id);
|
89
109
|
const tokensData = countTokens(document.text);
|
90
110
|
await client.objects.update(document.id, {
|
91
111
|
tokens: {
|
92
112
|
...tokensData,
|
93
|
-
etag: document.text_etag ?? md5(document.text)
|
94
|
-
}
|
113
|
+
etag: document.text_etag ?? md5(document.text),
|
114
|
+
},
|
95
115
|
});
|
96
116
|
document.tokens = {
|
97
117
|
...tokensData,
|
98
|
-
etag: document.text_etag ?? md5(document.text)
|
118
|
+
etag: document.text_etag ?? md5(document.text),
|
99
119
|
};
|
100
120
|
}
|
101
121
|
const maxTokens = config.max_tokens ?? 8000;
|
@@ -103,115 +123,192 @@ async function generateTextEmbeddings({ document, client, type, config }, parts)
|
|
103
123
|
//if too large, we'll just generate embeddings for the parts
|
104
124
|
//then we can generate embeddings for the main document by averaging the tensors
|
105
125
|
log.info(`Generating ${type} embeddings for document ${document.id}`);
|
106
|
-
if (type === SupportedEmbeddingTypes.text &&
|
107
|
-
|
126
|
+
if (type === SupportedEmbeddingTypes.text &&
|
127
|
+
document.tokens?.count &&
|
128
|
+
document.tokens?.count > maxTokens) {
|
129
|
+
log.info("Document too large, generating embeddings for parts");
|
108
130
|
if (!document.text) {
|
109
131
|
return { id: document.id, status: "failed", message: "no text found" };
|
110
132
|
}
|
111
133
|
if (!partDefinitions || partDefinitions.length === 0) {
|
112
|
-
log.info(
|
134
|
+
log.info("No parts found for document, skipping embeddings generation");
|
113
135
|
return { id: document.id, status: "failed", message: "no parts found" };
|
114
136
|
}
|
115
|
-
log.info(
|
137
|
+
log.info("Generating embeddings for parts", {
|
138
|
+
parts: partDefinitions,
|
139
|
+
max_tokens: maxTokens,
|
140
|
+
});
|
116
141
|
const docParts = getContentParts(document.text, partDefinitions);
|
117
142
|
log.info(`Retrieved ${docParts.length} parts`);
|
118
143
|
const start = new Date().getTime();
|
119
144
|
const generatePartEmbeddings = async (partContent, i) => {
|
120
145
|
const localStart = new Date().getTime();
|
121
146
|
try {
|
122
|
-
log.info(`Generating embeddings for part ${i}`, {
|
147
|
+
log.info(`Generating embeddings for part ${i}`, {
|
148
|
+
text_len: partContent.length,
|
149
|
+
});
|
123
150
|
if (!partContent) {
|
124
|
-
return {
|
151
|
+
return {
|
152
|
+
id: i,
|
153
|
+
number: i,
|
154
|
+
result: null,
|
155
|
+
status: "skipped",
|
156
|
+
message: "no text found",
|
157
|
+
};
|
125
158
|
}
|
126
|
-
const e = await generateEmbeddingsFromStudio(partContent, environment, client, model).catch(e => {
|
127
|
-
log.error(
|
159
|
+
const e = await generateEmbeddingsFromStudio(partContent, environment, client, model).catch((e) => {
|
160
|
+
log.error("Error generating embeddings for part " + i, {
|
161
|
+
text_length: partContent.length,
|
162
|
+
error: e,
|
163
|
+
});
|
128
164
|
return null;
|
129
165
|
});
|
130
166
|
if (!e || !e.values) {
|
131
|
-
return {
|
167
|
+
return {
|
168
|
+
id: i,
|
169
|
+
number: i,
|
170
|
+
result: null,
|
171
|
+
message: "no embeddings generated",
|
172
|
+
};
|
132
173
|
}
|
133
174
|
if (e.values.length === 0) {
|
134
|
-
return {
|
175
|
+
return {
|
176
|
+
id: i,
|
177
|
+
number: i,
|
178
|
+
result: null,
|
179
|
+
message: "no embeddings generated",
|
180
|
+
};
|
135
181
|
}
|
136
|
-
log.info(`Generated embeddings for part ${i}`, {
|
182
|
+
log.info(`Generated embeddings for part ${i}`, {
|
183
|
+
len: e.values.length,
|
184
|
+
duration: new Date().getTime() - localStart,
|
185
|
+
});
|
137
186
|
return { number: i, result: e };
|
138
187
|
}
|
139
188
|
catch (err) {
|
140
189
|
log.info(`Error generating ${type} embeddings for part ${i} of ${document.id}`, { error: err });
|
141
|
-
return {
|
190
|
+
return {
|
191
|
+
number: i,
|
192
|
+
result: null,
|
193
|
+
message: "error generating embeddings",
|
194
|
+
error: err.message,
|
195
|
+
};
|
142
196
|
}
|
143
197
|
};
|
144
198
|
const partEmbeddings = await Promise.all(docParts.map((part, i) => generatePartEmbeddings(part, i)));
|
145
|
-
const validPartEmbeddings = partEmbeddings
|
146
|
-
|
147
|
-
|
199
|
+
const validPartEmbeddings = partEmbeddings
|
200
|
+
.filter((e) => e.result !== null)
|
201
|
+
.map((e) => e.result);
|
202
|
+
const averagedEmbedding = computeAttentionEmbedding(validPartEmbeddings.map((e) => e.values));
|
203
|
+
log.info(`Averaged embeddings for document ${document.id} in ${(new Date().getTime() - start) / 1000} seconds`, {
|
204
|
+
len: averagedEmbedding.length,
|
205
|
+
count: validPartEmbeddings.length,
|
206
|
+
max_tokens: maxTokens,
|
207
|
+
});
|
148
208
|
await client.objects.setEmbedding(document.id, type, {
|
149
209
|
values: averagedEmbedding,
|
150
210
|
model: validPartEmbeddings[0].model,
|
151
|
-
etag: document.text_etag
|
211
|
+
etag: document.text_etag,
|
212
|
+
});
|
213
|
+
log.info(`Object ${document.id} embedding set`, {
|
214
|
+
type,
|
215
|
+
len: averagedEmbedding.length,
|
152
216
|
});
|
153
|
-
log.info(`Object ${document.id} embedding set`, { type, len: averagedEmbedding.length });
|
154
217
|
}
|
155
218
|
else {
|
156
219
|
log.info(`Generating ${type} embeddings for document`);
|
157
220
|
const res = await generateEmbeddingsFromStudio(JSON.stringify(document[type]), environment, client);
|
158
221
|
if (!res || !res.values) {
|
159
|
-
return {
|
222
|
+
return {
|
223
|
+
id: document.id,
|
224
|
+
status: "failed",
|
225
|
+
message: "no embeddings generated",
|
226
|
+
};
|
160
227
|
}
|
161
|
-
log.info(`${type} embeddings generated for document ${document.id}`, {
|
228
|
+
log.info(`${type} embeddings generated for document ${document.id}`, {
|
229
|
+
len: res.values.length,
|
230
|
+
});
|
162
231
|
await client.objects.setEmbedding(document.id, type, {
|
163
232
|
values: res.values,
|
164
233
|
model: res.model,
|
165
|
-
etag: document.text_etag
|
234
|
+
etag: document.text_etag,
|
166
235
|
});
|
167
|
-
return {
|
236
|
+
return {
|
237
|
+
id: document.id,
|
238
|
+
type,
|
239
|
+
status: "completed",
|
240
|
+
len: res.values.length,
|
241
|
+
};
|
168
242
|
}
|
169
243
|
}
|
170
|
-
async function generateImageEmbeddings({ document, client, type, config }) {
|
171
|
-
log.info(
|
172
|
-
|
173
|
-
|
244
|
+
async function generateImageEmbeddings({ document, client, type, config, }) {
|
245
|
+
log.info("Generating image embeddings for document " + document.id, {
|
246
|
+
content: document.content,
|
247
|
+
});
|
248
|
+
if (!document.content?.type?.startsWith("image/") &&
|
249
|
+
!document.content?.type?.includes("pdf")) {
|
250
|
+
return {
|
251
|
+
id: document.id,
|
252
|
+
type,
|
253
|
+
status: "failed",
|
254
|
+
message: "content is not an image",
|
255
|
+
};
|
174
256
|
}
|
175
257
|
const { environment, model } = config;
|
176
258
|
const resRnd = await client.store.objects.getRendition(document.id, {
|
177
|
-
format:
|
259
|
+
format: ImageRenditionFormat.jpeg,
|
178
260
|
max_hw: 1024,
|
179
|
-
generate_if_missing: true
|
261
|
+
generate_if_missing: true,
|
262
|
+
sign_url: false,
|
180
263
|
});
|
181
|
-
if (resRnd.status ===
|
264
|
+
if (resRnd.status === "generating") {
|
182
265
|
throw new Error("Rendition is generating, will retry later");
|
183
266
|
}
|
184
|
-
else if (resRnd.status === "failed" ||
|
267
|
+
else if (resRnd.status === "failed" ||
|
268
|
+
!resRnd.renditions ||
|
269
|
+
!resRnd.renditions.length) {
|
185
270
|
throw new NoDocumentFound("Rendition retrieval failed", [document.id]);
|
186
271
|
}
|
187
|
-
|
272
|
+
const renditions = resRnd.renditions;
|
273
|
+
if (!renditions?.length) {
|
188
274
|
throw new NoDocumentFound("No source found in rendition", [document.id]);
|
189
275
|
}
|
190
|
-
const
|
191
|
-
const
|
276
|
+
const rendition = renditions[0];
|
277
|
+
const image = await fetchBlobAsBase64(client, rendition);
|
278
|
+
const res = await client.environments
|
279
|
+
.embeddings(environment, {
|
192
280
|
image,
|
193
|
-
model
|
194
|
-
})
|
195
|
-
|
281
|
+
model,
|
282
|
+
})
|
283
|
+
.then((res) => res)
|
284
|
+
.catch((e) => {
|
285
|
+
log.error("Error generating embeddings for image", { error: e });
|
196
286
|
throw e;
|
197
287
|
});
|
198
288
|
if (!res || !res.values) {
|
199
|
-
return {
|
289
|
+
return {
|
290
|
+
id: document.id,
|
291
|
+
status: "failed",
|
292
|
+
message: "no embeddings generated",
|
293
|
+
};
|
200
294
|
}
|
201
295
|
await client.objects.setEmbedding(document.id, SupportedEmbeddingTypes.image, {
|
202
296
|
values: res.values,
|
203
297
|
model: res.model,
|
204
|
-
etag: document.text_etag
|
298
|
+
etag: document.text_etag,
|
205
299
|
});
|
206
300
|
return { id: document.id, type, status: "completed", len: res.values.length };
|
207
301
|
}
|
208
302
|
async function generateEmbeddingsFromStudio(text, env, client, model) {
|
209
303
|
log.info(`Generating embeddings for text of ${text.length} chars with environment ${env}`);
|
210
|
-
return client.environments
|
304
|
+
return client.environments
|
305
|
+
.embeddings(env, {
|
211
306
|
text,
|
212
|
-
model
|
213
|
-
})
|
214
|
-
|
307
|
+
model,
|
308
|
+
})
|
309
|
+
.then((res) => res)
|
310
|
+
.catch((e) => {
|
311
|
+
log.error("Error generating embeddings for text", { error: e });
|
215
312
|
throw e;
|
216
313
|
});
|
217
314
|
}
|
@@ -225,9 +322,9 @@ function computeAttentionEmbedding(chunkEmbeddings) {
|
|
225
322
|
// Generate random attention weights
|
226
323
|
const attentionWeights = chunkEmbeddings.map(() => Math.random());
|
227
324
|
// Apply softmax to get attention scores
|
228
|
-
const expWeights = attentionWeights.map(w => Math.exp(w));
|
325
|
+
const expWeights = attentionWeights.map((w) => Math.exp(w));
|
229
326
|
const sumExpWeights = expWeights.reduce((sum, val) => sum + val, 0);
|
230
|
-
const attentionScores = expWeights.map(w => w / sumExpWeights);
|
327
|
+
const attentionScores = expWeights.map((w) => w / sumExpWeights);
|
231
328
|
// Get embedding dimension
|
232
329
|
const embeddingDim = chunkEmbeddings[0].length;
|
233
330
|
// Initialize document embedding
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generateEmbeddings.js","sourceRoot":"","sources":["../../../src/activities/generateEmbeddings.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"generateEmbeddings.js","sourceRoot":"","sources":["../../../src/activities/generateEmbeddings.ts"],"names":[],"mappings":"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"}
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import { log } from "@temporalio/activity";
|
2
|
-
import {
|
2
|
+
import { ImageRenditionFormat, } from "@vertesia/common";
|
3
|
+
import { setupActivity, } from "../dsl/setup/ActivityContext.js";
|
3
4
|
import { truncByMaxTokens } from "../utils/tokens.js";
|
4
|
-
import { executeInteractionFromActivity } from "./executeInteraction.js";
|
5
|
+
import { executeInteractionFromActivity, } from "./executeInteraction.js";
|
5
6
|
const INT_SELECT_DOCUMENT_TYPE = "sys:SelectDocumentType";
|
6
7
|
const INT_GENERATE_METADATA_MODEL = "sys:GenerateMetadataModel";
|
7
8
|
export async function generateOrAssignContentType(payload) {
|
@@ -16,13 +17,18 @@ export async function generateOrAssignContentType(payload) {
|
|
16
17
|
//sets object.type to chosen type (thus non-null) when user picks a type.
|
17
18
|
if (object.type) {
|
18
19
|
log.warn(`Object ${objectId} has already a type. Skipping type creation.`);
|
19
|
-
return {
|
20
|
+
return {
|
21
|
+
status: "skipped",
|
22
|
+
message: "Object already has a type: " + object.type.name,
|
23
|
+
};
|
20
24
|
}
|
21
25
|
if (!object ||
|
22
26
|
(!object.text &&
|
23
27
|
!object.content?.type?.startsWith("image/") &&
|
24
28
|
!object.content?.type?.startsWith("application/pdf"))) {
|
25
|
-
log.info(`Object ${objectId} not found or text is empty and not an image`, {
|
29
|
+
log.info(`Object ${objectId} not found or text is empty and not an image`, {
|
30
|
+
object,
|
31
|
+
});
|
26
32
|
return { status: "failed", error: "no-text" };
|
27
33
|
}
|
28
34
|
const types = await client.types.list(undefined, {
|
@@ -30,9 +36,13 @@ export async function generateOrAssignContentType(payload) {
|
|
30
36
|
});
|
31
37
|
//make a list of all existing types, and add hints if any
|
32
38
|
const existing_types = types.filter((t) => !["DocumentPart", "Rendition"].includes(t.name));
|
33
|
-
const content = object.text
|
39
|
+
const content = object.text
|
40
|
+
? truncByMaxTokens(object.text, params.truncate || 30000)
|
41
|
+
: undefined;
|
34
42
|
const getImage = async () => {
|
35
|
-
if (object.content?.type?.includes("pdf") &&
|
43
|
+
if (object.content?.type?.includes("pdf") &&
|
44
|
+
object.text?.length &&
|
45
|
+
object.text?.length < 100) {
|
36
46
|
return "store:" + objectId;
|
37
47
|
}
|
38
48
|
if (!object.content?.type?.startsWith("image/")) {
|
@@ -40,14 +50,14 @@ export async function generateOrAssignContentType(payload) {
|
|
40
50
|
}
|
41
51
|
const res = await client.objects.getRendition(objectId, {
|
42
52
|
max_hw: 1024,
|
43
|
-
format:
|
53
|
+
format: ImageRenditionFormat.jpeg,
|
44
54
|
generate_if_missing: true,
|
45
55
|
});
|
46
|
-
if (!res.
|
56
|
+
if (!res.renditions?.length && res.status === "generating") {
|
47
57
|
//throw to try again
|
48
58
|
throw new Error(`Rendition for object ${objectId} is in progress`);
|
49
59
|
}
|
50
|
-
else if (res.
|
60
|
+
else if (res.renditions) {
|
51
61
|
return "store:" + objectId;
|
52
62
|
}
|
53
63
|
};
|
@@ -85,7 +95,8 @@ export async function generateOrAssignContentType(payload) {
|
|
85
95
|
async function generateNewType(context, existing_types, content, fileRef) {
|
86
96
|
const { client, params } = context;
|
87
97
|
const project = await context.fetchProject();
|
88
|
-
const interactionName = params.interactionNames?.generateMetadataModel ??
|
98
|
+
const interactionName = params.interactionNames?.generateMetadataModel ??
|
99
|
+
INT_GENERATE_METADATA_MODEL;
|
89
100
|
const genTypeRes = await executeInteractionFromActivity(client, interactionName, params, {
|
90
101
|
existing_types,
|
91
102
|
content: content,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generateOrAssignContentType.js","sourceRoot":"","sources":["../../../src/activities/generateOrAssignContentType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;
|
1
|
+
{"version":3,"file":"generateOrAssignContentType.js","sourceRoot":"","sources":["../../../src/activities/generateOrAssignContentType.ts"],"names":[],"mappings":"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"}
|
@@ -8,7 +8,8 @@ export { executeInteraction } from "./executeInteraction.js";
|
|
8
8
|
export { extractDocumentText } from "./extractDocumentText.js";
|
9
9
|
export { generateDocumentProperties } from "./generateDocumentProperties.js";
|
10
10
|
export { generateEmbeddings } from "./generateEmbeddings.js";
|
11
|
-
export { generateImageRendition } from "./generateImageRendition.js";
|
11
|
+
export { generateImageRendition } from "./renditions/generateImageRendition.js";
|
12
|
+
export { generateVideoRendition } from "./renditions/generateVideoRendition.js";
|
12
13
|
export { generateOrAssignContentType } from "./generateOrAssignContentType.js";
|
13
14
|
export { getObjectFromStore } from "./getObjectFromStore.js";
|
14
15
|
export { handleDslError } from "./handleError.js";
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index-dsl.js","sourceRoot":"","sources":["../../../src/activities/index-dsl.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,wCAAwC,EAAE,MAAM,wDAAwD,CAAC;AAClH,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"index-dsl.js","sourceRoot":"","sources":["../../../src/activities/index-dsl.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,wCAAwC,EAAE,MAAM,wDAAwD,CAAC;AAClH,OAAO,EAAE,gCAAgC,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import { log } from "@temporalio/activity";
|
2
|
+
import { setupActivity } from "../../dsl/setup/ActivityContext.js";
|
3
|
+
import { NoDocumentFound, WorkflowParamNotFound } from "../../errors.js";
|
4
|
+
import { saveBlobToTempFile } from "../../utils/blobs.js";
|
5
|
+
import { uploadRenditionPages, } from "../../utils/renditions.js";
|
6
|
+
export async function generateImageRendition(payload) {
|
7
|
+
const { client, objectId, params: originParams, } = await setupActivity(payload);
|
8
|
+
// Fix: Use maxHeightWidth if max_hw is not provided
|
9
|
+
const params = {
|
10
|
+
...originParams,
|
11
|
+
max_hw: originParams.max_hw || originParams.maxHeightWidth || 1024, // Default to 1024 if both are missing
|
12
|
+
format: originParams.format || originParams.format_output || "png", // Default to png if format is missing
|
13
|
+
};
|
14
|
+
log.info(`Generating image rendition for ${objectId}`, {
|
15
|
+
originParams,
|
16
|
+
params,
|
17
|
+
});
|
18
|
+
const inputObject = await client.objects.retrieve(objectId).catch((err) => {
|
19
|
+
log.error(`Failed to retrieve document ${objectId}`, { err });
|
20
|
+
if (err.message.includes("not found")) {
|
21
|
+
throw new NoDocumentFound(`Document ${objectId} not found`, [objectId]);
|
22
|
+
}
|
23
|
+
throw err;
|
24
|
+
});
|
25
|
+
if (!params.format) {
|
26
|
+
log.error(`Format not found`);
|
27
|
+
throw new WorkflowParamNotFound(`format`);
|
28
|
+
}
|
29
|
+
if (!inputObject.content?.source) {
|
30
|
+
log.error(`Document ${objectId} has no source`);
|
31
|
+
throw new NoDocumentFound(`Document ${objectId} has no source`, [objectId]);
|
32
|
+
}
|
33
|
+
if (!inputObject.content.type ||
|
34
|
+
!inputObject.content.type?.startsWith("image/")) {
|
35
|
+
log.error(`Document ${objectId} is not an image or a video: ${inputObject.content.type}`);
|
36
|
+
throw new NoDocumentFound(`Document ${objectId} is not an image or a video: ${inputObject.content.type}`, [objectId]);
|
37
|
+
}
|
38
|
+
//array of rendition files to upload
|
39
|
+
let renditionPages = [];
|
40
|
+
const imageFile = await saveBlobToTempFile(client, inputObject.content.source);
|
41
|
+
log.info(`Image ${objectId} copied to ${imageFile}`);
|
42
|
+
renditionPages.push(imageFile);
|
43
|
+
const uploaded = await uploadRenditionPages(client, objectId, [imageFile], params);
|
44
|
+
if (!uploaded || !uploaded.length || !uploaded[0]) {
|
45
|
+
log.error(`Failed to upload rendition for ${objectId}`, { uploaded });
|
46
|
+
throw new Error(`Failed to upload rendition for ${objectId} - upload object is empty`);
|
47
|
+
}
|
48
|
+
return {
|
49
|
+
uploads: uploaded.map((u) => u),
|
50
|
+
format: params.format,
|
51
|
+
status: "success",
|
52
|
+
};
|
53
|
+
}
|
54
|
+
//# sourceMappingURL=generateImageRendition.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"generateImageRendition.js","sourceRoot":"","sources":["../../../../src/activities/renditions/generateImageRendition.ts"],"names":[],"mappings":"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"}
|