@@ -58,38 +58,41 @@ public TokenUsage getTokenUsage() {
5858 @ Nonnull
5959 public List <Message > getAllMessages () throws IllegalArgumentException {
6060 final var messages = new ArrayList <Message >();
61-
6261 for (final ChatMessage chatMessage : originalResponse .getModuleResults ().getTemplating ()) {
6362 if (chatMessage instanceof SingleChatMessage simpleMsg ) {
64- final var message =
65- switch (simpleMsg .getRole ()) {
66- case "user" -> Message .user (simpleMsg .getContent ());
67- case "assistant" -> Message .assistant (simpleMsg .getContent ());
68- case "system" -> Message .system (simpleMsg .getContent ());
69- default -> throw new IllegalStateException ("Unexpected role: " + simpleMsg .getRole ());
70- };
71- messages .add (message );
63+ messages .add (chatMessageIntoMessage (simpleMsg ));
7264 } else if (chatMessage instanceof MultiChatMessage mCMessage ) {
73- messages .add (
74- switch (mCMessage .getRole ()) {
75- case "user" ->
76- new UserMessage (MessageContent .fromMCMContentList (mCMessage .getContent ()));
77- case "system" ->
78- new SystemMessage (MessageContent .fromMCMContentList (mCMessage .getContent ()));
79- default ->
80- throw new IllegalStateException (
81- "Unexpected role with complex message: " + mCMessage .getRole ());
82- });
65+ messages .add (chatMessageIntoMessage (mCMessage ));
8366 } else {
8467 throw new IllegalArgumentException (
8568 "Messages of type " + chatMessage .getClass () + " are not supported by convenience API" );
8669 }
8770 }
88-
8971 messages .add (Message .assistant (getChoice ().getMessage ().getContent ()));
9072 return messages ;
9173 }
9274
75+ @ Nonnull
76+ private Message chatMessageIntoMessage (@ Nonnull final SingleChatMessage simpleMsg ) {
77+ return switch (simpleMsg .getRole ()) {
78+ case "user" -> Message .user (simpleMsg .getContent ());
79+ case "assistant" -> Message .assistant (simpleMsg .getContent ());
80+ case "system" -> Message .system (simpleMsg .getContent ());
81+ default -> throw new IllegalStateException ("Unexpected role: " + simpleMsg .getRole ());
82+ };
83+ }
84+
85+ @ Nonnull
86+ private Message chatMessageIntoMessage (@ Nonnull final MultiChatMessage mCMessage ) {
87+ return switch (mCMessage .getRole ()) {
88+ case "user" -> new UserMessage (MessageContent .fromMCMContentList (mCMessage .getContent ()));
89+ case "system" -> new SystemMessage (MessageContent .fromMCMContentList (mCMessage .getContent ()));
90+ default ->
91+ throw new IllegalStateException (
92+ "Unexpected role with complex message: " + mCMessage .getRole ());
93+ };
94+ }
95+
9396 /**
9497 * Get the LLM response. Useful for accessing the finish reason or further data like logprobs.
9598 *
0 commit comments