@drax/ai-back 3.41.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 (100) hide show
  1. package/dist/agents/DraxAgent.js +1 -1
  2. package/dist/config/ElevenLabsTTSConfig.js +10 -0
  3. package/dist/controllers/AICrudController.js +1 -1
  4. package/dist/controllers/AIGenericController.js +1 -1
  5. package/dist/controllers/TTSGenericController.js +61 -0
  6. package/dist/factory/ElevenLabsTTSProviderFactory.js +13 -0
  7. package/dist/factory/TTSProviderFactory.js +27 -0
  8. package/dist/factory/ai/AiProviderFactory.js +30 -0
  9. package/dist/factory/ai/DeepSeekAiProviderFactory.js +14 -0
  10. package/dist/factory/ai/GoogleAiProviderFactory.js +14 -0
  11. package/dist/factory/ai/OllamaAiProviderFactory.js +14 -0
  12. package/dist/factory/ai/OpenAiProviderFactory.js +14 -0
  13. package/dist/factory/tts/ElevenLabsTTSProviderFactory.js +13 -0
  14. package/dist/factory/tts/TTSProviderFactory.js +27 -0
  15. package/dist/index.js +22 -13
  16. package/dist/interfaces/ITTSProvider.js +1 -0
  17. package/dist/permissions/TTSPermissions.js +6 -0
  18. package/dist/providers/ElevenLabsTTSProvider.js +108 -0
  19. package/dist/providers/ai/DeepSeekAiProvider.js +34 -0
  20. package/dist/providers/ai/GoogleAiProvider.js +367 -0
  21. package/dist/providers/ai/OllamaAiProvider.js +342 -0
  22. package/dist/providers/ai/OpenAiProvider.js +302 -0
  23. package/dist/providers/tts/ElevenLabsTTSProvider.js +108 -0
  24. package/dist/routes/TTSRoutes.js +8 -0
  25. package/dist/schemas/TTSRequestSchema.js +24 -0
  26. package/dist/services/TTSGenericService.js +21 -0
  27. package/package.json +2 -2
  28. package/src/agents/DraxAgent.ts +1 -1
  29. package/src/config/ElevenLabsTTSConfig.ts +13 -0
  30. package/src/controllers/AICrudController.ts +1 -1
  31. package/src/controllers/AIGenericController.ts +1 -1
  32. package/src/controllers/TTSGenericController.ts +70 -0
  33. package/src/factory/{AiProviderFactory.ts → ai/AiProviderFactory.ts} +3 -3
  34. package/src/factory/ai/DeepSeekAiProviderFactory.ts +27 -0
  35. package/src/factory/{GoogleAiProviderFactory.ts → ai/GoogleAiProviderFactory.ts} +4 -4
  36. package/src/factory/{OllamaAiProviderFactory.ts → ai/OllamaAiProviderFactory.ts} +4 -4
  37. package/src/factory/{OpenAiProviderFactory.ts → ai/OpenAiProviderFactory.ts} +4 -4
  38. package/src/factory/tts/ElevenLabsTTSProviderFactory.ts +26 -0
  39. package/src/factory/tts/TTSProviderFactory.ts +42 -0
  40. package/src/index.ts +52 -11
  41. package/src/interfaces/ITTSProvider.ts +47 -0
  42. package/src/permissions/AIPermissions.ts +0 -1
  43. package/src/permissions/TTSPermissions.ts +8 -0
  44. package/src/providers/{DeepSeekProvider.ts → ai/DeepSeekAiProvider.ts} +5 -5
  45. package/src/providers/{GoogleAiProvider.ts → ai/GoogleAiProvider.ts} +2 -2
  46. package/src/providers/{OllamaAiProvider.ts → ai/OllamaAiProvider.ts} +2 -2
  47. package/src/providers/{OpenAiProvider.ts → ai/OpenAiProvider.ts} +2 -2
  48. package/src/providers/tts/ElevenLabsTTSProvider.ts +132 -0
  49. package/src/routes/TTSRoutes.ts +13 -0
  50. package/src/schemas/TTSRequestSchema.ts +38 -0
  51. package/src/services/TTSGenericService.ts +41 -0
  52. package/test/DeepSeekProvider.test.ts +4 -4
  53. package/tsconfig.tsbuildinfo +1 -1
  54. package/types/config/ElevenLabsTTSConfig.d.ts +10 -0
  55. package/types/config/ElevenLabsTTSConfig.d.ts.map +1 -0
  56. package/types/controllers/TTSGenericController.d.ts +11 -0
  57. package/types/controllers/TTSGenericController.d.ts.map +1 -0
  58. package/types/factory/ElevenLabsTTSProviderFactory.d.ts +8 -0
  59. package/types/factory/ElevenLabsTTSProviderFactory.d.ts.map +1 -0
  60. package/types/factory/TTSProviderFactory.d.ts +15 -0
  61. package/types/factory/TTSProviderFactory.d.ts.map +1 -0
  62. package/types/factory/ai/AiProviderFactory.d.ts +8 -0
  63. package/types/factory/ai/AiProviderFactory.d.ts.map +1 -0
  64. package/types/factory/ai/DeepSeekAiProviderFactory.d.ts +8 -0
  65. package/types/factory/ai/DeepSeekAiProviderFactory.d.ts.map +1 -0
  66. package/types/factory/ai/GoogleAiProviderFactory.d.ts +8 -0
  67. package/types/factory/ai/GoogleAiProviderFactory.d.ts.map +1 -0
  68. package/types/factory/ai/OllamaAiProviderFactory.d.ts +8 -0
  69. package/types/factory/ai/OllamaAiProviderFactory.d.ts.map +1 -0
  70. package/types/factory/ai/OpenAiProviderFactory.d.ts +8 -0
  71. package/types/factory/ai/OpenAiProviderFactory.d.ts.map +1 -0
  72. package/types/factory/tts/ElevenLabsTTSProviderFactory.d.ts +8 -0
  73. package/types/factory/tts/ElevenLabsTTSProviderFactory.d.ts.map +1 -0
  74. package/types/factory/tts/TTSProviderFactory.d.ts +15 -0
  75. package/types/factory/tts/TTSProviderFactory.d.ts.map +1 -0
  76. package/types/index.d.ts +24 -11
  77. package/types/index.d.ts.map +1 -1
  78. package/types/interfaces/ITTSProvider.d.ts +39 -0
  79. package/types/interfaces/ITTSProvider.d.ts.map +1 -0
  80. package/types/permissions/TTSPermissions.d.ts +6 -0
  81. package/types/permissions/TTSPermissions.d.ts.map +1 -0
  82. package/types/providers/ElevenLabsTTSProvider.d.ts +38 -0
  83. package/types/providers/ElevenLabsTTSProvider.d.ts.map +1 -0
  84. package/types/providers/ai/DeepSeekAiProvider.d.ts +24 -0
  85. package/types/providers/ai/DeepSeekAiProvider.d.ts.map +1 -0
  86. package/types/providers/ai/GoogleAiProvider.d.ts +63 -0
  87. package/types/providers/ai/GoogleAiProvider.d.ts.map +1 -0
  88. package/types/providers/ai/OllamaAiProvider.d.ts +78 -0
  89. package/types/providers/ai/OllamaAiProvider.d.ts.map +1 -0
  90. package/types/providers/ai/OpenAiProvider.d.ts +97 -0
  91. package/types/providers/ai/OpenAiProvider.d.ts.map +1 -0
  92. package/types/providers/tts/ElevenLabsTTSProvider.d.ts +38 -0
  93. package/types/providers/tts/ElevenLabsTTSProvider.d.ts.map +1 -0
  94. package/types/routes/TTSRoutes.d.ts +4 -0
  95. package/types/routes/TTSRoutes.d.ts.map +1 -0
  96. package/types/schemas/TTSRequestSchema.d.ts +37 -0
  97. package/types/schemas/TTSRequestSchema.d.ts.map +1 -0
  98. package/types/services/TTSGenericService.d.ts +17 -0
  99. package/types/services/TTSGenericService.d.ts.map +1 -0
  100. package/src/factory/DeepSeekProviderFactory.ts +0 -27
