{"version":3,"sources":["jsdelivr-header.js","/npm/llmforge@2.0.0/dist/index.js"],"names":[],"mappings":"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","file":"/npm/llmforge@2.0.0/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/llmforge@2.0.0/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    var desc = Object.getOwnPropertyDescriptor(m, k);\n    if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n      desc = { enumerable: true, get: function() { return m[k]; } };\n    }\n    Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n    Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n    o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || (function () {\n    var ownKeys = function(o) {\n        ownKeys = Object.getOwnPropertyNames || function (o) {\n            var ar = [];\n            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n            return ar;\n        };\n        return ownKeys(o);\n    };\n    return function (mod) {\n        if (mod && mod.__esModule) return mod;\n        var result = {};\n        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n        __setModuleDefault(result, mod);\n        return result;\n    };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RunnerClient = void 0;\nclass RunnerClient {\n    constructor(config) {\n        this.config = config;\n        this.LLMClients = [];\n        if (!this.config.llmConfig) {\n            throw new Error('LLM configuration is required.');\n        }\n        this.setLLMConfigToDefault().catch(error => {\n            throw new Error(`Failed to set LLM configuration to default: ${error.message}`);\n        });\n    }\n    static async create(config) {\n        const client = new RunnerClient(config);\n        await client.loadLLMClients();\n        return client;\n    }\n    async setLLMConfigToDefault() {\n        const normalize = (llmConfig) => ({\n            ...llmConfig,\n            timeout: llmConfig.timeout || 30000,\n            priority: llmConfig.priority || 1,\n            retryConfig: llmConfig.retryConfig || { maxRetries: 0, retryDelay: 1000 },\n            generationConfig: llmConfig.generationConfig || {\n                responseMimeType: 'text/plain',\n                temperature: 0.7,\n                topP: 1.0,\n                topK: 40,\n                maxOutputTokens: 1024,\n                stopSequences: [],\n            },\n            stream: llmConfig.stream || false,\n        });\n        if (Array.isArray(this.config.llmConfig)) {\n            this.config.llmConfig = this.config.llmConfig.map(normalize);\n        }\n        else {\n            this.config.llmConfig = normalize(this.config.llmConfig);\n        }\n    }\n    async loadLLMClients() {\n        const { Factory } = await Promise.resolve().then(() => __importStar(require('./providers/provider.factory')));\n        const llmConfigs = Array.isArray(this.config.llmConfig) ? this.config.llmConfig : [this.config.llmConfig];\n        for (const llmConfig of llmConfigs) {\n            const client = await new Factory(llmConfig).create();\n            this.LLMClients.push([llmConfig, client]);\n        }\n        this.LLMClients.sort((a, b) => a[0].priority - b[0].priority);\n    }\n    async run(content) {\n        if (this.LLMClients.length === 0) {\n            throw new Error('No LLM clients available to run the content.');\n        }\n        let isFallbackUsed = false;\n        let reasonForFallback = [];\n        for (const [llmConfig, client] of this.LLMClients) {\n            try {\n                const response = llmConfig.stream ? await client.generateContentStreamAsync({ contents: content }) : await client.generateContent({ contents: content });\n                return response;\n            }\n            catch (error) {\n                reasonForFallback.push({\n                    client: client.constructor.name,\n                    error: error.message,\n                });\n                isFallbackUsed = true;\n            }\n            if (!this.config.enableFallback)\n                break;\n        }\n        if (isFallbackUsed && this.config.enableFallback) {\n            return {\n                resp_id: undefined,\n                output: '',\n                created_at: Date.now(),\n                model: 'fallback',\n                usage: { input_tokens: 0, output_tokens: 0, total_tokens: 0 },\n                status: 'fallback',\n                fallback: {\n                    isUsed: true,\n                    reason: reasonForFallback.map(r => `${r.client}: ${r.error}`).join(', '),\n                },\n            };\n        }\n        throw new Error(`All LLM clients failed: ${reasonForFallback.map(r => `${r.client}: ${r.error}`).join(', ')}`);\n    }\n}\nexports.RunnerClient = RunnerClient;\n"]}