@drax/ai-back 3.40.0 → 3.42.0

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 (111) hide show
  1. package/dist/agents/DraxAgent.js +1 -1
  2. package/dist/config/DeepSeekConfig.js +9 -0
  3. package/dist/config/ElevenLabsTTSConfig.js +10 -0
  4. package/dist/controllers/AICrudController.js +1 -1
  5. package/dist/controllers/AIGenericController.js +1 -1
  6. package/dist/controllers/TTSGenericController.js +61 -0
  7. package/dist/factory/AiProviderFactory.js +4 -0
  8. package/dist/factory/DeepSeekProviderFactory.js +14 -0
  9. package/dist/factory/ElevenLabsTTSProviderFactory.js +13 -0
  10. package/dist/factory/TTSProviderFactory.js +27 -0
  11. package/dist/factory/ai/AiProviderFactory.js +30 -0
  12. package/dist/factory/ai/DeepSeekAiProviderFactory.js +14 -0
  13. package/dist/factory/ai/GoogleAiProviderFactory.js +14 -0
  14. package/dist/factory/ai/OllamaAiProviderFactory.js +14 -0
  15. package/dist/factory/ai/OpenAiProviderFactory.js +14 -0
  16. package/dist/factory/tts/ElevenLabsTTSProviderFactory.js +13 -0
  17. package/dist/factory/tts/TTSProviderFactory.js +27 -0
  18. package/dist/index.js +23 -11
  19. package/dist/interfaces/ITTSProvider.js +1 -0
  20. package/dist/permissions/TTSPermissions.js +6 -0
  21. package/dist/providers/DeepSeekProvider.js +34 -0
  22. package/dist/providers/ElevenLabsTTSProvider.js +108 -0
  23. package/dist/providers/ai/DeepSeekAiProvider.js +34 -0
  24. package/dist/providers/ai/GoogleAiProvider.js +367 -0
  25. package/dist/providers/ai/OllamaAiProvider.js +342 -0
  26. package/dist/providers/ai/OpenAiProvider.js +302 -0
  27. package/dist/providers/tts/ElevenLabsTTSProvider.js +108 -0
  28. package/dist/routes/TTSRoutes.js +8 -0
  29. package/dist/schemas/TTSRequestSchema.js +24 -0
  30. package/dist/services/TTSGenericService.js +21 -0
  31. package/package.json +2 -2
  32. package/src/agents/DraxAgent.ts +1 -1
  33. package/src/config/DeepSeekConfig.ts +14 -0
  34. package/src/config/ElevenLabsTTSConfig.ts +13 -0
  35. package/src/controllers/AICrudController.ts +1 -1
  36. package/src/controllers/AIGenericController.ts +1 -1
  37. package/src/controllers/TTSGenericController.ts +70 -0
  38. package/src/factory/{AiProviderFactory.ts → ai/AiProviderFactory.ts} +5 -1
  39. package/src/factory/ai/DeepSeekAiProviderFactory.ts +27 -0
  40. package/src/factory/{GoogleAiProviderFactory.ts → ai/GoogleAiProviderFactory.ts} +4 -4
  41. package/src/factory/{OllamaAiProviderFactory.ts → ai/OllamaAiProviderFactory.ts} +4 -4
  42. package/src/factory/{OpenAiProviderFactory.ts → ai/OpenAiProviderFactory.ts} +4 -4
  43. package/src/factory/tts/ElevenLabsTTSProviderFactory.ts +26 -0
  44. package/src/factory/tts/TTSProviderFactory.ts +42 -0
  45. package/src/index.ts +54 -7
  46. package/src/interfaces/ITTSProvider.ts +47 -0
  47. package/src/permissions/AIPermissions.ts +0 -1
  48. package/src/permissions/TTSPermissions.ts +8 -0
  49. package/src/providers/ai/DeepSeekAiProvider.ts +58 -0
  50. package/src/providers/{GoogleAiProvider.ts → ai/GoogleAiProvider.ts} +2 -2
  51. package/src/providers/{OllamaAiProvider.ts → ai/OllamaAiProvider.ts} +2 -2
  52. package/src/providers/{OpenAiProvider.ts → ai/OpenAiProvider.ts} +2 -2
  53. package/src/providers/tts/ElevenLabsTTSProvider.ts +132 -0
  54. package/src/routes/TTSRoutes.ts +13 -0
  55. package/src/schemas/TTSRequestSchema.ts +38 -0
  56. package/src/services/TTSGenericService.ts +41 -0
  57. package/test/DeepSeekProvider.test.ts +146 -0
  58. package/tsconfig.tsbuildinfo +1 -1
  59. package/types/config/DeepSeekConfig.d.ts +9 -0
  60. package/types/config/DeepSeekConfig.d.ts.map +1 -0
  61. package/types/config/ElevenLabsTTSConfig.d.ts +10 -0
  62. package/types/config/ElevenLabsTTSConfig.d.ts.map +1 -0
  63. package/types/controllers/TTSGenericController.d.ts +11 -0
  64. package/types/controllers/TTSGenericController.d.ts.map +1 -0
  65. package/types/factory/AiProviderFactory.d.ts.map +1 -1
  66. package/types/factory/DeepSeekProviderFactory.d.ts +8 -0
  67. package/types/factory/DeepSeekProviderFactory.d.ts.map +1 -0
  68. package/types/factory/ElevenLabsTTSProviderFactory.d.ts +8 -0
  69. package/types/factory/ElevenLabsTTSProviderFactory.d.ts.map +1 -0
  70. package/types/factory/TTSProviderFactory.d.ts +15 -0
  71. package/types/factory/TTSProviderFactory.d.ts.map +1 -0
  72. package/types/factory/ai/AiProviderFactory.d.ts +8 -0
  73. package/types/factory/ai/AiProviderFactory.d.ts.map +1 -0
  74. package/types/factory/ai/DeepSeekAiProviderFactory.d.ts +8 -0
  75. package/types/factory/ai/DeepSeekAiProviderFactory.d.ts.map +1 -0
  76. package/types/factory/ai/GoogleAiProviderFactory.d.ts +8 -0
  77. package/types/factory/ai/GoogleAiProviderFactory.d.ts.map +1 -0
  78. package/types/factory/ai/OllamaAiProviderFactory.d.ts +8 -0
  79. package/types/factory/ai/OllamaAiProviderFactory.d.ts.map +1 -0
  80. package/types/factory/ai/OpenAiProviderFactory.d.ts +8 -0
  81. package/types/factory/ai/OpenAiProviderFactory.d.ts.map +1 -0
  82. package/types/factory/tts/ElevenLabsTTSProviderFactory.d.ts +8 -0
  83. package/types/factory/tts/ElevenLabsTTSProviderFactory.d.ts.map +1 -0
  84. package/types/factory/tts/TTSProviderFactory.d.ts +15 -0
  85. package/types/factory/tts/TTSProviderFactory.d.ts.map +1 -0
  86. package/types/index.d.ts +28 -6
  87. package/types/index.d.ts.map +1 -1
  88. package/types/interfaces/ITTSProvider.d.ts +39 -0
  89. package/types/interfaces/ITTSProvider.d.ts.map +1 -0
  90. package/types/permissions/TTSPermissions.d.ts +6 -0
  91. package/types/permissions/TTSPermissions.d.ts.map +1 -0
  92. package/types/providers/DeepSeekProvider.d.ts +24 -0
  93. package/types/providers/DeepSeekProvider.d.ts.map +1 -0
  94. package/types/providers/ElevenLabsTTSProvider.d.ts +38 -0
  95. package/types/providers/ElevenLabsTTSProvider.d.ts.map +1 -0
  96. package/types/providers/ai/DeepSeekAiProvider.d.ts +24 -0
  97. package/types/providers/ai/DeepSeekAiProvider.d.ts.map +1 -0
  98. package/types/providers/ai/GoogleAiProvider.d.ts +63 -0
  99. package/types/providers/ai/GoogleAiProvider.d.ts.map +1 -0
  100. package/types/providers/ai/OllamaAiProvider.d.ts +78 -0
  101. package/types/providers/ai/OllamaAiProvider.d.ts.map +1 -0
  102. package/types/providers/ai/OpenAiProvider.d.ts +97 -0
  103. package/types/providers/ai/OpenAiProvider.d.ts.map +1 -0
  104. package/types/providers/tts/ElevenLabsTTSProvider.d.ts +38 -0
  105. package/types/providers/tts/ElevenLabsTTSProvider.d.ts.map +1 -0
  106. package/types/routes/TTSRoutes.d.ts +4 -0
  107. package/types/routes/TTSRoutes.d.ts.map +1 -0
  108. package/types/schemas/TTSRequestSchema.d.ts +37 -0
  109. package/types/schemas/TTSRequestSchema.d.ts.map +1 -0
  110. package/types/services/TTSGenericService.d.ts +17 -0
  111. package/types/services/TTSGenericService.d.ts.map +1 -0
