@loonylabs/tts-middleware 0.8.0 → 0.10.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.
- package/README.md +36 -2
- package/dist/middleware/services/tts/index.d.ts +4 -3
- package/dist/middleware/services/tts/index.d.ts.map +1 -1
- package/dist/middleware/services/tts/index.js +3 -1
- package/dist/middleware/services/tts/index.js.map +1 -1
- package/dist/middleware/services/tts/providers/gemini-provider.d.ts +142 -0
- package/dist/middleware/services/tts/providers/gemini-provider.d.ts.map +1 -0
- package/dist/middleware/services/tts/providers/gemini-provider.js +358 -0
- package/dist/middleware/services/tts/providers/gemini-provider.js.map +1 -0
- package/dist/middleware/services/tts/providers/index.d.ts +2 -0
- package/dist/middleware/services/tts/providers/index.d.ts.map +1 -1
- package/dist/middleware/services/tts/providers/index.js +3 -1
- package/dist/middleware/services/tts/providers/index.js.map +1 -1
- package/dist/middleware/services/tts/providers/vertex-ai-tts-provider.d.ts +168 -0
- package/dist/middleware/services/tts/providers/vertex-ai-tts-provider.d.ts.map +1 -0
- package/dist/middleware/services/tts/providers/vertex-ai-tts-provider.js +416 -0
- package/dist/middleware/services/tts/providers/vertex-ai-tts-provider.js.map +1 -0
- package/dist/middleware/services/tts/tts.service.d.ts.map +1 -1
- package/dist/middleware/services/tts/tts.service.js +13 -0
- package/dist/middleware/services/tts/tts.service.js.map +1 -1
- package/dist/middleware/services/tts/types/common.types.d.ts +12 -1
- package/dist/middleware/services/tts/types/common.types.d.ts.map +1 -1
- package/dist/middleware/services/tts/types/common.types.js +1 -0
- package/dist/middleware/services/tts/types/common.types.js.map +1 -1
- package/dist/middleware/services/tts/types/index.d.ts +2 -2
- package/dist/middleware/services/tts/types/index.d.ts.map +1 -1
- package/dist/middleware/services/tts/types/index.js +2 -1
- package/dist/middleware/services/tts/types/index.js.map +1 -1
- package/dist/middleware/services/tts/types/provider-options.types.d.ts +85 -1
- package/dist/middleware/services/tts/types/provider-options.types.d.ts.map +1 -1
- package/dist/middleware/services/tts/types/provider-options.types.js +13 -0
- package/dist/middleware/services/tts/types/provider-options.types.js.map +1 -1
- package/dist/middleware/services/tts/utils/retry.utils.d.ts +11 -0
- package/dist/middleware/services/tts/utils/retry.utils.d.ts.map +1 -1
- package/dist/middleware/services/tts/utils/retry.utils.js +23 -0
- package/dist/middleware/services/tts/utils/retry.utils.js.map +1 -1
- package/dist/middleware/shared/config/tts.config.d.ts +17 -0
- package/dist/middleware/shared/config/tts.config.d.ts.map +1 -1
- package/dist/middleware/shared/config/tts.config.js +14 -0
- package/dist/middleware/shared/config/tts.config.js.map +1 -1
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.service.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/tts/tts.service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"tts.service.d.ts","sourceRoot":"","sources":["../../../../src/middleware/services/tts/tts.service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAarE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,UAAU;IACrB;;OAEG;IACH,OAAO,CAAC,SAAS,CAAoC;IAErD;;OAEG;IACH,OAAO,CAAC,eAAe,CAAc;IAErC;;;;;OAKG;;IAiBH;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAkF3B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAqBrB;;;;;;;;;;;;;;;;;;OAkBG;IACG,UAAU,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC;IAqDrE;;;;;;;;;;;OAWG;IACI,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,eAAe;IAa1D;;;;;;;;;;OAUG;IACI,kBAAkB,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAgBtD;;;;;;;;;;OAUG;IACI,kBAAkB,IAAI,WAAW;IAIxC;;;;;;;;;;OAUG;IACI,qBAAqB,IAAI,WAAW,EAAE;IAI7C;;;;;;;;;;;;OAYG;IACI,mBAAmB,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO;IAI1D;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG;CAcZ;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,YAAmB,CAAC"}
|
|
@@ -15,6 +15,7 @@ const edenai_provider_1 = require("./providers/edenai-provider");
|
|
|
15
15
|
const google_cloud_tts_provider_1 = require("./providers/google-cloud-tts-provider");
|
|
16
16
|
const fish_audio_provider_1 = require("./providers/fish-audio-provider");
|
|
17
17
|
const inworld_provider_1 = require("./providers/inworld-provider");
|
|
18
|
+
const vertex_ai_tts_provider_1 = require("./providers/vertex-ai-tts-provider");
|
|
18
19
|
const retry_utils_1 = require("./utils/retry.utils");
|
|
19
20
|
/**
|
|
20
21
|
* TTS Service - Main orchestrator for TTS operations
|
|
@@ -120,6 +121,17 @@ class TTSService {
|
|
|
120
121
|
error: error.message,
|
|
121
122
|
});
|
|
122
123
|
}
|
|
124
|
+
try {
|
|
125
|
+
// Initialize Vertex AI TTS provider (test/admin only)
|
|
126
|
+
const vertexAIProvider = new vertex_ai_tts_provider_1.VertexAITTSProvider();
|
|
127
|
+
this.providers.set(types_1.TTSProvider.VERTEX_AI, vertexAIProvider);
|
|
128
|
+
this.log('debug', 'Vertex AI TTS provider initialized');
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
this.log('warn', 'Failed to initialize Vertex AI TTS provider', {
|
|
132
|
+
error: error.message,
|
|
133
|
+
});
|
|
134
|
+
}
|
|
123
135
|
// Future providers will be initialized here:
|
|
124
136
|
// try {
|
|
125
137
|
// const openaiProvider = new OpenAIProvider();
|
|
@@ -149,6 +161,7 @@ class TTSService {
|
|
|
149
161
|
deepgram: types_1.TTSProvider.DEEPGRAM,
|
|
150
162
|
fish_audio: types_1.TTSProvider.FISH_AUDIO,
|
|
151
163
|
inworld: types_1.TTSProvider.INWORLD,
|
|
164
|
+
vertex_ai: types_1.TTSProvider.VERTEX_AI,
|
|
152
165
|
};
|
|
153
166
|
return providerMap[normalized];
|
|
154
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.service.js","sourceRoot":"","sources":["../../../../src/middleware/services/tts/tts.service.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAGH,mCAAsC;AAEtC,+DAA2D;AAC3D,iEAA6D;AAC7D,qFAA+E;AAC/E,yEAAoE;AACpE,mEAA+D;AAC/D,qDAG6B;AAG7B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAa,UAAU;IAWrB;;;;;OAKG;IACH;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAE3B,iEAAiE;QACjE,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,EAAE,CAAC;QAC3E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,mBAAW,CAAC,KAAK,CAAC;QAEnF,kCAAkC;QAClC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,yBAAyB,EAAE;YAC1C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,mBAAmB;QACzB,IAAI,CAAC;YACH,kCAAkC;YAClC,MAAM,aAAa,GAAG,IAAI,8BAAa,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YAErD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,qCAAqC,EAAE;gBACtD,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACH,6BAA6B;YAC7B,MAAM,cAAc,GAAG,IAAI,gCAAc,EAAE,CAAC;YAC5C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAEvD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,sCAAsC,EAAE;gBACvD,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACH,uCAAuC;YACvC,MAAM,cAAc,GAAG,IAAI,kDAAsB,EAAE,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAEvD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,uCAAuC,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,gDAAgD,EAAE;gBACjE,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,iBAAiB,GAAG,IAAI,uCAAiB,EAAE,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAW,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;YAE9D,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,iCAAiC,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,0CAA0C,EAAE;gBAC3D,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC;YACH,mDAAmD;YACnD,MAAM,eAAe,GAAG,IAAI,kCAAe,EAAE,CAAC;YAC9C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;YAEzD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,iCAAiC,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,0CAA0C,EAAE;gBAC3D,KAAK,EAAG,KAAe,CAAC,OAAO;aAChC,CAAC,CAAC;QACL,CAAC;QAED,6CAA6C;QAC7C,QAAQ;QACR,iDAAiD;QACjD,4DAA4D;QAC5D,oBAAoB;QACpB,yEAAyE;QACzE,IAAI;IACN,CAAC;IAED;;;;;;OAMG;IACK,aAAa,CAAC,QAAiB;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,WAAW,GAAgC;YAC/C,KAAK,EAAE,mBAAW,CAAC,KAAK;YACxB,MAAM,EAAE,mBAAW,CAAC,MAAM;YAC1B,MAAM,EAAE,mBAAW,CAAC,MAAM;YAC1B,UAAU,EAAE,mBAAW,CAAC,UAAU;YAClC,MAAM,EAAE,mBAAW,CAAC,MAAM;YAC1B,QAAQ,EAAE,mBAAW,CAAC,QAAQ;YAC9B,UAAU,EAAE,mBAAW,CAAC,UAAU;YAClC,OAAO,EAAE,mBAAW,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"tts.service.js","sourceRoot":"","sources":["../../../../src/middleware/services/tts/tts.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,8 @@ export declare enum TTSProvider {
|
|
|
23
23
|
GOOGLE = "google",
|
|
24
24
|
DEEPGRAM = "deepgram",
|
|
25
25
|
FISH_AUDIO = "fish_audio",
|
|
26
|
-
INWORLD = "inworld"
|
|
26
|
+
INWORLD = "inworld",
|
|
27
|
+
VERTEX_AI = "vertex_ai"
|
|
27
28
|
}
|
|
28
29
|
/**
|
|
29
30
|
* Audio format options supported across providers
|
|
@@ -216,6 +217,16 @@ export interface TTSResponseMetadata {
|
|
|
216
217
|
* @MVP ✅ Implemented
|
|
217
218
|
*/
|
|
218
219
|
sampleRate: number;
|
|
220
|
+
/**
|
|
221
|
+
* GCP region that processed the request
|
|
222
|
+
*
|
|
223
|
+
* @description Set by Vertex AI-based providers (Vertex AI TTS).
|
|
224
|
+
* Useful for auditing data residency and diagnosing region rotation.
|
|
225
|
+
*
|
|
226
|
+
* @example 'europe-west4'
|
|
227
|
+
* @example 'us-central1'
|
|
228
|
+
*/
|
|
229
|
+
region?: string;
|
|
219
230
|
}
|
|
220
231
|
/**
|
|
221
232
|
* Billing information for the TTS request
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/common.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,oBAAY,WAAW;IACrB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,OAAO,YAAY;
|
|
1
|
+
{"version":3,"file":"common.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/common.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,7 @@ var TTSProvider;
|
|
|
27
27
|
TTSProvider["DEEPGRAM"] = "deepgram";
|
|
28
28
|
TTSProvider["FISH_AUDIO"] = "fish_audio";
|
|
29
29
|
TTSProvider["INWORLD"] = "inworld";
|
|
30
|
+
TTSProvider["VERTEX_AI"] = "vertex_ai";
|
|
30
31
|
})(TTSProvider || (exports.TTSProvider = TTSProvider = {}));
|
|
31
32
|
/**
|
|
32
33
|
* Error codes for TTS operations
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/common.types.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,IAAY,
|
|
1
|
+
{"version":3,"file":"common.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/common.types.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AAEH;;;;;;;;;GASG;AACH,IAAY,WAUX;AAVD,WAAY,WAAW;IACrB,8BAAe,CAAA;IACf,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;IACjB,wCAAyB,CAAA;IACzB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,wCAAyB,CAAA;IACzB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EAVW,WAAW,2BAAX,WAAW,QAUtB;AAkWD;;GAEG;AACH,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,iDAAiC,CAAA;IACjC,+CAA+B,CAAA;IAC/B,iDAAiC,CAAA;IACjC,6DAA6C,CAAA;IAC7C,qDAAqC,CAAA;IACrC,+CAA+B,CAAA;IAC/B,+CAA+B,CAAA;AACjC,CAAC,EARW,YAAY,4BAAZ,YAAY,QAQvB"}
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
export { TTSProvider, TTSErrorCode, AudioFormat, } from './common.types';
|
|
9
9
|
export type { AudioOptions, VoiceConfig, TTSSynthesizeRequest, TTSResponse, TTSResponseMetadata, TTSBillingInfo, TTSVoice, TTSVoiceMetadata, } from './common.types';
|
|
10
10
|
export type { AzureProviderOptions, OpenAIProviderOptions, ElevenLabsProviderOptions, GoogleCloudTTSProviderOptions, GoogleCloudProviderOptions, // deprecated alias
|
|
11
|
-
GoogleCloudTTSRegion, DeepgramProviderOptions, EdenAIProviderOptions, FishAudioProviderOptions, InworldProviderOptions, ProviderOptions, } from './provider-options.types';
|
|
11
|
+
GoogleCloudTTSRegion, DeepgramProviderOptions, EdenAIProviderOptions, FishAudioProviderOptions, InworldProviderOptions, VertexAITTSProviderOptions, ProviderOptions, } from './provider-options.types';
|
|
12
12
|
export { isAzureOptions, isOpenAIOptions, isElevenLabsOptions, isGoogleCloudTTSOptions, isGoogleCloudOptions, // deprecated alias
|
|
13
|
-
isDeepgramOptions, isEdenAIOptions, isFishAudioOptions, isInworldOptions, } from './provider-options.types';
|
|
13
|
+
isDeepgramOptions, isEdenAIOptions, isFishAudioOptions, isInworldOptions, isVertexAITTSOptions, } from './provider-options.types';
|
|
14
14
|
/**
|
|
15
15
|
* Re-export all types for convenience
|
|
16
16
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,WAAW,EACX,YAAY,EACZ,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,QAAQ,EACR,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,6BAA6B,EAC7B,0BAA0B,EAAE,mBAAmB;AAC/C,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EAAE,mBAAmB;AACzC,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,WAAW,EACX,YAAY,EACZ,WAAW,GACZ,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,QAAQ,EACR,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,6BAA6B,EAC7B,0BAA0B,EAAE,mBAAmB;AAC/C,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EAAE,mBAAmB;AACzC,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;GAOG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC"}
|
|
@@ -21,7 +21,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
21
21
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
-
exports.isInworldOptions = exports.isFishAudioOptions = exports.isEdenAIOptions = exports.isDeepgramOptions = exports.isGoogleCloudOptions = exports.isGoogleCloudTTSOptions = exports.isElevenLabsOptions = exports.isOpenAIOptions = exports.isAzureOptions = exports.TTSErrorCode = exports.TTSProvider = void 0;
|
|
24
|
+
exports.isVertexAITTSOptions = exports.isInworldOptions = exports.isFishAudioOptions = exports.isEdenAIOptions = exports.isDeepgramOptions = exports.isGoogleCloudOptions = exports.isGoogleCloudTTSOptions = exports.isElevenLabsOptions = exports.isOpenAIOptions = exports.isAzureOptions = exports.TTSErrorCode = exports.TTSProvider = void 0;
|
|
25
25
|
// ===== Common Types (Universal) =====
|
|
26
26
|
var common_types_1 = require("./common.types");
|
|
27
27
|
Object.defineProperty(exports, "TTSProvider", { enumerable: true, get: function () { return common_types_1.TTSProvider; } });
|
|
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "isDeepgramOptions", { enumerable: true, get: fun
|
|
|
36
36
|
Object.defineProperty(exports, "isEdenAIOptions", { enumerable: true, get: function () { return provider_options_types_1.isEdenAIOptions; } });
|
|
37
37
|
Object.defineProperty(exports, "isFishAudioOptions", { enumerable: true, get: function () { return provider_options_types_1.isFishAudioOptions; } });
|
|
38
38
|
Object.defineProperty(exports, "isInworldOptions", { enumerable: true, get: function () { return provider_options_types_1.isInworldOptions; } });
|
|
39
|
+
Object.defineProperty(exports, "isVertexAITTSOptions", { enumerable: true, get: function () { return provider_options_types_1.isVertexAITTSOptions; } });
|
|
39
40
|
/**
|
|
40
41
|
* Re-export all types for convenience
|
|
41
42
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;AAEH,uCAAuC;AACvC,+CAIwB;AAHtB,2GAAA,WAAW,OAAA;AACX,4GAAA,YAAY,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;AAEH,uCAAuC;AACvC,+CAIwB;AAHtB,2GAAA,WAAW,OAAA;AACX,4GAAA,YAAY,OAAA;AA+Bd,mEAWkC;AAVhC,wHAAA,cAAc,OAAA;AACd,yHAAA,eAAe,OAAA;AACf,6HAAA,mBAAmB,OAAA;AACnB,iIAAA,uBAAuB,OAAA;AACvB,8HAAA,oBAAoB,OAAA;AACpB,2HAAA,iBAAiB,OAAA;AACjB,yHAAA,eAAe,OAAA;AACf,4HAAA,kBAAkB,OAAA;AAClB,0HAAA,gBAAgB,OAAA;AAChB,8HAAA,oBAAoB,OAAA;AAGtB;;;;;;;GAOG;AACH,iDAA+B;AAC/B,2DAAyC"}
|
|
@@ -163,6 +163,43 @@ export interface ElevenLabsProviderOptions {
|
|
|
163
163
|
*/
|
|
164
164
|
use_speaker_boost?: boolean;
|
|
165
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Region rotation configuration for Vertex AI quota management
|
|
168
|
+
*
|
|
169
|
+
* @description When a 429 quota error occurs, the provider automatically retries
|
|
170
|
+
* with the next region in the list. Same pattern as llm-middleware and tti-middleware.
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```typescript
|
|
174
|
+
* {
|
|
175
|
+
* regions: ['europe-west4', 'europe-west1', 'europe-west3'],
|
|
176
|
+
* fallback: 'us-central1',
|
|
177
|
+
* }
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
export interface RegionRotationConfig {
|
|
181
|
+
/**
|
|
182
|
+
* Ordered list of regions to try on quota errors (429 / Resource Exhausted)
|
|
183
|
+
*
|
|
184
|
+
* @example ['europe-west4', 'europe-west1', 'europe-west3']
|
|
185
|
+
*/
|
|
186
|
+
regions: string[];
|
|
187
|
+
/**
|
|
188
|
+
* Last-resort fallback region, tried after all `regions` are exhausted
|
|
189
|
+
*
|
|
190
|
+
* @example 'us-central1'
|
|
191
|
+
*/
|
|
192
|
+
fallback: string;
|
|
193
|
+
/**
|
|
194
|
+
* Whether to attempt the fallback region one extra time after the main rotation fails
|
|
195
|
+
*
|
|
196
|
+
* @description Mirrors the `alwaysTryFallback` behaviour in llm-middleware.
|
|
197
|
+
* Useful when the fallback is a higher-quota global region.
|
|
198
|
+
*
|
|
199
|
+
* @default true
|
|
200
|
+
*/
|
|
201
|
+
alwaysTryFallback?: boolean;
|
|
202
|
+
}
|
|
166
203
|
/**
|
|
167
204
|
* Supported Google Cloud TTS regions for EU data residency
|
|
168
205
|
*
|
|
@@ -509,12 +546,55 @@ export interface InworldProviderOptions {
|
|
|
509
546
|
*/
|
|
510
547
|
applyTextNormalization?: 'APPLY_TEXT_NORMALIZATION_UNSPECIFIED' | 'ON' | 'OFF';
|
|
511
548
|
}
|
|
549
|
+
/**
|
|
550
|
+
* Vertex AI TTS provider options
|
|
551
|
+
*
|
|
552
|
+
* @provider Vertex AI TTS (Google Cloud)
|
|
553
|
+
* @description Gemini 2.5 TTS models via Vertex AI using the generateContent endpoint with audio output.
|
|
554
|
+
* Supports 30 voices with 90+ languages (auto-detect). Style control via natural language prompts.
|
|
555
|
+
* Test/Admin only – no EU data residency guarantees.
|
|
556
|
+
*
|
|
557
|
+
* @see https://cloud.google.com/vertex-ai/generative-ai/docs/text-to-speech
|
|
558
|
+
*/
|
|
559
|
+
export interface VertexAITTSProviderOptions {
|
|
560
|
+
/**
|
|
561
|
+
* TTS model to use
|
|
562
|
+
*
|
|
563
|
+
* @options
|
|
564
|
+
* - 'gemini-2.5-flash-preview-tts': Budget, fast ($0.50/M input + $10/M audio output tokens)
|
|
565
|
+
* - 'gemini-2.5-pro-preview-tts': Premium, natural ($1.00/M input + $20/M audio output tokens)
|
|
566
|
+
*
|
|
567
|
+
* @default 'gemini-2.5-flash-preview-tts'
|
|
568
|
+
*/
|
|
569
|
+
model?: 'gemini-2.5-flash-preview-tts' | 'gemini-2.5-pro-preview-tts';
|
|
570
|
+
/**
|
|
571
|
+
* Natural language style instruction prepended to the text
|
|
572
|
+
*
|
|
573
|
+
* @description Controls voice style/emotion via prompt engineering.
|
|
574
|
+
* The instruction is prepended to the synthesis text, e.g. "Say cheerfully: {text}".
|
|
575
|
+
*
|
|
576
|
+
* @example 'Say in a spooky whisper:'
|
|
577
|
+
* @example 'Read this cheerfully:'
|
|
578
|
+
* @example 'Speak in a calm, professional tone:'
|
|
579
|
+
*/
|
|
580
|
+
stylePrompt?: string;
|
|
581
|
+
/**
|
|
582
|
+
* Per-request Vertex AI region override
|
|
583
|
+
*
|
|
584
|
+
* @description Overrides the constructor region and skips any regionRotation config.
|
|
585
|
+
* Use this when you need to pin a specific request to a specific region.
|
|
586
|
+
*
|
|
587
|
+
* @example 'europe-west4'
|
|
588
|
+
* @example 'us-central1'
|
|
589
|
+
*/
|
|
590
|
+
region?: string;
|
|
591
|
+
}
|
|
512
592
|
/**
|
|
513
593
|
* Union type of all provider options
|
|
514
594
|
*
|
|
515
595
|
* @description Use this type when you need to accept any provider options
|
|
516
596
|
*/
|
|
517
|
-
export type ProviderOptions = AzureProviderOptions | OpenAIProviderOptions | ElevenLabsProviderOptions | GoogleCloudTTSProviderOptions | DeepgramProviderOptions | EdenAIProviderOptions | FishAudioProviderOptions | InworldProviderOptions;
|
|
597
|
+
export type ProviderOptions = AzureProviderOptions | OpenAIProviderOptions | ElevenLabsProviderOptions | GoogleCloudTTSProviderOptions | DeepgramProviderOptions | EdenAIProviderOptions | FishAudioProviderOptions | InworldProviderOptions | VertexAITTSProviderOptions;
|
|
518
598
|
/**
|
|
519
599
|
* Type guard to check if options are for Azure
|
|
520
600
|
*/
|
|
@@ -551,4 +631,8 @@ export declare function isFishAudioOptions(options: unknown): options is FishAud
|
|
|
551
631
|
* Type guard to check if options are for Inworld AI
|
|
552
632
|
*/
|
|
553
633
|
export declare function isInworldOptions(options: unknown): options is InworldProviderOptions;
|
|
634
|
+
/**
|
|
635
|
+
* Type guard to check if options are for Vertex AI TTS
|
|
636
|
+
*/
|
|
637
|
+
export declare function isVertexAITTSOptions(options: unknown): options is VertexAITTSProviderOptions;
|
|
554
638
|
//# sourceMappingURL=provider-options.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-options.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/provider-options.types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"provider-options.types.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/provider-options.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ exports.isDeepgramOptions = isDeepgramOptions;
|
|
|
18
18
|
exports.isEdenAIOptions = isEdenAIOptions;
|
|
19
19
|
exports.isFishAudioOptions = isFishAudioOptions;
|
|
20
20
|
exports.isInworldOptions = isInworldOptions;
|
|
21
|
+
exports.isVertexAITTSOptions = isVertexAITTSOptions;
|
|
21
22
|
/**
|
|
22
23
|
* Type guard to check if options are for Azure
|
|
23
24
|
*/
|
|
@@ -95,4 +96,16 @@ function isInworldOptions(options) {
|
|
|
95
96
|
'timestampType' in options ||
|
|
96
97
|
'applyTextNormalization' in options));
|
|
97
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Type guard to check if options are for Vertex AI TTS
|
|
101
|
+
*/
|
|
102
|
+
function isVertexAITTSOptions(options) {
|
|
103
|
+
return (typeof options === 'object' &&
|
|
104
|
+
options !== null &&
|
|
105
|
+
('stylePrompt' in options ||
|
|
106
|
+
'regionRotation' in options ||
|
|
107
|
+
('model' in options &&
|
|
108
|
+
typeof options.model === 'string' &&
|
|
109
|
+
options.model.startsWith('gemini-'))));
|
|
110
|
+
}
|
|
98
111
|
//# sourceMappingURL=provider-options.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-options.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/provider-options.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"provider-options.types.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/types/provider-options.types.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA2rBH,wCAQC;AAKD,0CASC;AAKD,kDAQC;AAKD,0DAQC;AAUD,8CAQC;AAKD,0CAWC;AAKD,gDAWC;AAKD,4CAUC;AAKD,oDAYC;AArID;;GAEG;AACH,SAAgB,cAAc,CAC5B,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,SAAS,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC,CAC7C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,OAAO,IAAI,OAAO;QAClB,OAAQ,OAA8B,CAAC,KAAK,KAAK,QAAQ,CAC1D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,WAAW,IAAI,OAAO,IAAI,kBAAkB,IAAI,OAAO,CAAC,CAC1D,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CACrC,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,kBAAkB,IAAI,OAAO,IAAI,QAAQ,IAAI,OAAO,CAAC,CACvD,CAAC;AACJ,CAAC;AAED;;GAEG;AACU,QAAA,oBAAoB,GAAG,uBAAuB,CAAC;AAE5D;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,UAAU,IAAI,OAAO,IAAI,WAAW,IAAI,OAAO,CAAC,CAClD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,oBAAoB,IAAI,OAAO;YAC9B,aAAa,IAAI,OAAO;YACxB,QAAQ,IAAI,OAAO;YACnB,UAAU,IAAI,OAAO,CAAC,CACzB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAChC,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,aAAa,IAAI,OAAO;YACvB,MAAM,IAAI,OAAO;YACjB,mBAAmB,IAAI,OAAO;YAC9B,aAAa,IAAI,OAAO,CAAC,CAC5B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAC9B,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,SAAS,IAAI,OAAO;YACnB,eAAe,IAAI,OAAO;YAC1B,wBAAwB,IAAI,OAAO,CAAC,CACvC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAClC,OAAgB;IAEhB,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,KAAK,IAAI;QAChB,CAAC,aAAa,IAAI,OAAO;YACvB,gBAAgB,IAAI,OAAO;YAC3B,CAAC,OAAO,IAAI,OAAO;gBACjB,OAAQ,OAA8B,CAAC,KAAK,KAAK,QAAQ;gBACxD,OAA6B,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CACjE,CAAC;AACJ,CAAC"}
|
|
@@ -52,6 +52,17 @@ export declare const DEFAULT_RETRY_CONFIG: RetryConfig;
|
|
|
52
52
|
* - Non-TTSError exceptions
|
|
53
53
|
*/
|
|
54
54
|
export declare function isRetryableError(error: unknown): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Determines whether an error is a quota/rate-limit error (429 or Resource Exhausted)
|
|
57
|
+
*
|
|
58
|
+
* @description Unlike isRetryableError (which includes 5xx and network errors),
|
|
59
|
+
* this specifically identifies quota exhaustion. Used for region rotation:
|
|
60
|
+
* rotate regions only on quota errors, not on server errors (5xx) or network failures.
|
|
61
|
+
*
|
|
62
|
+
* @param error - The error to check
|
|
63
|
+
* @returns true if the error is a quota/rate-limit error
|
|
64
|
+
*/
|
|
65
|
+
export declare function isQuotaError(error: unknown): boolean;
|
|
55
66
|
/**
|
|
56
67
|
* Calculate delay with exponential backoff and jitter
|
|
57
68
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.utils.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/utils/retry.utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA0BxD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAM3E;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,CACxB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,EAC1C,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,MAAM,GAAE,WAAkC,EAC1C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC,CAwCZ"}
|
|
1
|
+
{"version":3,"file":"retry.utils.d.ts","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/utils/retry.utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA0BxD;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAcpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAM3E;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,CACxB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,EAC1C,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,MAAM,GAAE,WAAkC,EAC1C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC,CAwCZ"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.DEFAULT_RETRY_CONFIG = void 0;
|
|
11
11
|
exports.isRetryableError = isRetryableError;
|
|
12
|
+
exports.isQuotaError = isQuotaError;
|
|
12
13
|
exports.calculateDelay = calculateDelay;
|
|
13
14
|
exports.sleep = sleep;
|
|
14
15
|
exports.executeWithRetry = executeWithRetry;
|
|
@@ -65,6 +66,28 @@ function isRetryableError(error) {
|
|
|
65
66
|
}
|
|
66
67
|
return false;
|
|
67
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* Determines whether an error is a quota/rate-limit error (429 or Resource Exhausted)
|
|
71
|
+
*
|
|
72
|
+
* @description Unlike isRetryableError (which includes 5xx and network errors),
|
|
73
|
+
* this specifically identifies quota exhaustion. Used for region rotation:
|
|
74
|
+
* rotate regions only on quota errors, not on server errors (5xx) or network failures.
|
|
75
|
+
*
|
|
76
|
+
* @param error - The error to check
|
|
77
|
+
* @returns true if the error is a quota/rate-limit error
|
|
78
|
+
*/
|
|
79
|
+
function isQuotaError(error) {
|
|
80
|
+
if (error instanceof base_tts_provider_1.QuotaExceededError)
|
|
81
|
+
return true;
|
|
82
|
+
if (error instanceof Error) {
|
|
83
|
+
const msg = error.message.toLowerCase();
|
|
84
|
+
return (msg.includes('429') ||
|
|
85
|
+
msg.includes('quota') ||
|
|
86
|
+
msg.includes('rate limit') ||
|
|
87
|
+
msg.includes('resource exhausted'));
|
|
88
|
+
}
|
|
89
|
+
return false;
|
|
90
|
+
}
|
|
68
91
|
/**
|
|
69
92
|
* Calculate delay with exponential backoff and jitter
|
|
70
93
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.utils.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/utils/retry.utils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAiEH,4CA0BC;AAaD,wCAMC;AAOD,sBAEC;AA6BD,4CA4CC;
|
|
1
|
+
{"version":3,"file":"retry.utils.js","sourceRoot":"","sources":["../../../../../src/middleware/services/tts/utils/retry.utils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAiEH,4CA0BC;AAYD,oCAcC;AAaD,wCAMC;AAOD,sBAEC;AA6BD,4CA4CC;AAxND,sEAKwC;AA+BxC;;GAEG;AACU,QAAA,oBAAoB,GAAgB;IAC/C,UAAU,EAAE,CAAC;IACb,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,GAAG;IACf,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,sCAAkB;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,KAAK,YAAY,4CAAwB;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,KAAK,YAAY,gCAAY;QAAE,OAAO,IAAI,CAAC;IAE/C,gEAAgE;IAChE,IAAI,KAAK,YAAY,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,4BAAQ,CAAC,EAAE,CAAC;QAC3D,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACxC,IACE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;YACvB,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;YAC5B,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;YACzB,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1B,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAC9B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAAC,KAAc;IACzC,IAAI,KAAK,YAAY,sCAAkB;QAAE,OAAO,IAAI,CAAC;IAErD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,CACL,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACnB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;YACrB,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC1B,GAAG,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CACnC,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,cAAc,CAAC,OAAe,EAAE,MAAmB;IACjE,MAAM,gBAAgB,GACpB,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAClE,gDAAgD;IAChD,OAAO,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAWD;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,gBAAgB,CACpC,EAAoB,EACpB,SAAsB,4BAAoB,EAC1C,MAAoB;IAEpB,IAAI,SAAkB,CAAC;IAEvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;QAC9D,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAC;YAElB,mCAAmC;YACnC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,MAAM,KAAK,CAAC;YACd,CAAC;YAED,8CAA8C;YAC9C,IAAI,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACjC,MAAM,EAAE,CAAC,OAAO,EAAE,8BAA8B,EAAE;oBAChD,OAAO,EAAE,OAAO,GAAG,CAAC;oBACpB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,KAAK,EAAG,KAAe,CAAC,OAAO;iBAChC,CAAC,CAAC;gBACH,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAEhD,MAAM,EAAE,CAAC,MAAM,EAAE,iBAAiB,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE;gBACpE,OAAO,EAAE,OAAO,GAAG,CAAC;gBACpB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;gBAC5B,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,SAAS,EAAG,KAAe,CAAC,WAAW,CAAC,IAAI;aAC7C,CAAC,CAAC;YAEH,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,MAAM,SAAS,CAAC;AAClB,CAAC"}
|
|
@@ -118,6 +118,19 @@ export interface InworldConfig {
|
|
|
118
118
|
*/
|
|
119
119
|
API_KEY: string;
|
|
120
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* Vertex AI TTS Configuration
|
|
123
|
+
* Reuses Google Cloud credentials (GOOGLE_APPLICATION_CREDENTIALS).
|
|
124
|
+
* Test/Admin only – no EU data residency guarantees.
|
|
125
|
+
*/
|
|
126
|
+
export interface VertexAITTSConfig {
|
|
127
|
+
/**
|
|
128
|
+
* Vertex AI region for Vertex AI TTS
|
|
129
|
+
* @env VERTEX_AI_TTS_REGION
|
|
130
|
+
* @default 'us-central1'
|
|
131
|
+
*/
|
|
132
|
+
REGION: string;
|
|
133
|
+
}
|
|
121
134
|
/**
|
|
122
135
|
* TTS Middleware Configuration Object
|
|
123
136
|
*/
|
|
@@ -148,6 +161,10 @@ export interface TTSConfig {
|
|
|
148
161
|
* Inworld AI configuration (test/admin only)
|
|
149
162
|
*/
|
|
150
163
|
INWORLD: InworldConfig;
|
|
164
|
+
/**
|
|
165
|
+
* Vertex AI TTS configuration (test/admin only)
|
|
166
|
+
*/
|
|
167
|
+
VERTEX_AI: VertexAITTSConfig;
|
|
151
168
|
/**
|
|
152
169
|
* Enable debug logging
|
|
153
170
|
* @env TTS_DEBUG
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.config.d.ts","sourceRoot":"","sources":["../../../../src/middleware/shared/config/tts.config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;;;OAMG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;;;OAIG;IACH,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B,IAAI,GACJ,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,GACb,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAE7B;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,gBAAgB,EAAE,WAAW,CAAC;IAE9B;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,eAAe,CAAC;IAE5B;;OAEG;IACH,OAAO,EAAE,aAAa,CAAC;IAEvB;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,oBAAoB,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAE7C;;;OAGG;IACH,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"tts.config.d.ts","sourceRoot":"","sources":["../../../../src/middleware/shared/config/tts.config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;;;OAMG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;;;OAIG;IACH,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAC5B,IAAI,GACJ,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,GACb,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAE7B;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,gBAAgB,EAAE,WAAW,CAAC;IAE9B;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC;IAErB;;OAEG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAE7B;;OAEG;IACH,UAAU,EAAE,eAAe,CAAC;IAE5B;;OAEG;IACH,OAAO,EAAE,aAAa,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,iBAAiB,CAAC;IAE7B;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,oBAAoB,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAE7C;;;OAGG;IACH,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,SAAS,CA0ExC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmHzD;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,UAAU,EAAE,SAA0B,CAAC"}
|
|
@@ -35,6 +35,7 @@ function getTTSConfig() {
|
|
|
35
35
|
const googleCredentialsPath = process.env.GOOGLE_APPLICATION_CREDENTIALS || '';
|
|
36
36
|
const fishAudioApiKey = process.env.FISH_AUDIO_API_KEY || '';
|
|
37
37
|
const inworldApiKey = process.env.INWORLD_API_KEY || '';
|
|
38
|
+
const vertexAITTSRegion = process.env.VERTEX_AI_TTS_REGION || 'us-central1';
|
|
38
39
|
const defaultProvider = process.env.TTS_DEFAULT_PROVIDER || types_1.TTSProvider.AZURE;
|
|
39
40
|
const debug = process.env.TTS_DEBUG === 'true';
|
|
40
41
|
// Determine DSGVO compliance based on Azure region
|
|
@@ -83,6 +84,9 @@ function getTTSConfig() {
|
|
|
83
84
|
INWORLD: {
|
|
84
85
|
API_KEY: inworldApiKey,
|
|
85
86
|
},
|
|
87
|
+
VERTEX_AI: {
|
|
88
|
+
REGION: vertexAITTSRegion,
|
|
89
|
+
},
|
|
86
90
|
DEBUG: debug,
|
|
87
91
|
MAX_TEXT_LENGTH: 3000,
|
|
88
92
|
DEFAULT_AUDIO_FORMAT: 'mp3',
|
|
@@ -164,6 +168,16 @@ function validateTTSConfig(config) {
|
|
|
164
168
|
errors.push('INWORLD_API_KEY is required when using Inworld AI provider (set in environment variable)');
|
|
165
169
|
}
|
|
166
170
|
}
|
|
171
|
+
// Validate Vertex AI TTS configuration (if used as default provider)
|
|
172
|
+
// Vertex AI TTS reuses Google Cloud credentials (GOOGLE_APPLICATION_CREDENTIALS + GOOGLE_CLOUD_PROJECT)
|
|
173
|
+
if (config.DEFAULT_PROVIDER === types_1.TTSProvider.VERTEX_AI) {
|
|
174
|
+
if (!config.GOOGLE.CREDENTIALS_PATH) {
|
|
175
|
+
errors.push('GOOGLE_APPLICATION_CREDENTIALS is required when using Vertex AI TTS provider (set in environment variable)');
|
|
176
|
+
}
|
|
177
|
+
if (!config.GOOGLE.PROJECT_ID) {
|
|
178
|
+
errors.push('GOOGLE_CLOUD_PROJECT is required when using Vertex AI TTS provider (set in environment variable)');
|
|
179
|
+
}
|
|
180
|
+
}
|
|
167
181
|
// Validate numeric values
|
|
168
182
|
if (config.MAX_TEXT_LENGTH <= 0) {
|
|
169
183
|
errors.push('MAX_TEXT_LENGTH must be greater than 0');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tts.config.js","sourceRoot":"","sources":["../../../../src/middleware/shared/config/tts.config.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;
|
|
1
|
+
{"version":3,"file":"tts.config.js","sourceRoot":"","sources":["../../../../src/middleware/shared/config/tts.config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loonylabs/tts-middleware",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Provider-agnostic Text-to-Speech middleware for Azure, OpenAI, ElevenLabs, Google Cloud, Deepgram, Fish Audio, and
|
|
3
|
+
"version": "0.10.0",
|
|
4
|
+
"description": "Provider-agnostic Text-to-Speech middleware for Azure, OpenAI, ElevenLabs, Google Cloud, Deepgram, Fish Audio, Inworld AI, and Vertex AI TTS",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"files": [
|
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
"google-cloud",
|
|
34
34
|
"deepgram",
|
|
35
35
|
"fish-audio",
|
|
36
|
+
"vertex-ai",
|
|
36
37
|
"middleware",
|
|
37
38
|
"provider-agnostic",
|
|
38
39
|
"speech-synthesis",
|