@activepieces/piece-ai 0.4.4 → 0.4.5

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 (53) hide show
  1. package/package.json +7 -30
  2. package/src/index.js +271 -28
  3. package/src/index.d.ts +0 -4
  4. package/src/index.d.ts.map +0 -1
  5. package/src/index.js.map +0 -1
  6. package/src/lib/actions/agents/agent-output-builder.d.ts +0 -32
  7. package/src/lib/actions/agents/agent-output-builder.d.ts.map +0 -1
  8. package/src/lib/actions/agents/agent-output-builder.js +0 -112
  9. package/src/lib/actions/agents/agent-output-builder.js.map +0 -1
  10. package/src/lib/actions/agents/run-agent.d.ts +0 -10
  11. package/src/lib/actions/agents/run-agent.d.ts.map +0 -1
  12. package/src/lib/actions/agents/run-agent.js +0 -325
  13. package/src/lib/actions/agents/run-agent.js.map +0 -1
  14. package/src/lib/actions/agents/tools.d.ts +0 -30
  15. package/src/lib/actions/agents/tools.d.ts.map +0 -1
  16. package/src/lib/actions/agents/tools.js +0 -307
  17. package/src/lib/actions/agents/tools.js.map +0 -1
  18. package/src/lib/actions/agents/utils.d.ts +0 -24
  19. package/src/lib/actions/agents/utils.d.ts.map +0 -1
  20. package/src/lib/actions/agents/utils.js +0 -190
  21. package/src/lib/actions/agents/utils.js.map +0 -1
  22. package/src/lib/actions/image/generate-image.d.ts +0 -8
  23. package/src/lib/actions/image/generate-image.d.ts.map +0 -1
  24. package/src/lib/actions/image/generate-image.js +0 -286
  25. package/src/lib/actions/image/generate-image.js.map +0 -1
  26. package/src/lib/actions/text/ask-ai.d.ts +0 -11
  27. package/src/lib/actions/text/ask-ai.d.ts.map +0 -1
  28. package/src/lib/actions/text/ask-ai.js +0 -115
  29. package/src/lib/actions/text/ask-ai.js.map +0 -1
  30. package/src/lib/actions/text/summarize-text.d.ts +0 -8
  31. package/src/lib/actions/text/summarize-text.d.ts.map +0 -1
  32. package/src/lib/actions/text/summarize-text.js +0 -65
  33. package/src/lib/actions/text/summarize-text.js.map +0 -1
  34. package/src/lib/actions/utility/classify-text.d.ts +0 -7
  35. package/src/lib/actions/utility/classify-text.d.ts.map +0 -1
  36. package/src/lib/actions/utility/classify-text.js +0 -55
  37. package/src/lib/actions/utility/classify-text.js.map +0 -1
  38. package/src/lib/actions/utility/extract-structured-data.d.ts +0 -11
  39. package/src/lib/actions/utility/extract-structured-data.d.ts.map +0 -1
  40. package/src/lib/actions/utility/extract-structured-data.js +0 -260
  41. package/src/lib/actions/utility/extract-structured-data.js.map +0 -1
  42. package/src/lib/common/ai-sdk.d.ts +0 -90
  43. package/src/lib/common/ai-sdk.d.ts.map +0 -1
  44. package/src/lib/common/ai-sdk.js +0 -242
  45. package/src/lib/common/ai-sdk.js.map +0 -1
  46. package/src/lib/common/props.d.ts +0 -12
  47. package/src/lib/common/props.d.ts.map +0 -1
  48. package/src/lib/common/props.js +0 -69
  49. package/src/lib/common/props.js.map +0 -1
  50. package/src/lib/common/web-search.d.ts +0 -41
  51. package/src/lib/common/web-search.d.ts.map +0 -1
  52. package/src/lib/common/web-search.js +0 -191
  53. package/src/lib/common/web-search.js.map +0 -1
