n8n-nodes-empiriolabs 0.2.0 → 0.4.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/README.md +154 -137
- package/dist/nodes/Empiriolabs/Empiriolabs.node.d.ts +17 -7
- package/dist/nodes/Empiriolabs/Empiriolabs.node.js +71 -15
- package/dist/nodes/Empiriolabs/Empiriolabs.node.js.map +1 -1
- package/dist/nodes/Empiriolabs/actions/audio.d.ts +2 -0
- package/dist/nodes/Empiriolabs/actions/audio.js +50 -0
- package/dist/nodes/Empiriolabs/actions/audio.js.map +1 -1
- package/dist/nodes/Empiriolabs/actions/decision.d.ts +6 -0
- package/dist/nodes/Empiriolabs/actions/decision.js +151 -0
- package/dist/nodes/Empiriolabs/actions/decision.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/detection.d.ts +3 -0
- package/dist/nodes/Empiriolabs/actions/detection.js +22 -0
- package/dist/nodes/Empiriolabs/actions/detection.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/document.d.ts +5 -0
- package/dist/nodes/Empiriolabs/actions/document.js +106 -0
- package/dist/nodes/Empiriolabs/actions/document.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/image.d.ts +6 -0
- package/dist/nodes/Empiriolabs/actions/image.js +87 -4
- package/dist/nodes/Empiriolabs/actions/image.js.map +1 -1
- package/dist/nodes/Empiriolabs/actions/rerank.d.ts +5 -0
- package/dist/nodes/Empiriolabs/actions/rerank.js +80 -0
- package/dist/nodes/Empiriolabs/actions/rerank.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/search.d.ts +7 -0
- package/dist/nodes/Empiriolabs/actions/search.js +81 -0
- package/dist/nodes/Empiriolabs/actions/search.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/threeD.d.ts +3 -0
- package/dist/nodes/Empiriolabs/actions/threeD.js +54 -0
- package/dist/nodes/Empiriolabs/actions/threeD.js.map +1 -0
- package/dist/nodes/Empiriolabs/actions/video.d.ts +2 -0
- package/dist/nodes/Empiriolabs/actions/video.js +21 -0
- package/dist/nodes/Empiriolabs/actions/video.js.map +1 -1
- package/dist/nodes/Empiriolabs/actions/voice.d.ts +4 -0
- package/dist/nodes/Empiriolabs/actions/voice.js +45 -0
- package/dist/nodes/Empiriolabs/actions/voice.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/AudioDescription.js +114 -0
- package/dist/nodes/Empiriolabs/descriptions/AudioDescription.js.map +1 -1
- package/dist/nodes/Empiriolabs/descriptions/DecisionDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/DecisionDescription.js +252 -0
- package/dist/nodes/Empiriolabs/descriptions/DecisionDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/DetectionDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/DetectionDescription.js +65 -0
- package/dist/nodes/Empiriolabs/descriptions/DetectionDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/DocumentDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/DocumentDescription.js +174 -0
- package/dist/nodes/Empiriolabs/descriptions/DocumentDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/ImageDescription.js +182 -0
- package/dist/nodes/Empiriolabs/descriptions/ImageDescription.js.map +1 -1
- package/dist/nodes/Empiriolabs/descriptions/RerankDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/RerankDescription.js +143 -0
- package/dist/nodes/Empiriolabs/descriptions/RerankDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/SearchDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/SearchDescription.js +209 -0
- package/dist/nodes/Empiriolabs/descriptions/SearchDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/ThreeDDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/ThreeDDescription.js +166 -0
- package/dist/nodes/Empiriolabs/descriptions/ThreeDDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/VideoDescription.js +13 -0
- package/dist/nodes/Empiriolabs/descriptions/VideoDescription.js.map +1 -1
- package/dist/nodes/Empiriolabs/descriptions/VoiceDescription.d.ts +3 -0
- package/dist/nodes/Empiriolabs/descriptions/VoiceDescription.js +177 -0
- package/dist/nodes/Empiriolabs/descriptions/VoiceDescription.js.map +1 -0
- package/dist/nodes/Empiriolabs/descriptions/shared.d.ts +1 -0
- package/dist/nodes/Empiriolabs/descriptions/shared.js +67 -0
- package/dist/nodes/Empiriolabs/descriptions/shared.js.map +1 -1
- package/dist/nodes/Empiriolabs/methods/listSearch.d.ts +2 -0
- package/dist/nodes/Empiriolabs/methods/listSearch.js +30 -0
- package/dist/nodes/Empiriolabs/methods/listSearch.js.map +1 -1
- package/dist/nodes/Empiriolabs/methods/loadOptions.d.ts +19 -4
- package/dist/nodes/Empiriolabs/methods/loadOptions.js +108 -35
- package/dist/nodes/Empiriolabs/methods/loadOptions.js.map +1 -1
- package/dist/nodes/Empiriolabs/transport.d.ts +26 -6
- package/dist/nodes/Empiriolabs/transport.js +151 -43
- package/dist/nodes/Empiriolabs/transport.js.map +1 -1
- package/dist/package.json +16 -4
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +82 -70
- package/dist/nodes/Empiriolabs/actions/tool.d.ts +0 -4
- package/dist/nodes/Empiriolabs/actions/tool.js +0 -81
- package/dist/nodes/Empiriolabs/actions/tool.js.map +0 -1
- package/dist/nodes/Empiriolabs/descriptions/ToolDescription.d.ts +0 -3
- package/dist/nodes/Empiriolabs/descriptions/ToolDescription.js +0 -82
- package/dist/nodes/Empiriolabs/descriptions/ToolDescription.js.map +0 -1
- package/dist/nodes/Empiriolabs/methods/resourceMapping.d.ts +0 -10
- package/dist/nodes/Empiriolabs/methods/resourceMapping.js +0 -154
- package/dist/nodes/Empiriolabs/methods/resourceMapping.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,137 +1,154 @@
|
|
|
1
|
-
# n8n-nodes-empiriolabs
|
|
2
|
-
|
|
3
|
-
This is an n8n community node package. It lets you use [EmpirioLabs AI](https://empiriolabs.ai) in your n8n workflows for chat, image generation, text to speech, transcription, video generation,
|
|
4
|
-
|
|
5
|
-
EmpirioLabs AI is a specialized AI inference and integration provider. It self-hosts open-source models on GPU infrastructure it manages, runs optimized endpoints for proprietary models, helps teams ship their own models to large audiences, and offers on-demand GPU Cloud instances and hosted AI agents. Its model catalog covers text, image, audio, video, transcription, embedding, reranking, research, and 3D models.
|
|
6
|
-
|
|
7
|
-
[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/) workflow automation platform.
|
|
8
|
-
|
|
9
|
-
[Installation](#installation)
|
|
10
|
-
[Operations](#operations)
|
|
11
|
-
[Trigger](#trigger)
|
|
12
|
-
[Credentials](#credentials)
|
|
13
|
-
[Compatibility](#compatibility)
|
|
14
|
-
[Usage](#usage)
|
|
15
|
-
[Development](#development)
|
|
16
|
-
[Resources](#resources)
|
|
17
|
-
[Version history](#version-history)
|
|
18
|
-
|
|
19
|
-
## Installation
|
|
20
|
-
|
|
21
|
-
Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation and install the package `n8n-nodes-empiriolabs`.
|
|
22
|
-
|
|
23
|
-
## Operations
|
|
24
|
-
|
|
25
|
-
The **EmpirioLabs AI** node supports these resources and operations. Every model list loads live from the EmpirioLabs AI model catalog and shows only the models that support the selected operation.
|
|
26
|
-
|
|
27
|
-
| Resource | Operation | What it does |
|
|
28
|
-
| --- | --- | --- |
|
|
29
|
-
|
|
|
30
|
-
| Audio |
|
|
31
|
-
|
|
|
32
|
-
|
|
|
33
|
-
|
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
37
|
-
|
|
|
38
|
-
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
##
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
1
|
+
# n8n-nodes-empiriolabs
|
|
2
|
+
|
|
3
|
+
This is an n8n community node package. It lets you use [EmpirioLabs AI](https://empiriolabs.ai) in your n8n workflows for chat, image generation, editing and analysis, text to speech, music and sound generation, transcription, video generation, 3D generation, embeddings, reranking, decisions, AI text detection, document reading (OCR), web search, and web research. It can also start a workflow when a generation job finishes.
|
|
4
|
+
|
|
5
|
+
EmpirioLabs AI is a specialized AI inference and integration provider. It self-hosts open-source models on GPU infrastructure it manages, runs optimized endpoints for proprietary models, helps teams ship their own models to large audiences, and offers on-demand GPU Cloud instances and hosted AI agents. Its model catalog covers text, image, audio, video, transcription, embedding, reranking, research, and 3D models.
|
|
6
|
+
|
|
7
|
+
[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/) workflow automation platform.
|
|
8
|
+
|
|
9
|
+
[Installation](#installation)
|
|
10
|
+
[Operations](#operations)
|
|
11
|
+
[Trigger](#trigger)
|
|
12
|
+
[Credentials](#credentials)
|
|
13
|
+
[Compatibility](#compatibility)
|
|
14
|
+
[Usage](#usage)
|
|
15
|
+
[Development](#development)
|
|
16
|
+
[Resources](#resources)
|
|
17
|
+
[Version history](#version-history)
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation and install the package `n8n-nodes-empiriolabs`.
|
|
22
|
+
|
|
23
|
+
## Operations
|
|
24
|
+
|
|
25
|
+
The **EmpirioLabs AI** node supports these resources and operations. Every model list loads live from the EmpirioLabs AI model catalog and shows only the models that support the selected operation.
|
|
26
|
+
|
|
27
|
+
| Resource | Operation | What it does |
|
|
28
|
+
| --- | --- | --- |
|
|
29
|
+
| 3D Asset | Generate | Starts a 3D generation job from an image, given as a binary file in the input item or as a public HTTPS URL, and returns the job. Turn on **Wait for Completion** to wait for the 3D asset, with a timeout, and download it as a binary file. Options include resolution, seed, texture size, and target face count, on models that support them. |
|
|
30
|
+
| Audio | Generate Music or Sound | Starts a music or sound effect job from a prompt and returns the job. Turn on **Wait for Completion** to wait for the audio, with a timeout, and download it as a binary file. Options include lyrics, duration, output format, and seed, on models that support them. |
|
|
31
|
+
| Audio | Text to Speech | Turns text into speech and returns the audio as a binary file. Choose a model, a voice the model offers, and optionally a language and output format. |
|
|
32
|
+
| Audio | Transcribe | Turns speech into text from a binary file in the input item or from a public HTTPS file URL. Waits for the transcript by default and returns the text, language, and duration. |
|
|
33
|
+
| Chat | Create Completion | Sends a prompt (with an optional system message) or a full conversation to a chat model and returns the reply. Options include temperature, maximum number of tokens, top P, and JSON output. |
|
|
34
|
+
| Decision | Create | Answers questions about a text or a JSON value with a decision model and returns each answer with its probabilities and a confidence value. A question can be yes or no, a choice between named options, a score on an ordered scale, or the choice of a function to call. Add the questions with fields, or enter them as one JSON object. A JSON value can hold images, audio, and video. |
|
|
35
|
+
| Detection | Detect AI Text | Checks whether a text was written by AI and returns the scores for the whole text and for each sentence. |
|
|
36
|
+
| Document | Read | Reads a PDF or an image (PNG, JPEG, WebP, TIFF, BMP, GIF or AVIF) from a binary file in the input item or from a public HTTPS URL, and returns every page as Markdown, plus `text`, the whole document as one Markdown text. Options choose pages, move tables, headers and footers into their own fields, and return image regions. A long document is read in the background, and the node waits for it by default. |
|
|
37
|
+
| Embedding | Create | Returns the embedding vector for a text. |
|
|
38
|
+
| Image | Analyze | Asks a question about an image, given as a binary file in the input item or as a public HTTPS URL, and returns the answer as text. Use it to describe an image, read the text in it, or answer a question about what it shows. |
|
|
39
|
+
| Image | Edit | Changes an image at a public HTTPS URL with a text instruction and returns each edited image as a binary file in its own item. Takes several image URLs on models that support it. Waits for the result by default, and returns the job when **Wait for Completion** is off. |
|
|
40
|
+
| Image | Generate | Creates images from a prompt and returns each image as a binary file in its own item. Options include aspect ratio, resolution, number of images, and reference image URLs for editing. |
|
|
41
|
+
| Image | Get Many Templates | Returns image generation templates, optionally filtered by category, by model, or to featured templates. |
|
|
42
|
+
| Image | Get Template | Returns one image generation template, with its recommended model, supported models, default parameters, and required inputs. |
|
|
43
|
+
| Job | Get | Returns the status and result of a job. Can also download the finished file as binary data. |
|
|
44
|
+
| Job | Get Many | Returns recent jobs, optionally filtered by status. |
|
|
45
|
+
| Model | Get Many | Returns models from the catalog, optionally filtered by category or search text. |
|
|
46
|
+
| Rerank | Rerank Documents | Sorts documents by how relevant they are to a query and returns each ranked document as its own item, most relevant first, with its relevance score, its text, and its position in the documents sent. Add the documents with fields, or pass a list as JSON. Options include the number of top documents to return and a custom instruction. |
|
|
47
|
+
| Video | Generate | Starts a video generation job and returns the job. Turn on **Wait for Completion** to wait for the video, with a timeout, and download it as a binary file. |
|
|
48
|
+
| Video | Get Many Templates | Returns video generation templates, optionally filtered by category, by model, or to featured templates. |
|
|
49
|
+
| Video | Get Template | Returns one video generation template, with its recommended model, supported models, default parameters, and required inputs. |
|
|
50
|
+
| Voice | Delete | Deletes one of your custom voices on a text to speech model. This cannot be undone. |
|
|
51
|
+
| Voice | Get Many | Returns the voices of a text to speech model, including your custom voices. Filters include type, language, gender, pitch, and search text, on models that support them. |
|
|
52
|
+
| Web Search | Answer | Answers a question from the web with an answer model and returns the answer with the sources it cites. |
|
|
53
|
+
| Web Search | Research | Researches a question on the web with a research model and returns a report with citations and its sources. A report can take several minutes, and the node waits for it, with a timeout. Options include the citation format and the research depth. |
|
|
54
|
+
| Web Search | Search | Searches the web with a search model and returns its answer: results with titles, URLs and snippets, an answer, or both, depending on the model. Each model's own fields, such as the number of results, go in **Model Parameters (JSON)**. |
|
|
55
|
+
|
|
56
|
+
Operations that create content also accept **Model Parameters (JSON)**: extra request fields for the selected model, such as `{"seed": 42}`. Each model lists the fields it accepts on its page in the [model catalog](https://docs.empiriolabs.ai/models-pricing).
|
|
57
|
+
|
|
58
|
+
The template lists load live from EmpirioLabs AI, and the Voice > Delete list shows your custom voices on the selected model.
|
|
59
|
+
|
|
60
|
+
The node can be used as a tool by the n8n AI Agent.
|
|
61
|
+
|
|
62
|
+
## Trigger
|
|
63
|
+
|
|
64
|
+
The **EmpirioLabs AI Trigger** node polls your recent jobs and starts the workflow when a job finishes.
|
|
65
|
+
|
|
66
|
+
- **Event:** Job Finished.
|
|
67
|
+
- **Statuses:** Completed, Failed, or Cancelled. Completed and Failed are selected by default.
|
|
68
|
+
- **Filters:** job type (image, video, music and sound, speech, transcription, or 3D generation) and model ID.
|
|
69
|
+
|
|
70
|
+
Each finished job starts the workflow once. When you activate the workflow, jobs that already finished are skipped. The jobs list covers the last hour, so keep the poll interval under an hour. When you test the trigger in the editor, it returns the most recent finished job.
|
|
71
|
+
|
|
72
|
+
## Credentials
|
|
73
|
+
|
|
74
|
+
The nodes authenticate with an EmpirioLabs AI API key.
|
|
75
|
+
|
|
76
|
+
1. Sign in or create an account at [platform.empiriolabs.ai](https://platform.empiriolabs.ai).
|
|
77
|
+
2. Open [API Keys](https://platform.empiriolabs.ai/dashboard/api-keys) in the dashboard and create a key. Keys start with `sk-empiriolabs-`.
|
|
78
|
+
3. In n8n, create a new **EmpirioLabs AI API** credential and paste the key into **API Key**.
|
|
79
|
+
|
|
80
|
+
n8n checks the key with a request to `GET https://api.empiriolabs.ai/v1/account/usage?limit=1`, which does not use credits. Requests that run models use the credits on your account; prices are listed on the [pricing page](https://empiriolabs.ai/pricing). See [Authentication](https://docs.empiriolabs.ai/authentication) for more about API keys.
|
|
81
|
+
|
|
82
|
+
## Compatibility
|
|
83
|
+
|
|
84
|
+
Built with the n8n node CLI (`@n8n/node-cli` 0.54) and tested against `n8n-workflow` 2.45. The package has no runtime dependencies.
|
|
85
|
+
|
|
86
|
+
## Usage
|
|
87
|
+
|
|
88
|
+
- **Choosing a model:** each model list shows the models whose catalog entry supports the selected operation. To set a model by ID instead, switch the field to **Expression** and enter an ID from the [models page](https://empiriolabs.ai/models).
|
|
89
|
+
- **Voices:** the Voice list shows the voices the selected text to speech model offers. **Model Default** uses the default voice of the model. Voice > Get Many returns the whole voice list of a model, with your custom voices. To speak with one of them, switch the Voice field to **Expression** and enter its ID. A model that takes voice IDs in another field names that field on its page in the model catalog: send it in **Model Parameters (JSON)**.
|
|
90
|
+
- **Templates:** Get Many Templates and Get Template return the image and video generation templates with their IDs. To apply one, enter its ID as `template` in **Model Parameters (JSON)** of Image > Generate or Video > Generate, for example `{"template": "TEMPLATE_ID"}`, and choose a model the template supports.
|
|
91
|
+
- **Binary files:** images, speech, and downloaded videos, music, and 3D files are returned in the binary field `data`. Change it with **Put Output in Field**. For transcription, document reading, image analysis, and 3D generation, set **Input Data Field Name** to the binary field that holds the file.
|
|
92
|
+
- **Long jobs:** video, 3D, and music and sound generation run as jobs. Video generation usually takes 1 to 15 minutes. Either turn on **Wait for Completion** and set a timeout, or keep the default, which returns the job right away, and continue with the Job resource or the trigger. Job results are kept for one hour after the job finishes.
|
|
93
|
+
- **Generated file links expire 7 days after they are created.** Download a file you want to keep, for example with the download options on the Video, Audio, 3D Asset, and Job resources.
|
|
94
|
+
- **Errors:** the node shows the message returned by the API, such as an unsupported parameter for the selected model. Turn on **Continue On Fail** in the node settings to keep the workflow running and return the message in the item instead.
|
|
95
|
+
|
|
96
|
+
## Development
|
|
97
|
+
|
|
98
|
+
```sh
|
|
99
|
+
npm install
|
|
100
|
+
npm run build # compile to dist/
|
|
101
|
+
npm run lint # n8n community node lint rules
|
|
102
|
+
npm test # offline unit tests with a mocked n8n context
|
|
103
|
+
npm run scan:local # the lint passes of @n8n/scan-community-package, run locally
|
|
104
|
+
npm run dev # start n8n with this package loaded at http://localhost:5678
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
`npm run scan:local` installs `@n8n/scan-community-package` into `.scan/` and runs its two lint passes against the source and against the files `npm pack` would publish. The published scan, `npx @n8n/scan-community-package n8n-nodes-empiriolabs`, also checks npm provenance, so it can only pass after a version is published from GitHub Actions.
|
|
108
|
+
|
|
109
|
+
The live smoke test is skipped unless you opt in. It runs the credential test and one short chat completion on the cheapest chat model in the catalog, which uses a small amount of credit:
|
|
110
|
+
|
|
111
|
+
```sh
|
|
112
|
+
EMPIRIOLABS_LIVE=1 EMPIRIOLABS_API_KEY=sk-empiriolabs-... npm run test:live
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Set `EMPIRIOLABS_LIVE_MODEL` to choose the chat model.
|
|
116
|
+
|
|
117
|
+
### Releasing
|
|
118
|
+
|
|
119
|
+
Versions are published to npm with a provenance statement by the [Publish workflow](.github/workflows/publish.yml) when a version tag such as `0.1.0` is pushed. Run `npm run release` to bump the version, update the changelog, tag, and push.
|
|
120
|
+
|
|
121
|
+
## Resources
|
|
122
|
+
|
|
123
|
+
- [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)
|
|
124
|
+
- [EmpirioLabs AI documentation](https://docs.empiriolabs.ai/getting-started)
|
|
125
|
+
- [EmpirioLabs AI API reference](https://docs.empiriolabs.ai/api-reference-overview)
|
|
126
|
+
- [EmpirioLabs AI models](https://empiriolabs.ai/models)
|
|
127
|
+
- [npm package](https://www.npmjs.com/package/n8n-nodes-empiriolabs)
|
|
128
|
+
- Support: [support@empiriolabs.ai](mailto:support@empiriolabs.ai)
|
|
129
|
+
|
|
130
|
+
## Version history
|
|
131
|
+
|
|
132
|
+
### 0.4.0
|
|
133
|
+
|
|
134
|
+
New resources 3D Asset (Generate), Decision (Create), Detection (Detect AI Text), Rerank (Rerank Documents), and Voice (Get Many, Delete). New operations on the existing resources: Audio (Generate Music or Sound), Image (Edit, Analyze, Get Template, Get Many Templates), Video (Get Template, Get Many Templates), and Web Search (Answer, Research). Each calls the EmpirioLabs AI API directly with typed fields.
|
|
135
|
+
|
|
136
|
+
### 0.3.0
|
|
137
|
+
|
|
138
|
+
New Document resource (Read: a PDF or an image as Markdown) and Web Search resource (Search), each calling the EmpirioLabs AI API directly with typed fields. They replace the Tool resource of 0.2.0, which is removed.
|
|
139
|
+
|
|
140
|
+
### 0.2.0
|
|
141
|
+
|
|
142
|
+
New Tool resource with the Run operation (Run a tool), which runs any EmpirioLabs AI tool. The tool list and each tool's arguments load live from EmpirioLabs AI, so new tools appear without a node update.
|
|
143
|
+
|
|
144
|
+
### 0.1.1
|
|
145
|
+
|
|
146
|
+
Published from GitHub Actions through npm trusted publishing, with provenance. The README links the npm package.
|
|
147
|
+
|
|
148
|
+
### 0.1.0
|
|
149
|
+
|
|
150
|
+
First release: Audio (Text to Speech, Transcribe), Chat (Create Completion), Embedding (Create), Image (Generate), Job (Get, Get Many), Model (Get Many), Video (Generate), and the Job Finished trigger.
|
|
151
|
+
|
|
152
|
+
## License
|
|
153
|
+
|
|
154
|
+
[MIT](LICENSE.md)
|
|
@@ -1,27 +1,37 @@
|
|
|
1
1
|
import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
|
|
2
|
-
import { getChatModels, getEmbeddingModels, getImageModels, getModelCategories, getSpeechModels,
|
|
3
|
-
import { searchJobs } from './methods/listSearch';
|
|
4
|
-
import { getToolFields } from './methods/resourceMapping';
|
|
2
|
+
import { getAnswerModels, getAudioGenerationModels, getChatModels, getDecisionModels, getDetectionModels, getDocumentModels, getEmbeddingModels, getImageEditModels, getImageModels, getImageTemplates, getModelCategories, getRerankModels, getResearchModels, getSearchModels, getSpeechModels, getThreeDModels, getTranscriptionModels, getVideoModels, getVideoTemplates, getVisionModels, getVoiceModels, getVoices } from './methods/loadOptions';
|
|
3
|
+
import { searchCustomVoices, searchJobs } from './methods/listSearch';
|
|
5
4
|
export declare class Empiriolabs implements INodeType {
|
|
6
5
|
description: INodeTypeDescription;
|
|
7
6
|
methods: {
|
|
8
7
|
loadOptions: {
|
|
8
|
+
getAnswerModels: typeof getAnswerModels;
|
|
9
|
+
getAudioGenerationModels: typeof getAudioGenerationModels;
|
|
9
10
|
getChatModels: typeof getChatModels;
|
|
11
|
+
getDecisionModels: typeof getDecisionModels;
|
|
12
|
+
getDetectionModels: typeof getDetectionModels;
|
|
13
|
+
getDocumentModels: typeof getDocumentModels;
|
|
10
14
|
getEmbeddingModels: typeof getEmbeddingModels;
|
|
15
|
+
getImageEditModels: typeof getImageEditModels;
|
|
11
16
|
getImageModels: typeof getImageModels;
|
|
17
|
+
getImageTemplates: typeof getImageTemplates;
|
|
12
18
|
getModelCategories: typeof getModelCategories;
|
|
19
|
+
getRerankModels: typeof getRerankModels;
|
|
20
|
+
getResearchModels: typeof getResearchModels;
|
|
21
|
+
getSearchModels: typeof getSearchModels;
|
|
13
22
|
getSpeechModels: typeof getSpeechModels;
|
|
14
|
-
|
|
23
|
+
getThreeDModels: typeof getThreeDModels;
|
|
15
24
|
getTranscriptionModels: typeof getTranscriptionModels;
|
|
16
25
|
getVideoModels: typeof getVideoModels;
|
|
26
|
+
getVideoTemplates: typeof getVideoTemplates;
|
|
27
|
+
getVisionModels: typeof getVisionModels;
|
|
28
|
+
getVoiceModels: typeof getVoiceModels;
|
|
17
29
|
getVoices: typeof getVoices;
|
|
18
30
|
};
|
|
19
31
|
listSearch: {
|
|
32
|
+
searchCustomVoices: typeof searchCustomVoices;
|
|
20
33
|
searchJobs: typeof searchJobs;
|
|
21
34
|
};
|
|
22
|
-
resourceMapping: {
|
|
23
|
-
getToolFields: typeof getToolFields;
|
|
24
|
-
};
|
|
25
35
|
};
|
|
26
36
|
execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
|
|
27
37
|
}
|
|
@@ -4,32 +4,59 @@ exports.Empiriolabs = void 0;
|
|
|
4
4
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
5
5
|
const audio_1 = require("./actions/audio");
|
|
6
6
|
const chat_1 = require("./actions/chat");
|
|
7
|
+
const decision_1 = require("./actions/decision");
|
|
8
|
+
const detection_1 = require("./actions/detection");
|
|
9
|
+
const document_1 = require("./actions/document");
|
|
7
10
|
const embedding_1 = require("./actions/embedding");
|
|
8
11
|
const image_1 = require("./actions/image");
|
|
9
12
|
const job_1 = require("./actions/job");
|
|
10
13
|
const model_1 = require("./actions/model");
|
|
11
|
-
const
|
|
14
|
+
const rerank_1 = require("./actions/rerank");
|
|
15
|
+
const search_1 = require("./actions/search");
|
|
16
|
+
const threeD_1 = require("./actions/threeD");
|
|
12
17
|
const video_1 = require("./actions/video");
|
|
18
|
+
const voice_1 = require("./actions/voice");
|
|
13
19
|
const AudioDescription_1 = require("./descriptions/AudioDescription");
|
|
14
20
|
const ChatDescription_1 = require("./descriptions/ChatDescription");
|
|
21
|
+
const DecisionDescription_1 = require("./descriptions/DecisionDescription");
|
|
22
|
+
const DetectionDescription_1 = require("./descriptions/DetectionDescription");
|
|
23
|
+
const DocumentDescription_1 = require("./descriptions/DocumentDescription");
|
|
15
24
|
const EmbeddingDescription_1 = require("./descriptions/EmbeddingDescription");
|
|
16
25
|
const ImageDescription_1 = require("./descriptions/ImageDescription");
|
|
17
26
|
const JobDescription_1 = require("./descriptions/JobDescription");
|
|
18
27
|
const ModelDescription_1 = require("./descriptions/ModelDescription");
|
|
19
|
-
const
|
|
28
|
+
const RerankDescription_1 = require("./descriptions/RerankDescription");
|
|
29
|
+
const SearchDescription_1 = require("./descriptions/SearchDescription");
|
|
30
|
+
const ThreeDDescription_1 = require("./descriptions/ThreeDDescription");
|
|
20
31
|
const VideoDescription_1 = require("./descriptions/VideoDescription");
|
|
32
|
+
const VoiceDescription_1 = require("./descriptions/VoiceDescription");
|
|
21
33
|
const loadOptions_1 = require("./methods/loadOptions");
|
|
22
34
|
const listSearch_1 = require("./methods/listSearch");
|
|
23
|
-
const resourceMapping_1 = require("./methods/resourceMapping");
|
|
24
35
|
const OPERATIONS = {
|
|
25
|
-
audio: { textToSpeech: audio_1.textToSpeech, transcribe: audio_1.transcribe },
|
|
36
|
+
audio: { generate: audio_1.generateAudio, textToSpeech: audio_1.textToSpeech, transcribe: audio_1.transcribe },
|
|
26
37
|
chat: { create: chat_1.createChatCompletion },
|
|
38
|
+
decision: { create: decision_1.createDecision },
|
|
39
|
+
detection: { detect: detection_1.detectText },
|
|
40
|
+
document: { read: document_1.readDocument },
|
|
27
41
|
embedding: { create: embedding_1.createEmbedding },
|
|
28
|
-
image: {
|
|
42
|
+
image: {
|
|
43
|
+
analyze: image_1.analyzeImage,
|
|
44
|
+
edit: image_1.editImage,
|
|
45
|
+
generate: image_1.generateImage,
|
|
46
|
+
getAllTemplates: image_1.getManyImageTemplates,
|
|
47
|
+
getTemplate: image_1.getImageTemplate,
|
|
48
|
+
},
|
|
29
49
|
job: { get: job_1.getJob, getAll: job_1.getManyJobs },
|
|
30
50
|
model: { getAll: model_1.getManyModels },
|
|
31
|
-
|
|
32
|
-
|
|
51
|
+
rerank: { rerank: rerank_1.rerankDocuments },
|
|
52
|
+
threeD: { generate: threeD_1.generateThreeD },
|
|
53
|
+
video: {
|
|
54
|
+
generate: video_1.generateVideo,
|
|
55
|
+
getAllTemplates: video_1.getManyVideoTemplates,
|
|
56
|
+
getTemplate: video_1.getVideoTemplate,
|
|
57
|
+
},
|
|
58
|
+
voice: { delete: voice_1.deleteVoice, getAll: voice_1.getManyVoices },
|
|
59
|
+
webSearch: { answer: search_1.answerWeb, research: search_1.researchWeb, search: search_1.searchWeb },
|
|
33
60
|
};
|
|
34
61
|
class Empiriolabs {
|
|
35
62
|
constructor() {
|
|
@@ -40,7 +67,7 @@ class Empiriolabs {
|
|
|
40
67
|
group: ['transform'],
|
|
41
68
|
version: 1,
|
|
42
69
|
subtitle: '={{ $parameter["operation"] + ": " + $parameter["resource"] }}',
|
|
43
|
-
description: 'Use EmpirioLabs AI models for chat, images, speech, transcription, video,
|
|
70
|
+
description: 'Use EmpirioLabs AI models for chat, images, speech, music, transcription, video, 3D, embeddings, reranking, decisions, document reading, and web search',
|
|
44
71
|
defaults: {
|
|
45
72
|
name: 'EmpirioLabs AI',
|
|
46
73
|
},
|
|
@@ -60,14 +87,20 @@ class Empiriolabs {
|
|
|
60
87
|
type: 'options',
|
|
61
88
|
noDataExpression: true,
|
|
62
89
|
options: [
|
|
90
|
+
{ name: '3D Asset', value: 'threeD' },
|
|
63
91
|
{ name: 'Audio', value: 'audio' },
|
|
64
92
|
{ name: 'Chat', value: 'chat' },
|
|
93
|
+
{ name: 'Decision', value: 'decision' },
|
|
94
|
+
{ name: 'Detection', value: 'detection' },
|
|
95
|
+
{ name: 'Document', value: 'document' },
|
|
65
96
|
{ name: 'Embedding', value: 'embedding' },
|
|
66
97
|
{ name: 'Image', value: 'image' },
|
|
67
98
|
{ name: 'Job', value: 'job' },
|
|
68
99
|
{ name: 'Model', value: 'model' },
|
|
69
|
-
{ name: '
|
|
100
|
+
{ name: 'Rerank', value: 'rerank' },
|
|
70
101
|
{ name: 'Video', value: 'video' },
|
|
102
|
+
{ name: 'Voice', value: 'voice' },
|
|
103
|
+
{ name: 'Web Search', value: 'webSearch' },
|
|
71
104
|
],
|
|
72
105
|
default: 'chat',
|
|
73
106
|
},
|
|
@@ -75,6 +108,12 @@ class Empiriolabs {
|
|
|
75
108
|
...AudioDescription_1.audioFields,
|
|
76
109
|
...ChatDescription_1.chatOperations,
|
|
77
110
|
...ChatDescription_1.chatFields,
|
|
111
|
+
...DecisionDescription_1.decisionOperations,
|
|
112
|
+
...DecisionDescription_1.decisionFields,
|
|
113
|
+
...DetectionDescription_1.detectionOperations,
|
|
114
|
+
...DetectionDescription_1.detectionFields,
|
|
115
|
+
...DocumentDescription_1.documentOperations,
|
|
116
|
+
...DocumentDescription_1.documentFields,
|
|
78
117
|
...EmbeddingDescription_1.embeddingOperations,
|
|
79
118
|
...EmbeddingDescription_1.embeddingFields,
|
|
80
119
|
...ImageDescription_1.imageOperations,
|
|
@@ -83,30 +122,47 @@ class Empiriolabs {
|
|
|
83
122
|
...JobDescription_1.jobFields,
|
|
84
123
|
...ModelDescription_1.modelOperations,
|
|
85
124
|
...ModelDescription_1.modelFields,
|
|
86
|
-
...
|
|
87
|
-
...
|
|
125
|
+
...RerankDescription_1.rerankOperations,
|
|
126
|
+
...RerankDescription_1.rerankFields,
|
|
127
|
+
...ThreeDDescription_1.threeDOperations,
|
|
128
|
+
...ThreeDDescription_1.threeDFields,
|
|
88
129
|
...VideoDescription_1.videoOperations,
|
|
89
130
|
...VideoDescription_1.videoFields,
|
|
131
|
+
...VoiceDescription_1.voiceOperations,
|
|
132
|
+
...VoiceDescription_1.voiceFields,
|
|
133
|
+
...SearchDescription_1.searchOperations,
|
|
134
|
+
...SearchDescription_1.searchFields,
|
|
90
135
|
],
|
|
91
136
|
};
|
|
92
137
|
this.methods = {
|
|
93
138
|
loadOptions: {
|
|
139
|
+
getAnswerModels: loadOptions_1.getAnswerModels,
|
|
140
|
+
getAudioGenerationModels: loadOptions_1.getAudioGenerationModels,
|
|
94
141
|
getChatModels: loadOptions_1.getChatModels,
|
|
142
|
+
getDecisionModels: loadOptions_1.getDecisionModels,
|
|
143
|
+
getDetectionModels: loadOptions_1.getDetectionModels,
|
|
144
|
+
getDocumentModels: loadOptions_1.getDocumentModels,
|
|
95
145
|
getEmbeddingModels: loadOptions_1.getEmbeddingModels,
|
|
146
|
+
getImageEditModels: loadOptions_1.getImageEditModels,
|
|
96
147
|
getImageModels: loadOptions_1.getImageModels,
|
|
148
|
+
getImageTemplates: loadOptions_1.getImageTemplates,
|
|
97
149
|
getModelCategories: loadOptions_1.getModelCategories,
|
|
150
|
+
getRerankModels: loadOptions_1.getRerankModels,
|
|
151
|
+
getResearchModels: loadOptions_1.getResearchModels,
|
|
152
|
+
getSearchModels: loadOptions_1.getSearchModels,
|
|
98
153
|
getSpeechModels: loadOptions_1.getSpeechModels,
|
|
99
|
-
|
|
154
|
+
getThreeDModels: loadOptions_1.getThreeDModels,
|
|
100
155
|
getTranscriptionModels: loadOptions_1.getTranscriptionModels,
|
|
101
156
|
getVideoModels: loadOptions_1.getVideoModels,
|
|
157
|
+
getVideoTemplates: loadOptions_1.getVideoTemplates,
|
|
158
|
+
getVisionModels: loadOptions_1.getVisionModels,
|
|
159
|
+
getVoiceModels: loadOptions_1.getVoiceModels,
|
|
102
160
|
getVoices: loadOptions_1.getVoices,
|
|
103
161
|
},
|
|
104
162
|
listSearch: {
|
|
163
|
+
searchCustomVoices: listSearch_1.searchCustomVoices,
|
|
105
164
|
searchJobs: listSearch_1.searchJobs,
|
|
106
165
|
},
|
|
107
|
-
resourceMapping: {
|
|
108
|
-
getToolFields: resourceMapping_1.getToolFields,
|
|
109
|
-
},
|
|
110
166
|
};
|
|
111
167
|
}
|
|
112
168
|
async execute() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Empiriolabs.node.js","sourceRoot":"","sources":["../../../nodes/Empiriolabs/Empiriolabs.node.ts"],"names":[],"mappings":";;;AAOA,+CAAqF;AAErF,
|
|
1
|
+
{"version":3,"file":"Empiriolabs.node.js","sourceRoot":"","sources":["../../../nodes/Empiriolabs/Empiriolabs.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { IDataObject, IExecuteFunctions, INodeExecutionData } from 'n8n-workflow';
|
|
2
2
|
export declare function buildSpeechBody(this: IExecuteFunctions, itemIndex: number): IDataObject;
|
|
3
3
|
export declare function textToSpeech(this: IExecuteFunctions, itemIndex: number): Promise<INodeExecutionData[]>;
|
|
4
|
+
export declare function buildAudioGenerationBody(this: IExecuteFunctions, itemIndex: number): IDataObject;
|
|
5
|
+
export declare function generateAudio(this: IExecuteFunctions, itemIndex: number): Promise<INodeExecutionData[]>;
|
|
4
6
|
export declare function simplifyTranscript(result: IDataObject, jobId?: unknown): IDataObject;
|
|
5
7
|
export declare function transcribe(this: IExecuteFunctions, itemIndex: number): Promise<INodeExecutionData[]>;
|