@ionos-cloud/n8n-nodes-ionos-cloud 0.2.2 → 0.2.4
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/README.md +45 -21
- package/dist/nodes/IonosCloudAiModelHub/IonosCloudAiModelHub.node.js +7 -0
- package/dist/nodes/IonosCloudAiModelHub/IonosCloudAiModelHub.node.js.map +1 -1
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/index.d.ts +2 -0
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/index.js +42 -0
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/index.js.map +1 -0
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/openai.d.ts +3 -0
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/openai.js +741 -0
- package/dist/nodes/IonosCloudAiModelHub/resources/openai/openai.js.map +1 -0
- package/dist/package.json +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -45,8 +45,8 @@ Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes
|
|
|
45
45
|
| **Certificate Manager** | 3 | 15 | SSL/TLS certificate lifecycle management with ACME support |
|
|
46
46
|
| **Cloud DNS** | 7 | 28 | DNS zones, records (15 types), DNSSEC, zone transfers |
|
|
47
47
|
| **CDN** | 2 | 7 | Content delivery with custom routing and geo-restrictions |
|
|
48
|
-
| **AI Model Hub** |
|
|
49
|
-
|
|
48
|
+
| **AI Model Hub** | 4 | 20 | Foundation model inference, RAG capabilities, and OpenAI-compatible API |
|
|
49
|
+
|
|
50
50
|
|
|
51
51
|
<details>
|
|
52
52
|
<summary><b>Infrastructure - Detailed Operations</b></summary>
|
|
@@ -169,6 +169,34 @@ Manage documents within collections for RAG applications.
|
|
|
169
169
|
- Add, Delete, Delete All, Get, Get Many, Get Chunks, Update
|
|
170
170
|
- **Features**: Base64 content encoding, metadata management, chunk retrieval, batch operations
|
|
171
171
|
|
|
172
|
+
#### OpenAI Compatible Resource (5 operations)
|
|
173
|
+
Use OpenAI-compatible API endpoints for standardized AI interactions.
|
|
174
|
+
|
|
175
|
+
**Chat Completion** - Create chat completions with message history
|
|
176
|
+
- Supports system, user, and assistant message roles
|
|
177
|
+
- Parameters: model, messages (required), temperature, top_p, max_tokens, max_completion_tokens, n, stream, stop, presence_penalty, frequency_penalty, logit_bias, response_format, tools, tool_choice, user
|
|
178
|
+
- Compatible with OpenAI chat completion API format
|
|
179
|
+
|
|
180
|
+
**Completion** - Simple text completion
|
|
181
|
+
- Parameters: model, prompt (required), temperature, top_p, max_tokens, n, stream, stop, presence_penalty, frequency_penalty, logit_bias, user
|
|
182
|
+
- Compatible with OpenAI completion API format
|
|
183
|
+
|
|
184
|
+
**Create Embeddings** - Generate vector embeddings from text
|
|
185
|
+
- Parameters: model (default: intfloat/e5-large-v2), input (single text or comma-separated multiple texts)
|
|
186
|
+
- Returns embedding vectors for semantic search and similarity
|
|
187
|
+
|
|
188
|
+
**Generate Image** - Text-to-image generation
|
|
189
|
+
- Parameters: model (default: stabilityai/stable-diffusion-xl-base-1.0), prompt (required), n, size (1024x1024, 1024x1792, 1792x1024), response_format (b64_json), user
|
|
190
|
+
- Generates images from text descriptions
|
|
191
|
+
|
|
192
|
+
**Get Many** - List available models
|
|
193
|
+
- Returns all models in OpenAI-compatible format
|
|
194
|
+
- Shows model capabilities and availability
|
|
195
|
+
|
|
196
|
+
**API Endpoint**: `https://openai.inference.de-txl.ionos.com` (path: `/v1/*`)
|
|
197
|
+
|
|
198
|
+
**Features**: Full OpenAI API compatibility, drop-in replacement for OpenAI in existing workflows, comprehensive parameter support
|
|
199
|
+
|
|
172
200
|
</details>
|
|
173
201
|
|
|
174
202
|
---
|
|
@@ -216,8 +244,11 @@ Tested against n8n version 2.1.5+
|
|
|
216
244
|
|
|
217
245
|
#### AI Model Hub
|
|
218
246
|
* Add the "Ionos Cloud (AI Model Hub)" node to your workflow
|
|
219
|
-
* Select the resource (Model, Collection, or
|
|
220
|
-
*
|
|
247
|
+
* Select the resource (Model, Collection, Document, or OpenAI Compatible)
|
|
248
|
+
* **Model**: AI inference with native IONOS API
|
|
249
|
+
* **Collection**: Vector database management for RAG
|
|
250
|
+
* **Document**: Manage documents in collections
|
|
251
|
+
* **OpenAI Compatible**: Use OpenAI-compatible endpoints (chat, completions, embeddings, images)
|
|
221
252
|
|
|
222
253
|
### Common Patterns
|
|
223
254
|
|
|
@@ -239,19 +270,26 @@ Tested against n8n version 2.1.5+
|
|
|
239
270
|
|
|
240
271
|
**AI-Powered Applications with RAG:**
|
|
241
272
|
1. Use AI Model Hub Collection resource to create a vector database
|
|
273
|
+
|
|
274
|
+
**OpenAI-Compatible AI Integration:**
|
|
275
|
+
1. Use OpenAI Compatible Chat Completion for conversational AI
|
|
276
|
+
2. Use Create Embeddings for semantic search and similarity
|
|
277
|
+
3. Use Generate Image for text-to-image generation
|
|
278
|
+
4. Drop-in replacement for OpenAI API in existing n8n workflowstabase
|
|
242
279
|
2. Use Document resource to add knowledge base documents
|
|
243
280
|
3. Use Model Predict operation with collection query for context-aware responses
|
|
244
281
|
4. Automate document updates and model inference in workflows
|
|
245
282
|
|
|
246
283
|
## API Endpoints
|
|
247
284
|
|
|
248
|
-
Each node connects to
|
|
285
|
+
Each node connects to:
|
|
249
286
|
|
|
250
287
|
- **Infrastructure**: `https://api.ionos.com/cloudapi/v6/`
|
|
251
288
|
- **Certificate Manager**: `https://certificate-manager.de-fra.ionos.com`
|
|
252
289
|
- **Cloud DNS**: `https://dns.de-fra.ionos.com`
|
|
253
290
|
- **CDN**: `https://cdn.de-fra.ionos.com`
|
|
254
|
-
- **AI Model Hub**: `https://inference.de-txl.ionos.com`
|
|
291
|
+
- **AI Model Hub (Inference API)**: `https://inference.de-txl.ionos.com`
|
|
292
|
+
- **AI Model Hub (OpenAI compatible API)**: `https://inference.de-txl.ionos.com`
|
|
255
293
|
|
|
256
294
|
## Resources
|
|
257
295
|
|
|
@@ -262,18 +300,4 @@ Each node connects to a different IONOS Cloud API endpoint:
|
|
|
262
300
|
* [Cloud DNS API Documentation](https://api.ionos.com/docs/dns/v1/)
|
|
263
301
|
* [CDN API Documentation](https://api.ionos.com/docs/cdn/v1/)
|
|
264
302
|
* [AI Model Hub API Documentation](https://api.ionos.com/docs/inference-modelhub/v1/)
|
|
265
|
-
|
|
266
|
-
## Version History
|
|
267
|
-
|
|
268
|
-
**v0.2.1** - Current release
|
|
269
|
-
- Infrastructure node (20 resources, 145 operations)
|
|
270
|
-
- Certificate Manager node (3 resources, 15 operations)
|
|
271
|
-
- DNS node (7 resources, 28 operations)
|
|
272
|
-
- CDN node (2 resources, 7 operations)
|
|
273
|
-
- AI Model Hub node (3 resources, 15 operations)
|
|
274
|
-
- Total: 210 operations across 35 resources
|
|
275
|
-
- Dynamic User-Agent including package and n8n versions
|
|
276
|
-
- Shared authentication across all nodes
|
|
277
|
-
|
|
278
|
-
**v0.1.0** - Initial release
|
|
279
|
-
- Core functionality for all 5 IONOS Cloud services
|
|
303
|
+
* [AI Model Hub OpenAI-compatible API Documentation](https://api.ionos.com/docs/inference-openai/v1/)
|
|
@@ -38,6 +38,7 @@ const userAgent_1 = require("../../utils/userAgent");
|
|
|
38
38
|
const collection = __importStar(require("./resources/collection"));
|
|
39
39
|
const document = __importStar(require("./resources/document"));
|
|
40
40
|
const model = __importStar(require("./resources/model"));
|
|
41
|
+
const openai = __importStar(require("./resources/openai"));
|
|
41
42
|
class IonosCloudAiModelHub {
|
|
42
43
|
constructor() {
|
|
43
44
|
this.usableAsTool = true;
|
|
@@ -90,12 +91,18 @@ class IonosCloudAiModelHub {
|
|
|
90
91
|
value: 'model',
|
|
91
92
|
description: 'Browse and call foundation models',
|
|
92
93
|
},
|
|
94
|
+
{
|
|
95
|
+
name: 'OpenAI Compatible',
|
|
96
|
+
value: 'openai',
|
|
97
|
+
description: 'Use OpenAI-compatible API endpoints',
|
|
98
|
+
},
|
|
93
99
|
],
|
|
94
100
|
default: 'collection',
|
|
95
101
|
},
|
|
96
102
|
...collection.descriptions,
|
|
97
103
|
...document.descriptions,
|
|
98
104
|
...model.descriptions,
|
|
105
|
+
...openai.descriptions,
|
|
99
106
|
],
|
|
100
107
|
usableAsTool: true,
|
|
101
108
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IonosCloudAiModelHub.node.js","sourceRoot":"","sources":["../../../nodes/IonosCloudAiModelHub/IonosCloudAiModelHub.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,qDAAmD;AAEnD,mEAAqD;AACrD,+DAAiD;AACjD,yDAA2C;
|
|
1
|
+
{"version":3,"file":"IonosCloudAiModelHub.node.js","sourceRoot":"","sources":["../../../nodes/IonosCloudAiModelHub/IonosCloudAiModelHub.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,qDAAmD;AAEnD,mEAAqD;AACrD,+DAAiD;AACjD,yDAA2C;AAC3C,2DAA6C;AAE7C,MAAa,oBAAoB;IAAjC;QACC,iBAAY,GAAG,IAAI,CAAC;QAEpB,gBAAW,GAAyB;YACnC,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,qBAAqB,EAAE;YAC9D,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE;gBACT,IAAI,EAAE,0BAA0B;aAChC;YACD,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,eAAe;oBACrB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,eAAe,EAAE;gBAChB,OAAO,EAAE,oCAAoC;gBAC7C,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;oBAClC,YAAY,EAAE,sBAAU;iBACxB;aACD;YACD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,UAAU;oBACvB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,SAAS;oBACf,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,YAAY;4BAClB,KAAK,EAAE,YAAY;4BACnB,WAAW,EAAE,kDAAkD;yBAC/D;wBACD;4BACC,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,UAAU;4BACjB,WAAW,EAAE,iCAAiC;yBAC9C;wBACD;4BACC,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,OAAO;4BACd,WAAW,EAAE,mCAAmC;yBAChD;wBACD;4BACC,IAAI,EAAE,mBAAmB;4BACzB,KAAK,EAAE,QAAQ;4BACf,WAAW,EAAE,qCAAqC;yBAClD;qBACD;oBACD,OAAO,EAAE,YAAY;iBACrB;gBACD,GAAG,UAAU,CAAC,YAAY;gBAC1B,GAAG,QAAQ,CAAC,YAAY;gBACxB,GAAG,KAAK,CAAC,YAAY;gBACrB,GAAG,MAAM,CAAC,YAAY;aACtB;YACD,YAAY,EAAE,IAAI;SAClB,CAAC;IACH,CAAC;CAAA;AAnED,oDAmEC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
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.descriptions = void 0;
|
|
37
|
+
const openai = __importStar(require("./openai"));
|
|
38
|
+
exports.descriptions = [
|
|
39
|
+
...openai.openaiOperations,
|
|
40
|
+
...openai.openaiDescriptions,
|
|
41
|
+
];
|
|
42
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../nodes/IonosCloudAiModelHub/resources/openai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAmC;AAEtB,QAAA,YAAY,GAAsB;IAC9C,GAAG,MAAM,CAAC,gBAAgB;IAC1B,GAAG,MAAM,CAAC,kBAAkB;CAC5B,CAAC"}
|