@@ -0,0 +1,9 @@
1
+ declare enum DeepSeekConfig {
2
+ DeepSeekApiKey = "DEEPSEEK_API_KEY",
3
+ DeepSeekModel = "DEEPSEEK_MODEL",
4
+ DeepSeekBaseUrl = "DEEPSEEK_BASE_URL",
5
+ DeepSeekVisionModel = "DEEPSEEK_VISION_MODEL"
6
+ }
7
+ export default DeepSeekConfig;
8
+ export { DeepSeekConfig };
9
+ //# sourceMappingURL=DeepSeekConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepSeekConfig.d.ts","sourceRoot":"","sources":["../../src/config/DeepSeekConfig.ts"],"names":[],"mappings":"AACA,aAAK,cAAc;IAEf,cAAc,qBAAqB;IACnC,aAAa,mBAAmB;IAChC,eAAe,sBAAsB;IACrC,mBAAmB,0BAA0B;CAEhD;AAGD,eAAe,cAAc,CAAC;AAE9B,OAAO,EAAC,cAAc,EAAC,CAAA"}
@@ -0,0 +1,10 @@
1
+ declare enum ElevenLabsTTSConfig {
2
+ ElevenLabsApiKey = "ELEVENLABS_API_KEY",
3
+ ElevenLabsBaseUrl = "ELEVENLABS_BASE_URL",
4
+ ElevenLabsModel = "ELEVENLABS_MODEL",
5
+ ElevenLabsVoiceId = "ELEVENLABS_VOICE_ID",
6
+ ElevenLabsOutputFormat = "ELEVENLABS_OUTPUT_FORMAT"
7
+ }
8
+ export default ElevenLabsTTSConfig;
9
+ export { ElevenLabsTTSConfig };
10
+ //# sourceMappingURL=ElevenLabsTTSConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElevenLabsTTSConfig.d.ts","sourceRoot":"","sources":["../../src/config/ElevenLabsTTSConfig.ts"],"names":[],"mappings":"AAAA,aAAK,mBAAmB;IAEpB,gBAAgB,uBAAuB;IACvC,iBAAiB,wBAAwB;IACzC,eAAe,qBAAqB;IACpC,iBAAiB,wBAAwB;IACzC,sBAAsB,6BAA6B;CAEtD;AAED,eAAe,mBAAmB,CAAC;AAEnC,OAAO,EAAC,mBAAmB,EAAC,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { CommonController } from "@drax/common-back";
2
+ import TTSGenericService from "../services/TTSGenericService.js";
3
+ declare class TTSGenericController extends CommonController {
4
+ protected service: TTSGenericService;
5
+ constructor(service?: TTSGenericService);
6
+ availableProviders(request: any, reply: any): Promise<any>;
7
+ textToSpeech(request: any, reply: any): Promise<any>;
8
+ }
9
+ export default TTSGenericController;
10
+ export { TTSGenericController };
11
+ //# sourceMappingURL=TTSGenericController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSGenericController.d.ts","sourceRoot":"","sources":["../../src/controllers/TTSGenericController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAGnD,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,cAAM,oBAAqB,SAAQ,gBAAgB;IAC/C,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAA;gBAExB,OAAO,GAAE,iBAA2C;IAK1D,kBAAkB,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;IAYjC,YAAY,CAAC,OAAO,KAAA,EAAE,KAAK,KAAA;CAyCpC;AAED,eAAe,oBAAoB,CAAC;AACpC,OAAO,EAAC,oBAAoB,EAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AiProviderFactory.d.ts","sourceRoot":"","sources":["../../src/factory/AiProviderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAA;AAK1D,cAAM,iBAAiB;IACnB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAmC;WAE9C,QAAQ,CAAC,QAAQ,GAAE,MAAiB,GAAG,WAAW;CAkBnE;AAED,eAAe,iBAAiB,CAAA;AAChC,OAAO,EACH,iBAAiB,EACpB,CAAA"}
1
+ {"version":3,"file":"AiProviderFactory.d.ts","sourceRoot":"","sources":["../../src/factory/AiProviderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAA;AAM1D,cAAM,iBAAiB;IACnB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAmC;WAE9C,QAAQ,CAAC,QAAQ,GAAE,MAAiB,GAAG,WAAW;CAqBnE;AAED,eAAe,iBAAiB,CAAA;AAChC,OAAO,EACH,iBAAiB,EACpB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../interfaces/IAIProvider";
2
+ declare class DeepSeekProviderFactory {
3
+ private static singleton;
4
+ static instance(): IAIProvider;
5
+ }
6
+ export default DeepSeekProviderFactory;
7
+ export { DeepSeekProviderFactory };
8
+ //# sourceMappingURL=DeepSeekProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepSeekProviderFactory.d.ts","sourceRoot":"","sources":["../../src/factory/DeepSeekProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAA;AAI1D,cAAM,uBAAuB;IACzB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;WAExB,QAAQ,IAAI,WAAW;CAYxC;AAED,eAAe,uBAAuB,CAAA;AACtC,OAAO,EACH,uBAAuB,EAC1B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { ITTSProvider } from "../interfaces/ITTSProvider.js";
2
+ declare class ElevenLabsTTSProviderFactory {
3
+ private static singleton;
4
+ static instance(): ITTSProvider;
5
+ }
6
+ export default ElevenLabsTTSProviderFactory;
7
+ export { ElevenLabsTTSProviderFactory };
8
+ //# sourceMappingURL=ElevenLabsTTSProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElevenLabsTTSProviderFactory.d.ts","sourceRoot":"","sources":["../../src/factory/ElevenLabsTTSProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAGhE,cAAM,4BAA4B;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAe;WAEzB,QAAQ,IAAI,YAAY;CAYzC;AAED,eAAe,4BAA4B,CAAA;AAC3C,OAAO,EACH,4BAA4B,EAC/B,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { ITTSProvider } from "../interfaces/ITTSProvider.js";
2
+ type TTSProviderInfo = {
3
+ name: string;
4
+ label: string;
5
+ };
6
+ declare class TTSProviderFactory {
7
+ private static singletons;
8
+ private static providers;
9
+ static availableProviders(): TTSProviderInfo[];
10
+ static instance(provider?: string): ITTSProvider;
11
+ }
12
+ export default TTSProviderFactory;
13
+ export { TTSProviderFactory };
14
+ export type { TTSProviderInfo, };
15
+ //# sourceMappingURL=TTSProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSProviderFactory.d.ts","sourceRoot":"","sources":["../../src/factory/TTSProviderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAGhE,KAAK,eAAe,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB,CAAA;AAED,cAAM,kBAAkB;IACpB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAoC;IAC7D,OAAO,CAAC,MAAM,CAAC,SAAS,CAKtB;WAEY,kBAAkB,IAAI,eAAe,EAAE;WAIvC,QAAQ,CAAC,QAAQ,GAAE,MAAqB,GAAG,YAAY;CAYxE;AAED,eAAe,kBAAkB,CAAA;AACjC,OAAO,EACH,kBAAkB,EACrB,CAAA;AACD,YAAY,EACR,eAAe,GAClB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../../interfaces/IAIProvider.js";
2
+ declare class AiProviderFactory {
3
+ private static singletons;
4
+ static instance(provider?: string): IAIProvider;
5
+ }
6
+ export default AiProviderFactory;
7
+ export { AiProviderFactory };
8
+ //# sourceMappingURL=AiProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/ai/AiProviderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAA;AAMhE,cAAM,iBAAiB;IACnB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAmC;WAE9C,QAAQ,CAAC,QAAQ,GAAE,MAAiB,GAAG,WAAW;CAqBnE;AAED,eAAe,iBAAiB,CAAA;AAChC,OAAO,EACH,iBAAiB,EACpB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../../interfaces/IAIProvider.js";
2
+ declare class DeepSeekAiProviderFactory {
3
+ private static singleton;
4
+ static instance(): IAIProvider;
5
+ }
6
+ export default DeepSeekAiProviderFactory;
7
+ export { DeepSeekAiProviderFactory };
8
+ //# sourceMappingURL=DeepSeekAiProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepSeekAiProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/ai/DeepSeekAiProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAA;AAIhE,cAAM,yBAAyB;IAC3B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;WAExB,QAAQ,IAAI,WAAW;CAYxC;AAED,eAAe,yBAAyB,CAAA;AACxC,OAAO,EACH,yBAAyB,EAC5B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../../interfaces/IAIProvider.js";
2
+ declare class GoogleAiProviderFactory {
3
+ private static singleton;
4
+ static instance(): IAIProvider;
5
+ }
6
+ export default GoogleAiProviderFactory;
7
+ export { GoogleAiProviderFactory };
8
+ //# sourceMappingURL=GoogleAiProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoogleAiProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/ai/GoogleAiProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAA;AAIhE,cAAM,uBAAuB;IACzB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;WAExB,QAAQ,IAAI,WAAW;CAWxC;AAED,eAAe,uBAAuB,CAAA;AACtC,OAAO,EACH,uBAAuB,EAC1B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../../interfaces/IAIProvider.js";
2
+ declare class OllamaAiProviderFactory {
3
+ private static singleton;
4
+ static instance(): IAIProvider;
5
+ }
6
+ export default OllamaAiProviderFactory;
7
+ export { OllamaAiProviderFactory };
8
+ //# sourceMappingURL=OllamaAiProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OllamaAiProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/ai/OllamaAiProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAA;AAIhE,cAAM,uBAAuB;IACzB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;WAExB,QAAQ,IAAI,WAAW;CAYxC;AAED,eAAe,uBAAuB,CAAA;AACtC,OAAO,EACH,uBAAuB,EAC1B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IAIProvider } from "../../interfaces/IAIProvider.js";
2
+ declare class OpenAiProviderFactory {
3
+ private static singleton;
4
+ static instance(): IAIProvider;
5
+ }
6
+ export default OpenAiProviderFactory;
7
+ export { OpenAiProviderFactory };
8
+ //# sourceMappingURL=OpenAiProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenAiProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/ai/OpenAiProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,iCAAiC,CAAA;AAIhE,cAAM,qBAAqB;IACvB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAc;WAExB,QAAQ,IAAI,WAAW;CAWxC;AAED,eAAe,qBAAqB,CAAA;AACpC,OAAO,EACH,qBAAqB,EACxB,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { ITTSProvider } from "../../interfaces/ITTSProvider.js";
2
+ declare class ElevenLabsTTSProviderFactory {
3
+ private static singleton;
4
+ static instance(): ITTSProvider;
5
+ }
6
+ export default ElevenLabsTTSProviderFactory;
7
+ export { ElevenLabsTTSProviderFactory };
8
+ //# sourceMappingURL=ElevenLabsTTSProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElevenLabsTTSProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/tts/ElevenLabsTTSProviderFactory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAGnE,cAAM,4BAA4B;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAe;WAEzB,QAAQ,IAAI,YAAY;CAYzC;AAED,eAAe,4BAA4B,CAAA;AAC3C,OAAO,EACH,4BAA4B,EAC/B,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { ITTSProvider } from "../../interfaces/ITTSProvider.js";
2
+ type TTSProviderInfo = {
3
+ name: string;
4
+ label: string;
5
+ };
6
+ declare class TTSProviderFactory {
7
+ private static singletons;
8
+ private static providers;
9
+ static availableProviders(): TTSProviderInfo[];
10
+ static instance(provider?: string): ITTSProvider;
11
+ }
12
+ export default TTSProviderFactory;
13
+ export { TTSProviderFactory };
14
+ export type { TTSProviderInfo, };
15
+ //# sourceMappingURL=TTSProviderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSProviderFactory.d.ts","sourceRoot":"","sources":["../../../src/factory/tts/TTSProviderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAGnE,KAAK,eAAe,GAAG;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB,CAAA;AAED,cAAM,kBAAkB;IACpB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAoC;IAC7D,OAAO,CAAC,MAAM,CAAC,SAAS,CAKtB;WAEY,kBAAkB,IAAI,eAAe,EAAE;WAIvC,QAAQ,CAAC,QAAQ,GAAE,MAAqB,GAAG,YAAY;CAYxE;AAED,eAAe,kBAAkB,CAAA;AACjC,OAAO,EACH,kBAAkB,EACrB,CAAA;AACD,YAAY,EACR,eAAe,GAClB,CAAA"}
package/types/index.d.ts CHANGED
@@ -1,36 +1,58 @@
1
1
  import { OpenAiConfig } from "./config/OpenAiConfig.js";
2
+ import { GoogleAiConfig } from "./config/GoogleAiConfig.js";
3
+ import { OllamaAiConfig } from "./config/OllamaAiConfig.js";
4
+ import { DeepSeekConfig } from "./config/DeepSeekConfig.js";
5
+ import { ElevenLabsTTSConfig } from "./config/ElevenLabsTTSConfig.js";
2
6
  import { AILogSchema, AILogBaseSchema } from "./schemas/AILogSchema.js";
7
+ import { TTSRequestSchema, TTSVoiceSettingsSchema } from "./schemas/TTSRequestSchema.js";
3
8
  import AILogModel from "./models/AILogModel.js";
4
9
  import AILogMongoRepository from "./repository/mongo/AILogMongoRepository.js";
5
10
  import AILogSqliteRepository from "./repository/sqlite/AILogSqliteRepository.js";
6
- import { OpenAiProviderFactory } from "./factory/OpenAiProviderFactory.js";
7
- import { AiProviderFactory } from "./factory/AiProviderFactory.js";
11
+ import { OpenAiProviderFactory } from "./factory/ai/OpenAiProviderFactory.js";
12
+ import { GoogleAiProviderFactory } from "./factory/ai/GoogleAiProviderFactory.js";
13
+ import { OllamaAiProviderFactory } from "./factory/ai/OllamaAiProviderFactory.js";
14
+ import { DeepSeekAiProviderFactory } from "./factory/ai/DeepSeekAiProviderFactory.js";
15
+ import { AiProviderFactory } from "./factory/ai/AiProviderFactory.js";
16
+ import { ElevenLabsTTSProviderFactory } from "./factory/tts/ElevenLabsTTSProviderFactory.js";
17
+ import { TTSProviderFactory } from "./factory/tts/TTSProviderFactory.js";
18
+ import type { TTSProviderInfo } from "./factory/tts/TTSProviderFactory.js";
8
19
  import { DraxAgentFactory } from "./factory/DraxAgentFactory.js";
9
20
  import AILogServiceFactory from "./factory/services/AILogServiceFactory.js";
10
- import { OpenAiProvider } from "./providers/OpenAiProvider.js";
21
+ import { OpenAiProvider } from "./providers/ai/OpenAiProvider.js";
22
+ import { GoogleAiProvider } from "./providers/ai/GoogleAiProvider.js";
23
+ import { OllamaAiProvider } from "./providers/ai/OllamaAiProvider.js";
24
+ import { DeepSeekAiProvider } from "./providers/ai/DeepSeekAiProvider.js";
25
+ import { ElevenLabsTTSProvider } from "./providers/tts/ElevenLabsTTSProvider.js";
11
26
  import { BuilderTool } from "./tools/BuilderTool.js";
12
27
  import { KnowledgeService } from "./services/KnowledgeService.js";
13
28
  import { AILogService } from "./services/AILogService.js";
29
+ import { TTSGenericService } from "./services/TTSGenericService.js";
14
30
  import AILogPermissions from "./permissions/AILogPermissions.js";
15
31
  import AgentPermissions from "./permissions/AgentPermissions.js";
16
32
  import AgentSessionPermissions from "./permissions/AgentSessionPermissions.js";
17
33
  import AIPermissions from "./permissions/AIPermissions.js";
34
+ import TTSPermissions from "./permissions/TTSPermissions.js";
18
35
  import AILogController from "./controllers/AILogController.js";
19
36
  import AICrudController from "./controllers/AICrudController.js";
20
37
  import AIGenericController from "./controllers/AIGenericController.js";
38
+ import TTSGenericController from "./controllers/TTSGenericController.js";
21
39
  import DraxAgentController from "./controllers/DraxAgentController.js";
22
40
  import AgentSessionController from "./controllers/AgentSessionController.js";
23
41
  import AILogRoutes from "./routes/AILogRoutes.js";
24
42
  import AIRoutes from "./routes/AIRoutes.js";
43
+ import TTSRoutes from "./routes/TTSRoutes.js";
25
44
  import DraxAgentRoutes from "./routes/DraxAgentRoutes.js";
26
45
  import AgentSessionRoutes from "./routes/AgentSessionRoutes.js";
27
46
  import { DraxAgent } from "./agents/DraxAgent.js";
28
47
  import type { IAILogRepository } from "./interfaces/IAILogRepository.js";
29
48
  import type { IAIProvider, IPromptContentPart, IPromptContentPartImage, IPromptContentPartText, IPromptImage, IPromptImageDetail, IPromptMessage, IPromptMemory, IPromptParams, IPromptResponse, IPromptTool } from "./interfaces/IAIProvider.js";
49
+ import type { ITTSParams, ITTSProvider, ITTSResponse, ITTSVoiceSettings } from "./interfaces/ITTSProvider.js";
50
+ import type { TTSRequest, TTSVoiceSettings } from "./schemas/TTSRequestSchema.js";
51
+ import type { TTSRequestContext } from "./services/TTSGenericService.js";
30
52
  import type { ToolBuilderMethod, ToolBuilderOptions, ToolBuilderService } from "./interfaces/IBuilderTool.js";
31
53
  import type { DraxAgentControllerOptions } from "./interfaces/IDraxAgentController.js";
32
54
  import type { DraxAgentFastifyRoutesOptions } from "./interfaces/IDraxAgentRoutes.js";
33
55
  import type { DraxAgentConfig, DraxAgentMessageInput, DraxAgentMessageOutput, DraxAgentPromptContext, DraxAgentSession, DraxAgentSessionInput, DraxAgentToolBuilder, DraxAgentToolBuilderSource, DraxAgentToolSource, DraxAgentSystemPrompt } from "./interfaces/IDraxAgent.js";
34
- export type { IAILogRepository, IAIProvider, IPromptParams, IPromptMessage, IPromptMemory, IPromptTool, IPromptImage, IPromptImageDetail, IPromptContentPart, IPromptContentPartImage, IPromptContentPartText, IPromptResponse, ToolBuilderMethod, ToolBuilderOptions, ToolBuilderService, DraxAgentControllerOptions, DraxAgentFastifyRoutesOptions, DraxAgentConfig, DraxAgentMessageInput, DraxAgentMessageOutput, DraxAgentPromptContext, DraxAgentSession, DraxAgentSessionInput, DraxAgentToolBuilder, DraxAgentToolBuilderSource, DraxAgentToolSource, DraxAgentSystemPrompt, };
35
- export { OpenAiConfig, AILogSchema, AILogBaseSchema, AILogModel, AILogMongoRepository, AILogSqliteRepository, OpenAiProviderFactory, AiProviderFactory, DraxAgentFactory, AILogServiceFactory, OpenAiProvider, BuilderTool, KnowledgeService, AILogService, AILogPermissions, AgentPermissions, AIPermissions, AgentSessionPermissions, AILogController, AICrudController, AIGenericController, DraxAgentController, AgentSessionController, DraxAgent, AILogRoutes, AIRoutes, DraxAgentRoutes, AgentSessionRoutes };
36
- //# sourceMappingURL=index.d.ts.map
56
+ export type { IAILogRepository, IAIProvider, IPromptParams, IPromptMessage, IPromptMemory, IPromptTool, IPromptImage, IPromptImageDetail, IPromptContentPart, IPromptContentPartImage, IPromptContentPartText, IPromptResponse, ITTSProvider, ITTSParams, ITTSResponse, ITTSVoiceSettings, TTSRequest, TTSVoiceSettings, TTSRequestContext, TTSProviderInfo, ToolBuilderMethod, ToolBuilderOptions, ToolBuilderService, DraxAgentControllerOptions, DraxAgentFastifyRoutesOptions, DraxAgentConfig, DraxAgentMessageInput, DraxAgentMessageOutput, DraxAgentPromptContext, DraxAgentSession, DraxAgentSessionInput, DraxAgentToolBuilder, DraxAgentToolBuilderSource, DraxAgentToolSource, DraxAgentSystemPrompt, };
57
+ export { OpenAiConfig, GoogleAiConfig, OllamaAiConfig, DeepSeekConfig, ElevenLabsTTSConfig, AILogSchema, AILogBaseSchema, TTSRequestSchema, TTSVoiceSettingsSchema, AILogModel, AILogMongoRepository, AILogSqliteRepository, OpenAiProviderFactory, GoogleAiProviderFactory, OllamaAiProviderFactory, DeepSeekAiProviderFactory, AiProviderFactory, ElevenLabsTTSProviderFactory, TTSProviderFactory, DraxAgentFactory, AILogServiceFactory, OpenAiProvider, GoogleAiProvider, OllamaAiProvider, DeepSeekAiProvider, ElevenLabsTTSProvider, BuilderTool, KnowledgeService, AILogService, TTSGenericService, AILogPermissions, AgentPermissions, AIPermissions, TTSPermissions, AgentSessionPermissions, AILogController, AICrudController, AIGenericController, TTSGenericController, DraxAgentController, AgentSessionController, DraxAgent, AILogRoutes, AIRoutes, TTSRoutes, DraxAgentRoutes, AgentSessionRoutes };
58
+ //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ interface ITTSVoiceSettings {
2
+ stability?: number;
3
+ similarityBoost?: number;
4
+ style?: number;
5
+ useSpeakerBoost?: boolean;
6
+ speed?: number;
7
+ }
8
+ interface ITTSParams {
9
+ text: string;
10
+ voiceId?: string;
11
+ model?: string;
12
+ outputFormat?: string;
13
+ voiceSettings?: ITTSVoiceSettings;
14
+ previousText?: string;
15
+ nextText?: string;
16
+ languageCode?: string;
17
+ seed?: number;
18
+ operationTitle?: string;
19
+ operationGroup?: string;
20
+ ip?: string;
21
+ userAgent?: string;
22
+ tenant?: string | null;
23
+ user?: string | null;
24
+ }
25
+ interface ITTSResponse {
26
+ audio: Buffer;
27
+ contentType: string;
28
+ size: number;
29
+ time: number;
30
+ provider: string;
31
+ model: string;
32
+ voiceId: string;
33
+ outputFormat?: string;
34
+ }
35
+ interface ITTSProvider {
36
+ textToSpeech(input: ITTSParams): Promise<ITTSResponse>;
37
+ }
38
+ export type { ITTSProvider, ITTSParams, ITTSResponse, ITTSVoiceSettings, };
39
+ //# sourceMappingURL=ITTSProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITTSProvider.d.ts","sourceRoot":"","sources":["../../src/interfaces/ITTSProvider.ts"],"names":[],"mappings":"AAAA,UAAU,iBAAiB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,UAAU,YAAY;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,UAAU,YAAY;IAClB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;CACzD;AAED,YAAY,EACR,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,iBAAiB,GACpB,CAAA"}
@@ -0,0 +1,6 @@
1
+ declare enum TTSPermissions {
2
+ TextToSpeech = "tts:textToSpeech"
3
+ }
4
+ export { TTSPermissions };
5
+ export default TTSPermissions;
6
+ //# sourceMappingURL=TTSPermissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSPermissions.d.ts","sourceRoot":"","sources":["../../src/permissions/TTSPermissions.ts"],"names":[],"mappings":"AAAA,aAAK,cAAc;IAEf,YAAY,qBAAqB;CAEpC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,eAAe,cAAc,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { IAILogBase } from "@drax/ai-share";
2
+ import type { IPromptParams } from "../interfaces/IAIProvider.js";
3
+ import type { AILogService } from "../services/AILogService.js";
4
+ import OpenAiProvider from "./OpenAiProvider.js";
5
+ declare class DeepSeekProvider extends OpenAiProvider {
6
+ protected _baseUrl: string;
7
+ constructor(apiKey: string, model: string, baseUrl?: string, visionModel?: string, aiLogService?: AILogService);
8
+ get client(): any;
9
+ protected buildLogPayload(input: IPromptParams, params: {
10
+ model: string;
11
+ systemPrompt: string;
12
+ startedAt: Date;
13
+ endedAt?: Date;
14
+ inputTokens?: number;
15
+ outputTokens?: number;
16
+ tokens?: number;
17
+ output?: unknown;
18
+ success: boolean;
19
+ errorMessage?: string;
20
+ }): IAILogBase;
21
+ }
22
+ export default DeepSeekProvider;
23
+ export { DeepSeekProvider };
24
+ //# sourceMappingURL=DeepSeekProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepSeekProvider.d.ts","sourceRoot":"","sources":["../../src/providers/DeepSeekProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AAC9D,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,cAAM,gBAAiB,SAAQ,cAAc;IACzC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;gBAEd,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAmC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAiB1I,IAAI,MAAM,QAST;IAED,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE;QACpD,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,IAAI,CAAC;QAChB,OAAO,CAAC,EAAE,IAAI,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,UAAU;CAMjB;AAED,eAAe,gBAAgB,CAAA;AAC/B,OAAO,EAAC,gBAAgB,EAAC,CAAA"}
@@ -0,0 +1,38 @@
1
+ import type { ITTSParams, ITTSProvider, ITTSResponse } from "../interfaces/ITTSProvider.js";
2
+ declare class ElevenLabsTTSProvider implements ITTSProvider {
3
+ protected _apiKey: string;
4
+ protected _baseUrl: string;
5
+ protected _model: string;
6
+ protected _voiceId: string;
7
+ protected _outputFormat?: string;
8
+ constructor(apiKey: string, model: string, voiceId: string, baseUrl?: string, outputFormat?: string);
9
+ get model(): string;
10
+ get voiceId(): string;
11
+ protected mapContentType(outputFormat?: string): "audio/mpeg" | "audio/ogg" | "audio/wav" | "audio/basic" | "application/octet-stream";
12
+ protected mapVoiceSettings(voiceSettings: ITTSParams["voiceSettings"]): {
13
+ stability: number;
14
+ similarity_boost: number;
15
+ style: number;
16
+ use_speaker_boost: boolean;
17
+ speed: number;
18
+ };
19
+ protected buildBody(input: ITTSParams, model: string): {
20
+ seed?: number;
21
+ language_code?: string;
22
+ next_text?: string;
23
+ previous_text?: string;
24
+ voice_settings?: {
25
+ stability: number;
26
+ similarity_boost: number;
27
+ style: number;
28
+ use_speaker_boost: boolean;
29
+ speed: number;
30
+ };
31
+ text: string;
32
+ model_id: string;
33
+ };
34
+ textToSpeech(input: ITTSParams): Promise<ITTSResponse>;
35
+ }
36
+ export default ElevenLabsTTSProvider;
37
+ export { ElevenLabsTTSProvider };
38
+ //# sourceMappingURL=ElevenLabsTTSProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElevenLabsTTSProvider.d.ts","sourceRoot":"","sources":["../../src/providers/ElevenLabsTTSProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAE1F,cAAM,qBAAsB,YAAW,YAAY;IAC/C,SAAS,CAAC,OAAO,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;gBAEpB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAoC,EAAE,YAAY,CAAC,EAAE,MAAM;IAkBhI,IAAI,KAAK,WAKR;IAED,IAAI,OAAO,WAKV;IAED,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM;IAqB9C,SAAS,CAAC,gBAAgB,CAAC,aAAa,EAAE,UAAU,CAAC,eAAe,CAAC;;;;;;;IAcrE,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM;;;;;;;;;;;;;;;IAY9C,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC;CAwC/D;AAED,eAAe,qBAAqB,CAAC;AACrC,OAAO,EAAC,qBAAqB,EAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import type { IAILogBase } from "@drax/ai-share";
2
+ import type { IPromptParams } from "../../interfaces/IAIProvider.js";
3
+ import type { AILogService } from "../../services/AILogService.js";
4
+ import OpenAiProvider from "./OpenAiProvider.js";
5
+ declare class DeepSeekAiProvider extends OpenAiProvider {
6
+ protected _baseUrl: string;
7
+ constructor(apiKey: string, model: string, baseUrl?: string, visionModel?: string, aiLogService?: AILogService);
8
+ get client(): any;
9
+ protected buildLogPayload(input: IPromptParams, params: {
10
+ model: string;
11
+ systemPrompt: string;
12
+ startedAt: Date;
13
+ endedAt?: Date;
14
+ inputTokens?: number;
15
+ outputTokens?: number;
16
+ tokens?: number;
17
+ output?: unknown;
18
+ success: boolean;
19
+ errorMessage?: string;
20
+ }): IAILogBase;
21
+ }
22
+ export default DeepSeekAiProvider;
23
+ export { DeepSeekAiProvider };
24
+ //# sourceMappingURL=DeepSeekAiProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepSeekAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/DeepSeekAiProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,iCAAiC,CAAC;AACnE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,cAAc,MAAM,qBAAqB,CAAC;AAEjD,cAAM,kBAAmB,SAAQ,cAAc;IAC3C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;gBAEd,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,MAAmC,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,YAAY;IAiB1I,IAAI,MAAM,QAST;IAED,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE;QACpD,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,IAAI,CAAC;QAChB,OAAO,CAAC,EAAE,IAAI,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,UAAU;CAMjB;AAED,eAAe,kBAAkB,CAAA;AACjC,OAAO,EAAC,kBAAkB,EAAC,CAAA"}
@@ -0,0 +1,63 @@
1
+ import { GoogleGenAI } from "@google/genai";
2
+ import type { Content, FunctionCall, FunctionDeclaration, GenerateContentConfig, Part } from "@google/genai";
3
+ import type { IAIProvider, IPromptContentPart, IPromptMessage, IPromptParams, IPromptResponse, IPromptTool } from "../../interfaces/IAIProvider.js";
4
+ import type { AILogService } from "../../services/AILogService.js";
5
+ import type { IAILogBase } from "@drax/ai-share";
6
+ declare class GoogleAiProvider implements IAIProvider {
7
+ protected _apiKey: string;
8
+ protected _model: any;
9
+ protected _visionModel?: string;
10
+ protected _client: GoogleGenAI | undefined;
11
+ protected _aiLogService?: AILogService;
12
+ constructor(apiKey: string, model: string, visionModel?: string, aiLogService?: AILogService);
13
+ get model(): any;
14
+ get client(): GoogleGenAI;
15
+ protected get visionModel(): string;
16
+ protected buildUserContent(input: IPromptParams): Part[];
17
+ protected mapContentParts(content: IPromptContentPart[]): Part[];
18
+ protected mapImageUrl(url: string): Part;
19
+ protected inferImageMimeType(url: string): "image/png" | "image/webp" | "image/gif" | "image/bmp" | "image/heic" | "image/heif" | "image/jpeg";
20
+ protected mapHistory(history?: IPromptMessage[]): Content[];
21
+ protected hasImageInput(input: IPromptParams): boolean;
22
+ protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
23
+ protected serializePromptOutput(output: unknown): string;
24
+ protected buildLogPayload(input: IPromptParams, params: {
25
+ model: string;
26
+ systemPrompt: string;
27
+ startedAt: Date;
28
+ endedAt?: Date;
29
+ inputTokens?: number;
30
+ outputTokens?: number;
31
+ tokens?: number;
32
+ output?: unknown;
33
+ success: boolean;
34
+ errorMessage?: string;
35
+ }): IAILogBase;
36
+ protected registerPromptLog(input: IPromptParams, params: {
37
+ model: string;
38
+ systemPrompt: string;
39
+ startedAt: Date;
40
+ endedAt?: Date;
41
+ inputTokens?: number;
42
+ outputTokens?: number;
43
+ tokens?: number;
44
+ output?: unknown;
45
+ success: boolean;
46
+ errorMessage?: string;
47
+ }): Promise<void>;
48
+ generateEmbedding({ text, model }: {
49
+ text: string;
50
+ model?: string;
51
+ }): Promise<number[]>;
52
+ protected mapTools(tools?: IPromptTool[]): Array<{
53
+ functionDeclarations: FunctionDeclaration[];
54
+ }>;
55
+ protected buildResponseConfig(input: IPromptParams, systemPrompt: string): GenerateContentConfig;
56
+ protected normalizeResponseJsonSchema(input: IPromptParams): any;
57
+ protected buildToolResponseParts(functionCalls?: FunctionCall[], tools?: IPromptTool[]): Promise<Part[]>;
58
+ protected buildModelFunctionCallContent(functionCalls?: FunctionCall[]): Content;
59
+ prompt(input: IPromptParams): Promise<IPromptResponse>;
60
+ }
61
+ export default GoogleAiProvider;
62
+ export { GoogleAiProvider };
63
+ //# sourceMappingURL=GoogleAiProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoogleAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/GoogleAiProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import type { IAIProvider, IPromptContentPart, IPromptMessage, IPromptParams, IPromptResponse, IPromptTool } from "../../interfaces/IAIProvider.js";
2
+ import type { AILogService } from "../../services/AILogService.js";
3
+ import type { IAILogBase } from "@drax/ai-share";
4
+ type OllamaMessage = {
5
+ role: "system" | "user" | "assistant" | "tool";
6
+ content: string;
7
+ images?: string[];
8
+ name?: string;
9
+ };
10
+ type OllamaToolCall = {
11
+ function?: {
12
+ name?: string;
13
+ arguments?: string | object;
14
+ };
15
+ };
16
+ declare class OllamaAiProvider implements IAIProvider {
17
+ protected _baseUrl: string;
18
+ protected _model: string;
19
+ protected _visionModel?: string;
20
+ protected _embeddingModel?: string;
21
+ protected _aiLogService?: AILogService;
22
+ constructor(baseUrl: string, model: string, visionModel?: string, embeddingModel?: string, aiLogService?: AILogService);
23
+ get model(): string;
24
+ protected get visionModel(): string;
25
+ protected get embeddingModel(): string;
26
+ protected post<T>(path: string, body: object): Promise<T>;
27
+ protected buildUserMessage(input: IPromptParams): Promise<OllamaMessage>;
28
+ protected mapContentPartsToMessage(content: IPromptContentPart[], role?: "user" | "assistant" | "system"): Promise<OllamaMessage>;
29
+ protected imageUrlToBase64(url: string): Promise<string>;
30
+ protected mapHistory(history?: IPromptMessage[]): Promise<OllamaMessage[]>;
31
+ protected hasImageInput(input: IPromptParams): boolean;
32
+ protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
33
+ protected serializePromptOutput(output: unknown): string;
34
+ protected buildLogPayload(input: IPromptParams, params: {
35
+ model: string;
36
+ systemPrompt: string;
37
+ startedAt: Date;
38
+ endedAt?: Date;
39
+ inputTokens?: number;
40
+ outputTokens?: number;
41
+ tokens?: number;
42
+ output?: unknown;
43
+ success: boolean;
44
+ errorMessage?: string;
45
+ }): IAILogBase;
46
+ protected registerPromptLog(input: IPromptParams, params: {
47
+ model: string;
48
+ systemPrompt: string;
49
+ startedAt: Date;
50
+ endedAt?: Date;
51
+ inputTokens?: number;
52
+ outputTokens?: number;
53
+ tokens?: number;
54
+ output?: unknown;
55
+ success: boolean;
56
+ errorMessage?: string;
57
+ }): Promise<void>;
58
+ generateEmbedding({ text, model }: {
59
+ text: string;
60
+ model?: string;
61
+ }): Promise<number[]>;
62
+ protected mapTools(tools?: IPromptTool[]): {
63
+ type: string;
64
+ function: {
65
+ name: string;
66
+ description: string;
67
+ parameters: object;
68
+ };
69
+ }[];
70
+ protected normalizeResponseFormat(input: IPromptParams): any;
71
+ protected parseToolArguments(args: string | object | undefined): any;
72
+ protected serializeToolOutput(output: unknown): string;
73
+ protected buildToolMessages(toolCalls?: OllamaToolCall[], tools?: IPromptTool[]): Promise<OllamaMessage[]>;
74
+ prompt(input: IPromptParams): Promise<IPromptResponse>;
75
+ }
76
+ export default OllamaAiProvider;
77
+ export { OllamaAiProvider };
78
+ //# sourceMappingURL=OllamaAiProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OllamaAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OllamaAiProvider.ts"],"names":[],"mappings":"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"}