apexify.js 4.2.4 → 4.2.5
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.
- package/README.md +5 -4
- package/dist/ai/ApexAI.d.ts +2 -0
- package/dist/ai/ApexAI.d.ts.map +1 -1
- package/dist/ai/ApexAI.js +31 -22
- package/dist/ai/ApexAI.js.map +1 -1
- package/dist/ai/ApexModules.d.ts +10 -1
- package/dist/ai/ApexModules.d.ts.map +1 -1
- package/dist/ai/ApexModules.js +79 -3
- package/dist/ai/ApexModules.js.map +1 -1
- package/dist/ai/buttons/drawMenu.js +1 -2
- package/dist/ai/buttons/drawMenu.js.map +1 -1
- package/dist/ai/buttons/tools.js +1 -2
- package/dist/ai/buttons/tools.js.map +1 -1
- package/dist/ai/functions/chunkString.js +1 -2
- package/dist/ai/functions/chunkString.js.map +1 -1
- package/dist/ai/functions/draw.js +9 -11
- package/dist/ai/functions/draw.js.map +1 -1
- package/dist/ai/functions/generateVoiceResponse.js +1 -2
- package/dist/ai/functions/generateVoiceResponse.js.map +1 -1
- package/dist/ai/functions/imageReader.js +1 -2
- package/dist/ai/functions/imageReader.js.map +1 -1
- package/dist/ai/functions/readFiles.d.ts.map +1 -1
- package/dist/ai/functions/readFiles.js +3 -3
- package/dist/ai/functions/readFiles.js.map +1 -1
- package/dist/ai/functions/readImagess.js +1 -2
- package/dist/ai/functions/readImagess.js.map +1 -1
- package/dist/ai/functions/shouldDrawImage.js +1 -2
- package/dist/ai/functions/shouldDrawImage.js.map +1 -1
- package/dist/ai/functions/typeWriter.js +1 -2
- package/dist/ai/functions/typeWriter.js.map +1 -1
- package/dist/ai/functions/validOptions.d.ts +2 -0
- package/dist/ai/functions/validOptions.d.ts.map +1 -1
- package/dist/ai/functions/validOptions.js +5 -1
- package/dist/ai/functions/validOptions.js.map +1 -1
- package/dist/ai/modals-chat/Gemini-flash.js +3 -5
- package/dist/ai/modals-chat/Gemini-flash.js.map +1 -1
- package/dist/ai/modals-chat/Gemini-pro.js +3 -5
- package/dist/ai/modals-chat/Gemini-pro.js.map +1 -1
- package/dist/ai/modals-chat/apexChat.js +1 -2
- package/dist/ai/modals-chat/apexChat.js.map +1 -1
- package/dist/ai/modals-chat/bard.d.ts.map +1 -1
- package/dist/ai/modals-chat/bard.js +24 -6
- package/dist/ai/modals-chat/bard.js.map +1 -1
- package/dist/ai/modals-chat/bing.d.ts.map +1 -1
- package/dist/ai/modals-chat/bing.js +24 -6
- package/dist/ai/modals-chat/bing.js.map +1 -1
- package/dist/ai/modals-chat/codellama.d.ts.map +1 -1
- package/dist/ai/modals-chat/codellama.js +23 -6
- package/dist/ai/modals-chat/codellama.js.map +1 -1
- package/dist/ai/modals-chat/facebook-ai.js +1 -2
- package/dist/ai/modals-chat/facebook-ai.js.map +1 -1
- package/dist/ai/modals-chat/geminiV2.d.ts.map +1 -1
- package/dist/ai/modals-chat/geminiV2.js +24 -6
- package/dist/ai/modals-chat/geminiV2.js.map +1 -1
- package/dist/ai/modals-chat/gemma.d.ts +1 -2
- package/dist/ai/modals-chat/gemma.d.ts.map +1 -1
- package/dist/ai/modals-chat/gemma.js +30 -41
- package/dist/ai/modals-chat/gemma.js.map +1 -1
- package/dist/ai/modals-chat/llama.d.ts.map +1 -1
- package/dist/ai/modals-chat/llama.js +24 -6
- package/dist/ai/modals-chat/llama.js.map +1 -1
- package/dist/ai/modals-chat/llamav2.d.ts +2 -0
- package/dist/ai/modals-chat/llamav2.d.ts.map +1 -0
- package/dist/ai/modals-chat/llamav2.js +43 -0
- package/dist/ai/modals-chat/llamav2.js.map +1 -0
- package/dist/ai/modals-chat/llamav3.d.ts +2 -0
- package/dist/ai/modals-chat/llamav3.d.ts.map +1 -0
- package/dist/ai/modals-chat/llamav3.js +43 -0
- package/dist/ai/modals-chat/llamav3.js.map +1 -0
- package/dist/ai/modals-chat/mixtral.d.ts.map +1 -1
- package/dist/ai/modals-chat/mixtral.js +24 -6
- package/dist/ai/modals-chat/mixtral.js.map +1 -1
- package/dist/ai/modals-chat/mixtralv2.d.ts +2 -0
- package/dist/ai/modals-chat/mixtralv2.d.ts.map +1 -0
- package/dist/ai/modals-chat/mixtralv2.js +43 -0
- package/dist/ai/modals-chat/mixtralv2.js.map +1 -0
- package/dist/ai/modals-chat/openChat.d.ts.map +1 -1
- package/dist/ai/modals-chat/openChat.js +24 -6
- package/dist/ai/modals-chat/openChat.js.map +1 -1
- package/dist/ai/modals-chat/starChat.js +1 -2
- package/dist/ai/modals-chat/starChat.js.map +1 -1
- package/dist/ai/modals-chat/v4.d.ts.map +1 -1
- package/dist/ai/modals-chat/v4.js +24 -6
- package/dist/ai/modals-chat/v4.js.map +1 -1
- package/dist/ai/modals-chat/whisper.d.ts +2 -0
- package/dist/ai/modals-chat/whisper.d.ts.map +1 -0
- package/dist/ai/modals-chat/whisper.js +101 -0
- package/dist/ai/modals-chat/whisper.js.map +1 -0
- package/dist/ai/modals-chat/yi-ai.js +1 -2
- package/dist/ai/modals-chat/yi-ai.js.map +1 -1
- package/dist/canvas/ApexPainter.d.ts +0 -1
- package/dist/canvas/ApexPainter.d.ts.map +1 -1
- package/dist/canvas/ApexPainter.js +5 -6
- package/dist/canvas/ApexPainter.js.map +1 -1
- package/dist/canvas/utils/bg.js +3 -4
- package/dist/canvas/utils/bg.js.map +1 -1
- package/dist/canvas/utils/charts.d.ts +0 -1
- package/dist/canvas/utils/charts.d.ts.map +1 -1
- package/dist/canvas/utils/charts.js +66 -75
- package/dist/canvas/utils/charts.js.map +1 -1
- package/dist/canvas/utils/circular.js +1 -2
- package/dist/canvas/utils/circular.js.map +1 -1
- package/dist/canvas/utils/conversion.d.ts +0 -1
- package/dist/canvas/utils/conversion.d.ts.map +1 -1
- package/dist/canvas/utils/conversion.js +5 -6
- package/dist/canvas/utils/conversion.js.map +1 -1
- package/dist/canvas/utils/customLines.js +1 -2
- package/dist/canvas/utils/customLines.js.map +1 -1
- package/dist/canvas/utils/general functions.d.ts +0 -1
- package/dist/canvas/utils/general functions.d.ts.map +1 -1
- package/dist/canvas/utils/general functions.js +12 -14
- package/dist/canvas/utils/general functions.js.map +1 -1
- package/dist/canvas/utils/imageProperties.js +7 -8
- package/dist/canvas/utils/imageProperties.js.map +1 -1
- package/dist/canvas/utils/radius.d.ts.map +1 -1
- package/dist/canvas/utils/radius.js +1 -2
- package/dist/canvas/utils/radius.js.map +1 -1
- package/dist/canvas/utils/textProperties.js +2 -3
- package/dist/canvas/utils/textProperties.js.map +1 -1
- package/dist/canvas/utils/types.d.ts +0 -2
- package/dist/canvas/utils/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/lib/ai/ApexAI.ts +20 -10
- package/lib/ai/ApexModules.ts +87 -1
- package/lib/ai/functions/readFiles.ts +6 -4
- package/lib/ai/functions/validOptions.ts +7 -2
- package/lib/ai/modals-chat/bard.ts +20 -4
- package/lib/ai/modals-chat/bing.ts +20 -4
- package/lib/ai/modals-chat/codellama.ts +21 -6
- package/lib/ai/modals-chat/geminiV2.ts +20 -4
- package/lib/ai/modals-chat/gemma.ts +35 -0
- package/lib/ai/modals-chat/llama.ts +20 -4
- package/lib/ai/modals-chat/llamav2.ts +35 -0
- package/lib/ai/modals-chat/llamav3.ts +35 -0
- package/lib/ai/modals-chat/mixtral.ts +21 -4
- package/lib/ai/modals-chat/mixtralv2.ts +35 -0
- package/lib/ai/modals-chat/openChat.ts +20 -4
- package/lib/ai/modals-chat/v4.ts +20 -4
- package/lib/ai/modals-chat/whisper.ts +102 -0
- package/lib/canvas/ApexPainter.ts +3 -3
- package/lib/index.ts +3 -2
- package/package.json +6 -1
package/lib/ai/ApexModules.ts
CHANGED
|
@@ -10,6 +10,11 @@ import { codellama } from './modals-chat/codellama';
|
|
|
10
10
|
import { bard } from './modals-chat/bard';
|
|
11
11
|
import { bing } from './modals-chat/bing';
|
|
12
12
|
import { gemini_v2 } from './modals-chat/geminiV2';
|
|
13
|
+
import { whisper } from './modals-chat/whisper';
|
|
14
|
+
import { llama2 } from './modals-chat/llamav2';
|
|
15
|
+
import { llama3 } from './modals-chat/llamav3';
|
|
16
|
+
import { gemma } from './modals-chat/gemma';
|
|
17
|
+
import { mixtral2 } from './modals-chat/mixtralv2';
|
|
13
18
|
|
|
14
19
|
sdk.auth('43435e1c-cab1-493f-a224-f51e4b97ce8d');
|
|
15
20
|
const hercai = new Hercai('6eZZOdDwm6Epdzn8mnhcX9SBDkxvoNYcNj9ILS0P44=');
|
|
@@ -675,6 +680,18 @@ async function processChunk(model: string, prompt: string, ApiKey?: string): Pro
|
|
|
675
680
|
case 'llama':
|
|
676
681
|
response = await llamaChat({ API_KEY: ApiKey, prompt });
|
|
677
682
|
break;
|
|
683
|
+
case 'llama-v2':
|
|
684
|
+
response = await llama2(prompt, ApiKey);
|
|
685
|
+
break;
|
|
686
|
+
case 'llama-v3':
|
|
687
|
+
response = await llama3(prompt, ApiKey);
|
|
688
|
+
break;
|
|
689
|
+
case 'gemma':
|
|
690
|
+
response = await gemma(prompt, ApiKey);
|
|
691
|
+
break;
|
|
692
|
+
case 'mixtral-v2':
|
|
693
|
+
response = await mixtral2(prompt, ApiKey);
|
|
694
|
+
break;
|
|
678
695
|
case 'codellama':
|
|
679
696
|
response = await codellama({ API_KEY: ApiKey, prompt });
|
|
680
697
|
break;
|
|
@@ -768,5 +785,74 @@ async function checkJobStatus(jobId: string, retryCount = 3): Promise<string | n
|
|
|
768
785
|
}
|
|
769
786
|
}
|
|
770
787
|
|
|
788
|
+
async function ApexListener(options: { filepath: string, model: string, prompt?: string, lang?: string }) {
|
|
789
|
+
|
|
790
|
+
const { filepath, model = 'v3', prompt = '', lang = 'en' } = options;
|
|
791
|
+
|
|
792
|
+
const validatedLang = validateLanguageInput(lang);
|
|
793
|
+
|
|
794
|
+
if (!validatedLang) {
|
|
795
|
+
throw new Error(`Unsupported language: ${lang}. Please provide a valid ISO 639-1 language code or language name.`);
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
const transcribe = await whisper(prompt, filepath, validatedLang);
|
|
799
|
+
|
|
800
|
+
const response = await ApexChat(model, transcribe);
|
|
801
|
+
|
|
802
|
+
return { response, transcribe };
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
function validateLanguageInput(lang: string): string | null {
|
|
806
|
+
const supportedLanguages = [
|
|
807
|
+
{ code: 'en', name: 'English' },
|
|
808
|
+
{ code: 'es', name: 'Spanish' },
|
|
809
|
+
{ code: 'fr', name: 'French' },
|
|
810
|
+
{ code: 'de', name: 'German' },
|
|
811
|
+
{ code: 'it', name: 'Italian' },
|
|
812
|
+
{ code: 'pt', name: 'Portuguese' },
|
|
813
|
+
{ code: 'ru', name: 'Russian' },
|
|
814
|
+
{ code: 'zh', name: 'Chinese' },
|
|
815
|
+
{ code: 'ja', name: 'Japanese' },
|
|
816
|
+
{ code: 'ko', name: 'Korean' },
|
|
817
|
+
{ code: 'ar', name: 'Arabic' },
|
|
818
|
+
{ code: 'hi', name: 'Hindi' },
|
|
819
|
+
{ code: 'bn', name: 'Bengali' },
|
|
820
|
+
{ code: 'pa', name: 'Punjabi' },
|
|
821
|
+
{ code: 'ur', name: 'Urdu' },
|
|
822
|
+
{ code: 'tr', name: 'Turkish' },
|
|
823
|
+
{ code: 'vi', name: 'Vietnamese' },
|
|
824
|
+
{ code: 'th', name: 'Thai' },
|
|
825
|
+
{ code: 'nl', name: 'Dutch' },
|
|
826
|
+
{ code: 'pl', name: 'Polish' },
|
|
827
|
+
{ code: 'sv', name: 'Swedish' },
|
|
828
|
+
{ code: 'no', name: 'Norwegian' },
|
|
829
|
+
{ code: 'fi', name: 'Finnish' },
|
|
830
|
+
{ code: 'da', name: 'Danish' },
|
|
831
|
+
{ code: 'el', name: 'Greek' },
|
|
832
|
+
{ code: 'he', name: 'Hebrew' },
|
|
833
|
+
{ code: 'fa', name: 'Persian' },
|
|
834
|
+
{ code: 'hu', name: 'Hungarian' },
|
|
835
|
+
{ code: 'cs', name: 'Czech' },
|
|
836
|
+
{ code: 'ro', name: 'Romanian' },
|
|
837
|
+
{ code: 'uk', name: 'Ukrainian' },
|
|
838
|
+
{ code: 'bg', name: 'Bulgarian' },
|
|
839
|
+
{ code: 'ms', name: 'Malay' },
|
|
840
|
+
{ code: 'id', name: 'Indonesian' },
|
|
841
|
+
{ code: 'tl', name: 'Tagalog' },
|
|
842
|
+
{ code: 'nl', name: 'Dutch' }
|
|
843
|
+
];
|
|
844
|
+
|
|
845
|
+
const foundByCode = supportedLanguages.find(langObj => langObj.code === lang.toLowerCase());
|
|
846
|
+
if (foundByCode) {
|
|
847
|
+
return foundByCode.code;
|
|
848
|
+
}
|
|
849
|
+
|
|
850
|
+
const foundByName = supportedLanguages.find(langObj => langObj.name.toLowerCase() === lang.toLowerCase());
|
|
851
|
+
if (foundByName) {
|
|
852
|
+
return foundByName.code;
|
|
853
|
+
}
|
|
854
|
+
|
|
855
|
+
return null;
|
|
856
|
+
}
|
|
771
857
|
|
|
772
|
-
export { ApexImagine, ApexChat };
|
|
858
|
+
export { ApexImagine, ApexChat, ApexListener };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import pdf
|
|
1
|
+
import pdf from "pdf-parse";
|
|
2
2
|
import * as fs from "fs";
|
|
3
3
|
import * as https from "https";
|
|
4
|
+
import { WriteStream } from "fs";
|
|
4
5
|
|
|
5
6
|
export async function readPdf(url: string): Promise<string> {
|
|
6
7
|
const pdfBuffer = await downloadFile(url);
|
|
@@ -15,10 +16,11 @@ export async function readTextFile(url: string): Promise<string> {
|
|
|
15
16
|
|
|
16
17
|
function downloadFile(url: string): Promise<Buffer> {
|
|
17
18
|
return new Promise((resolve, reject) => {
|
|
18
|
-
const tempFilePath = 'temp';
|
|
19
|
-
const file = fs.createWriteStream(tempFilePath);
|
|
19
|
+
const tempFilePath = 'temp';
|
|
20
|
+
const file: WriteStream = fs.createWriteStream(tempFilePath);
|
|
20
21
|
|
|
21
22
|
https.get(url, (response) => {
|
|
23
|
+
// @ts-ignore: Ignore type checking for this line
|
|
22
24
|
response.pipe(file);
|
|
23
25
|
file.on('finish', () => {
|
|
24
26
|
file.close();
|
|
@@ -31,4 +33,4 @@ function downloadFile(url: string): Promise<Buffer> {
|
|
|
31
33
|
reject(err.message);
|
|
32
34
|
});
|
|
33
35
|
});
|
|
34
|
-
}
|
|
36
|
+
}
|
|
@@ -10,6 +10,9 @@ async function initializeValidOptions() {
|
|
|
10
10
|
sampler()
|
|
11
11
|
]);
|
|
12
12
|
|
|
13
|
+
const ApexAIModals = ['v4', 'gemmini-pro', 'gemini-flash', 'gemini', 'v3', 'v3-32k', 'turbo', 'turbo-16k', 'llama', 'apexChat', 'openChat', 'yi-ai', 'facebook-ai', 'starChat', 'mixtral']
|
|
14
|
+
const ApexChatModals = ['v4', 'gemini-v2', 'gemini', 'v3', 'v3-32k', 'turbo', 'turbo-16k', 'llama', 'apexChat', 'openChat', 'yi-ai', 'facebook-ai', 'starChat', 'mixtral', 'codellama', 'bing', 'bard']
|
|
15
|
+
|
|
13
16
|
const HercModals = [
|
|
14
17
|
"v1",
|
|
15
18
|
"v2",
|
|
@@ -24,6 +27,8 @@ async function initializeValidOptions() {
|
|
|
24
27
|
|
|
25
28
|
return {
|
|
26
29
|
validHercaiModals: HercModals,
|
|
30
|
+
validApexAI: ApexAIModals,
|
|
31
|
+
validApexChat: ApexChatModals,
|
|
27
32
|
validEnhancers: [
|
|
28
33
|
"ESRGAN_4x", "Lanczos", "Nearest", "LDSR", "R-ESRGAN 4x+",
|
|
29
34
|
"R-ESRGAN 4x+ Anime6B", "ScuNET GAN", "ScuNET PSNR", "SwinIR 4x"
|
|
@@ -37,7 +42,7 @@ async function initializeValidOptions() {
|
|
|
37
42
|
"pixel-art", "texture", "craft-clay"
|
|
38
43
|
],
|
|
39
44
|
validProdiaModals: SDModals,
|
|
40
|
-
allModals: [...SDModals, ...SDXLModals, ...HercModals]
|
|
45
|
+
allModals: [...SDModals, ...SDXLModals, ...HercModals, ...ApexAIModals, ...ApexChatModals]
|
|
41
46
|
};
|
|
42
47
|
}
|
|
43
48
|
|
|
@@ -57,5 +62,5 @@ async function sdxlModals(): Promise<string[]> {
|
|
|
57
62
|
async function sampler(): Promise<string[]> {
|
|
58
63
|
const Samplers = await sdk.listSamplers();
|
|
59
64
|
|
|
60
|
-
return Samplers.data
|
|
65
|
+
return Samplers.data;
|
|
61
66
|
}
|
|
@@ -17,11 +17,27 @@ export async function bard({ API_KEY, prompt }: aiOptions): Promise<string> {
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/bard`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/bard`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
|
@@ -17,11 +17,27 @@ export async function bing({ API_KEY, prompt }: aiOptions): Promise<string> {
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/bing`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/bing`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
|
@@ -17,13 +17,28 @@ export async function codellama({ API_KEY, prompt }: aiOptions): Promise<string>
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/codellama`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/codellama`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
25
|
-
|
|
40
|
+
console.log(e);
|
|
26
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
27
42
|
}
|
|
28
43
|
}
|
|
29
|
-
}
|
|
44
|
+
}
|
|
@@ -17,11 +17,27 @@ export async function gemini_v2({ API_KEY, prompt }: aiOptions): Promise<string>
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/gemini`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/gemini`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import Groq from 'groq-sdk';
|
|
2
|
+
|
|
3
|
+
export async function gemma(prompt: string, API_KEY?: string): Promise<string> {
|
|
4
|
+
|
|
5
|
+
try {
|
|
6
|
+
const groq = new Groq({
|
|
7
|
+
apiKey: API_KEY || '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',
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const chatCompletion = await groq.chat.completions.create({
|
|
11
|
+
messages: [{ role: 'user', content: prompt }],
|
|
12
|
+
model: 'gemma-7b-it',
|
|
13
|
+
max_tokens: 8192
|
|
14
|
+
});
|
|
15
|
+
const response = chatCompletion.choices[0]?.message?.content || 'Rate limit'
|
|
16
|
+
|
|
17
|
+
return response;
|
|
18
|
+
} catch (err: any) {
|
|
19
|
+
if (err instanceof Groq.APIError) {
|
|
20
|
+
if (err.status === 400) {
|
|
21
|
+
return 'Bad request try again after a minute please.'
|
|
22
|
+
} else if (err.status === 429) {
|
|
23
|
+
return 'Rate limit try again after one minute or provide your own api-key.'
|
|
24
|
+
} else if (err.status === 401 || !err.status) {
|
|
25
|
+
throw new Error('Invalid Api-Key provided.')
|
|
26
|
+
} else {
|
|
27
|
+
console.error(err)
|
|
28
|
+
return "unknown error occurred."
|
|
29
|
+
}
|
|
30
|
+
} else {
|
|
31
|
+
console.error(err)
|
|
32
|
+
return "unknown error occurred."
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -17,11 +17,27 @@ export async function llamaChat({ API_KEY, prompt }: aiOptions): Promise<string>
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/llama`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/llama`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import Groq from 'groq-sdk';
|
|
2
|
+
|
|
3
|
+
export async function llama2(prompt: string, API_KEY?: string): Promise<string> {
|
|
4
|
+
|
|
5
|
+
try {
|
|
6
|
+
const groq = new Groq({
|
|
7
|
+
apiKey: API_KEY || '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',
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const chatCompletion = await groq.chat.completions.create({
|
|
11
|
+
messages: [{ role: 'user', content: prompt }],
|
|
12
|
+
model: 'llama3-70b-8192',
|
|
13
|
+
max_tokens: 8192
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const response = chatCompletion.choices[0]?.message?.content || 'Rate limit'
|
|
17
|
+
return response;
|
|
18
|
+
} catch (err: any) {
|
|
19
|
+
if (err instanceof Groq.APIError) {
|
|
20
|
+
if (err.status === 400) {
|
|
21
|
+
return 'Bad request try again after a minute please.'
|
|
22
|
+
} else if (err.status === 429) {
|
|
23
|
+
return 'Rate limit try again after one minute or provide your own api-key.'
|
|
24
|
+
} else if (err.status === 401 || !err.status) {
|
|
25
|
+
throw new Error('Invalid Api-Key provided.')
|
|
26
|
+
} else {
|
|
27
|
+
console.error(err)
|
|
28
|
+
return "unknown error occurred."
|
|
29
|
+
}
|
|
30
|
+
} else {
|
|
31
|
+
console.error(err)
|
|
32
|
+
return 'unknown error occurred.'
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import Groq from 'groq-sdk';
|
|
2
|
+
|
|
3
|
+
export async function llama3(prompt: string, API_KEY?: string): Promise<string> {
|
|
4
|
+
|
|
5
|
+
try {
|
|
6
|
+
const groq = new Groq({
|
|
7
|
+
apiKey: API_KEY || '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',
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const chatCompletion = await groq.chat.completions.create({
|
|
11
|
+
messages: [{ role: 'user', content: prompt }],
|
|
12
|
+
model: 'llama3-8b-8192',
|
|
13
|
+
max_tokens: 8192
|
|
14
|
+
});
|
|
15
|
+
const response = chatCompletion.choices[0]?.message?.content || 'Rate limit'
|
|
16
|
+
|
|
17
|
+
return response;
|
|
18
|
+
} catch (err: any) {
|
|
19
|
+
if (err instanceof Groq.APIError) {
|
|
20
|
+
if (err.status === 400) {
|
|
21
|
+
return 'Bad request try again after a minute please.'
|
|
22
|
+
} else if (err.status === 429) {
|
|
23
|
+
return 'Rate limit try again after one minute or provide your own api-key.'
|
|
24
|
+
} else if (err.status === 401 || !err.status) {
|
|
25
|
+
throw new Error('Invalid Api-Key provided.')
|
|
26
|
+
} else {
|
|
27
|
+
console.error(err)
|
|
28
|
+
return "unknown error occurred."
|
|
29
|
+
}
|
|
30
|
+
} else {
|
|
31
|
+
console.error(err)
|
|
32
|
+
return "unknown error occurred."
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -17,12 +17,29 @@ export async function mixtral({ API_KEY, prompt }: aiOptions): Promise<string> {
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/mixtral`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/mixtral`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
|
28
44
|
}
|
|
45
|
+
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import Groq from 'groq-sdk';
|
|
2
|
+
|
|
3
|
+
export async function mixtral2(prompt: string, API_KEY?: string): Promise<string> {
|
|
4
|
+
|
|
5
|
+
try {
|
|
6
|
+
const groq = new Groq({
|
|
7
|
+
apiKey: API_KEY || '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',
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
const chatCompletion = await groq.chat.completions.create({
|
|
11
|
+
messages: [{ role: 'user', content: prompt }],
|
|
12
|
+
model: 'mixtral-8x7b-32768',
|
|
13
|
+
max_tokens: 8192
|
|
14
|
+
});
|
|
15
|
+
const response = chatCompletion.choices[0]?.message?.content || 'Rate limit'
|
|
16
|
+
|
|
17
|
+
return response;
|
|
18
|
+
} catch (err: any) {
|
|
19
|
+
if (err instanceof Groq.APIError) {
|
|
20
|
+
if (err.status === 400) {
|
|
21
|
+
return 'Bad request try again after a minute please.'
|
|
22
|
+
} else if (err.status === 429) {
|
|
23
|
+
return 'Rate limit try again after one minute or provide your own api-key.'
|
|
24
|
+
} else if (err.status === 401 || !err.status) {
|
|
25
|
+
throw new Error('Invalid Api-Key provided.')
|
|
26
|
+
} else {
|
|
27
|
+
console.error(err)
|
|
28
|
+
return "unknown error occurred."
|
|
29
|
+
}
|
|
30
|
+
} else {
|
|
31
|
+
console.error(err)
|
|
32
|
+
return "unknown error occurred."
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -17,11 +17,27 @@ export async function openChat({ API_KEY, prompt }: aiOptions): Promise<string>
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/openchat`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/openchat`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|
package/lib/ai/modals-chat/v4.ts
CHANGED
|
@@ -17,11 +17,27 @@ export async function v4({ API_KEY, prompt }: aiOptions): Promise<string> {
|
|
|
17
17
|
return response.data.message;
|
|
18
18
|
} catch (e: any) {
|
|
19
19
|
if (e.response && e.response.data.message === 'Invalid API key.') {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
try {
|
|
21
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/gpt4`, { prompt }, {
|
|
22
|
+
headers: { Authorization: `Bearer rsnai_SbLbFcwdT2h2KoYet2LS0F34` },
|
|
23
|
+
});
|
|
24
|
+
return defaultResponse.data.message;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
console.log(err);
|
|
27
|
+
return 'An error occurred while using the default API key.';
|
|
28
|
+
}
|
|
29
|
+
} else if (e.response && e.response.status === 500) {
|
|
30
|
+
try {
|
|
31
|
+
const defaultResponse = await axios.post(`https://api.rnilaweera.lk/api/v1/user/gpt4`, { prompt }, {
|
|
32
|
+
headers: { Authorization: `Bearer rsnai_lvIch9Z7apBHqfXYqOiXwzm7` },
|
|
33
|
+
});
|
|
34
|
+
return defaultResponse.data.message;
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.log(err);
|
|
37
|
+
return 'An error occurred while using the backup API key.';
|
|
38
|
+
}
|
|
24
39
|
} else {
|
|
40
|
+
console.log(e);
|
|
25
41
|
return 'The API is on cooldown for 50 seconds.';
|
|
26
42
|
}
|
|
27
43
|
}
|