@@ -50,29 +50,31 @@ private static List<ChatMessage> convertChatMessages(List<dev.langchain4j.data.m
50
50
}
51
51
52
52
private static chat .giga .model .completion .ChatMessage convertMessage (dev .langchain4j .data .message .ChatMessage message , GigaChatChatRequestParameters parameters ) {
53
- if (message instanceof UserMessage ) {
53
+ if (message instanceof UserMessage userMessage ) {
54
54
return chat .giga .model .completion .ChatMessage .builder ()
55
55
.role (ChatMessage .Role .USER )
56
- .content ((( UserMessage ) message ) .contents ().stream ()
56
+ .content (userMessage .contents ().stream ()
57
57
.map (content -> content instanceof TextContent ? ((TextContent ) content ).text () : null )
58
58
.toList ().get (0 ))
59
59
.attachments (getOrDefault (parameters .getAttachments (), List .of ()))
60
60
.build ();
61
- } else if (message instanceof SystemMessage ) {
61
+ } else if (message instanceof SystemMessage systemMessage ) {
62
62
return chat .giga .model .completion .ChatMessage .builder ()
63
63
.role (ChatMessage .Role .SYSTEM )
64
- .content ((( SystemMessage ) message ) .text ())
64
+ .content (systemMessage .text ())
65
65
.build ();
66
- } else if (message instanceof AiMessage ) {
66
+ } else if (message instanceof AiMessage aiMessage ) {
67
+ var id = aiMessage .toolExecutionRequests () != null ?
68
+ aiMessage .toolExecutionRequests ().get (0 ).id () : null ;
67
69
return chat .giga .model .completion .ChatMessage .builder ()
68
70
.role (ChatMessage .Role .ASSISTANT )
69
- .functionsStateId ((( AiMessage ) message ). toolExecutionRequests (). get ( 0 ). id () )
70
- .content ((( AiMessage ) message ) .text ())
71
+ .functionsStateId (id )
72
+ .content (aiMessage .text ())
71
73
.build ();
72
- } else if (message instanceof ToolExecutionResultMessage ) {
74
+ } else if (message instanceof ToolExecutionResultMessage toolExecutionResultMessage ) {
73
75
return chat .giga .model .completion .ChatMessage .builder ()
74
76
.role (ChatMessage .Role .FUNCTION )
75
- .content ((( ToolExecutionResultMessage ) message ) .text ())
77
+ .content (toolExecutionResultMessage .text ())
76
78
.build ();
77
79
} else {
78
80
throw new IllegalArgumentException ("Unsupported message type: " + message .getClass ().getName ());
0 commit comments