Ollama4j
A Java library (wrapper/binding) for Ollama server.
Loading...
Searching...
No Matches
OllamaChatMessage.java
Go to the documentation of this file.
1package io.github.ollama4j.models.chat;
2
3import static io.github.ollama4j.utils.Utils.getObjectMapper;
4
5import com.fasterxml.jackson.annotation.JsonProperty;
6import com.fasterxml.jackson.core.JsonProcessingException;
7import com.fasterxml.jackson.databind.annotation.JsonSerialize;
8
9import io.github.ollama4j.utils.FileToBase64Serializer;
10
11import java.util.List;
12
13import lombok.AllArgsConstructor;
14import lombok.Data;
15import lombok.NoArgsConstructor;
16import lombok.NonNull;
17import lombok.RequiredArgsConstructor;
18
24@Data
25@AllArgsConstructor
26@RequiredArgsConstructor
27@NoArgsConstructor
28public class OllamaChatMessage {
29
30 @NonNull
31 private OllamaChatMessageRole role;
32
33 @NonNull
34 private String content;
35
36 private @JsonProperty("tool_calls") List<OllamaChatToolCalls> toolCalls;
37
38 @JsonSerialize(using = FileToBase64Serializer.class)
39 private List<byte[]> images;
40
41 @Override
42 public String toString() {
43 try {
44 return getObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(this);
45 } catch (JsonProcessingException e) {
46 throw new RuntimeException(e);
47 }
48 }
49}