UNPKG

doomiaichat

Version:

Doomisoft OpenAI

44 lines (43 loc) 1.57 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createAIInstance = exports.AIProviderEnum = void 0; /** * 语音转文字服务商工厂 */ const openai_1 = __importDefault(require("./openai")); const azureai_1 = __importDefault(require("./azureai")); const baiduai_1 = __importDefault(require("./baiduai")); /** * OpenAI/NLP 的服务提供商 OpenAI,微软,百度文心(待接入),google(待接入) */ exports.AIProviderEnum = { OPENAI: 'openai', MICROSOFT: 'microsoft', BAIDU: 'baidu', GOOGLE: 'google' }; /** * 根据类型创建不同的TTS引擎对象 * @param {*} provider * @param {*} apikey * @param {*} setting * @returns */ function createAIInstance(provider, apikey, setting) { let { model, maxtoken, temperature, endpoint, engine, version } = setting || {}; switch (provider) { case exports.AIProviderEnum.OPENAI: return new openai_1.default(apikey + '', { model, maxtoken, temperature }); case exports.AIProviderEnum.MICROSOFT: return new azureai_1.default(apikey + '', { endpoint, engine, version }, { model, maxtoken, temperature }); case exports.AIProviderEnum.BAIDU: let cred = typeof (apikey) === 'string' ? { apikey, securitykey: apikey } : apikey; return new baiduai_1.default(cred); default: return null; } } exports.createAIInstance = createAIInstance; ;