apexify.js 4.9.24 → 4.9.26

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.
Files changed (241) hide show
  1. package/dist/cjs/{canvas → Canvas}/ApexPainter.d.ts.map +1 -1
  2. package/dist/cjs/{canvas → Canvas}/ApexPainter.js +1 -1
  3. package/dist/cjs/Canvas/ApexPainter.js.map +1 -0
  4. package/dist/cjs/{canvas → Canvas}/utils/Background/bg.d.ts.map +1 -1
  5. package/dist/cjs/{canvas → Canvas}/utils/Background/bg.js.map +1 -1
  6. package/dist/cjs/{canvas → Canvas}/utils/Charts/charts.d.ts.map +1 -1
  7. package/dist/{esm/canvas → cjs/Canvas}/utils/Charts/charts.js.map +1 -1
  8. package/dist/cjs/{canvas → Canvas}/utils/Custom/customLines.d.ts.map +1 -1
  9. package/dist/cjs/{canvas → Canvas}/utils/Custom/customLines.js.map +1 -1
  10. package/dist/cjs/{canvas → Canvas}/utils/General/conversion.d.ts.map +1 -1
  11. package/dist/cjs/{canvas → Canvas}/utils/General/conversion.js.map +1 -1
  12. package/dist/cjs/{canvas → Canvas}/utils/General/general functions.d.ts.map +1 -1
  13. package/dist/cjs/{canvas → Canvas}/utils/General/general functions.js.map +1 -1
  14. package/dist/cjs/{canvas → Canvas}/utils/Image/imageProperties.d.ts.map +1 -1
  15. package/dist/cjs/{canvas → Canvas}/utils/Image/imageProperties.js.map +1 -1
  16. package/dist/cjs/{canvas → Canvas}/utils/Texts/textProperties.d.ts.map +1 -1
  17. package/dist/{esm/canvas → cjs/Canvas}/utils/Texts/textProperties.js.map +1 -1
  18. package/dist/cjs/{canvas → Canvas}/utils/types.d.ts.map +1 -1
  19. package/dist/cjs/Canvas/utils/types.js.map +1 -0
  20. package/dist/cjs/{canvas → Canvas}/utils/utils.d.ts.map +1 -1
  21. package/dist/{esm/canvas → cjs/Canvas}/utils/utils.js.map +1 -1
  22. package/dist/cjs/index.d.ts +7 -24
  23. package/dist/cjs/index.d.ts.map +1 -1
  24. package/dist/cjs/index.js +9 -22
  25. package/dist/cjs/index.js.map +1 -1
  26. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  27. package/dist/cjs/utils.d.ts +2 -4
  28. package/dist/cjs/utils.d.ts.map +1 -1
  29. package/dist/cjs/utils.js +2 -12
  30. package/dist/cjs/utils.js.map +1 -1
  31. package/dist/esm/{canvas → Canvas}/ApexPainter.d.ts.map +1 -1
  32. package/dist/esm/{canvas → Canvas}/ApexPainter.js +1 -1
  33. package/dist/esm/Canvas/ApexPainter.js.map +1 -0
  34. package/dist/esm/{canvas → Canvas}/utils/Background/bg.d.ts.map +1 -1
  35. package/dist/esm/{canvas → Canvas}/utils/Background/bg.js.map +1 -1
  36. package/dist/esm/{canvas → Canvas}/utils/Charts/charts.d.ts.map +1 -1
  37. package/dist/{cjs/canvas → esm/Canvas}/utils/Charts/charts.js.map +1 -1
  38. package/dist/esm/{canvas → Canvas}/utils/Custom/customLines.d.ts.map +1 -1
  39. package/dist/esm/{canvas → Canvas}/utils/Custom/customLines.js.map +1 -1
  40. package/dist/esm/{canvas → Canvas}/utils/General/conversion.d.ts.map +1 -1
  41. package/dist/esm/{canvas → Canvas}/utils/General/conversion.js.map +1 -1
  42. package/dist/esm/{canvas → Canvas}/utils/General/general functions.d.ts.map +1 -1
  43. package/dist/esm/{canvas → Canvas}/utils/General/general functions.js.map +1 -1
  44. package/dist/esm/{canvas → Canvas}/utils/Image/imageProperties.d.ts.map +1 -1
  45. package/dist/esm/{canvas → Canvas}/utils/Image/imageProperties.js.map +1 -1
  46. package/dist/esm/{canvas → Canvas}/utils/Texts/textProperties.d.ts.map +1 -1
  47. package/dist/{cjs/canvas → esm/Canvas}/utils/Texts/textProperties.js.map +1 -1
  48. package/dist/esm/{canvas → Canvas}/utils/types.d.ts.map +1 -1
  49. package/dist/esm/Canvas/utils/types.js.map +1 -0
  50. package/dist/esm/{canvas → Canvas}/utils/utils.d.ts.map +1 -1
  51. package/dist/{cjs/canvas → esm/Canvas}/utils/utils.js.map +1 -1
  52. package/dist/esm/index.d.ts +7 -24
  53. package/dist/esm/index.d.ts.map +1 -1
  54. package/dist/esm/index.js +9 -22
  55. package/dist/esm/index.js.map +1 -1
  56. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  57. package/dist/esm/utils.d.ts +2 -4
  58. package/dist/esm/utils.d.ts.map +1 -1
  59. package/dist/esm/utils.js +2 -12
  60. package/dist/esm/utils.js.map +1 -1
  61. package/lib/{canvas → Canvas}/ApexPainter.ts +3 -3
  62. package/lib/index.ts +9 -17
  63. package/lib/utils.ts +2 -4
  64. package/package.json +4 -15
  65. package/dist/cjs/ai/ApexAI.d.ts +0 -145
  66. package/dist/cjs/ai/ApexAI.d.ts.map +0 -1
  67. package/dist/cjs/ai/ApexAI.js +0 -494
  68. package/dist/cjs/ai/ApexAI.js.map +0 -1
  69. package/dist/cjs/ai/ApexModules.d.ts +0 -53
  70. package/dist/cjs/ai/ApexModules.d.ts.map +0 -1
  71. package/dist/cjs/ai/ApexModules.js +0 -824
  72. package/dist/cjs/ai/ApexModules.js.map +0 -1
  73. package/dist/cjs/ai/functions/readFiles.d.ts +0 -2
  74. package/dist/cjs/ai/functions/readFiles.d.ts.map +0 -1
  75. package/dist/cjs/ai/functions/readFiles.js +0 -96
  76. package/dist/cjs/ai/functions/readFiles.js.map +0 -1
  77. package/dist/cjs/ai/functions/tokenizer.d.ts +0 -10
  78. package/dist/cjs/ai/functions/tokenizer.d.ts.map +0 -1
  79. package/dist/cjs/ai/functions/tokenizer.js +0 -64
  80. package/dist/cjs/ai/functions/tokenizer.js.map +0 -1
  81. package/dist/cjs/ai/functions/validOptions.d.ts +0 -22
  82. package/dist/cjs/ai/functions/validOptions.d.ts.map +0 -1
  83. package/dist/cjs/ai/functions/validOptions.js +0 -103
  84. package/dist/cjs/ai/functions/validOptions.js.map +0 -1
  85. package/dist/cjs/ai/modals/electronHub/chatmodels.d.ts +0 -7
  86. package/dist/cjs/ai/modals/electronHub/chatmodels.d.ts.map +0 -1
  87. package/dist/cjs/ai/modals/electronHub/chatmodels.js +0 -51
  88. package/dist/cjs/ai/modals/electronHub/chatmodels.js.map +0 -1
  89. package/dist/cjs/ai/modals/electronHub/imageModels.d.ts +0 -12
  90. package/dist/cjs/ai/modals/electronHub/imageModels.d.ts.map +0 -1
  91. package/dist/cjs/ai/modals/electronHub/imageModels.js +0 -92
  92. package/dist/cjs/ai/modals/electronHub/imageModels.js.map +0 -1
  93. package/dist/cjs/ai/modals/electronHub/speechModels.d.ts +0 -7
  94. package/dist/cjs/ai/modals/electronHub/speechModels.d.ts.map +0 -1
  95. package/dist/cjs/ai/modals/electronHub/speechModels.js +0 -63
  96. package/dist/cjs/ai/modals/electronHub/speechModels.js.map +0 -1
  97. package/dist/cjs/ai/modals/electronHub/videoModels.d.ts +0 -6
  98. package/dist/cjs/ai/modals/electronHub/videoModels.d.ts.map +0 -1
  99. package/dist/cjs/ai/modals/electronHub/videoModels.js +0 -63
  100. package/dist/cjs/ai/modals/electronHub/videoModels.js.map +0 -1
  101. package/dist/cjs/ai/modals/groq/chatgroq.d.ts +0 -9
  102. package/dist/cjs/ai/modals/groq/chatgroq.d.ts.map +0 -1
  103. package/dist/cjs/ai/modals/groq/chatgroq.js +0 -64
  104. package/dist/cjs/ai/modals/groq/chatgroq.js.map +0 -1
  105. package/dist/cjs/ai/modals/groq/imageAnalyzer.d.ts +0 -8
  106. package/dist/cjs/ai/modals/groq/imageAnalyzer.d.ts.map +0 -1
  107. package/dist/cjs/ai/modals/groq/imageAnalyzer.js +0 -82
  108. package/dist/cjs/ai/modals/groq/imageAnalyzer.js.map +0 -1
  109. package/dist/cjs/ai/modals/groq/whisper.d.ts +0 -5
  110. package/dist/cjs/ai/modals/groq/whisper.d.ts.map +0 -1
  111. package/dist/cjs/ai/modals/groq/whisper.js +0 -108
  112. package/dist/cjs/ai/modals/groq/whisper.js.map +0 -1
  113. package/dist/cjs/ai/modals/hercai/chatModels.d.ts +0 -7
  114. package/dist/cjs/ai/modals/hercai/chatModels.d.ts.map +0 -1
  115. package/dist/cjs/ai/modals/hercai/chatModels.js +0 -23
  116. package/dist/cjs/ai/modals/hercai/chatModels.js.map +0 -1
  117. package/dist/cjs/ai/utils.d.ts +0 -5
  118. package/dist/cjs/ai/utils.d.ts.map +0 -1
  119. package/dist/cjs/ai/utils.js +0 -15
  120. package/dist/cjs/ai/utils.js.map +0 -1
  121. package/dist/cjs/canvas/ApexPainter.js.map +0 -1
  122. package/dist/cjs/canvas/utils/types.js.map +0 -1
  123. package/dist/esm/ai/ApexAI.d.ts +0 -145
  124. package/dist/esm/ai/ApexAI.d.ts.map +0 -1
  125. package/dist/esm/ai/ApexAI.js +0 -494
  126. package/dist/esm/ai/ApexAI.js.map +0 -1
  127. package/dist/esm/ai/ApexModules.d.ts +0 -53
  128. package/dist/esm/ai/ApexModules.d.ts.map +0 -1
  129. package/dist/esm/ai/ApexModules.js +0 -824
  130. package/dist/esm/ai/ApexModules.js.map +0 -1
  131. package/dist/esm/ai/functions/readFiles.d.ts +0 -2
  132. package/dist/esm/ai/functions/readFiles.d.ts.map +0 -1
  133. package/dist/esm/ai/functions/readFiles.js +0 -96
  134. package/dist/esm/ai/functions/readFiles.js.map +0 -1
  135. package/dist/esm/ai/functions/tokenizer.d.ts +0 -10
  136. package/dist/esm/ai/functions/tokenizer.d.ts.map +0 -1
  137. package/dist/esm/ai/functions/tokenizer.js +0 -64
  138. package/dist/esm/ai/functions/tokenizer.js.map +0 -1
  139. package/dist/esm/ai/functions/validOptions.d.ts +0 -22
  140. package/dist/esm/ai/functions/validOptions.d.ts.map +0 -1
  141. package/dist/esm/ai/functions/validOptions.js +0 -103
  142. package/dist/esm/ai/functions/validOptions.js.map +0 -1
  143. package/dist/esm/ai/modals/electronHub/chatmodels.d.ts +0 -7
  144. package/dist/esm/ai/modals/electronHub/chatmodels.d.ts.map +0 -1
  145. package/dist/esm/ai/modals/electronHub/chatmodels.js +0 -51
  146. package/dist/esm/ai/modals/electronHub/chatmodels.js.map +0 -1
  147. package/dist/esm/ai/modals/electronHub/imageModels.d.ts +0 -12
  148. package/dist/esm/ai/modals/electronHub/imageModels.d.ts.map +0 -1
  149. package/dist/esm/ai/modals/electronHub/imageModels.js +0 -92
  150. package/dist/esm/ai/modals/electronHub/imageModels.js.map +0 -1
  151. package/dist/esm/ai/modals/electronHub/speechModels.d.ts +0 -7
  152. package/dist/esm/ai/modals/electronHub/speechModels.d.ts.map +0 -1
  153. package/dist/esm/ai/modals/electronHub/speechModels.js +0 -63
  154. package/dist/esm/ai/modals/electronHub/speechModels.js.map +0 -1
  155. package/dist/esm/ai/modals/electronHub/videoModels.d.ts +0 -6
  156. package/dist/esm/ai/modals/electronHub/videoModels.d.ts.map +0 -1
  157. package/dist/esm/ai/modals/electronHub/videoModels.js +0 -63
  158. package/dist/esm/ai/modals/electronHub/videoModels.js.map +0 -1
  159. package/dist/esm/ai/modals/groq/chatgroq.d.ts +0 -9
  160. package/dist/esm/ai/modals/groq/chatgroq.d.ts.map +0 -1
  161. package/dist/esm/ai/modals/groq/chatgroq.js +0 -64
  162. package/dist/esm/ai/modals/groq/chatgroq.js.map +0 -1
  163. package/dist/esm/ai/modals/groq/imageAnalyzer.d.ts +0 -8
  164. package/dist/esm/ai/modals/groq/imageAnalyzer.d.ts.map +0 -1
  165. package/dist/esm/ai/modals/groq/imageAnalyzer.js +0 -82
  166. package/dist/esm/ai/modals/groq/imageAnalyzer.js.map +0 -1
  167. package/dist/esm/ai/modals/groq/whisper.d.ts +0 -5
  168. package/dist/esm/ai/modals/groq/whisper.d.ts.map +0 -1
  169. package/dist/esm/ai/modals/groq/whisper.js +0 -108
  170. package/dist/esm/ai/modals/groq/whisper.js.map +0 -1
  171. package/dist/esm/ai/modals/hercai/chatModels.d.ts +0 -7
  172. package/dist/esm/ai/modals/hercai/chatModels.d.ts.map +0 -1
  173. package/dist/esm/ai/modals/hercai/chatModels.js +0 -23
  174. package/dist/esm/ai/modals/hercai/chatModels.js.map +0 -1
  175. package/dist/esm/ai/utils.d.ts +0 -5
  176. package/dist/esm/ai/utils.d.ts.map +0 -1
  177. package/dist/esm/ai/utils.js +0 -15
  178. package/dist/esm/ai/utils.js.map +0 -1
  179. package/dist/esm/canvas/ApexPainter.js.map +0 -1
  180. package/dist/esm/canvas/utils/types.js.map +0 -1
  181. package/lib/ai/ApexAI.ts +0 -758
  182. package/lib/ai/ApexModules.ts +0 -916
  183. package/lib/ai/functions/readFiles.ts +0 -66
  184. package/lib/ai/functions/tokenizer.ts +0 -69
  185. package/lib/ai/functions/validOptions.ts +0 -116
  186. package/lib/ai/modals/electronHub/chatmodels.ts +0 -57
  187. package/lib/ai/modals/electronHub/imageModels.ts +0 -116
  188. package/lib/ai/modals/electronHub/speechModels.ts +0 -75
  189. package/lib/ai/modals/electronHub/videoModels.ts +0 -75
  190. package/lib/ai/modals/groq/chatgroq.ts +0 -78
  191. package/lib/ai/modals/groq/imageAnalyzer.ts +0 -83
  192. package/lib/ai/modals/groq/whisper.ts +0 -114
  193. package/lib/ai/modals/hercai/chatModels.ts +0 -20
  194. package/lib/ai/utils.ts +0 -15
  195. /package/dist/cjs/{canvas → Canvas}/ApexPainter.d.ts +0 -0
  196. /package/dist/cjs/{canvas → Canvas}/utils/Background/bg.d.ts +0 -0
  197. /package/dist/cjs/{canvas → Canvas}/utils/Background/bg.js +0 -0
  198. /package/dist/cjs/{canvas → Canvas}/utils/Charts/charts.d.ts +0 -0
  199. /package/dist/cjs/{canvas → Canvas}/utils/Charts/charts.js +0 -0
  200. /package/dist/cjs/{canvas → Canvas}/utils/Custom/customLines.d.ts +0 -0
  201. /package/dist/cjs/{canvas → Canvas}/utils/Custom/customLines.js +0 -0
  202. /package/dist/cjs/{canvas → Canvas}/utils/General/conversion.d.ts +0 -0
  203. /package/dist/cjs/{canvas → Canvas}/utils/General/conversion.js +0 -0
  204. /package/dist/cjs/{canvas → Canvas}/utils/General/general functions.d.ts +0 -0
  205. /package/dist/cjs/{canvas → Canvas}/utils/General/general functions.js +0 -0
  206. /package/dist/cjs/{canvas → Canvas}/utils/Image/imageProperties.d.ts +0 -0
  207. /package/dist/cjs/{canvas → Canvas}/utils/Image/imageProperties.js +0 -0
  208. /package/dist/cjs/{canvas → Canvas}/utils/Texts/textProperties.d.ts +0 -0
  209. /package/dist/cjs/{canvas → Canvas}/utils/Texts/textProperties.js +0 -0
  210. /package/dist/cjs/{canvas → Canvas}/utils/types.d.ts +0 -0
  211. /package/dist/cjs/{canvas → Canvas}/utils/types.js +0 -0
  212. /package/dist/cjs/{canvas → Canvas}/utils/utils.d.ts +0 -0
  213. /package/dist/cjs/{canvas → Canvas}/utils/utils.js +0 -0
  214. /package/dist/esm/{canvas → Canvas}/ApexPainter.d.ts +0 -0
  215. /package/dist/esm/{canvas → Canvas}/utils/Background/bg.d.ts +0 -0
  216. /package/dist/esm/{canvas → Canvas}/utils/Background/bg.js +0 -0
  217. /package/dist/esm/{canvas → Canvas}/utils/Charts/charts.d.ts +0 -0
  218. /package/dist/esm/{canvas → Canvas}/utils/Charts/charts.js +0 -0
  219. /package/dist/esm/{canvas → Canvas}/utils/Custom/customLines.d.ts +0 -0
  220. /package/dist/esm/{canvas → Canvas}/utils/Custom/customLines.js +0 -0
  221. /package/dist/esm/{canvas → Canvas}/utils/General/conversion.d.ts +0 -0
  222. /package/dist/esm/{canvas → Canvas}/utils/General/conversion.js +0 -0
  223. /package/dist/esm/{canvas → Canvas}/utils/General/general functions.d.ts +0 -0
  224. /package/dist/esm/{canvas → Canvas}/utils/General/general functions.js +0 -0
  225. /package/dist/esm/{canvas → Canvas}/utils/Image/imageProperties.d.ts +0 -0
  226. /package/dist/esm/{canvas → Canvas}/utils/Image/imageProperties.js +0 -0
  227. /package/dist/esm/{canvas → Canvas}/utils/Texts/textProperties.d.ts +0 -0
  228. /package/dist/esm/{canvas → Canvas}/utils/Texts/textProperties.js +0 -0
  229. /package/dist/esm/{canvas → Canvas}/utils/types.d.ts +0 -0
  230. /package/dist/esm/{canvas → Canvas}/utils/types.js +0 -0
  231. /package/dist/esm/{canvas → Canvas}/utils/utils.d.ts +0 -0
  232. /package/dist/esm/{canvas → Canvas}/utils/utils.js +0 -0
  233. /package/lib/{canvas → Canvas}/utils/Background/bg.ts +0 -0
  234. /package/lib/{canvas → Canvas}/utils/Charts/charts.ts +0 -0
  235. /package/lib/{canvas → Canvas}/utils/Custom/customLines.ts +0 -0
  236. /package/lib/{canvas → Canvas}/utils/General/conversion.ts +0 -0
  237. /package/lib/{canvas → Canvas}/utils/General/general functions.ts +0 -0
  238. /package/lib/{canvas → Canvas}/utils/Image/imageProperties.ts +0 -0
  239. /package/lib/{canvas → Canvas}/utils/Texts/textProperties.ts +0 -0
  240. /package/lib/{canvas → Canvas}/utils/types.ts +0 -0
  241. /package/lib/{canvas → Canvas}/utils/utils.ts +0 -0
