From 848856ea67d7f42f5b508d0dafb2c672b58988d1 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 14 Oct 2025 01:56:56 +0500 Subject: [PATCH] . --- .../service/OpenAIAnalyticsService.java | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/main/java/kz/konturai/parser/service/OpenAIAnalyticsService.java b/src/main/java/kz/konturai/parser/service/OpenAIAnalyticsService.java index 481fb1a..08d2932 100644 --- a/src/main/java/kz/konturai/parser/service/OpenAIAnalyticsService.java +++ b/src/main/java/kz/konturai/parser/service/OpenAIAnalyticsService.java @@ -36,13 +36,15 @@ public class OpenAIAnalyticsService { @Value("${openai.api.key}") private String apiKey; - public OpenAIAnalyticsService(@Value("${openai.api.url:https://api.openai.com/v1/chat/completions}") String openaiUrl) { + public OpenAIAnalyticsService( + @Value("${openai.api.url:https://api.openai.com/v1/chat/completions}") String openaiUrl) { // Проверяем API ключ при инициализации - if (apiKey == null || apiKey.trim().isEmpty() || apiKey.equals("your-openai-api-key-here")) { - logger.error("OpenAI API key is not configured properly. Please set OPENAI_API_KEY environment variable or update application.properties"); + if (apiKey == null || apiKey.trim().isEmpty()) { + logger.error( + "OpenAI API key is not configured properly. Please set OPENAI_API_KEY environment variable or update application.properties"); throw new IllegalStateException("OpenAI API key is not configured"); } - + if (!apiKey.startsWith("sk-")) { logger.warn("OpenAI API key does not start with 'sk-'. Please verify your API key is correct."); } @@ -56,7 +58,7 @@ public class OpenAIAnalyticsService { .clientConnector(new ReactorClientHttpConnector(httpClient)) .defaultHeader("Authorization", "Bearer " + apiKey) .build(); - + logger.info("OpenAIAnalyticsService initialized with model: {}", modelName); } @@ -127,7 +129,7 @@ public class OpenAIAnalyticsService { private String generate(String text, String instructionPrefix) { String prompt = instructionPrefix + text; - + Map message = new HashMap<>(); message.put("role", "user"); message.put("content", prompt); @@ -147,9 +149,11 @@ public class OpenAIAnalyticsService { .bodyToMono(new ParameterizedTypeReference>() { }) .onErrorResume(err -> { - logger.error("OpenAI request failed: {} - {}", err.getMessage(), err.getClass().getSimpleName()); + logger.error("OpenAI request failed: {} - {}", err.getMessage(), + err.getClass().getSimpleName()); if (err.getMessage().contains("401")) { - logger.error("OpenAI API key is invalid or expired. Please check your openai.api.key configuration."); + logger.error( + "OpenAI API key is invalid or expired. Please check your openai.api.key configuration."); } else if (err.getMessage().contains("429")) { logger.error("OpenAI API rate limit exceeded. Please try again later."); } else if (err.getMessage().contains("500")) { @@ -186,7 +190,7 @@ public class OpenAIAnalyticsService { public String generateWithInstruction(String text, String instruction, String language) { String prompt = instruction + "\n\n" + text; - + Map message = new HashMap<>(); message.put("role", "user"); message.put("content", prompt); @@ -206,9 +210,11 @@ public class OpenAIAnalyticsService { .bodyToMono(new ParameterizedTypeReference>() { }) .onErrorResume(err -> { - logger.error("OpenAI request failed: {} - {}", err.getMessage(), err.getClass().getSimpleName()); + logger.error("OpenAI request failed: {} - {}", err.getMessage(), + err.getClass().getSimpleName()); if (err.getMessage().contains("401")) { - logger.error("OpenAI API key is invalid or expired. Please check your openai.api.key configuration."); + logger.error( + "OpenAI API key is invalid or expired. Please check your openai.api.key configuration."); } else if (err.getMessage().contains("429")) { logger.error("OpenAI API rate limit exceeded. Please try again later."); } else if (err.getMessage().contains("500")) {