diff --git a/docs/docs/apis-generate/chat.md b/docs/docs/apis-generate/chat.md index 9ed9e79..c9c73b7 100644 --- a/docs/docs/apis-generate/chat.md +++ b/docs/docs/apis-generate/chat.md @@ -33,7 +33,7 @@ public class Main { // start conversation with model OllamaChatResult chatResult = ollamaAPI.chat(requestModel); - System.out.println("First answer: " + chatResult.getResponse()); + System.out.println("First answer: " + chatResult.getResponseModel().getMessage().getContent()); // create next userQuestion requestModel = builder.withMessages(chatResult.getChatHistory()).withMessage(OllamaChatMessageRole.USER, "And what is the second largest city?").build(); @@ -41,7 +41,7 @@ public class Main { // "continue" conversation with model chatResult = ollamaAPI.chat(requestModel); - System.out.println("Second answer: " + chatResult.getResponse()); + System.out.println("Second answer: " + chatResult.getResponseModel().getMessage().getContent()); System.out.println("Chat History: " + chatResult.getChatHistory()); } @@ -205,7 +205,7 @@ public class Main { // start conversation with model OllamaChatResult chatResult = ollamaAPI.chat(requestModel); - System.out.println(chatResult.getResponse()); + System.out.println(chatResult.getResponseModel()); } } @@ -244,7 +244,7 @@ public class Main { new File("/path/to/image"))).build(); OllamaChatResult chatResult = ollamaAPI.chat(requestModel); - System.out.println("First answer: " + chatResult.getResponse()); + System.out.println("First answer: " + chatResult.getResponseModel()); builder.reset(); @@ -254,7 +254,7 @@ public class Main { .withMessage(OllamaChatMessageRole.USER, "What's the dogs breed?").build(); chatResult = ollamaAPI.chat(requestModel); - System.out.println("Second answer: " + chatResult.getResponse()); + System.out.println("Second answer: " + chatResult.getResponseModel()); } } ``` diff --git a/src/main/java/io/github/ollama4j/models/chat/OllamaChatResult.java b/src/main/java/io/github/ollama4j/models/chat/OllamaChatResult.java index 0ea1c00..bf7eaea 100644 --- a/src/main/java/io/github/ollama4j/models/chat/OllamaChatResult.java +++ b/src/main/java/io/github/ollama4j/models/chat/OllamaChatResult.java @@ -3,7 +3,6 @@ package io.github.ollama4j.models.chat; import java.util.List; import com.fasterxml.jackson.core.JsonProcessingException; -import io.github.ollama4j.models.response.OllamaResult; import lombok.Getter; import static io.github.ollama4j.utils.Utils.getObjectMapper; @@ -18,12 +17,12 @@ public class OllamaChatResult { private List chatHistory; - private OllamaChatResponseModel response; + private OllamaChatResponseModel responseModel; - public OllamaChatResult(OllamaChatResponseModel response, List chatHistory) { + public OllamaChatResult(OllamaChatResponseModel responseModel, List chatHistory) { this.chatHistory = chatHistory; - this.response = response; - appendAnswerToChatHistory(response); + this.responseModel = responseModel; + appendAnswerToChatHistory(responseModel); } private void appendAnswerToChatHistory(OllamaChatResponseModel response) { @@ -38,4 +37,19 @@ public class OllamaChatResult { throw new RuntimeException(e); } } + + @Deprecated + public String getResponse(){ + return responseModel != null ? responseModel.getMessage().getContent() : ""; + } + + @Deprecated + public int getHttpStatusCode(){ + return 200; + } + + @Deprecated + public long getResponseTime(){ + return responseModel != null ? responseModel.getTotalDuration() : 0L; + } } diff --git a/src/test/java/io/github/ollama4j/integrationtests/TestRealAPIs.java b/src/test/java/io/github/ollama4j/integrationtests/TestRealAPIs.java index d18187b..fd834dd 100644 --- a/src/test/java/io/github/ollama4j/integrationtests/TestRealAPIs.java +++ b/src/test/java/io/github/ollama4j/integrationtests/TestRealAPIs.java @@ -194,9 +194,9 @@ class TestRealAPIs { OllamaChatResult chatResult = ollamaAPI.chat(requestModel); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); - assertNotNull(chatResult.getResponse().getMessage()); - assertFalse(chatResult.getResponse().getMessage().getContent().isBlank()); + assertNotNull(chatResult.getResponseModel()); + assertNotNull(chatResult.getResponseModel().getMessage()); + assertFalse(chatResult.getResponseModel().getMessage().getContent().isBlank()); assertEquals(4, chatResult.getChatHistory().size()); } catch (IOException | OllamaBaseException | InterruptedException e) { fail(e); @@ -217,10 +217,10 @@ class TestRealAPIs { OllamaChatResult chatResult = ollamaAPI.chat(requestModel); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); - assertNotNull(chatResult.getResponse().getMessage()); - assertFalse(chatResult.getResponse().getMessage().getContent().isBlank()); - assertTrue(chatResult.getResponse().getMessage().getContent().startsWith("NI")); + assertNotNull(chatResult.getResponseModel()); + assertNotNull(chatResult.getResponseModel().getMessage()); + assertFalse(chatResult.getResponseModel().getMessage().getContent().isBlank()); + assertTrue(chatResult.getResponseModel().getMessage().getContent().startsWith("NI")); assertEquals(3, chatResult.getChatHistory().size()); } catch (IOException | OllamaBaseException | InterruptedException e) { fail(e); @@ -270,10 +270,10 @@ class TestRealAPIs { OllamaChatResult chatResult = ollamaAPI.chat(requestModel); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); - assertNotNull(chatResult.getResponse().getMessage()); - assertEquals(OllamaChatMessageRole.ASSISTANT.getRoleName(),chatResult.getResponse().getMessage().getRole().getRoleName()); - List toolCalls = chatResult.getResponse().getMessage().getToolCalls(); + assertNotNull(chatResult.getResponseModel()); + assertNotNull(chatResult.getResponseModel().getMessage()); + assertEquals(OllamaChatMessageRole.ASSISTANT.getRoleName(),chatResult.getResponseModel().getMessage().getRole().getRoleName()); + List toolCalls = chatResult.getResponseModel().getMessage().getToolCalls(); assertEquals(1, toolCalls.size()); assertEquals("get-employee-details",toolCalls.get(0).getFunction().getName()); assertEquals(1, toolCalls.get(0).getFunction().getArguments().size()); @@ -305,10 +305,10 @@ class TestRealAPIs { sb.append(substring); }); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); - assertNotNull(chatResult.getResponse().getMessage()); - assertNotNull(chatResult.getResponse().getMessage().getContent()); - assertEquals(sb.toString().trim(), chatResult.getResponse().getMessage().getContent().trim()); + assertNotNull(chatResult.getResponseModel()); + assertNotNull(chatResult.getResponseModel().getMessage()); + assertNotNull(chatResult.getResponseModel().getMessage().getContent()); + assertEquals(sb.toString().trim(), chatResult.getResponseModel().getMessage().getContent().trim()); } catch (IOException | OllamaBaseException | InterruptedException e) { fail(e); } @@ -327,7 +327,7 @@ class TestRealAPIs { OllamaChatResult chatResult = ollamaAPI.chat(requestModel); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); + assertNotNull(chatResult.getResponseModel()); builder.reset(); @@ -337,7 +337,7 @@ class TestRealAPIs { chatResult = ollamaAPI.chat(requestModel); assertNotNull(chatResult); - assertNotNull(chatResult.getResponse()); + assertNotNull(chatResult.getResponseModel()); } catch (IOException | OllamaBaseException | InterruptedException e) {