@@ -1,83 +0,0 @@
1
- import Groq from "groq-sdk";
2
- import axios from "axios";
3
- import fs from "fs";
4
- import path from "path";
5
-
6
- interface GroqAnalyzerOptions {
7
- img: string | Buffer;
8
- ApiKey?: string;
9
- prompt?: string;
10
- }
11
-
12
- async function convertUrlToDataUrl(url: string): Promise<string> {
13
- try {
14
- const response = await axios.get(url, { responseType: "arraybuffer" });
15
- const buffer = Buffer.from(response.data, "binary");
16
- return `data:${response.headers["content-type"]};base64,${buffer.toString("base64")}`;
17
- } catch (error) {
18
- console.error("Error converting URL to Data URL:", error);
19
- throw new Error("Failed to convert image URL to data URL");
20
- }
21
- }
22
-
23
- async function convertFileToDataUrl(filePath: string): Promise<string> {
24
- try {
25
- const absolutePath = path.resolve(filePath);
26
- const buffer = fs.readFileSync(absolutePath);
27
- const mimeType = "image/png";
28
- return `data:${mimeType};base64,${buffer.toString("base64")}`;
29
- } catch (error) {
30
- console.error("Error converting file to Data URL:", error);
31
- throw new Error("Failed to convert file to data URL");
32
- }
33
- }
34
-
35
- function convertBufferToDataUrl(buffer: Buffer): string {
36
- const mimeType = "image/png"; // Adjust dynamically if needed
37
- return `data:${mimeType};base64,${buffer.toString("base64")}`;
38
- }
39
-
40
- export async function groqAnalyzer({ img, ApiKey, prompt }: GroqAnalyzerOptions): Promise<string> {
41
- try {
42
- const groq = new Groq({
43
- apiKey: ApiKey || "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",
44
- });
45
-
46
- let imageDataUrl: string;
47
-
48
- if (typeof img === "string") {
49
- if (img.startsWith("http")) {
50
- imageDataUrl = await convertUrlToDataUrl(img);
51
- } else {
52
- imageDataUrl = await convertFileToDataUrl(img);
53
- }
54
- } else if (Buffer.isBuffer(img)) {
55
- imageDataUrl = convertBufferToDataUrl(img);
56
- } else {
57
- throw new Error("Invalid image input. Must be a URL, file path, or Buffer.");
58
- }
59
-
60
- const chatCompletion = await groq.chat.completions.create({
61
- messages: [
62
- {
63
- role: "user",
64
- content: [
65
- { type: "text", text: prompt || "" },
66
- { type: "image_url", image_url: { url: imageDataUrl } },
67
- ],
68
- },
69
- ],
70
- model: "llama-3.2-90b-vision-preview",
71
- temperature: 0,
72
- max_tokens: 8192,
73
- top_p: 1,
74
- stream: false,
75
- stop: null,
76
- });
77
-
78
- return chatCompletion.choices[0].message.content as string;
79
- } catch (error) {
80
- console.error("Error in groqAnalyzer:", error);
81
- return "❌ Error occurred while analyzing the image.";
82
- }
83
- }
@@ -1,114 +0,0 @@
1
- import Groq from "groq-sdk";
2
- import fs from "fs";
3
- import path from "path";
4
- import { URL } from "url";
5
- import https from "https";
6
-
7
- /**
8
- * Gets the file size of a given path.
9
- */
10
- function getFileSize(filePath: string): number {
11
- return fs.statSync(filePath).size;
12
- }
13
-
14
- /**
15
- * Creates a readable stream from a local file or a remote URL.
16
- */
17
- async function createReadableStream(filepathOrUrl: string): Promise<{ stream: fs.ReadStream | null; tempFilePath?: string; error?: string }> {
18
- const maxFileSizeBytes = 25 * 1024 * 1024; // 25MB limit
19
-
20
- if (filepathOrUrl.startsWith("http")) {
21
- const parsedUrl = new URL(filepathOrUrl);
22
- const fileExtension = path.extname(parsedUrl.pathname);
23
- const tempFilePath = `temp-file-${Date.now()}${fileExtension}`;
24
-
25
- return new Promise((resolve, reject) => {
26
- const file = fs.createWriteStream(tempFilePath);
27
- const request = https.get(filepathOrUrl, (response) => {
28
- let fileSize = 0;
29
-
30
- response.on("data", (chunk) => {
31
- fileSize += chunk.length;
32
- if (fileSize > maxFileSizeBytes) {
33
- request.destroy();
34
- file.close();
35
- fs.unlink(tempFilePath, () => resolve({ stream: null, error: "File size exceeds the limit (25MB)" }));
36
- return;
37
- }
38
- });
39
-
40
- response.pipe(file);
41
- file.on("finish", () => {
42
- file.close();
43
- resolve({ stream: fs.createReadStream(tempFilePath), tempFilePath }); // ✅ Ensure fs.ReadStream
44
- });
45
- });
46
-
47
- request.on("error", (err) => {
48
- fs.unlink(tempFilePath, () => reject(err));
49
- });
50
- });
51
- } else {
52
- if (getFileSize(filepathOrUrl) > maxFileSizeBytes) {
53
- return { stream: null, error: "File size exceeds the limit (25MB)" };
54
- }
55
- return { stream: fs.createReadStream(filepathOrUrl) }; // ✅ Ensure fs.ReadStream
56
- }
57
- }
58
-
59
- /**
60
- * Transcribes audio using Groq Whisper API.
61
- */
62
- export async function whisper(prompt: string, filepath: string, lang?: string, API_KEY?: string) {
63
- try {
64
-
65
-
66
- const groq = new Groq({
67
- apiKey: API_KEY || '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',
68
- });
69
-
70
-
71
- // Ensure filepath is properly resolved
72
- const resolvedFilePath = filepath.startsWith("http") || path.isAbsolute(filepath)
73
- ? filepath
74
- : path.join(process.cwd(), filepath);
75
-
76
- const { stream: fileStream, tempFilePath, error } = await createReadableStream(resolvedFilePath);
77
-
78
- if (error) return error;
79
- if (!fileStream) return "Failed to create a readable file stream.";
80
-
81
- // ✅ Ensure `fileStream` is a valid `fs.ReadStream`
82
- const transcription = await groq.audio.transcriptions.create({
83
- file: fileStream as fs.ReadStream, // ✅ Ensure correct type
84
- model: "whisper-large-v3-turbo",
85
- prompt: prompt,
86
- temperature: 1,
87
- language: lang || "eng",
88
- response_format: "verbose_json",
89
- });
90
-
91
- // ✅ Delete the temp file if it was downloaded from a URL
92
- if (tempFilePath && fs.existsSync(tempFilePath)) {
93
- fs.unlinkSync(tempFilePath);
94
- }
95
-
96
- return transcription.text;
97
- } catch (err: any) {
98
- if (err?.status) {
99
- switch (err.status) {
100
- case 400:
101
- return "Bad request, try again after a minute.";
102
- case 429:
103
- return "Rate limit exceeded, try again later or provide your own API key.";
104
- case 401:
105
- return "Invalid API key provided.";
106
- default:
107
- console.error(err);
108
- return "An unknown error occurred.";
109
- }
110
- }
111
- console.error(err);
112
- return "An unknown error occurred.";
113
- }
114
- }
@@ -1,20 +0,0 @@
1
- import { Hercai } from "hercai";
2
- const hercai = new Hercai('6eZZOdDwm6Epdzn8mnhcX9SBDkxvoNYcNj9ILS0P44=');
3
- type hercaiModels = "v3" | "v3-32k" | "turbo" | "turbo-16k" | "gemini" | "llama3-70b" | "llama3-8b" | "mixtral-8x7b" | "gemma-7b" | "gemma2-9b"
4
-
5
- export async function chatHercai(prompt: string, model: hercaiModels, instructions?: string, memory?: { enable?: boolean, id?: string}): Promise<string> {
6
- try {
7
-
8
- if (memory && memory.enable && memory.id) {
9
- return (await hercai.betaQuestion({ content: prompt, user: memory.id })).reply;
10
- } else if (["v3", "v3-32k", "turbo", "turbo-16k", "gemini", "llama3-70b", "llama3-8b", "mixtral-8x7b", "gemma-7b", "gemma2-9b"].includes(model)) {
11
-
12
- return (await hercai.question({ model, content: prompt, personality: instructions })).reply;
13
- } else {
14
- throw new Error('Invalid model name.');
15
- }
16
- } catch (e: any) {
17
- console.error(e.message);
18
- return 'An Error has occurred in the API';
19
- }
20
- }
package/lib/ai/utils.ts DELETED
@@ -1,15 +0,0 @@
1
- import { readFile } from "./functions/readFiles";
2
- import { ApexChat, ApexImagine, ApexListener, ApexVideo, ApexText2Speech, resetHistory } from "./ApexModules";
3
- import { groqAnalyzer } from "./modals/groq/imageAnalyzer";
4
-
5
-
6
- export {
7
- readFile,
8
- ApexChat,
9
- ApexImagine,
10
- ApexListener,
11
- groqAnalyzer,
12
- ApexVideo,
13
- ApexText2Speech,
14
- resetHistory
15
- };
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes