UNPKG

@n8n/n8n-nodes-langchain

Version:
32 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.searchModels = searchModels; const ai_utilities_1 = require("@n8n/ai-utilities"); const model_discovery_1 = require("@n8n/ai-utilities/model-discovery"); const config_1 = require("@n8n/config"); const di_1 = require("@n8n/di"); const helpers_1 = require("../../../../utils/helpers"); const credentials_1 = require("../../../vendors/OpenAi/helpers/credentials"); async function searchModels(filter) { const credentials = await this.getCredentials('openAiApi'); const baseUrlOverride = this.getNodeParameter('options.baseURL', ''); if (baseUrlOverride) { (0, credentials_1.assertOpenAiCredentialAllowsUrl)(this.getNode(), credentials, baseUrlOverride); } const baseURL = baseUrlOverride || credentials.url || 'https://api.openai.com/v1'; const { openAiDefaultHeaders } = di_1.Container.get(config_1.AiConfig); const lookup = this.helpers.getSecureEgressFilter().createSecureLookup(); const headers = (0, helpers_1.mergeCustomHeaders)(credentials, openAiDefaultHeaders ?? {}); const models = await (0, model_discovery_1.listOpenAiModels)({ apiKey: credentials.apiKey, baseURL, headers, fetch: async (input, init) => await (0, ai_utilities_1.proxyFetch)({ input, init, lookup }), }); return { results: models .filter((model) => !filter || model.id.toLowerCase().includes(filter.toLowerCase())) .map((model) => ({ name: model.id, value: model.id })), }; } //# sourceMappingURL=loadModels.js.map