UNPKG

n8n-nodes-aimlapi

Version:

Custom n8n node for integrating with the AI/ML API platform (AIMLAPI) to interact with LLMs and multimodal AI models such as chat completion endpoints.

32 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.executeEmbeddingGeneration = executeEmbeddingGeneration; const request_1 = require("../utils/request"); const object_1 = require("../utils/object"); async function executeEmbeddingGeneration({ context, itemIndex, baseURL, model, }) { const input = context.getNodeParameter('embeddingInput', itemIndex); const extract = context.getNodeParameter('embeddingExtract', itemIndex); const options = context.getNodeParameter('embeddingOptions', itemIndex, {}); const requestOptions = (0, request_1.createRequestOptions)(baseURL, '/v1/embeddings'); const body = { model, input, }; (0, object_1.setIfDefined)(body, 'encoding_format', options.encodingFormat); (0, object_1.setIfDefined)(body, 'user', options.user); requestOptions.body = body; const response = (await context.helpers.httpRequestWithAuthentication.call(context, 'aimlApi', requestOptions)); const data = response.data ?? []; if (extract === 'vector') { const embedding = data[0]?.embedding ?? []; return { json: { embedding }, pairedItem: { item: itemIndex } }; } if (extract === 'vectors') { const embeddings = data .map((entry) => entry.embedding) .filter((value) => Array.isArray(value)); return { json: { embeddings }, pairedItem: { item: itemIndex } }; } return { json: { result: response }, pairedItem: { item: itemIndex } }; } //# sourceMappingURL=embeddingGeneration.execute.js.map