Skip to content

Commit f456970

Browse files
author
Stepan Kamenik
committed
feat(FgForrest#3): add chatgpt translator a configurations
1 parent 58ea24c commit f456970

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

src/main/java/one/edee/babylon/export/translator/DeeplTranslator.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
import java.util.List;
1414
import java.util.stream.Collectors;
1515

16+
import static java.util.Optional.ofNullable;
17+
1618
/**
1719
* I apologize in advance for the lack of documentation in this code.
1820
* I had every intention of providing clear and concise explanations
@@ -43,13 +45,16 @@ public List<String> translate(@Nullable String defaultLang, @NotNull List<String
4345
if (lang.equals("en")) {
4446
lang = "en-GB";
4547
}
48+
49+
String contextMessage = System.getProperty("babylon.deepl.context");
4650
try {
4751
return service.translateText(
4852
original,
4953
defaultLang,
5054
lang,
5155
new TextTranslationOptions()
52-
.setContext("You are eshop translator. Do not translate text from other languages then source lang, or technical texts."))
56+
.setContext(ofNullable(contextMessage)
57+
.orElse("You are eshop translator. Do not translate text from other languages then source lang, or technical texts.")))
5358
.stream()
5459
.map(TextResult::getText)
5560
.collect(Collectors.toList());

src/main/java/one/edee/babylon/export/translator/OpenAiTranslator.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,10 @@ public List<String> translate(@Nullable String defaultLang, @NotNull List<String
5656
lang);
5757

5858

59+
String joined = String.join("~", original);
5960
List<ChatMessage> messages = Arrays.asList(
6061
new ChatMessage("system", formattedSystemMessage),
61-
new ChatMessage("user", String.join("~", original))
62+
new ChatMessage("user", joined)
6263
);
6364

6465
ChatCompletionResult chatCompletion;
@@ -81,7 +82,10 @@ public List<String> translate(@Nullable String defaultLang, @NotNull List<String
8182
}
8283
throw e;
8384
}
84-
return Arrays.stream(chatCompletion.getChoices().get(0).getMessage().getContent().split("~")).collect(Collectors.toList());
85+
String result = chatCompletion.getChoices().get(0).getMessage().getContent();
86+
List<String> output = Arrays.stream(result.split("~")).collect(Collectors.toList());
87+
Assert.isTrue(output.size() == original.size(), "Size not equal " + joined + " " + result);
88+
return output;
8589
}
8690

8791
@Override

0 commit comments

Comments
 (0)