@@ -0,0 +1,97 @@
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
+ declare class OpenAiProvider implements IAIProvider {
5
+ protected _apiKey: string;
6
+ protected _model: any;
7
+ protected _visionModel?: string;
8
+ protected _client: any;
9
+ protected _aiLogService?: AILogService;
10
+ constructor(apiKey: string, model: string, visionModel?: string, aiLogService?: AILogService);
11
+ get model(): any;
12
+ get client(): any;
13
+ protected get visionModel(): string;
14
+ protected buildUserContent(input: IPromptParams): string | Array<{
15
+ type: 'text';
16
+ text: string;
17
+ } | {
18
+ type: 'image_url';
19
+ image_url: {
20
+ url: string;
21
+ detail?: 'auto' | 'low' | 'high';
22
+ };
23
+ }>;
24
+ protected mapContentParts(content: IPromptContentPart[]): ({
25
+ type: "text";
26
+ text: string;
27
+ image_url?: undefined;
28
+ } | {
29
+ type: "image_url";
30
+ image_url: {
31
+ detail?: import("../../interfaces/IAIProvider.js").IPromptImageDetail;
32
+ url: string;
33
+ };
34
+ text?: undefined;
35
+ })[];
36
+ protected mapHistory(history?: IPromptMessage[]): {
37
+ role: "user" | "assistant" | "system";
38
+ content: string | ({
39
+ type: "text";
40
+ text: string;
41
+ image_url?: undefined;
42
+ } | {
43
+ type: "image_url";
44
+ image_url: {
45
+ detail?: import("../../interfaces/IAIProvider.js").IPromptImageDetail;
46
+ url: string;
47
+ };
48
+ text?: undefined;
49
+ })[];
50
+ }[];
51
+ protected hasImageInput(input: IPromptParams): boolean;
52
+ protected serializePromptInput(input: IPromptParams, systemPrompt: string): string;
53
+ protected serializePromptOutput(output: unknown): string;
54
+ protected buildLogPayload(input: IPromptParams, params: {
55
+ model: string;
56
+ systemPrompt: string;
57
+ startedAt: Date;
58
+ endedAt?: Date;
59
+ inputTokens?: number;
60
+ outputTokens?: number;
61
+ tokens?: number;
62
+ output?: unknown;
63
+ success: boolean;
64
+ errorMessage?: string;
65
+ }): IAILogBase;
66
+ protected registerPromptLog(input: IPromptParams, params: {
67
+ model: string;
68
+ systemPrompt: string;
69
+ startedAt: Date;
70
+ endedAt?: Date;
71
+ inputTokens?: number;
72
+ outputTokens?: number;
73
+ tokens?: number;
74
+ output?: unknown;
75
+ success: boolean;
76
+ errorMessage?: string;
77
+ }): Promise<void>;
78
+ generateEmbedding({ text, model }: {
79
+ text: string;
80
+ model: string;
81
+ }): Promise<number[]>;
82
+ protected mapTools(tools?: IPromptTool[]): {
83
+ type: "function";
84
+ function: {
85
+ name: string;
86
+ description: string;
87
+ parameters: object;
88
+ };
89
+ }[];
90
+ protected parseToolArguments(args: string | undefined): any;
91
+ protected serializeToolOutput(output: unknown): string;
92
+ protected buildToolMessages(toolCalls?: any[], tools?: IPromptTool[]): Promise<any[]>;
93
+ prompt(input: IPromptParams): Promise<IPromptResponse>;
94
+ }
95
+ export default OpenAiProvider;
96
+ export { OpenAiProvider };
97
+ //# sourceMappingURL=OpenAiProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenAiProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/ai/OpenAiProvider.ts"],"names":[],"mappings":"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"}
@@ -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/tts/ElevenLabsTTSProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAE,YAAY,EAAE,YAAY,EAAC,MAAM,kCAAkC,CAAC;AAE7F,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,4 @@
1
+ declare function TTSFastifyRoutes(fastify: any, options: any): Promise<void>;
2
+ export default TTSFastifyRoutes;
3
+ export { TTSFastifyRoutes };
4
+ //# sourceMappingURL=TTSRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/TTSRoutes.ts"],"names":[],"mappings":"AAEA,iBAAe,gBAAgB,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBAO/C;AAED,eAAe,gBAAgB,CAAC;AAChC,OAAO,EAAC,gBAAgB,EAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ import { z } from "zod";
2
+ declare const TTSVoiceSettingsSchema: z.ZodObject<{
3
+ stability: z.ZodOptional<z.ZodNumber>;
4
+ similarityBoost: z.ZodOptional<z.ZodNumber>;
5
+ style: z.ZodOptional<z.ZodNumber>;
6
+ useSpeakerBoost: z.ZodOptional<z.ZodBoolean>;
7
+ speed: z.ZodOptional<z.ZodNumber>;
8
+ }, z.core.$strip>;
9
+ declare const TTSRequestSchema: z.ZodObject<{
10
+ text: z.ZodString;
11
+ provider: z.ZodDefault<z.ZodString>;
12
+ voiceId: z.ZodOptional<z.ZodString>;
13
+ model: z.ZodOptional<z.ZodString>;
14
+ outputFormat: z.ZodOptional<z.ZodString>;
15
+ voiceSettings: z.ZodOptional<z.ZodObject<{
16
+ stability: z.ZodOptional<z.ZodNumber>;
17
+ similarityBoost: z.ZodOptional<z.ZodNumber>;
18
+ style: z.ZodOptional<z.ZodNumber>;
19
+ useSpeakerBoost: z.ZodOptional<z.ZodBoolean>;
20
+ speed: z.ZodOptional<z.ZodNumber>;
21
+ }, z.core.$strip>>;
22
+ previousText: z.ZodOptional<z.ZodString>;
23
+ nextText: z.ZodOptional<z.ZodString>;
24
+ languageCode: z.ZodOptional<z.ZodString>;
25
+ seed: z.ZodOptional<z.ZodNumber>;
26
+ responseFormat: z.ZodDefault<z.ZodEnum<{
27
+ audio: "audio";
28
+ base64: "base64";
29
+ }>>;
30
+ operationTitle: z.ZodOptional<z.ZodString>;
31
+ operationGroup: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>;
33
+ type TTSRequest = z.infer<typeof TTSRequestSchema>;
34
+ type TTSVoiceSettings = z.infer<typeof TTSVoiceSettingsSchema>;
35
+ export { TTSRequestSchema, TTSVoiceSettingsSchema, };
36
+ export type { TTSRequest, TTSVoiceSettings, };
37
+ //# sourceMappingURL=TTSRequestSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSRequestSchema.d.ts","sourceRoot":"","sources":["../../src/schemas/TTSRequestSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAEtB,QAAA,MAAM,sBAAsB;;;;;;iBAM1B,CAAA;AAEF,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;iBAcpB,CAAA;AAEF,KAAK,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAClD,KAAK,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE9D,OAAO,EACH,gBAAgB,EAChB,sBAAsB,GACzB,CAAA;AAED,YAAY,EACR,UAAU,EACV,gBAAgB,GACnB,CAAA"}
@@ -0,0 +1,17 @@
1
+ import type { TTSProviderInfo } from "../factory/tts/TTSProviderFactory.js";
2
+ import type { ITTSResponse } from "../interfaces/ITTSProvider.js";
3
+ import type { TTSRequest } from "../schemas/TTSRequestSchema.js";
4
+ type TTSRequestContext = {
5
+ ip?: string;
6
+ userAgent?: string;
7
+ tenant?: string | null;
8
+ user?: string | null;
9
+ };
10
+ declare class TTSGenericService {
11
+ availableProviders(): TTSProviderInfo[];
12
+ textToSpeech(input: TTSRequest, context?: TTSRequestContext): Promise<ITTSResponse>;
13
+ }
14
+ export default TTSGenericService;
15
+ export { TTSGenericService, };
16
+ export type { TTSRequestContext, };
17
+ //# sourceMappingURL=TTSGenericService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TTSGenericService.d.ts","sourceRoot":"","sources":["../../src/services/TTSGenericService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,sCAAsC,CAAC;AAC1E,OAAO,KAAK,EAAa,YAAY,EAAC,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,gCAAgC,CAAC;AAE/D,KAAK,iBAAiB,GAAG;IACrB,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,CAAA;AAED,cAAM,iBAAiB;IAEnB,kBAAkB,IAAI,eAAe,EAAE;IAIjC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC;CAchG;AAED,eAAe,iBAAiB,CAAC;AACjC,OAAO,EACH,iBAAiB,GACpB,CAAA;AACD,YAAY,EACR,iBAAiB,GACpB,CAAA"}
@@ -1,27 +0,0 @@
1
- import {DraxConfig} from "@drax/common-back";
2
- import DeepSeekConfig from "../config/DeepSeekConfig.js";
3
- import type {IAIProvider} from "../interfaces/IAIProvider"
4
- import DeepSeekProvider from "../providers/DeepSeekProvider.js";
5
- import AILogServiceFactory from "./services/AILogServiceFactory.js";
6
-
7
- class DeepSeekProviderFactory {
8
- private static singleton: IAIProvider;
9
-
10
- public static instance(): IAIProvider {
11
- if (!DeepSeekProviderFactory.singleton) {
12
- DeepSeekProviderFactory.singleton = new DeepSeekProvider(
13
- DraxConfig.getOrLoad(DeepSeekConfig.DeepSeekApiKey),
14
- DraxConfig.getOrLoad(DeepSeekConfig.DeepSeekModel),
15
- DraxConfig.getOrLoad(DeepSeekConfig.DeepSeekBaseUrl, "string", "https://api.deepseek.com"),
16
- DraxConfig.getOrLoad(DeepSeekConfig.DeepSeekVisionModel),
17
- AILogServiceFactory.instance
18
- );
19
- }
20
- return DeepSeekProviderFactory.singleton;
21
- }
22
- }
23
-
24
- export default DeepSeekProviderFactory
25
- export {
26
- DeepSeekProviderFactory
27
- }