@dataclouder/nest-vertex 0.0.49 → 0.0.50

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.
@@ -40,14 +40,8 @@ let GeminiChatController = GeminiChatController_1 = class GeminiChatController {
40
40
  }
41
41
  async generateText(generateTextDto) {
42
42
  this.logger.log(`Received request for text generation with keyType: ${generateTextDto.keyType}`);
43
- try {
44
- const result = await this.geminiChatService.chat(generateTextDto.messages, undefined, generateTextDto?.keyType);
45
- return result;
46
- }
47
- catch (error) {
48
- this.logger.error(`Error generating text: ${error.message}`, error.stack);
49
- throw error;
50
- }
43
+ const result = await this.geminiChatService.chat(generateTextDto.messages, undefined, generateTextDto?.keyType);
44
+ return result;
51
45
  }
52
46
  async continueConversation(conversation) {
53
47
  const startTime = Date.now();
@@ -104,7 +104,6 @@ __decorate([
104
104
  __metadata("design:returntype", Promise)
105
105
  ], VertexTtsAdapterController.prototype, "listVoices", null);
106
106
  exports.VertexTtsAdapterController = VertexTtsAdapterController = __decorate([
107
- (0, common_1.UseGuards)(nest_auth_1.AuthGuard),
108
107
  (0, swagger_1.ApiTags)('Vertex TTS Adapter'),
109
108
  (0, common_1.Controller)('api/vertex-adapter/tts'),
110
109
  (0, common_2.UseFilters)(nest_core_1.AllExceptionsHandler),
@@ -14,6 +14,10 @@ export interface MessageLLM {
14
14
  role: ChatRole;
15
15
  content: string;
16
16
  }
17
+ export interface ChatJsonResponse extends MessageLLM {
18
+ json?: any;
19
+ metadata?: any;
20
+ }
17
21
  export interface ChatLLMRequestAdapter {
18
22
  messages: MessageLLM[];
19
23
  provider?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dataclouder/nest-vertex",
3
- "version": "0.0.49",
3
+ "version": "0.0.50",
4
4
  "description": "NestJS Vertex AI library for Dataclouder",
5
5
  "author": "dataclouder",
6
6
  "license": "MIT",
@@ -1,4 +1,4 @@
1
- import { ChatMessageDict, MessageLLM, EModelQuality, DescribeImageRequestAdapter } from '../models/adapter.models';
1
+ import { ChatMessageDict, MessageLLM, EModelQuality, DescribeImageRequestAdapter, ChatJsonResponse } from '../models/adapter.models';
2
2
  import { TierType } from '../models/key-balancer.models';
3
3
  import { KeyBalancerClientService } from './key-balancer-api.service';
4
4
  import { GoogleGenaiService } from './google-genai.service';
@@ -15,6 +15,6 @@ export declare class GeminiChatService {
15
15
  listModels(): Promise<Record<string, string>[]>;
16
16
  getDefaultQualityModel(quality: EModelQuality): string;
17
17
  private _extractJsonWithRecovery;
18
- chatAndExtractJson(messages: MessageLLM[], model?: string, keyType?: TierType): Promise<any>;
18
+ chatAndExtractJson(messages: MessageLLM[], model?: string, keyType?: TierType): Promise<ChatJsonResponse>;
19
19
  describeImageByUrl(dto: DescribeImageRequestAdapter): Promise<any>;
20
20
  }
@@ -105,6 +105,9 @@ let GeminiChatService = GeminiChatService_1 = class GeminiChatService {
105
105
  };
106
106
  }
107
107
  catch (error) {
108
+ if (error instanceof nest_core_1.AppException) {
109
+ throw error;
110
+ }
108
111
  if (balancedKey?.id) {
109
112
  if (error.status === 429) {
110
113
  this.logger.error(`Gemini chat.sendMessage failed: Rate limited ${model} - con clave ${balancedKey?.name} ${balancedKey?.key}`);
@@ -230,7 +233,9 @@ let GeminiChatService = GeminiChatService_1 = class GeminiChatService {
230
233
  }
231
234
  async chatAndExtractJson(messages, model = gemini_models_1.GeminiModels.Gemini2_5Lite, keyType) {
232
235
  const response = await this.chat(messages, model, keyType);
233
- return this._extractJsonWithRecovery(response.content, model, keyType);
236
+ const json = await this._extractJsonWithRecovery(response.content, model, keyType);
237
+ response.json = json;
238
+ return response;
234
239
  }
235
240
  async describeImageByUrl(dto) {
236
241
  const visionModelLLM = dto.model || gemini_models_1.GeminiModels.Gemini2_5Flash;