n8n-nodes-vercel-ai-sdk-universal-temp 0.2.71 → 0.2.73

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 (43) hide show
  1. package/dist/nodes/UniversalAgent/UniversalAgent.node.js +6 -5
  2. package/dist/nodes/UniversalAgent/UniversalAgent.node.js.map +1 -1
  3. package/dist/nodes/shared/descriptions.js +1 -1
  4. package/dist/nodes/shared/descriptions.js.map +1 -1
  5. package/package.json +5 -3
  6. package/dist/credentials/UniversalAi.credentials.d.ts +0 -7
  7. package/dist/credentials/UniversalAi.credentials.js +0 -33
  8. package/dist/credentials/UniversalAi.credentials.js.map +0 -1
  9. package/dist/nodes/DeepSeek/DeepSeek.node.d.ts +0 -10
  10. package/dist/nodes/DeepSeek/DeepSeek.node.js +0 -574
  11. package/dist/nodes/DeepSeek/DeepSeek.node.js.map +0 -1
  12. package/dist/nodes/DeepSeek/icons/deepseek.svg +0 -1
  13. package/dist/nodes/GoogleGenerativeAI/GoogleGenerativeAI.node.d.ts +0 -10
  14. package/dist/nodes/GoogleGenerativeAI/GoogleGenerativeAI.node.js +0 -845
  15. package/dist/nodes/GoogleGenerativeAI/GoogleGenerativeAI.node.js.map +0 -1
  16. package/dist/nodes/GoogleGenerativeAI/icons/GoogleGenerativeAI.svg +0 -1
  17. package/dist/nodes/Groq/Groq.node.d.ts +0 -10
  18. package/dist/nodes/Groq/Groq.node.js +0 -552
  19. package/dist/nodes/Groq/Groq.node.js.map +0 -1
  20. package/dist/nodes/Groq/icons/groq.svg +0 -1
  21. package/dist/nodes/UniversalAI/model-lists.d.ts +0 -55
  22. package/dist/nodes/UniversalAI/model-lists.js +0 -269
  23. package/dist/nodes/UniversalAI/model-lists.js.map +0 -1
  24. package/dist/nodes/UniversalAIEmbedding/UniversalEmbedding.node.d.ts +0 -10
  25. package/dist/nodes/UniversalAIEmbedding/UniversalEmbedding.node.js +0 -332
  26. package/dist/nodes/UniversalAIEmbedding/UniversalEmbedding.node.js.map +0 -1
  27. package/dist/nodes/UniversalAIImageGen/UniversalImageGen.node.d.ts +0 -10
  28. package/dist/nodes/UniversalAIImageGen/UniversalImageGen.node.js +0 -359
  29. package/dist/nodes/UniversalAIImageGen/UniversalImageGen.node.js.map +0 -1
  30. package/dist/nodes/shared/builders/descriptions.d.ts +0 -103
  31. package/dist/nodes/shared/builders/descriptions.js +0 -713
  32. package/dist/nodes/shared/builders/descriptions.js.map +0 -1
  33. package/dist/nodes/shared/letta/enhanced-wrapper.d.ts +0 -49
  34. package/dist/nodes/shared/letta/enhanced-wrapper.js +0 -349
  35. package/dist/nodes/shared/letta/enhanced-wrapper.js.map +0 -1
  36. package/dist/nodes/shared/letta/fallback-wrapper.d.ts +0 -56
  37. package/dist/nodes/shared/letta/fallback-wrapper.js +0 -321
  38. package/dist/nodes/shared/letta/fallback-wrapper.js.map +0 -1
  39. package/dist/nodes/shared/letta/wrapper.d.ts +0 -3
  40. package/dist/nodes/shared/letta/wrapper.js +0 -58
  41. package/dist/nodes/shared/letta/wrapper.js.map +0 -1
  42. package/dist/package.json +0 -82
  43. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,574 +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.DeepSeek = void 0;
