Skip to content

Commit 687fe2e

Browse files
committed
Fixing NullPointerException in toOpenAiRequest method for ToolCallng Test to pass.
1 parent 9f4a403 commit 687fe2e

File tree

1 file changed

+9
-4
lines changed
  • foundation-models/openai/src/main/java/com/sap/ai/sdk/foundationmodels/openai/spring

1 file changed

+9
-4
lines changed

foundation-models/openai/src/main/java/com/sap/ai/sdk/foundationmodels/openai/spring/OpenAiChatModel.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@
1414
import com.sap.ai.sdk.foundationmodels.openai.generated.model.ChatCompletionResponseMessage;
1515
import java.util.List;
1616
import java.util.Map;
17-
import java.util.Objects;
1817
import java.util.stream.Stream;
1918
import javax.annotation.Nonnull;
19+
20+
import io.vavr.control.Option;
2021
import lombok.RequiredArgsConstructor;
2122
import lombok.val;
2223
import org.springframework.ai.chat.messages.AssistantMessage;
@@ -65,7 +66,10 @@ private List<OpenAiMessage> toOpenAiRequest(final Prompt prompt) {
6566
.flatMap(
6667
message ->
6768
switch (message.getMessageType()) {
68-
case USER -> Stream.of(OpenAiMessage.user(message.getText()));
69+
case USER ->
70+
Stream.of(
71+
OpenAiMessage.user(
72+
Option.of(message.getText()).getOrElse(message.getText())));
6973
case ASSISTANT -> {
7074
val assistantMessage = (AssistantMessage) message;
7175
yield Stream.of(
@@ -74,7 +78,8 @@ private List<OpenAiMessage> toOpenAiRequest(final Prompt prompt) {
7478
new OpenAiMessageContent(
7579
List.of(
7680
new OpenAiTextItem(
77-
Objects.requireNonNull(message.getText())))),
81+
Option.of(message.getText())
82+
.getOrElse(message.getText())))),
7883
assistantMessage.getToolCalls().stream()
7984
.map(
8085
toolCall ->
@@ -85,7 +90,7 @@ private List<OpenAiMessage> toOpenAiRequest(final Prompt prompt) {
8590
toolCall.arguments()))
8691
.toList())
8792
: new OpenAiAssistantMessage(
88-
Objects.requireNonNull(message.getText())));
93+
Option.of(message.getText()).getOrElse(message.getText())));
8994
}
9095
case SYSTEM -> Stream.of(OpenAiMessage.system(message.getText()));
9196
case TOOL -> {

0 commit comments

Comments
 (0)