Skip to content

Commit

Permalink
Changing safetySettings to map of harm category and harm threshold
Browse files Browse the repository at this point in the history
  • Loading branch information
Suhas-Koheda committed Jan 3, 2025
1 parent 9c167d1 commit 816652c
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -97,16 +97,15 @@ private GeminiMode checkGeminiModeForNull(GeminiFunctionCallingConfig geminiFunc
return geminiFunctionCallingConfig.geminiMode();
}

private Map<GeminiHarmCategory,GeminiHarmBlockThreshold> checkSafetySettingForNull(GeminiSafetySetting safetySetting) {
if(safetySetting==null){
private Map<GeminiHarmCategory,GeminiHarmBlockThreshold> checkSafetySettingForNull(Map<GeminiHarmCategory,GeminiHarmBlockThreshold> safetySetting) {
if(safetySetting==null || safetySetting.isEmpty()){
Map<GeminiHarmCategory,GeminiHarmBlockThreshold> defaultMap= new HashMap<>();
defaultMap.put(HARM_CATEGORY_CIVIC_INTEGRITY,HARM_BLOCK_THRESHOLD_UNSPECIFIED);
return defaultMap;
}
return Map.of(
safetySetting.geminiHarmCategory(),
safetySetting.geminiHarmBlockThreshold()
);
Map<GeminiHarmCategory,GeminiHarmBlockThreshold> userMap= new HashMap<>();
safetySetting.keySet().forEach(key-> userMap.put(key,safetySetting.get(key)));
return userMap;
}

}
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package dev.langchain4j.googleaigemini.spring;

import dev.langchain4j.model.chat.request.ResponseFormat;
import dev.langchain4j.model.googleai.GeminiHarmBlockThreshold;
import dev.langchain4j.model.googleai.GeminiHarmCategory;

import java.time.Duration;
import java.util.Map;

public record ChatModelProperties(
String apiKey,
Expand All @@ -15,7 +18,7 @@ public record ChatModelProperties(
Boolean logRequestsAndResponses,
Integer maxRetries,
Duration timeout,
GeminiSafetySetting safetySetting,
Map<GeminiHarmCategory,GeminiHarmBlockThreshold> safetySetting,
GeminiFunctionCallingConfig functionCallingConfig
) {
}

This file was deleted.

0 comments on commit 816652c

Please sign in to comment.