7
- const n8n_workflow_1 = require("n8n-workflow");
8
- const deepseek_1 = require("@ai-sdk/deepseek");
9
- const ai_1 = require("ai");
10
- const zod_1 = require("zod");
11
- const ajv_1 = __importDefault(require("ajv"));
12
- async function buildInput(exec, itemIndex) {
13
- const inputType = exec.getNodeParameter('inputType', itemIndex);
14
- if (inputType === 'prompt') {
15
- const promptVal = exec.getNodeParameter('prompt', itemIndex);
16
- const systemVal = exec.getNodeParameter('system', itemIndex);
17
- return {
18
- prompt: promptVal,
19
- system: systemVal,
20
- };
21
- }
22
- else {
23
- const messageAsJson = exec.getNodeParameter('messageAsJson', itemIndex, false);
24
- if (messageAsJson) {
25
- const rawJson = exec.getNodeParameter('messagesJson', itemIndex);
26
- let arr;
27
- try {
28
- arr = JSON.parse(rawJson);
29
- }
30
- catch (error) {
31
- throw new n8n_workflow_1.NodeOperationError(exec.getNode(), `Invalid JSON in "Messages (JSON)" field: ${error.message}`);
32
- }
33
- const parseRes = zod_1.z
34
- .array(zod_1.z.object({
35
- role: zod_1.z.enum(['system', 'user', 'assistant']),
36
- content: zod_1.z.string(),
37
- }))
38
- .safeParse(arr);
39
- if (!parseRes.success) {
40
- throw new n8n_workflow_1.NodeOperationError(exec.getNode(), 'Messages must be an array of objects with role and content.');
41
- }
42
- const messages = parseRes.data.map((m) => ({
43
- role: m.role,
44
- content: m.content,
45
- }));
46
- return { messages };
47
- }
48
- else {
49
- const messagesUi = exec.getNodeParameter('messages.messagesUi', itemIndex, []);
50
- const messages = messagesUi.map((msg) => {
51
- const role = msg.role;
52
- return {
53
- role,
54
- content: role === 'system' ? msg.systemContent || '' : msg.content || '',
55
- };
56
- });
57
- return { messages };
58
- }
59
- }
60
- }
61
- function formatTextResult(result, includeRequestBody) {
62
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
63
- const out = {
64
- text: result.text,
65
- reasoning: result === null || result === void 0 ? void 0 : result.reasoning,
66
- finishReason: result.finishReason,
67
- usage: {
68
- promptTokens: (_a = result.usage) === null || _a === void 0 ? void 0 : _a.promptTokens,
69
- completionTokens: (_b = result.usage) === null || _b === void 0 ? void 0 : _b.completionTokens,
70
- totalTokens: (_c = result.usage) === null || _c === void 0 ? void 0 : _c.totalTokens,
71
- cacheMetrics: {
72
- promptCacheHitTokens: (_e = (_d = result.experimental_providerMetadata) === null || _d === void 0 ? void 0 : _d.deepseek) === null || _e === void 0 ? void 0 : _e.promptCacheHitTokens,
73
- promptCacheMissTokens: (_g = (_f = result.experimental_providerMetadata) === null || _f === void 0 ? void 0 : _f.deepseek) === null || _g === void 0 ? void 0 : _g.promptCacheMissTokens,
74
- },
75
- },
76
- response: {
77
- id: (_h = result.response) === null || _h === void 0 ? void 0 : _h.id,
78
- modelId: (_j = result.response) === null || _j === void 0 ? void 0 : _j.modelId,
79
- timestamp: (_k = result.response) === null || _k === void 0 ? void 0 : _k.timestamp,
80
- headers: (_l = result.response) === null || _l === void 0 ? void 0 : _l.headers,
81
- },
82
- warnings: result.warnings || [],
83
- };
84
- if (includeRequestBody) {
85
- out.request = { body: (_m = result.request) === null || _m === void 0 ? void 0 : _m.body };
86
- }
87
- return out;
88
- }
89
- function formatObjectResult(result, includeRequestBody) {
90
- var _a, _b, _c, _d, _e, _f, _g, _h;
91
- const out = {
92
- object: result.object,
93
- finishReason: result.finishReason,
94
- usage: {
95
- promptTokens: (_a = result.usage) === null || _a === void 0 ? void 0 : _a.promptTokens,
96
- completionTokens: (_b = result.usage) === null || _b === void 0 ? void 0 : _b.completionTokens,
97
- totalTokens: (_c = result.usage) === null || _c === void 0 ? void 0 : _c.totalTokens,
98
- },
99
- response: {
100
- id: (_d = result.response) === null || _d === void 0 ? void 0 : _d.id,
101
- modelId: (_e = result.response) === null || _e === void 0 ? void 0 : _e.modelId,
102
- timestamp: (_f = result.response) === null || _f === void 0 ? void 0 : _f.timestamp,
103
- headers: (_g = result.response) === null || _g === void 0 ? void 0 : _g.headers,
104
- },
105
- warnings: result.warnings || [],
106
- };
107
- if (includeRequestBody) {
108
- out.request = { body: (_h = result.request) === null || _h === void 0 ? void 0 : _h.body };
109
- }
110
- return out;
111
- }
112
- class DeepSeek {
113
- constructor() {
114
- this.description = {
115
- displayName: 'DeepSeek',
116
- name: 'deepSeek',
117
- icon: 'file:icons/deepseek.svg',
118
- group: ['transform'],
119
- version: 1,
120
- subtitle: '={{$parameter["operation"] + ": " + $parameter["model"]}}',
121
- description: 'Use DeepSeek models via Vercel AI SDK',
122
- defaults: {
123
- name: 'DeepSeek',
124
- },
125
- inputs: [{ type: "main" }],
126
- outputs: [{ type: "main" }],
127
- credentials: [
128
- {
129
- name: 'deepSeekApi',
130
- required: true,
131
- },
132
- ],
133
- properties: [
134
- {
135
- displayName: 'Model Name or ID',
136
- name: 'model',
137
- type: 'options',
138
- required: true,
139
- typeOptions: {
140
- loadOptionsMethod: 'getModels',
141
- },
142
- default: '',
143
- description: 'Select which DeepSeek model to use. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code-examples/expressions/">expression</a>. Choose from the list, or specify an ID using an <a href="https://docs.n8n.io/code/expressions/">expression</a>.',
144
- },
145
- {
146
- displayName: 'Operation',
147
- name: 'operation',
148
- type: 'options',
149
- required: true,
150
- noDataExpression: true,
151
- options: [
152
- {
153
- name: 'Generate Text',
154
- value: 'generateText',
155
- description: 'Generate text using simple prompt or chat messages',
156
- action: 'Generate text',
157
- },
158
- {
159
- name: 'Generate Object',
160
- value: 'generateObject',
161
- description: 'Generate a structured object based on a JSON schema',
162
- action: 'Generate object',
163
- },
164
- ],
165
- displayOptions: {
166
- show: {
167
- model: ['deepseek-chat'],
168
- },
169
- },
170
- default: 'generateText',
171
- description: 'Which type of output you want to generate',
172
- },
173
- {
174
- displayName: 'Operation',
175
- name: 'operation',
176
- type: 'options',
177
- required: true,
178
- noDataExpression: true,
179
- options: [
180
- {
181
- name: 'Generate Text',
182
- value: 'generateText',
183
- description: 'Generate text using simple prompt or chat messages',
184
- action: 'Generate text',
185
- },
186
- ],
187
- displayOptions: {
188
- show: {
189
- model: ['deepseek-reasoner'],
190
- },
191
- },
192
- default: 'generateText',
193
- description: 'Which type of output you want to generate',
194
- },
195
- {
196
- displayName: 'Input Type',
197
- name: 'inputType',
198
- type: 'options',
199
- required: true,
200
- options: [
201
- {
202
- name: 'Simple Prompt',
203
- value: 'prompt',
204
- description: 'Use a single prompt',
205
- },
206
- {
207
- name: 'Messages',
208
- value: 'messages',
209
- description: 'Use a conversation with multiple messages',
210
- },
211
- ],
212
- default: 'prompt',
213
- description: 'Choose how you want to provide input to the model',
214
- },
215
- {
216
- displayName: 'System',
217
- name: 'system',
218
- type: 'string',
219
- typeOptions: {
220
- rows: 4,
221
- },
222
- displayOptions: {
223
- show: {
224
- inputType: ['prompt'],
225
- },
226
- },
227
- default: 'You are a helpful assistant.',
228
- description: "System prompt that specifies the model's behavior",
229
- hint: "This field is optional, but can help guide the model's responses.",
230
- requiresDataPath: 'single',
231
- },
232
- {
233
- displayName: 'Prompt',
234
- name: 'prompt',
235
- type: 'string',
236
- typeOptions: {
237
- rows: 4,
238
- },
239
- displayOptions: {
240
- show: {
241
- inputType: ['prompt'],
242
- },
243
- },
244
- default: '',
245
- required: true,
246
- description: 'The single text prompt to generate a completion for',
247
- hint: 'You can drag data from previous nodes here using expressions.',
248
- requiresDataPath: 'single',
249
- },
250
- {
251
- displayName: 'Messages',
252
- name: 'messages',
253
- type: 'fixedCollection',
254
- typeOptions: {
255
- multipleValues: true,
256
- sortable: true,
257
- minValue: 1,
258
- },
259
- displayOptions: {
260
- show: {
261
- inputType: ['messages'],
262
- messageAsJson: [false],
263
- },
264
- },
265
- description: 'The messages for the conversation',
266
- default: {
267
- messagesUi: [
268
- {
269
- role: 'system',
270
- systemContent: 'You are a helpful assistant.',
271
- },
272
- {
273
- role: 'user',
274
- content: 'How can you help me?',
275
- },
276
- ],
277
- },
278
- required: true,
279
- options: [
280
- {
281
- name: 'messagesUi',
282
- displayName: 'Message',
283
- values: [
284
- {
285
- displayName: 'Role',
286
- name: 'role',
287
- type: 'options',
288
- options: [
289
- {
290
- name: 'Assistant',
291
- value: 'assistant',
292
- },
293
- {
294
- name: 'System',
295
- value: 'system',
296
- },
297
- {
298
- name: 'User',
299
- value: 'user',
300
- },
301
- ],
302
- default: 'user',
303
- required: true,
304
- },
305
- {
306
- displayName: 'System Content',
307
- name: 'systemContent',
308
- type: 'string',
309
- description: 'The text content if role is System',
310
- required: true,
311
- typeOptions: {
312
- rows: 4,
313
- },
314
- default: '',
315
- displayOptions: {
316
- show: {
317
- role: ['system'],
318
- },
319
- },
320
- requiresDataPath: 'single',
321
- },
322
- {
323
- displayName: 'Content',
324
- name: 'content',
325
- type: 'string',
326
- typeOptions: {
327
- rows: 4,
328
- },
329
- displayOptions: {
330
- show: {
331
- role: ['assistant', 'user'],
332
- },
333
- },
334
- default: '',
335
- description: 'The text content of the message',
336
- required: true,
337
- requiresDataPath: 'single',
338
- },
339
- ],
340
- },
341
- ],
342
- },
343
- {
344
- displayName: 'Messages as JSON',
345
- name: 'messageAsJson',
346
- type: 'boolean',
347
- default: false,
348
- description: 'Whether to input messages as a JSON array instead of using the UI',
349
- displayOptions: {
350
- show: {
351
- operation: ['generateText', 'generateObject'],
352
- inputType: ['messages'],
353
- },
354
- },
355
- },
356
- {
357
- displayName: 'Messages (JSON)',
358
- name: 'messagesJson',
359
- type: 'string',
360
- default: '=[{"role": "user", "content": "Hello!"}]',
361
- description: 'Enter an array of message objects in JSON format (role, content)',
362
- required: true,
363
- typeOptions: {
364
- rows: 4,
365
- },
366
- noDataExpression: false,
367
- requiresDataPath: 'single',
368
- displayOptions: {
369
- show: {
370
- operation: ['generateText', 'generateObject'],
371
- inputType: ['messages'],
372
- messageAsJson: [true],
373
- },
374
- },
375
- },
376
- {
377
- displayName: 'Schema Name',
378
- name: 'schemaName',
379
- type: 'string',
380
- default: '',
381
- description: 'Name of the output schema (optional)',
382
- hint: 'Some providers use this name for additional guidance when generating objects.',
383
- displayOptions: {
384
- show: {
385
- operation: ['generateObject'],
386
- model: ['deepseek-chat'],
387
- },
388
- },
389
- },
390
- {
391
- displayName: 'Schema Description',
392
- name: 'schemaDescription',
393
- type: 'string',
394
- default: '',
395
- description: 'Description of the output schema (optional)',
396
- hint: 'Some providers use this description for additional guidance when generating objects.',
397
- displayOptions: {
398
- show: {
399
- operation: ['generateObject'],
400
- model: ['deepseek-chat'],
401
- },
402
- },
403
- },
404
- {
405
- displayName: 'Schema',
406
- name: 'schema',
407
- type: 'json',
408
- displayOptions: {
409
- show: {
410
- operation: ['generateObject'],
411
- model: ['deepseek-chat'],
412
- },
413
- },
414
- default: `{\n\t"type": "object",\n\t"properties": {\n\t\t"sentiment": {\n\t\t"type": "string",\n\t\t"enum": ["positive","negative","neutral"],\n\t\t"description": "The overall sentiment of the text"\n\t\t},\n\t\t"score": {\n\t\t"type": "number",\n\t\t"minimum": -1,\n\t\t"maximum": 1,\n\t\t"description": "Sentiment score from -1 (negative) to 1 (positive)"\n\t\t},\n\t\t"text": {\n\t\t"type": "string",\n\t\t"description": "The text content to analyze"\n\t\t}\n\t}\n}`,
415
- required: true,
416
- description: 'JSON schema describing the structure and constraints of the object to generate',
417
- hint: 'For example, a schema describing sentiment analysis output.',
418
- requiresDataPath: 'single',
419
- },
420
- {
421
- displayName: 'Options',
422
- name: 'options',
423
- type: 'collection',
424
- placeholder: 'Add Option',
425
- default: {},
426
- options: [
427
- {
428
- displayName: 'Max Tokens',
429
- name: 'maxTokens',
430
- type: 'number',
431
- typeOptions: {
432
- minValue: 1,
433
- },
434
- default: 2048,
435
- description: 'The maximum number of tokens to generate',
436
- },
437
- {
438
- displayName: 'Temperature',
439
- name: 'temperature',
440
- type: 'number',
441
- typeOptions: {
442
- minValue: 0,
443
- maxValue: 2,
444
- numberPrecision: 2,
445
- },
446
- default: 0.7,
447
- description: 'Higher values produce more random outputs',
448
- },
449
- {
450
- displayName: 'Include Request Body',
451
- name: 'includeRequestBody',
452
- type: 'boolean',
453
- default: false,
454
- description: 'Whether to include the request body in the output',
455
- },
456
- ],
457
- },
458
- ],
459
- };
460
- this.methods = {
461
- loadOptions: {
462
- async getModels() {
463
- const credentials = await this.getCredentials('deepSeekApi');
464
- try {
465
- const response = await this.helpers.request({
466
- method: 'GET',
467
- url: 'https://api.deepseek.com/v1/models/list',
468
- headers: {
469
- Authorization: `Bearer ${credentials.apiKey}`,
470
- },
471
- json: true,
472
- });
473
- const returnData = [];
474
- if (response.data) {
475
- for (const model of response.data) {
476
- returnData.push({
477
- name: model.name,
478
- value: model.id,
479
- description: model.description || '',
480
- });
481
- }
482
- }
483
- return returnData.sort((a, b) => a.name.localeCompare(b.name));
484
- }
485
- catch (error) {
486
- return [
487
- {
488
- name: 'DeepSeek Chat',
489
- value: 'deepseek-chat',
490
- description: 'Chat model optimized for conversations and structured outputs',
491
- },
492
- {
493
- name: 'DeepSeek Reasoner',
494
- value: 'deepseek-reasoner',
495
- description: 'Model optimized for reasoning and problem-solving',
496
- },
497
- ].sort((a, b) => a.name.localeCompare(b.name));
498
- }
499
- },
500
- },
501
- };
502
- }
503
- async execute() {
504
- const items = this.getInputData();
505
- const returnData = [];
506
- const credentials = await this.getCredentials('deepSeekApi');
507
- if (!(credentials === null || credentials === void 0 ? void 0 : credentials.apiKey)) {
508
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'No API key provided in credentials');
509
- }
510
- const deepSeekProvider = (0, deepseek_1.createDeepSeek)({
511
- apiKey: credentials.apiKey,
512
- });
513
- for (let i = 0; i < items.length; i++) {
514
- try {
515
- const model = this.getNodeParameter('model', i);
516
- const operation = this.getNodeParameter('operation', i);
517
- const options = this.getNodeParameter('options', i, {});
518
- const input = await buildInput(this, i);
519
- if (operation === 'generateText') {
520
- const result = await (0, ai_1.generateText)({
521
- model: deepSeekProvider(model),
522
- messages: input.messages,
523
- maxTokens: options.maxTokens,
524
- temperature: options.temperature,
525
- prompt: input.prompt,
526
- system: input.system,
527
- });
528
- const formatted = formatTextResult(result, options.includeRequestBody);
529
- returnData.push({ json: formatted });
530
- }
531
- else if (operation === 'generateObject' && model === 'deepseek-chat') {
532
- const schemaName = this.getNodeParameter('schemaName', i, '');
533
- const schemaDescription = this.getNodeParameter('schemaDescription', i, '');
534
- const rawSchema = this.getNodeParameter('schema', i);
535
- let parsedSchema;
536
- try {
537
- parsedSchema = JSON.parse(rawSchema);
538
- }
539
- catch (err) {
540
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Schema is not valid JSON: ' + err.message);
541
- }
542
- const ajv = new ajv_1.default();
543
- if (!ajv.validateSchema(parsedSchema)) {
544
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), `Invalid JSON Schema: ${ajv.errorsText(ajv.errors)}`);
545
- }
546
- const result = await (0, ai_1.generateObject)({
547
- model: deepSeekProvider(model),
548
- schema: (0, ai_1.jsonSchema)(parsedSchema),
549
- schemaName,
550
- schemaDescription,
551
- prompt: input.prompt,
552
- system: input.system,
553
- messages: input.messages,
554
- maxTokens: options.maxTokens,
555
- temperature: options.temperature,
556
- });
557
- const formatted = formatObjectResult(result, options.includeRequestBody);
558
- returnData.push({ json: formatted });
559
- }
560
- }
561
- catch (error) {
562
- if (this.continueOnFail()) {
563
- returnData.push({ json: { error: error.message } });
564
- }
565
- else {
566
- throw new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i });
567
- }
568
- }
569
- }
570
- return [returnData];
571
- }
572
- }
573
- exports.DeepSeek = DeepSeek;
574
- //# sourceMappingURL=DeepSeek.node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DeepSeek.node.js","sourceRoot":"","sources":["../../../nodes/DeepSeek/DeepSeek.node.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- <svg height="256" width="256" style="flex:none;line-height:1" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>DeepSeek</title><path d="M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z" fill="#4D6BFE"></path></svg>
@@ -1,10 +0,0 @@
1
- import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription, ILoadOptionsFunctions, INodePropertyOptions } from 'n8n-workflow';
2
- export declare class GoogleGenerativeAi implements INodeType {
3
- description: INodeTypeDescription;
4
- methods: {
5
- loadOptions: {
6
- getModels(this: ILoadOptionsFunctions): Promise<INodePropertyOptions[]>;
7
- };
8
- };
9
- execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
10
- }