1package io.github.ollama4j.models.request;
3import io.github.ollama4j.OllamaAPI;
4import io.github.ollama4j.utils.Constants;
6import org.slf4j.Logger;
7import org.slf4j.LoggerFactory;
10import java.net.http.HttpRequest;
11import java.time.Duration;
19 private static final Logger LOG = LoggerFactory.getLogger(
OllamaAPI.class);
21 private final String host;
22 private final Auth auth;
23 private final long requestTimeoutSeconds;
24 private final boolean verbose;
29 this.requestTimeoutSeconds = requestTimeoutSeconds;
30 this.verbose = verbose;
45 HttpRequest.Builder requestBuilder =
46 HttpRequest.newBuilder(uri)
48 .timeout(Duration.ofSeconds(
this.requestTimeoutSeconds));
52 return requestBuilder;
61 return this.auth !=
null;
abstract String getAuthHeaderValue()
abstract boolean parseResponseAndAddToBuffer(String line, StringBuilder responseBuffer, StringBuilder thinkingBuffer)
abstract String getEndpointSuffix()
HttpRequest.Builder getRequestBuilderDefault(URI uri)
boolean isAuthCredentialsSet()
OllamaEndpointCaller(String host, Auth auth, long requestTimeoutSeconds, boolean verbose)