|
@@ -21,10 +21,7 @@ public class EnhancementService {
|
|
|
private final DoclingTableExtractor doclingTableExtractor;
|
|
private final DoclingTableExtractor doclingTableExtractor;
|
|
|
private final LocalLlmProxy localLlmProxy;
|
|
private final LocalLlmProxy localLlmProxy;
|
|
|
private final GroqProxy groqProxy;
|
|
private final GroqProxy groqProxy;
|
|
|
-
|
|
|
|
|
- public String calculateScoreAndProduceCommentsWithSingleCall(ExtractionRequest extractionRequest) {
|
|
|
|
|
- return calculateScoreAndProduceCommentsWithSingleCall(extractionRequest, null, null);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ private final ExtractionResponseMapper extractionResponseMapper;
|
|
|
|
|
|
|
|
public String calculateScoreAndProduceCommentsWithSingleCall(ExtractionRequest extractionRequest, String provider, String model) {
|
|
public String calculateScoreAndProduceCommentsWithSingleCall(ExtractionRequest extractionRequest, String provider, String model) {
|
|
|
String asCsv = extractCsv(extractionRequest);
|
|
String asCsv = extractCsv(extractionRequest);
|
|
@@ -37,11 +34,14 @@ public class EnhancementService {
|
|
|
}
|
|
}
|
|
|
String selectedProvider = StringUtils.defaultIfBlank(provider, PROVIDER_LOCAL);
|
|
String selectedProvider = StringUtils.defaultIfBlank(provider, PROVIDER_LOCAL);
|
|
|
|
|
|
|
|
- return switch (selectedProvider.toLowerCase()) {
|
|
|
|
|
|
|
+ String llmResponse = switch (selectedProvider.toLowerCase()) {
|
|
|
case PROVIDER_LOCAL -> localLlmProxy.calculateScoreAndProduceComments(asCsv, model);
|
|
case PROVIDER_LOCAL -> localLlmProxy.calculateScoreAndProduceComments(asCsv, model);
|
|
|
case PROVIDER_GROQ -> groqProxy.calculateScoreAndProduceComments(asCsv, model);
|
|
case PROVIDER_GROQ -> groqProxy.calculateScoreAndProduceComments(asCsv, model);
|
|
|
- default -> throw new IllegalArgumentException("Unknown provider: " + provider + ". Supported values: local, groq");
|
|
|
|
|
|
|
+ default ->
|
|
|
|
|
+ throw new IllegalArgumentException("Unknown provider: " + provider + ". Supported values: local, groq");
|
|
|
};
|
|
};
|
|
|
|
|
+
|
|
|
|
|
+ return extractionResponseMapper.mapResponse(llmResponse);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private String extractCsv(ExtractionRequest request) {
|
|
private String extractCsv(ExtractionRequest request) {
|