@@ -1,286 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateImageAction = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const ai_1 = require("ai");
7
- const ai_2 = require("ai");
8
- const mime_types_1 = tslib_1.__importDefault(require("mime-types"));
9
- const shared_1 = require("@activepieces/shared");
10
- const ai_sdk_1 = require("../../common/ai-sdk");
11
- const shared_2 = require("@activepieces/shared");
12
- const props_1 = require("../../common/props");
13
- exports.generateImageAction = (0, pieces_framework_1.createAction)({
14
- audience: 'human',
15
- name: 'generateImage',
16
- displayName: 'Generate Image',
17
- description: 'Create unique, high-quality images from simple text descriptions using AI.',
18
- props: {
19
- provider: (0, props_1.aiProps)({ modelType: 'image' }).provider,
20
- model: (0, props_1.aiProps)({ modelType: 'image' }).model,
21
- prompt: pieces_framework_1.Property.LongText({
22
- displayName: 'Prompt',
23
- required: true,
24
- }),
25
- inputImages: pieces_framework_1.Property.Array({
26
- displayName: 'Input Images',
27
- description: 'Provide images for editing, variation, or merging. Support depends on the selected model.',
28
- required: false,
29
- properties: {
30
- file: pieces_framework_1.Property.File({
31
- displayName: 'Image File',
32
- required: true,
33
- }),
34
- },
35
- }),
36
- advancedOptions: pieces_framework_1.Property.DynamicProperties({
37
- displayName: 'Advanced Options',
38
- required: false,
39
- auth: pieces_framework_1.PieceAuth.None(),
40
- refreshers: ['provider', 'model'],
41
- props: (propsValue) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
42
- const rawProvider = propsValue['provider'];
43
- const rawModel = propsValue['model'];
44
- const { provider: effectiveProvider, model: effectiveModel } = (0, shared_1.getEffectiveProviderAndModel)({
45
- provider: rawProvider,
46
- model: rawModel,
47
- });
48
- const providerId = effectiveProvider !== null && effectiveProvider !== void 0 ? effectiveProvider : rawProvider;
49
- const modelId = effectiveModel !== null && effectiveModel !== void 0 ? effectiveModel : rawModel;
50
- let options = {};
51
- if (providerId === shared_2.AIProviderName.OPENAI) {
52
- options = {
53
- quality: pieces_framework_1.Property.StaticDropdown({
54
- options: {
55
- options: modelId === 'dall-e-3'
56
- ? [
57
- { label: 'Standard', value: 'standard' },
58
- { label: 'HD', value: 'hd' },
59
- ]
60
- : modelId === 'gpt-image-1'
61
- ? [
62
- { label: 'High', value: 'high' },
63
- { label: 'Medium', value: 'medium' },
64
- { label: 'Low', value: 'low' },
65
- ]
66
- : [],
67
- disabled: modelId === 'dall-e-2',
68
- },
69
- defaultValue: modelId === 'dall-e-3' ? 'standard' : 'high',
70
- displayName: 'Image Quality',
71
- required: false,
72
- }),
73
- size: pieces_framework_1.Property.StaticDropdown({
74
- options: {
75
- options: modelId === 'dall-e-3'
76
- ? [
77
- { label: '1024x1024', value: '1024x1024' },
78
- { label: '1792x1024', value: '1792x1024' },
79
- { label: '1024x1792', value: '1024x1792' },
80
- ]
81
- : modelId === 'gpt-image-1'
82
- ? [
83
- { label: '1024x1024', value: '1024x1024' },
84
- { label: '1536x1024', value: '1536x1024' },
85
- { label: '1024x1536', value: '1024x1536' },
86
- ]
87
- : [
88
- { label: '256x256', value: '256x256' },
89
- { label: '512x512', value: '512x512' },
90
- { label: '1024x1024', value: '1024x1024' },
91
- ],
92
- },
93
- displayName: 'Image Size',
94
- required: false,
95
- }),
96
- };
97
- if (modelId === 'gpt-image-1') {
98
- options = Object.assign(Object.assign({}, options), { background: pieces_framework_1.Property.StaticDropdown({
99
- options: {
100
- options: [
101
- { label: 'Auto', value: 'auto' },
102
- { label: 'Transparent', value: 'transparent' },
103
- { label: 'Opaque', value: 'opaque' },
104
- ],
105
- },
106
- defaultValue: 'auto',
107
- description: 'The background of the image.',
108
- displayName: 'Background',
109
- required: true,
110
- }) });
111
- }
112
- return options;
113
- }
114
- return options;
115
- }),
116
- }),
117
- },
118
- run(context) {
119
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
120
- const provider = context.propsValue.provider;
121
- const modelId = context.propsValue.model;
122
- const inputImages = collectInputImages({
123
- inputImages: context.propsValue.inputImages,
124
- advancedOptions: context.propsValue.advancedOptions,
125
- });
126
- const image = yield getGeneratedImage({
127
- provider: provider,
128
- modelId,
129
- engineToken: context.server.token,
130
- apiUrl: context.server.apiUrl,
131
- prompt: context.propsValue.prompt,
132
- inputImages,
133
- projectId: context.project.id,
134
- flowId: context.flows.current.id,
135
- runId: context.run.id,
136
- advancedOptions: context.propsValue.advancedOptions,
137
- });
138
- const imageData = image.base64 && image.base64.length > 0
139
- ? Buffer.from(image.base64, 'base64')
140
- : Buffer.from(image.uint8Array);
141
- return context.files.write({
142
- data: imageData,
143
- fileName: 'image.png',
144
- });
145
- });
146
- },
147
- });
148
- const collectInputImages = ({ inputImages, advancedOptions, }) => {
149
- const fromTopLevel = extractImageFiles(inputImages);
150
- if (fromTopLevel.length > 0) {
151
- return fromTopLevel;
152
- }
153
- return extractImageFiles(advancedOptions === null || advancedOptions === void 0 ? void 0 : advancedOptions['image']);
154
- };
155
- const extractImageFiles = (value) => {
156
- if (!Array.isArray(value)) {
157
- return [];
158
- }
159
- return value.flatMap((entry) => {
160
- if (entry &&
161
- typeof entry === 'object' &&
162
- 'file' in entry &&
163
- entry.file) {
164
- return [entry.file];
165
- }
166
- return [];
167
- });
168
- };
169
- const getGeneratedImage = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ provider, modelId, engineToken, apiUrl, prompt, inputImages, projectId, flowId, runId, advancedOptions, }) {
170
- const model = yield (0, ai_sdk_1.createAIModel)({
171
- provider,
172
- modelId,
173
- engineToken,
174
- apiUrl,
175
- projectId,
176
- flowId,
177
- runId,
178
- isImage: true,
179
- });
180
- const { provider: effectiveProvider } = (0, shared_1.getEffectiveProviderAndModel)({ provider, model: modelId });
181
- const resolvedProvider = (effectiveProvider !== null && effectiveProvider !== void 0 ? effectiveProvider : provider);
182
- const hasInputImages = inputImages.length > 0;
183
- return withImageInputErrorContext({ modelId, hasInputImages }, () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
184
- switch (resolvedProvider) {
185
- case shared_2.AIProviderName.GOOGLE:
186
- case shared_2.AIProviderName.ACTIVEPIECES:
187
- case shared_2.AIProviderName.OPENROUTER:
188
- case shared_2.AIProviderName.CLOUDFLARE_GATEWAY:
189
- return generateImageUsingGenerateText({
190
- model: model,
191
- prompt,
192
- inputImages,
193
- });
194
- default: {
195
- const sanitizedAdvancedOptions = stripLegacyImageField(advancedOptions);
196
- const sdkImages = inputImages.map((file) => Buffer.from(file.base64, 'base64'));
197
- const { image } = yield (0, ai_2.generateImage)({
198
- model,
199
- prompt: hasInputImages
200
- ? { text: prompt, images: sdkImages }
201
- : prompt,
202
- providerOptions: {
203
- [resolvedProvider]: Object.assign({}, sanitizedAdvancedOptions),
204
- },
205
- });
206
- return image;
207
- }
208
- }
209
- }));
210
- });
211
- const withImageInputErrorContext = (_a, run_1) => tslib_1.__awaiter(void 0, [_a, run_1], void 0, function* ({ modelId, hasInputImages }, run) {
212
- try {
213
- return yield run();
214
- }
215
- catch (error) {
216
- if (!hasInputImages) {
217
- throw error;
218
- }
219
- const original = error instanceof Error ? error.message : String(error);
220
- throw new Error(`Image generation failed for model "${modelId}". ` +
221
- `This model may not support input images. Try a model that supports image editing — ` +
222
- `for example gpt-image-1, dall-e-2, or a Gemini Nano Banana model — or remove the input images. ` +
223
- `Original error: ${original}`);
224
- }
225
- });
226
- const generateImageUsingGenerateText = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ model, prompt, inputImages, }) {
227
- const imageFiles = inputImages.map((file) => {
228
- const detected = file.extension ? mime_types_1.default.lookup(file.extension) : false;
229
- const fileType = detected && ALLOWED_IMAGE_MIME_TYPES.has(detected)
230
- ? detected
231
- : 'image/jpeg';
232
- return {
233
- type: 'image',
234
- image: `data:${fileType};base64,${file.base64}`,
235
- };
236
- });
237
- const result = yield (0, ai_1.generateText)({
238
- model,
239
- providerOptions: {
240
- google: { responseModalities: ['TEXT', 'IMAGE'] },
241
- openrouter: { modalities: ['image', 'text'] },
242
- },
243
- messages: [
244
- {
245
- role: 'user',
246
- content: [{ type: 'text', text: prompt }, ...imageFiles],
247
- },
248
- ],
249
- });
250
- assertImageGenerationSuccess(result);
251
- return result.files[0];
252
- });
253
- const stripLegacyImageField = (advancedOptions) => {
254
- if ((0, shared_1.isNil)(advancedOptions)) {
255
- return advancedOptions;
256
- }
257
- const _a = advancedOptions, { image: _legacy } = _a, rest = tslib_1.__rest(_a, ["image"]);
258
- return rest;
259
- };
260
- const ALLOWED_IMAGE_MIME_TYPES = new Set([
261
- 'image/jpeg',
262
- 'image/png',
263
- 'image/gif',
264
- 'image/webp',
265
- 'image/avif',
266
- ]);
267
- const assertImageGenerationSuccess = (result) => {
268
- const responseBody = result.response.body &&
269
- typeof result.response.body === 'object' &&
270
- 'candidates' in result.response.body
271
- ? result.response.body
272
- : { candidates: [] };
273
- const responseCandidates = Array.isArray(responseBody === null || responseBody === void 0 ? void 0 : responseBody.candidates)
274
- ? responseBody === null || responseBody === void 0 ? void 0 : responseBody.candidates
275
- : [];
276
- responseCandidates.forEach((candidate) => {
277
- if (candidate.finishReason !== 'STOP') {
278
- throw new Error('Image generation failed Reason:\n ' +
279
- JSON.stringify(responseCandidates, null, 2));
280
- }
281
- });
282
- if ((0, shared_1.isNil)(result.files) || result.files.length === 0) {
283
- throw new Error('No image generated');
284
- }
285
- };
286
- //# sourceMappingURL=generate-image.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-image.js","sourceRoot":"","sources":["../../../../../src/lib/actions/image/generate-image.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- export declare const askAI: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").PieceAuthProperty, {
2
- provider: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
3
- model: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
4
- prompt: import("@activepieces/pieces-framework").LongTextProperty<true>;
5
- conversationKey: import("@activepieces/pieces-framework").ShortTextProperty<false>;
6
- creativity: import("@activepieces/pieces-framework").NumberProperty<false>;
7
- maxOutputTokens: import("@activepieces/pieces-framework").NumberProperty<false>;
8
- webSearch: import("@activepieces/pieces-framework").CheckboxProperty<false>;
9
- webSearchOptions: import("@activepieces/pieces-framework").DynamicProperties<false, undefined>;
10
- }>;
11
- //# sourceMappingURL=ask-ai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ask-ai.d.ts","sourceRoot":"","sources":["../../../../../src/lib/actions/text/ask-ai.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,KAAK;;;;;;;;;EA4HhB,CAAC"}
@@ -1,115 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.askAI = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const ai_1 = require("ai");
7
- const shared_1 = require("@activepieces/shared");
8
- const props_1 = require("../../common/props");
9
- const ai_sdk_1 = require("../../common/ai-sdk");
10
- const web_search_1 = require("../../common/web-search");
11
- exports.askAI = (0, pieces_framework_1.createAction)({
12
- audience: 'human',
13
- name: 'askAi',
14
- displayName: 'Ask AI',
15
- description: 'A flexible AI step. ask it to analyze data, explain, draft, or decide based on your flow\'s data.',
16
- props: {
17
- provider: (0, props_1.aiProps)({ modelType: 'text' }).provider,
18
- model: (0, props_1.aiProps)({ modelType: 'text' }).model,
19
- prompt: pieces_framework_1.Property.LongText({
20
- displayName: 'Prompt',
21
- required: true,
22
- }),
23
- conversationKey: pieces_framework_1.Property.ShortText({
24
- displayName: 'Conversation Key',
25
- required: false,
26
- }),
27
- creativity: pieces_framework_1.Property.Number({
28
- displayName: 'Creativity',
29
- required: false,
30
- defaultValue: 100,
31
- description: 'Controls the creativity of the AI response. A higher value will make the AI more creative and a lower value will make it more deterministic.',
32
- }),
33
- maxOutputTokens: pieces_framework_1.Property.Number({
34
- displayName: 'Max Tokens',
35
- required: false,
36
- defaultValue: 2000,
37
- }),
38
- webSearch: pieces_framework_1.Property.Checkbox({
39
- displayName: 'Web Search',
40
- required: false,
41
- defaultValue: false,
42
- description: 'Whether to use web search to find information for the AI to use in its response.',
43
- }),
44
- webSearchOptions: (0, web_search_1.buildWebSearchOptionsProperty)((propsValue) => ({
45
- provider: propsValue['provider'],
46
- model: propsValue['model'],
47
- }), ['webSearch', 'provider', 'model']),
48
- },
49
- run(context) {
50
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
51
- var _a, _b, _c, _d, _e;
52
- const provider = context.propsValue.provider;
53
- const modelId = context.propsValue.model;
54
- const storage = context.store;
55
- const webSearchEnabled = !!context.propsValue.webSearch;
56
- const webSearchOptions = ((_a = context.propsValue.webSearchOptions) !== null && _a !== void 0 ? _a : {});
57
- const { tools: webSearchTools, providerOptions } = (0, web_search_1.buildWebSearchConfig)({
58
- provider,
59
- model: modelId,
60
- webSearchEnabled,
61
- webSearchOptions,
62
- });
63
- const { provider: effectiveProvider } = (0, shared_1.getEffectiveProviderAndModel)({
64
- provider: provider,
65
- model: modelId,
66
- });
67
- const model = yield (0, ai_sdk_1.createAIModel)(Object.assign({ provider: provider, modelId, engineToken: context.server.token, apiUrl: context.server.apiUrl, projectId: context.project.id, flowId: context.flows.current.id, runId: context.run.id }, (0, shared_1.spreadIfDefined)('openaiResponsesModel', webSearchEnabled && effectiveProvider === shared_1.AIProviderName.OPENAI ? true : undefined)));
68
- const conversationKey = context.propsValue.conversationKey
69
- ? `ask-ai-conversation:${context.propsValue.conversationKey}`
70
- : null;
71
- let conversation = null;
72
- if (conversationKey) {
73
- conversation = (_b = (yield storage.get(conversationKey))) !== null && _b !== void 0 ? _b : [];
74
- if (!conversation) {
75
- yield storage.put(conversationKey, { messages: [] });
76
- }
77
- }
78
- const stopWhen = webSearchTools
79
- ? (0, ai_1.stepCountIs)((_c = webSearchOptions === null || webSearchOptions === void 0 ? void 0 : webSearchOptions.maxUses) !== null && _c !== void 0 ? _c : 5)
80
- : undefined;
81
- const response = yield (0, ai_1.generateText)({
82
- model,
83
- messages: [
84
- ...(conversation !== null && conversation !== void 0 ? conversation : []),
85
- {
86
- role: 'user',
87
- content: context.propsValue.prompt,
88
- },
89
- ],
90
- maxOutputTokens: context.propsValue.maxOutputTokens,
91
- temperature: ((_d = context.propsValue.creativity) !== null && _d !== void 0 ? _d : 100) / 100,
92
- tools: webSearchTools,
93
- stopWhen,
94
- providerOptions,
95
- });
96
- conversation === null || conversation === void 0 ? void 0 : conversation.push({
97
- role: 'user',
98
- content: context.propsValue.prompt,
99
- });
100
- conversation === null || conversation === void 0 ? void 0 : conversation.push({
101
- role: 'assistant',
102
- content: (_e = response.text) !== null && _e !== void 0 ? _e : '',
103
- });
104
- if (conversationKey) {
105
- yield storage.put(conversationKey, conversation);
106
- }
107
- const includeSources = webSearchTools && webSearchOptions.includeSources;
108
- if (includeSources) {
109
- return { text: response.text, sources: response.sources };
110
- }
111
- return response.text;
112
- });
113
- },
114
- });
115
- //# sourceMappingURL=ask-ai.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ask-ai.js","sourceRoot":"","sources":["../../../../../src/lib/actions/text/ask-ai.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- export declare const summarizeText: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").PieceAuthProperty, {
2
- provider: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
3
- model: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
4
- text: import("@activepieces/pieces-framework").LongTextProperty<true>;
5
- prompt: import("@activepieces/pieces-framework").ShortTextProperty<true>;
6
- maxOutputTokens: import("@activepieces/pieces-framework").NumberProperty<false>;
7
- }>;
8
- //# sourceMappingURL=summarize-text.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"summarize-text.d.ts","sourceRoot":"","sources":["../../../../../src/lib/actions/text/summarize-text.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa;;;;;;EAyDxB,CAAC"}
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.summarizeText = void 0;
4
- const tslib_1 = require("tslib");
5
- const shared_1 = require("@activepieces/shared");
6
- const ai_sdk_1 = require("../../common/ai-sdk");
7
- const pieces_framework_1 = require("@activepieces/pieces-framework");
8
- const ai_1 = require("ai");
9
- const props_1 = require("../../common/props");
10
- exports.summarizeText = (0, pieces_framework_1.createAction)({
11
- audience: 'human',
12
- name: 'summarizeText',
13
- displayName: 'Summarize Text',
14
- description: 'Summarize long emails, articles, or documents into what matters.',
15
- props: {
16
- provider: (0, props_1.aiProps)({ modelType: 'text' }).provider,
17
- model: (0, props_1.aiProps)({ modelType: 'text' }).model,
18
- text: pieces_framework_1.Property.LongText({
19
- displayName: 'Text',
20
- required: true,
21
- }),
22
- prompt: pieces_framework_1.Property.ShortText({
23
- displayName: 'Prompt',
24
- defaultValue: 'Summarize the following text in a clear and concise manner, capturing the key points and main ideas while keeping the summary brief and informative.',
25
- required: true,
26
- }),
27
- maxOutputTokens: pieces_framework_1.Property.Number({
28
- displayName: 'Max Tokens',
29
- required: false,
30
- defaultValue: 2000,
31
- }),
32
- },
33
- run(context) {
34
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
35
- var _a;
36
- const provider = context.propsValue.provider;
37
- const modelId = context.propsValue.model;
38
- const model = yield (0, ai_sdk_1.createAIModel)({
39
- provider: provider,
40
- modelId,
41
- engineToken: context.server.token,
42
- apiUrl: context.server.apiUrl,
43
- projectId: context.project.id,
44
- flowId: context.flows.current.id,
45
- runId: context.run.id,
46
- });
47
- const response = yield (0, ai_1.generateText)({
48
- model,
49
- messages: [
50
- {
51
- role: 'user',
52
- content: `${context.propsValue.prompt} Summarize the following text : ${context.propsValue.text}`
53
- },
54
- ],
55
- maxOutputTokens: context.propsValue.maxOutputTokens,
56
- temperature: 1,
57
- providerOptions: {
58
- [provider]: Object.assign({}, (provider === shared_1.AIProviderName.OPENAI ? { reasoning_effort: 'minimal' } : {}))
59
- }
60
- });
61
- return (_a = response.text) !== null && _a !== void 0 ? _a : '';
62
- });
63
- },
64
- });
65
- //# sourceMappingURL=summarize-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"summarize-text.js","sourceRoot":"","sources":["../../../../../src/lib/actions/text/summarize-text.ts"],"names":[],"mappings":";;;;AAAA,iDAAsD;AACtD,gDAAoD;AACpD,qEAAwE;AACxE,2BAAkC;AAClC,8CAA6C;AAEhC,QAAA,aAAa,GAAG,IAAA,+BAAY,EAAC;IACxC,QAAQ,EAAE,OAAO;IACjB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,kEAAkE;IAC/E,KAAK,EAAE;QACL,QAAQ,EAAE,IAAA,eAAO,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ;QACjD,KAAK,EAAE,IAAA,eAAO,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK;QAC3C,IAAI,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACtB,WAAW,EAAE,MAAM;YACnB,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACzB,WAAW,EAAE,QAAQ;YACrB,YAAY,EACV,sJAAsJ;YACxJ,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,eAAe,EAAE,2BAAQ,CAAC,MAAM,CAAC;YAC/B,WAAW,EAAE,YAAY;YACzB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;SACnB,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;;YACf,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;YAEzC,MAAM,KAAK,GAAG,MAAM,IAAA,sBAAa,EAAC;gBAChC,QAAQ,EAAE,QAA0B;gBACpC,OAAO;gBACP,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;gBACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC7B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBAChC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;aACtB,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAY,EAAC;gBAClC,KAAK;gBACL,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,mCAAmC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE;qBAClG;iBACF;gBACD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe;gBACnD,WAAW,EAAE,CAAC;gBACd,eAAe,EAAE;oBACf,CAAC,QAAQ,CAAC,oBACL,CAAC,QAAQ,KAAK,uBAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC/E;iBACF;aACF,CAAC,CAAC;YAEH,OAAO,MAAA,QAAQ,CAAC,IAAI,mCAAI,EAAE,CAAC;QAC7B,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -1,7 +0,0 @@
1
- export declare const classifyText: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").PieceAuthProperty, {
2
- provider: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
3
- model: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
4
- text: import("@activepieces/pieces-framework").LongTextProperty<true>;
5
- categories: import("@activepieces/pieces-framework").ArrayProperty<true>;
6
- }>;
7
- //# sourceMappingURL=classify-text.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"classify-text.d.ts","sourceRoot":"","sources":["../../../../../src/lib/actions/utility/classify-text.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY;;;;;EAmDvB,CAAC"}
@@ -1,55 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.classifyText = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const ai_1 = require("ai");
7
- const ai_sdk_1 = require("../../common/ai-sdk");
8
- const props_1 = require("../../common/props");
9
- exports.classifyText = (0, pieces_framework_1.createAction)({
10
- audience: 'human',
11
- name: 'classifyText',
12
- displayName: 'Classify Text',
13
- description: 'Categorize any text input using custom labels, so your flow knows what to do next.',
14
- props: {
15
- provider: (0, props_1.aiProps)({ modelType: 'text' }).provider,
16
- model: (0, props_1.aiProps)({ modelType: 'text' }).model,
17
- text: pieces_framework_1.Property.LongText({
18
- displayName: 'Text to Classify',
19
- required: true,
20
- }),
21
- categories: pieces_framework_1.Property.Array({
22
- displayName: 'Categories',
23
- description: 'Categories to classify text into.',
24
- required: true,
25
- }),
26
- },
27
- run(context) {
28
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
29
- var _a;
30
- const categories = (_a = context.propsValue.categories) !== null && _a !== void 0 ? _a : [];
31
- const provider = context.propsValue.provider;
32
- const modelId = context.propsValue.model;
33
- const model = yield (0, ai_sdk_1.createAIModel)({
34
- provider: provider,
35
- modelId,
36
- engineToken: context.server.token,
37
- apiUrl: context.server.apiUrl,
38
- projectId: context.project.id,
39
- flowId: context.flows.current.id,
40
- runId: context.run.id,
41
- });
42
- const response = yield (0, ai_1.generateText)({
43
- model,
44
- prompt: `As a text classifier, your task is to assign one of the following categories to the provided text: ${categories.join(', ')}. Please respond with only the selected category as a single word, and nothing else.
45
- Text to classify: "${context.propsValue.text}"`,
46
- });
47
- const result = response.text.trim();
48
- if (!categories.includes(result)) {
49
- throw new Error('Unable to classify the text into the provided categories.');
50
- }
51
- return result;
52
- });
53
- },
54
- });
55
- //# sourceMappingURL=classify-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"classify-text.js","sourceRoot":"","sources":["../../../../../src/lib/actions/utility/classify-text.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,2BAAkC;AAClC,gDAAoD;AACpD,8CAA6C;AAGhC,QAAA,YAAY,GAAG,IAAA,+BAAY,EAAC;IACvC,QAAQ,EAAE,OAAO;IACjB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,oFAAoF;IACjG,KAAK,EAAE;QACL,QAAQ,EAAE,IAAA,eAAO,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ;QACjD,KAAK,EAAE,IAAA,eAAO,EAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK;QAC3C,IAAI,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACtB,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,KAAK,CAAC;YACzB,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;;YACf,MAAM,UAAU,GAAG,MAAC,OAAO,CAAC,UAAU,CAAC,UAAuB,mCAAI,EAAE,CAAC;YAErE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;YAEzC,MAAM,KAAK,GAAG,MAAM,IAAA,sBAAa,EAAC;gBAChC,QAAQ,EAAE,QAA0B;gBACpC,OAAO;gBACP,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;gBACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC7B,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBAChC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE;aACtB,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAY,EAAC;gBAClC,KAAK;gBACL,MAAM,EAAE,sGAAsG,UAAU,CAAC,IAAI,CAC3H,IAAI,CACL;2BACoB,OAAO,CAAC,UAAU,CAAC,IAAI,GAAG;aAChD,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAEpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- export declare const extractStructuredData: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").PieceAuthProperty, {
2
- provider: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
3
- model: import("@activepieces/pieces-framework").DropdownProperty<string, true, undefined>;
4
- text: import("@activepieces/pieces-framework").LongTextProperty<false>;
5
- files: import("@activepieces/pieces-framework").ArrayProperty<false>;
6
- prompt: import("@activepieces/pieces-framework").LongTextProperty<false>;
7
- mode: import("@activepieces/pieces-framework").StaticDropdownProperty<"simple" | "advanced", false> | import("@activepieces/pieces-framework").StaticDropdownProperty<"simple" | "advanced", true>;
8
- schema: import("@activepieces/pieces-framework").DynamicProperties<true, undefined>;
9
- maxOutputTokens: import("@activepieces/pieces-framework").NumberProperty<false>;
10
- }>;
11
- //# sourceMappingURL=extract-structured-data.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extract-structured-data.d.ts","sourceRoot":"","sources":["../../../../../src/lib/actions/utility/extract-structured-data.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,qBAAqB;;;;;;;;;EAsRhC,CAAC"}