apexify.js 4.1.7 → 4.1.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Gemini-flash.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-flash.ts"],"names":[],"mappings":"AAUA,wBAAsB,WAAW,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,EAAE,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAsMnP"}
1
+ {"version":3,"file":"Gemini-flash.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-flash.ts"],"names":[],"mappings":"AAQA,wBAAsB,WAAW,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,EAAE,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAyLnP"}
@@ -5,13 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.geminiFlash = void 0;
7
7
  const generative_ai_1 = require("@google/generative-ai");
8
- const path_1 = __importDefault(require("path"));
9
- const fs_1 = __importDefault(require("fs"));
10
- const config_1 = __importDefault(require("./config"));
11
8
  const general_functions_1 = require("../../canvas/utils/general functions");
12
9
  const verse_db_1 = require("verse.db");
10
+ const config_1 = __importDefault(require("./config"));
13
11
  const axios_1 = __importDefault(require("axios"));
14
- let currentApiKeyIndex = 0;
12
+ const path_1 = __importDefault(require("path"));
13
+ const fs_1 = __importDefault(require("fs"));
15
14
  async function geminiFlash(message, AI) {
16
15
  async function validateKey(apiKey) {
17
16
  try {
@@ -23,16 +22,6 @@ async function geminiFlash(message, AI) {
23
22
  return false;
24
23
  }
25
24
  }
26
- async function getValidGenAI(apiKeys, initialIndex) {
27
- for (let i = initialIndex; i < apiKeys.length; i++) {
28
- const apiKey = apiKeys[i];
29
- if (await validateKey(apiKey)) {
30
- currentApiKeyIndex = i;
31
- return new generative_ai_1.GoogleGenerativeAI(apiKey);
32
- }
33
- }
34
- return null;
35
- }
36
25
  async function processRequest(genAI) {
37
26
  var _a, _b;
38
27
  let personalityString = '';
@@ -42,7 +31,7 @@ async function geminiFlash(message, AI) {
42
31
  personalityString = personalityContent.split('\n').join(' ');
43
32
  }
44
33
  const generationConfig = {
45
- maxOutputTokens: 750,
34
+ maxOutputTokens: 1048576,
46
35
  };
47
36
  const safetySettings = [
48
37
  {
@@ -95,7 +84,7 @@ async function geminiFlash(message, AI) {
95
84
  if (message.db) {
96
85
  db = new verse_db_1.connect({ adapter: 'json', dataPath: `${message.serverId}_ChatHistory` });
97
86
  const data = await db.find(`${message.userId}_chatHistory`, { userId: message.userId });
98
- historyData = ((_a = data.results) === null || _a === void 0 ? void 0 : _a.history) || undefined;
87
+ historyData = ((_a = data.results) === null || _a === void 0 ? void 0 : _a.history.slice(-20)) || undefined;
99
88
  }
100
89
  const chat = model.startChat({
101
90
  history: historyData || defaultHistory,
@@ -111,7 +100,7 @@ async function geminiFlash(message, AI) {
111
100
  mimeType: "image/png",
112
101
  },
113
102
  };
114
- result = await chat.sendMessage([AI.userMsg, image]);
103
+ result = await chat.generateContent([AI.userMsg, image]);
115
104
  }
116
105
  else {
117
106
  result = await chat.sendMessage(AI.userMsg);
@@ -150,39 +139,33 @@ async function geminiFlash(message, AI) {
150
139
  }
151
140
  }
152
141
  try {
153
- let genAI;
154
- if (AI.API_KEY && await validateKey(AI.API_KEY)) {
155
- genAI = new generative_ai_1.GoogleGenerativeAI(AI.API_KEY);
142
+ if (AI.API_KEY && !(await validateKey(AI.API_KEY))) {
143
+ return 'Invalid API key provided.';
156
144
  }
157
- else {
158
- genAI = await getValidGenAI(config_1.default.apiKeys, currentApiKeyIndex);
159
- if (!genAI) {
160
- return 'All provided API keys are invalid.';
161
- }
145
+ function getRandomApiKey() {
146
+ const { apiKeys } = config_1.default;
147
+ const randomIndex = Math.floor(Math.random() * apiKeys.length);
148
+ return apiKeys[randomIndex];
162
149
  }
150
+ const randomApiKey = getRandomApiKey();
151
+ const genAI = new generative_ai_1.GoogleGenerativeAI(AI.API_KEY || randomApiKey);
163
152
  return await processRequest(genAI);
164
153
  }
165
154
  catch (e) {
166
155
  if (e.message) {
167
156
  if (e.status === 429 || e.status === 403) {
168
- currentApiKeyIndex++;
169
- if (currentApiKeyIndex < config_1.default.apiKeys.length) {
170
- return await geminiFlash(message, AI);
171
- }
172
- else {
173
- return 'Ai is on a cooldown for the rest of the day. Either provide your own API key or wait for tomorrow. Check ai.google.dev for free apikeys';
174
- }
157
+ return 'AI is on a cooldown for the rest of the day. Either provide a new API key or wait for tomorrow. Check ai.google.dev for free API keys.';
175
158
  }
176
159
  else if (e.status === 400) {
177
- return `The hoster/bot owner/the used host isn't supported by gemini.`;
160
+ return 'The hoster/bot owner/the used host isn\'t supported by Gemini.';
178
161
  }
179
162
  else if (e.message === '[GoogleGenerativeAI Error]: Candidate was blocked due to SAFETY') {
180
163
  console.error(e);
181
- return `Due to safety enabled by gemini you have been blocked.`;
164
+ return 'Due to safety enabled by Gemini, you have been blocked.';
182
165
  }
183
166
  else {
184
167
  console.error(e);
185
- return `Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists please contact the bot developer or owner of the npm package.`;
168
+ return 'Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists, please contact the bot developer or owner of the npm package.';
186
169
  }
187
170
  }
188
171
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"Gemini-flash.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-flash.ts"],"names":[],"mappings":";;;;;;AAAA,yDAA6F;AAC7F,gDAAwB;AACxB,4CAAoB;AACpB,sDAA8B;AAC9B,4EAAiE;AACjE,uCAAmC;AACnC,kDAA0B;AAE1B,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAEpB,KAAK,UAAU,WAAW,CAAC,OAAoH,EAAE,EAA6E;IAEnO,KAAK,UAAU,WAAW,CAAC,MAAc;QACvC,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,+DAA+D,MAAM,EAAE,CAAC,CAAC;YAClH,OAAO,gBAAgB,CAAC,MAAM,KAAK,GAAG,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,OAAiB,EAAE,YAAoB;QAClE,KAAK,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9B,kBAAkB,GAAG,CAAC,CAAC;gBACvB,OAAO,IAAI,kCAAkB,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,KAAU;;QACtC,IAAI,iBAAiB,GAAG,EAAE,CAAC;QAE3B,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;YACrB,MAAM,mBAAmB,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YACvE,MAAM,kBAAkB,GAAG,YAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;YACzE,iBAAiB,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,gBAAgB,GAAG;YACvB,eAAe,EAAE,GAAG;SACrB,CAAC;QAEF,MAAM,cAAc,GAAG;YACrB;gBACE,QAAQ,EAAE,4BAAY,CAAC,wBAAwB;gBAC/C,SAAS,EAAE,kCAAkB,CAAC,eAAe;aAC9C;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,yBAAyB;gBAChD,SAAS,EAAE,kCAAkB,CAAC,sBAAsB;aACrD;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,+BAA+B;gBACtD,SAAS,EAAE,kCAAkB,CAAC,mBAAmB;aAClD;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,+BAA+B;gBACtD,SAAS,EAAE,kCAAkB,CAAC,sBAAsB;aACrD;SACF,CAAC;QAEF,MAAM,iBAAiB,GAAG,GAAG,iBAAiB,4CAA4C,OAAO,CAAC,UAAU,oBAAoB,OAAO,CAAC,WAAW,sCAAsC,OAAO,CAAC,MAAM,GAAG,CAAC;QAC3M,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC,CAAC;QAElI,MAAM,cAAc,GAAG;YACrB;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;aACtC;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAA4D,EAAE,CAAC;aAChF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;aAC3C;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4GAA4G,EAAE,CAAC;aAChI;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,+CAA+C,EAAE,CAAC;aACnE;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,iIAAiI,EAAE,CAAC;aACrJ;SACF,CAAC;QAEF,IAAI,WAAW,GAAsB,SAAS,CAAC;QAE/C,IAAI,EAAO,CAAC;QACZ,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,EAAE,GAAG,IAAI,kBAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;YACnF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACxF,WAAW,GAAG,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,KAAI,SAAS,CAAC;QACnD,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,WAAW,IAAI,cAAc;YACtC,gBAAgB;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,CAAA,MAAA,OAAO,CAAC,UAAU,0CAAE,GAAG,KAAI,IAAI,CAAC;QAC/C,IAAI,MAAW,CAAC;QAEhB,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,WAAW;iBACtB;aACF,CAAC;YACF,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE9C,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,WAAW,GAAG;gBAClB,KAAK,EAAE;oBACL,SAAS,EAAE;wBACT,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;qBACnC;iBACF;aACF,CAAC;YAEF,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAC3D,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAC1B,WAAW,EACX,IAAI,CACL,CAAC;YAEF,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;oBACL,SAAS,EAAE;wBACT,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC;qBACjC;iBACF;aACF,CAAC;YAEF,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAC3D,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAC1B,YAAY,EACZ,IAAI,CACL,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,UAAU,WAAW,CAAC,QAAgB;QACzC,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,IAAA,6BAAS,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxD,OAAO,YAAY,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,IAAI,KAAU,CAAC;QAEf,IAAI,EAAE,CAAC,OAAO,IAAI,MAAM,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,KAAK,GAAG,IAAI,kCAAkB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,MAAM,aAAa,CAAC,gBAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;YAChE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,oCAAoC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACzC,kBAAkB,EAAE,CAAC;gBACrB,IAAI,kBAAkB,GAAG,gBAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBAC/C,OAAO,MAAM,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,yIAAyI,CAAC;gBACnJ,CAAC;YACH,CAAC;iBAAM,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,+DAA+D,CAAC;YACzE,CAAC;iBAAM,IAAI,CAAC,CAAC,OAAO,KAAK,iEAAiE,EAAE,CAAC;gBAC3F,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,wDAAwD,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,iLAAiL,CAAC;YAC3L,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,gCAAgC,CAAC;QAC1C,CAAC;IACH,CAAC;AACH,CAAC;AAtMD,kCAsMC"}
1
+ {"version":3,"file":"Gemini-flash.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-flash.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Gemini-pro.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-pro.ts"],"names":[],"mappings":"AAUA,wBAAsB,SAAS,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,EAAE,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAsMjP"}
1
+ {"version":3,"file":"Gemini-pro.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-pro.ts"],"names":[],"mappings":"AAQA,wBAAsB,SAAS,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,EAAE,EAAE,EAAE;IAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAyLjP"}
@@ -5,13 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.geminiPro = void 0;
7
7
  const generative_ai_1 = require("@google/generative-ai");
8
- const path_1 = __importDefault(require("path"));
9
- const fs_1 = __importDefault(require("fs"));
10
- const config_1 = __importDefault(require("./config"));
11
8
  const general_functions_1 = require("../../canvas/utils/general functions");
12
9
  const verse_db_1 = require("verse.db");
10
+ const config_1 = __importDefault(require("./config"));
13
11
  const axios_1 = __importDefault(require("axios"));
14
- let currentApiKeyIndex = 0;
12
+ const path_1 = __importDefault(require("path"));
13
+ const fs_1 = __importDefault(require("fs"));
15
14
  async function geminiPro(message, AI) {
16
15
  async function validateKey(apiKey) {
17
16
  try {
@@ -23,16 +22,6 @@ async function geminiPro(message, AI) {
23
22
  return false;
24
23
  }
25
24
  }
26
- async function getValidGenAI(apiKeys, initialIndex) {
27
- for (let i = initialIndex; i < apiKeys.length; i++) {
28
- const apiKey = apiKeys[i];
29
- if (await validateKey(apiKey)) {
30
- currentApiKeyIndex = i;
31
- return new generative_ai_1.GoogleGenerativeAI(apiKey);
32
- }
33
- }
34
- return null;
35
- }
36
25
  async function processRequest(genAI) {
37
26
  var _a, _b;
38
27
  let personalityString = '';
@@ -42,7 +31,7 @@ async function geminiPro(message, AI) {
42
31
  personalityString = personalityContent.split('\n').join(' ');
43
32
  }
44
33
  const generationConfig = {
45
- maxOutputTokens: 750,
34
+ maxOutputTokens: 1048576,
46
35
  };
47
36
  const safetySettings = [
48
37
  {
@@ -95,7 +84,7 @@ async function geminiPro(message, AI) {
95
84
  if (message.db) {
96
85
  db = new verse_db_1.connect({ adapter: 'json', dataPath: `${message.serverId}_ChatHistory` });
97
86
  const data = await db.find(`${message.userId}_chatHistory`, { userId: message.userId });
98
- historyData = ((_a = data.results) === null || _a === void 0 ? void 0 : _a.history) || undefined;
87
+ historyData = ((_a = data.results) === null || _a === void 0 ? void 0 : _a.history.slice(-20)) || undefined;
99
88
  }
100
89
  const chat = model.startChat({
101
90
  history: historyData || defaultHistory,
@@ -111,7 +100,7 @@ async function geminiPro(message, AI) {
111
100
  mimeType: "image/png",
112
101
  },
113
102
  };
114
- result = await chat.sendMessage([AI.userMsg, image]);
103
+ result = await model.generateContent([AI.userMsg, image]);
115
104
  }
116
105
  else {
117
106
  result = await chat.sendMessage(AI.userMsg);
@@ -150,39 +139,33 @@ async function geminiPro(message, AI) {
150
139
  }
151
140
  }
152
141
  try {
153
- let genAI;
154
- if (AI.API_KEY && await validateKey(AI.API_KEY)) {
155
- genAI = new generative_ai_1.GoogleGenerativeAI(AI.API_KEY);
142
+ if (AI.API_KEY && !(await validateKey(AI.API_KEY))) {
143
+ return 'Invalid API key provided.';
156
144
  }
157
- else {
158
- genAI = await getValidGenAI(config_1.default.apiKeys, currentApiKeyIndex);
159
- if (!genAI) {
160
- return 'All provided API keys are invalid.';
161
- }
145
+ function getRandomApiKey() {
146
+ const { apiKeys } = config_1.default;
147
+ const randomIndex = Math.floor(Math.random() * apiKeys.length);
148
+ return apiKeys[randomIndex];
162
149
  }
150
+ const randomApiKey = getRandomApiKey();
151
+ const genAI = new generative_ai_1.GoogleGenerativeAI(AI.API_KEY || randomApiKey);
163
152
  return await processRequest(genAI);
164
153
  }
165
154
  catch (e) {
166
155
  if (e.message) {
167
156
  if (e.status === 429 || e.status === 403) {
168
- currentApiKeyIndex++;
169
- if (currentApiKeyIndex < config_1.default.apiKeys.length) {
170
- return await geminiPro(message, AI);
171
- }
172
- else {
173
- return 'Ai is on a cooldown for the rest of the day. Either provide your own API key or wait for tomorrow. Check ai.google.dev for free apikeys';
174
- }
157
+ return 'AI is on a cooldown for the rest of the day. Either provide a new API key or wait for tomorrow. Check ai.google.dev for free API keys.';
175
158
  }
176
159
  else if (e.status === 400) {
177
- return `The hoster/bot owner/the used host isn't supported by gemini.`;
160
+ return 'The hoster/bot owner/the used host isn\'t supported by Gemini.';
178
161
  }
179
162
  else if (e.message === '[GoogleGenerativeAI Error]: Candidate was blocked due to SAFETY') {
180
163
  console.error(e);
181
- return `Due to safety enabled by gemini you have been blocked.`;
164
+ return 'Due to safety enabled by Gemini, you have been blocked.';
182
165
  }
183
166
  else {
184
167
  console.error(e);
185
- return `Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists please contact the bot developer or owner of the npm package.`;
168
+ return 'Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists, please contact the bot developer or owner of the npm package.';
186
169
  }
187
170
  }
188
171
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"Gemini-pro.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-pro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Gemini-pro.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/Gemini-pro.ts"],"names":[],"mappings":";;;;;;AAAA,yDAA6F;AAC7F,4EAAiE;AACjE,uCAAmC;AACnC,sDAA8B;AAC9B,kDAA0B;AAC1B,gDAAwB;AACxB,4CAAoB;AAEb,KAAK,UAAU,SAAS,CAAC,OAAoH,EAAE,EAA6E;IAEjO,KAAK,UAAU,WAAW,CAAC,MAAc;QACvC,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,+DAA+D,MAAM,EAAE,CAAC,CAAC;YAClH,OAAO,gBAAgB,CAAC,MAAM,KAAK,GAAG,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,KAAU;;QACtC,IAAI,iBAAiB,GAAG,EAAE,CAAC;QAE3B,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;YACrB,MAAM,mBAAmB,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YACvE,MAAM,kBAAkB,GAAG,YAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;YACzE,iBAAiB,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,gBAAgB,GAAG;YACvB,eAAe,EAAE,OAAO;SACzB,CAAC;QAEF,MAAM,cAAc,GAAG;YACrB;gBACE,QAAQ,EAAE,4BAAY,CAAC,wBAAwB;gBAC/C,SAAS,EAAE,kCAAkB,CAAC,eAAe;aAC9C;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,yBAAyB;gBAChD,SAAS,EAAE,kCAAkB,CAAC,sBAAsB;aACrD;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,+BAA+B;gBACtD,SAAS,EAAE,kCAAkB,CAAC,mBAAmB;aAClD;YACD;gBACE,QAAQ,EAAE,4BAAY,CAAC,+BAA+B;gBACtD,SAAS,EAAE,kCAAkB,CAAC,sBAAsB;aACrD;SACF,CAAC;QAEF,MAAM,iBAAiB,GAAG,GAAG,iBAAiB,4CAA4C,OAAO,CAAC,UAAU,oBAAoB,OAAO,CAAC,WAAW,sCAAsC,OAAO,CAAC,MAAM,GAAG,CAAC;QAC3M,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC,CAAC;QAEhI,MAAM,cAAc,GAAG;YACrB;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;aACtC;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4DAA4D,EAAE,CAAC;aAChF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC;aAC3C;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,4GAA4G,EAAE,CAAC;aAChI;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,+CAA+C,EAAE,CAAC;aACnE;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,iIAAiI,EAAE,CAAC;aACrJ;SACF,CAAC;QAEF,IAAI,WAAW,GAAsB,SAAS,CAAC;QAE/C,IAAI,EAAO,CAAC;QACZ,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,EAAE,GAAG,IAAI,kBAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,cAAc,EAAE,CAAC,CAAC;YACnF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACxF,WAAW,GAAG,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAI,SAAS,CAAC;QAC9D,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,WAAW,IAAI,cAAc;YACtC,gBAAgB;SACjB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,CAAA,MAAA,OAAO,CAAC,UAAU,0CAAE,GAAG,KAAI,IAAI,CAAC;QAC/C,IAAI,MAAW,CAAC;QAEhB,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG;gBACZ,UAAU,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,WAAW;iBACtB;aACF,CAAC;YACF,MAAM,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE9C,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,WAAW,GAAG;gBAClB,KAAK,EAAE;oBACL,SAAS,EAAE;wBACT,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;qBACnC;iBACF;aACF,CAAC;YAEF,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAC3D,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAC1B,WAAW,EACX,IAAI,CACL,CAAC;YAEF,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;oBACL,SAAS,EAAE;wBACT,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC;qBACjC;iBACF;aACF,CAAC;YAEF,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,cAAc,EAC3D,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,EAC1B,YAAY,EACZ,IAAI,CACL,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,UAAU,WAAW,CAAC,QAAgB;QACzC,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,IAAA,6BAAS,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxD,OAAO,YAAY,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACnD,OAAO,2BAA2B,CAAC;QACrC,CAAC;QAED,SAAS,eAAe;YACtB,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAM,CAAC;YAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/D,OAAO,OAAO,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,kCAAkB,CAAC,EAAE,CAAC,OAAO,IAAI,YAAY,CAAC,CAAC;QACjE,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IAErC,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACzC,OAAO,wIAAwI,CAAC;YAClJ,CAAC;iBAAM,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,gEAAgE,CAAC;YAC1E,CAAC;iBAAM,IAAI,CAAC,CAAC,OAAO,KAAK,iEAAiE,EAAE,CAAC;gBAC3F,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,yDAAyD,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,kLAAkL,CAAC;YAC5L,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,gCAAgC,CAAC;QAC1C,CAAC;IACH,CAAC;AACH,CAAC;AAzLD,8BAyLC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/config.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,MAAM;;CAOT,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/config.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,MAAM;;CAQT,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -2,10 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const config = {
4
4
  apiKeys: [
5
- "AIzaSyChIxxbCnWz0ZhG49ztATc0bSZI1p66MfA",
6
- "AIzaSyAss2O1JDDEnPj2rGYfdiOzDeIscnwwPPw",
7
- "AIzaSyDDLJnrlt_T8_NeYvmAU8XqFK7WXOxeguo",
8
- "AIzaSyC4K7fWab65-Ol4g13FIdJcKAlBIJLPOgA"
5
+ "AIzaSyAdlBVg12yjqqGfBqxT5DLGMhP2jysG7Hk",
6
+ "AIzaSyCiko-Viy8FduRAtT-X1T598n-24t0ATK0",
7
+ "AIzaSyC4K7fWab65-Ol4g13FIdJcKAlBIJLPOgA",
8
+ "AIzaSyC2Ga-8e-lRr6D_ehiGlxIUK8Fx7_f9tvk",
9
+ "AIzaSyA2dOYNHZ2O08fBu4rr4YtXO8OskFpRxYo"
9
10
  ]
10
11
  };
11
12
  exports.default = config;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/config.ts"],"names":[],"mappings":";;AAAA,MAAM,MAAM,GAAG;IACX,OAAO,EAAE;QACP,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;KAC1C;CACF,CAAC;AAEF,kBAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/config.ts"],"names":[],"mappings":";;AAAA,MAAM,MAAM,GAAG;IACX,OAAO,EAAE;QACP,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;QACzC,yCAAyC;KAC1C;CACF,CAAC;AAEF,kBAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"llama.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/llama.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAe/E"}
1
+ {"version":3,"file":"llama.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/llama.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB/E"}
@@ -14,8 +14,16 @@ async function llamaChat({ API_KEY, prompt }) {
14
14
  });
15
15
  return response.data.message;
16
16
  }
17
- catch (_a) {
18
- return 'The Api is on a cool down for a 50 seconds.';
17
+ catch (e) {
18
+ if (e.response && e.response.data.message === 'Invalid API key.') {
19
+ const defaultResponse = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/codellama`, { prompt }, {
20
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
21
+ });
22
+ return defaultResponse.data.message;
23
+ }
24
+ else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
19
27
  }
20
28
  }
21
29
  exports.llamaChat = llamaChat;
@@ -1 +1 @@
1
- {"version":3,"file":"llama.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/llama.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAOtC,KAAK,UAAU,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC5D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,6CAA6C,EAC3F,OAAO,EACV;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,6CAA6C,CAAA;IACtD,CAAC;AACH,CAAC;AAfD,8BAeC"}
1
+ {"version":3,"file":"llama.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/llama.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyD;AAOlD,KAAK,UAAU,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC5D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,6CAA6C,EAAE,OAAO,EAAE;YACvG,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,6CAA6C,EAAE,EAAE,MAAM,EAAE,EAAE;gBAClG,OAAO,EAAE,EAAE,aAAa,EAAE,uCAAuC,EAAE;aACpE,CAAC,CAAC;YACH,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,wCAAwC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AApBD,8BAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mixtral.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/mixtral.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAe7E"}
1
+ {"version":3,"file":"mixtral.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/mixtral.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB7E"}
@@ -14,8 +14,16 @@ async function mixtral({ API_KEY, prompt }) {
14
14
  });
15
15
  return response.data.message;
16
16
  }
17
- catch (_a) {
18
- return 'The Api is on a cool down for a 50 seconds.';
17
+ catch (e) {
18
+ if (e.response && e.response.data.message === 'Invalid API key.') {
19
+ const defaultResponse = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/mixtral`, { prompt }, {
20
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
21
+ });
22
+ return defaultResponse.data.message;
23
+ }
24
+ else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
19
27
  }
20
28
  }
21
29
  exports.mixtral = mixtral;
@@ -1 +1 @@
1
- {"version":3,"file":"mixtral.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/mixtral.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAOtC,KAAK,UAAU,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC1D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,2CAA2C,EAC1F,OAAO,EACT;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,6CAA6C,CAAA;IACtD,CAAC;AACH,CAAC;AAfD,0BAeC"}
1
+ {"version":3,"file":"mixtral.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/mixtral.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyD;AAOlD,KAAK,UAAU,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC1D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,2CAA2C,EAAE,OAAO,EAAE;YACrG,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,2CAA2C,EAAE,EAAE,MAAM,EAAE,EAAE;gBAChG,OAAO,EAAE,EAAE,aAAa,EAAE,uCAAuC,EAAE;aACpE,CAAC,CAAC;YACH,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,wCAAwC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AApBD,0BAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"openChat.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/openChat.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAe9E"}
1
+ {"version":3,"file":"openChat.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/openChat.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB9E"}
@@ -9,13 +9,21 @@ async function openChat({ API_KEY, prompt }) {
9
9
  const apiKey = API_KEY || 'rsnai_SbLbFcwdT2h2KoYet2LS0F34';
10
10
  try {
11
11
  const payload = { prompt: prompt };
12
- const response = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/openchat`, payload, {
12
+ const response = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/openChat`, payload, {
13
13
  headers: { Authorization: `Bearer ${apiKey}` },
14
14
  });
15
15
  return response.data.message;
16
16
  }
17
- catch (_a) {
18
- return 'The Api is on a cool down for a 50 seconds.';
17
+ catch (e) {
18
+ if (e.response && e.response.data.message === 'Invalid API key.') {
19
+ const defaultResponse = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/openChat`, { prompt }, {
20
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
21
+ });
22
+ return defaultResponse.data.message;
23
+ }
24
+ else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
19
27
  }
20
28
  }
21
29
  exports.openChat = openChat;
@@ -1 +1 @@
1
- {"version":3,"file":"openChat.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/openChat.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAOtC,KAAK,UAAU,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC3D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,4CAA4C,EAC1F,OAAO,EACV;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,6CAA6C,CAAA;IACtD,CAAC;AACH,CAAC;AAfD,4BAeC"}
1
+ {"version":3,"file":"openChat.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/openChat.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyD;AAOlD,KAAK,UAAU,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IAC3D,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,4CAA4C,EAAE,OAAO,EAAE;YACtG,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,4CAA4C,EAAE,EAAE,MAAM,EAAE,EAAE;gBACjG,OAAO,EAAE,EAAE,aAAa,EAAE,uCAAuC,EAAE;aACpE,CAAC,CAAC;YACH,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,wCAAwC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AApBD,4BAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"v4.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/v4.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAexE"}
1
+ {"version":3,"file":"v4.d.ts","sourceRoot":"","sources":["../../../lib/ai/modals-chat/v4.ts"],"names":[],"mappings":"AAEA,UAAU,SAAS;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBxE"}
@@ -14,8 +14,16 @@ async function v4({ API_KEY, prompt }) {
14
14
  });
15
15
  return response.data.message;
16
16
  }
17
- catch (_a) {
18
- return 'The Api is on a cool down for a 50 seconds.';
17
+ catch (e) {
18
+ if (e.response && e.response.data.message === 'Invalid API key.') {
19
+ const defaultResponse = await axios_1.default.post(`https://api.rsnai.org/api/v1/user/gpt4`, { prompt }, {
20
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
21
+ });
22
+ return defaultResponse.data.message;
23
+ }
24
+ else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
19
27
  }
20
28
  }
21
29
  exports.v4 = v4;
@@ -1 +1 @@
1
- {"version":3,"file":"v4.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/v4.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA6C;AAOtC,KAAK,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IACrD,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,wCAAwC,EACvF,OAAO,EACT;YACE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,WAAM,CAAC;QACP,OAAO,6CAA6C,CAAA;IACtD,CAAC;AACH,CAAC;AAfD,gBAeC"}
1
+ {"version":3,"file":"v4.js","sourceRoot":"","sources":["../../../lib/ai/modals-chat/v4.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyD;AAOlD,KAAK,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAa;IACrD,MAAM,MAAM,GAAW,OAAO,IAAI,gCAAgC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAkB,MAAM,eAAK,CAAC,IAAI,CAAC,wCAAwC,EAAE,OAAO,EAAE;YAClG,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,MAAM,EAAE,EAAE;SAC/C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAC/B,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QAChB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACjE,MAAM,eAAe,GAAG,MAAM,eAAK,CAAC,IAAI,CAAC,wCAAwC,EAAE,EAAE,MAAM,EAAE,EAAE;gBAC7F,OAAO,EAAE,EAAE,aAAa,EAAE,uCAAuC,EAAE;aACpE,CAAC,CAAC;YACH,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,OAAO,wCAAwC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AApBD,gBAoBC"}
@@ -1,12 +1,10 @@
1
1
  import { GoogleGenerativeAI, HarmCategory, HarmBlockThreshold } from "@google/generative-ai";
2
- import path from 'path';
3
- import fs from 'fs';
4
- import config from './config';
5
2
  import { converter } from "../../canvas/utils/general functions";
6
3
  import { connect } from "verse.db";
4
+ import config from './config';
7
5
  import axios from "axios";
8
-
9
- let currentApiKeyIndex = 0;
6
+ import path from 'path';
7
+ import fs from 'fs';
10
8
 
11
9
  export async function geminiFlash(message: { userId: string, serverName: string, serverId: string, channelName: string, attachment: any, db: boolean }, AI: { AiPersonality: string | null, userMsg: string, API_KEY: string | null }): Promise<any> {
12
10
 
@@ -20,17 +18,6 @@ export async function geminiFlash(message: { userId: string, serverName: string,
20
18
  }
21
19
  }
22
20
 
23
- async function getValidGenAI(apiKeys: string[], initialIndex: number): Promise<any> {
24
- for (let i = initialIndex; i < apiKeys.length; i++) {
25
- const apiKey = apiKeys[i];
26
- if (await validateKey(apiKey)) {
27
- currentApiKeyIndex = i;
28
- return new GoogleGenerativeAI(apiKey);
29
- }
30
- }
31
- return null;
32
- }
33
-
34
21
  async function processRequest(genAI: any): Promise<any> {
35
22
  let personalityString = '';
36
23
 
@@ -41,7 +28,7 @@ export async function geminiFlash(message: { userId: string, serverName: string,
41
28
  }
42
29
 
43
30
  const generationConfig = {
44
- maxOutputTokens: 750,
31
+ maxOutputTokens: 1048576,
45
32
  };
46
33
 
47
34
  const safetySettings = [
@@ -99,7 +86,7 @@ export async function geminiFlash(message: { userId: string, serverName: string,
99
86
  if (message.db) {
100
87
  db = new connect({ adapter: 'json', dataPath: `${message.serverId}_ChatHistory` });
101
88
  const data = await db.find(`${message.userId}_chatHistory`, { userId: message.userId });
102
- historyData = data.results?.history || undefined;
89
+ historyData = data.results?.history.slice(-20) || undefined;
103
90
  }
104
91
 
105
92
  const chat = model.startChat({
@@ -118,7 +105,7 @@ export async function geminiFlash(message: { userId: string, serverName: string,
118
105
  mimeType: "image/png",
119
106
  },
120
107
  };
121
- result = await chat.sendMessage([AI.userMsg, image]);
108
+ result = await chat.generateContent([AI.userMsg, image]);
122
109
  } else {
123
110
  result = await chat.sendMessage(AI.userMsg);
124
111
  }
@@ -171,35 +158,33 @@ export async function geminiFlash(message: { userId: string, serverName: string,
171
158
  }
172
159
 
173
160
  try {
174
- let genAI: any;
161
+ if (AI.API_KEY && !(await validateKey(AI.API_KEY))) {
162
+ return 'Invalid API key provided.';
163
+ }
175
164
 
176
- if (AI.API_KEY && await validateKey(AI.API_KEY)) {
177
- genAI = new GoogleGenerativeAI(AI.API_KEY);
178
- } else {
179
- genAI = await getValidGenAI(config.apiKeys, currentApiKeyIndex);
180
- if (!genAI) {
181
- return 'All provided API keys are invalid.';
182
- }
165
+ function getRandomApiKey() {
166
+ const { apiKeys } = config;
167
+ const randomIndex = Math.floor(Math.random() * apiKeys.length);
168
+ return apiKeys[randomIndex];
183
169
  }
170
+
171
+ const randomApiKey = getRandomApiKey();
184
172
 
173
+ const genAI = new GoogleGenerativeAI(AI.API_KEY || randomApiKey);
185
174
  return await processRequest(genAI);
175
+
186
176
  } catch (e: any) {
187
177
  if (e.message) {
188
178
  if (e.status === 429 || e.status === 403) {
189
- currentApiKeyIndex++;
190
- if (currentApiKeyIndex < config.apiKeys.length) {
191
- return await geminiFlash(message, AI);
192
- } else {
193
- return 'Ai is on a cooldown for the rest of the day. Either provide your own API key or wait for tomorrow. Check ai.google.dev for free apikeys';
194
- }
179
+ return 'AI is on a cooldown for the rest of the day. Either provide a new API key or wait for tomorrow. Check ai.google.dev for free API keys.';
195
180
  } else if (e.status === 400) {
196
- return `The hoster/bot owner/the used host isn't supported by gemini.`;
181
+ return 'The hoster/bot owner/the used host isn\'t supported by Gemini.';
197
182
  } else if (e.message === '[GoogleGenerativeAI Error]: Candidate was blocked due to SAFETY') {
198
183
  console.error(e);
199
- return `Due to safety enabled by gemini you have been blocked.`;
184
+ return 'Due to safety enabled by Gemini, you have been blocked.';
200
185
  } else {
201
186
  console.error(e);
202
- return `Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists please contact the bot developer or owner of the npm package.`;
187
+ return 'Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists, please contact the bot developer or owner of the npm package.';
203
188
  }
204
189
  } else {
205
190
  console.error(e);
@@ -1,12 +1,10 @@
1
1
  import { GoogleGenerativeAI, HarmCategory, HarmBlockThreshold } from "@google/generative-ai";
2
- import path from 'path';
3
- import fs from 'fs';
4
- import config from './config';
5
2
  import { converter } from "../../canvas/utils/general functions";
6
3
  import { connect } from "verse.db";
4
+ import config from './config';
7
5
  import axios from "axios";
8
-
9
- let currentApiKeyIndex = 0;
6
+ import path from 'path';
7
+ import fs from 'fs';
10
8
 
11
9
  export async function geminiPro(message: { userId: string, serverName: string, serverId: string, channelName: string, attachment: any, db: boolean }, AI: { AiPersonality: string | null, userMsg: string, API_KEY: string | null }): Promise<any> {
12
10
 
@@ -20,17 +18,6 @@ export async function geminiPro(message: { userId: string, serverName: string, s
20
18
  }
21
19
  }
22
20
 
23
- async function getValidGenAI(apiKeys: string[], initialIndex: number): Promise<any> {
24
- for (let i = initialIndex; i < apiKeys.length; i++) {
25
- const apiKey = apiKeys[i];
26
- if (await validateKey(apiKey)) {
27
- currentApiKeyIndex = i;
28
- return new GoogleGenerativeAI(apiKey);
29
- }
30
- }
31
- return null;
32
- }
33
-
34
21
  async function processRequest(genAI: any): Promise<any> {
35
22
  let personalityString = '';
36
23
 
@@ -41,7 +28,7 @@ export async function geminiPro(message: { userId: string, serverName: string, s
41
28
  }
42
29
 
43
30
  const generationConfig = {
44
- maxOutputTokens: 750,
31
+ maxOutputTokens: 1048576,
45
32
  };
46
33
 
47
34
  const safetySettings = [
@@ -99,7 +86,7 @@ export async function geminiPro(message: { userId: string, serverName: string, s
99
86
  if (message.db) {
100
87
  db = new connect({ adapter: 'json', dataPath: `${message.serverId}_ChatHistory` });
101
88
  const data = await db.find(`${message.userId}_chatHistory`, { userId: message.userId });
102
- historyData = data.results?.history || undefined;
89
+ historyData = data.results?.history.slice(-20) || undefined;
103
90
  }
104
91
 
105
92
  const chat = model.startChat({
@@ -118,7 +105,7 @@ export async function geminiPro(message: { userId: string, serverName: string, s
118
105
  mimeType: "image/png",
119
106
  },
120
107
  };
121
- result = await chat.sendMessage([AI.userMsg, image]);
108
+ result = await model.generateContent([AI.userMsg, image]);
122
109
  } else {
123
110
  result = await chat.sendMessage(AI.userMsg);
124
111
  }
@@ -171,35 +158,33 @@ export async function geminiPro(message: { userId: string, serverName: string, s
171
158
  }
172
159
 
173
160
  try {
174
- let genAI: any;
161
+ if (AI.API_KEY && !(await validateKey(AI.API_KEY))) {
162
+ return 'Invalid API key provided.';
163
+ }
175
164
 
176
- if (AI.API_KEY && await validateKey(AI.API_KEY)) {
177
- genAI = new GoogleGenerativeAI(AI.API_KEY);
178
- } else {
179
- genAI = await getValidGenAI(config.apiKeys, currentApiKeyIndex);
180
- if (!genAI) {
181
- return 'All provided API keys are invalid.';
182
- }
165
+ function getRandomApiKey() {
166
+ const { apiKeys } = config;
167
+ const randomIndex = Math.floor(Math.random() * apiKeys.length);
168
+ return apiKeys[randomIndex];
183
169
  }
170
+
171
+ const randomApiKey = getRandomApiKey();
184
172
 
173
+ const genAI = new GoogleGenerativeAI(AI.API_KEY || randomApiKey);
185
174
  return await processRequest(genAI);
175
+
186
176
  } catch (e: any) {
187
177
  if (e.message) {
188
178
  if (e.status === 429 || e.status === 403) {
189
- currentApiKeyIndex++;
190
- if (currentApiKeyIndex < config.apiKeys.length) {
191
- return await geminiPro(message, AI);
192
- } else {
193
- return 'Ai is on a cooldown for the rest of the day. Either provide your own API key or wait for tomorrow. Check ai.google.dev for free apikeys';
194
- }
179
+ return 'AI is on a cooldown for the rest of the day. Either provide a new API key or wait for tomorrow. Check ai.google.dev for free API keys.';
195
180
  } else if (e.status === 400) {
196
- return `The hoster/bot owner/the used host isn't supported by gemini.`;
181
+ return 'The hoster/bot owner/the used host isn\'t supported by Gemini.';
197
182
  } else if (e.message === '[GoogleGenerativeAI Error]: Candidate was blocked due to SAFETY') {
198
183
  console.error(e);
199
- return `Due to safety enabled by gemini you have been blocked.`;
184
+ return 'Due to safety enabled by Gemini, you have been blocked.';
200
185
  } else {
201
186
  console.error(e);
202
- return `Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists please contact the bot developer or owner of the npm package.`;
187
+ return 'Try again later please... Either API is on a cooldown or an internal server error has occurred. If issue persists, please contact the bot developer or owner of the npm package.';
203
188
  }
204
189
  } else {
205
190
  console.error(e);
@@ -1,9 +1,10 @@
1
1
  const config = {
2
2
  apiKeys: [
3
- "AIzaSyChIxxbCnWz0ZhG49ztATc0bSZI1p66MfA",
4
- "AIzaSyAss2O1JDDEnPj2rGYfdiOzDeIscnwwPPw",
5
- "AIzaSyDDLJnrlt_T8_NeYvmAU8XqFK7WXOxeguo",
6
- "AIzaSyC4K7fWab65-Ol4g13FIdJcKAlBIJLPOgA"
3
+ "AIzaSyAdlBVg12yjqqGfBqxT5DLGMhP2jysG7Hk",
4
+ "AIzaSyCiko-Viy8FduRAtT-X1T598n-24t0ATK0",
5
+ "AIzaSyC4K7fWab65-Ol4g13FIdJcKAlBIJLPOgA",
6
+ "AIzaSyC2Ga-8e-lRr6D_ehiGlxIUK8Fx7_f9tvk",
7
+ "AIzaSyA2dOYNHZ2O08fBu4rr4YtXO8OskFpRxYo"
7
8
  ]
8
9
  };
9
10
 
@@ -1,4 +1,4 @@
1
- import axios, { AxiosResponse } from 'axios';
1
+ import axios, { AxiosResponse, AxiosError } from 'axios';
2
2
 
3
3
  interface aiOptions {
4
4
  API_KEY?: string | null;
@@ -10,14 +10,19 @@ export async function llamaChat({ API_KEY, prompt }: aiOptions): Promise<string>
10
10
 
11
11
  try {
12
12
  const payload = { prompt: prompt };
13
- const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/codellama`,
14
- payload,
15
- {
13
+ const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/codellama`, payload, {
16
14
  headers: { Authorization: `Bearer ${apiKey}` },
17
15
  });
18
16
 
19
17
  return response.data.message;
20
- } catch {
21
- return 'The Api is on a cool down for a 50 seconds.'
18
+ } catch (e: any) {
19
+ if (e.response && e.response.data.message === 'Invalid API key.') {
20
+ const defaultResponse = await axios.post(`https://api.rsnai.org/api/v1/user/codellama`, { prompt }, {
21
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
22
+ });
23
+ return defaultResponse.data.message;
24
+ } else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
22
27
  }
23
28
  }
@@ -1,4 +1,4 @@
1
- import axios, { AxiosResponse } from 'axios';
1
+ import axios, { AxiosResponse, AxiosError } from 'axios';
2
2
 
3
3
  interface aiOptions {
4
4
  API_KEY?: string | null;
@@ -10,14 +10,19 @@ export async function mixtral({ API_KEY, prompt }: aiOptions): Promise<string> {
10
10
 
11
11
  try {
12
12
  const payload = { prompt: prompt };
13
- const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/mixtral`,
14
- payload,
15
- {
13
+ const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/mixtral`, payload, {
16
14
  headers: { Authorization: `Bearer ${apiKey}` },
17
15
  });
18
-
16
+
19
17
  return response.data.message;
20
- } catch {
21
- return 'The Api is on a cool down for a 50 seconds.'
18
+ } catch (e: any) {
19
+ if (e.response && e.response.data.message === 'Invalid API key.') {
20
+ const defaultResponse = await axios.post(`https://api.rsnai.org/api/v1/user/mixtral`, { prompt }, {
21
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
22
+ });
23
+ return defaultResponse.data.message;
24
+ } else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
22
27
  }
23
28
  }
@@ -1,4 +1,4 @@
1
- import axios, { AxiosResponse } from 'axios';
1
+ import axios, { AxiosResponse, AxiosError } from 'axios';
2
2
 
3
3
  interface aiOptions {
4
4
  API_KEY?: string | null;
@@ -10,14 +10,19 @@ export async function openChat({ API_KEY, prompt }: aiOptions): Promise<string>
10
10
 
11
11
  try {
12
12
  const payload = { prompt: prompt };
13
- const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/openchat`,
14
- payload,
15
- {
13
+ const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/openChat`, payload, {
16
14
  headers: { Authorization: `Bearer ${apiKey}` },
17
15
  });
18
16
 
19
17
  return response.data.message;
20
- } catch {
21
- return 'The Api is on a cool down for a 50 seconds.'
18
+ } catch (e: any) {
19
+ if (e.response && e.response.data.message === 'Invalid API key.') {
20
+ const defaultResponse = await axios.post(`https://api.rsnai.org/api/v1/user/openChat`, { prompt }, {
21
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
22
+ });
23
+ return defaultResponse.data.message;
24
+ } else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
22
27
  }
23
28
  }
@@ -1,4 +1,4 @@
1
- import axios, { AxiosResponse } from 'axios';
1
+ import axios, { AxiosResponse, AxiosError } from 'axios';
2
2
 
3
3
  interface aiOptions {
4
4
  API_KEY?: string | null;
@@ -10,14 +10,19 @@ export async function v4({ API_KEY, prompt }: aiOptions): Promise<string> {
10
10
 
11
11
  try {
12
12
  const payload = { prompt: prompt };
13
- const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/gpt4`,
14
- payload,
15
- {
13
+ const response: AxiosResponse = await axios.post(`https://api.rsnai.org/api/v1/user/gpt4`, payload, {
16
14
  headers: { Authorization: `Bearer ${apiKey}` },
17
15
  });
18
16
 
19
17
  return response.data.message;
20
- } catch {
21
- return 'The Api is on a cool down for a 50 seconds.'
18
+ } catch (e: any) {
19
+ if (e.response && e.response.data.message === 'Invalid API key.') {
20
+ const defaultResponse = await axios.post(`https://api.rsnai.org/api/v1/user/gpt4`, { prompt }, {
21
+ headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
22
+ });
23
+ return defaultResponse.data.message;
24
+ } else {
25
+ return 'The API is on cooldown for 50 seconds.';
26
+ }
22
27
  }
23
28
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apexify.js",
3
- "version": "4.1.7",
3
+ "version": "4.1.9",
4
4
  "description": "Ai and Canvas library. Supports typescript and javascript",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",