forked from Mirror/ollama4j
		
	Adds Builder for EmbedRequests and deprecates old Embedding Models
This commit is contained in:
		@@ -45,7 +45,7 @@ public class OllamaChatRequestBuilder {
 | 
			
		||||
            try {
 | 
			
		||||
                return Files.readAllBytes(file.toPath());
 | 
			
		||||
            } catch (IOException e) {
 | 
			
		||||
                LOG.warn(String.format("File '%s' could not be accessed, will not add to message!", file.toPath()), e);
 | 
			
		||||
                LOG.warn("File '{}' could not be accessed, will not add to message!", file.toPath(), e);
 | 
			
		||||
                return new byte[0];
 | 
			
		||||
            }
 | 
			
		||||
        }).collect(Collectors.toList());
 | 
			
		||||
@@ -63,9 +63,9 @@ public class OllamaChatRequestBuilder {
 | 
			
		||||
                try {
 | 
			
		||||
                    binaryImages.add(Utils.loadImageBytesFromUrl(imageUrl));
 | 
			
		||||
                } catch (URISyntaxException e) {
 | 
			
		||||
                    LOG.warn(String.format("URL '%s' could not be accessed, will not add to message!", imageUrl), e);
 | 
			
		||||
                    LOG.warn("URL '{}' could not be accessed, will not add to message!", imageUrl, e);
 | 
			
		||||
                } catch (IOException e) {
 | 
			
		||||
                    LOG.warn(String.format("Content of URL '%s' could not be read, will not add to message!", imageUrl), e);
 | 
			
		||||
                    LOG.warn("Content of URL '{}' could not be read, will not add to message!", imageUrl, e);
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,40 @@
 | 
			
		||||
package io.github.ollama4j.models.embeddings;
 | 
			
		||||
 | 
			
		||||
import io.github.ollama4j.utils.Options;
 | 
			
		||||
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Builderclass to easily create Requests for Embedding models using ollama.
 | 
			
		||||
 */
 | 
			
		||||
public class OllamaEmbedRequestBuilder {
 | 
			
		||||
 | 
			
		||||
    private final OllamaEmbedRequestModel request;
 | 
			
		||||
 | 
			
		||||
    private OllamaEmbedRequestBuilder(String model, List<String> input) {
 | 
			
		||||
        this.request = new OllamaEmbedRequestModel(model,input);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static OllamaEmbedRequestBuilder getInstance(String model, String... input){
 | 
			
		||||
        return new OllamaEmbedRequestBuilder(model, List.of(input));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public OllamaEmbedRequestBuilder withOptions(Options options){
 | 
			
		||||
        this.request.setOptions(options.getOptionsMap());
 | 
			
		||||
        return this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public OllamaEmbedRequestBuilder withKeepAlive(String keepAlive){
 | 
			
		||||
        this.request.setKeepAlive(keepAlive);
 | 
			
		||||
        return this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public OllamaEmbedRequestBuilder withoutTruncate(){
 | 
			
		||||
        this.request.setTruncate(false);
 | 
			
		||||
        return this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public OllamaEmbedRequestModel build() {
 | 
			
		||||
        return this.request;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -7,6 +7,7 @@ import lombok.Data;
 | 
			
		||||
 | 
			
		||||
@SuppressWarnings("unused")
 | 
			
		||||
@Data
 | 
			
		||||
@Deprecated(since="1.0.90")
 | 
			
		||||
public class OllamaEmbeddingResponseModel {
 | 
			
		||||
    @JsonProperty("embedding")
 | 
			
		||||
    private List<Double> embedding;
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@ package io.github.ollama4j.models.embeddings;
 | 
			
		||||
 | 
			
		||||
import io.github.ollama4j.utils.Options;
 | 
			
		||||
 | 
			
		||||
@Deprecated(since="1.0.90")
 | 
			
		||||
public class OllamaEmbeddingsRequestBuilder {
 | 
			
		||||
 | 
			
		||||
    private OllamaEmbeddingsRequestBuilder(String model, String prompt){
 | 
			
		||||
 
 | 
			
		||||
@@ -12,6 +12,7 @@ import lombok.RequiredArgsConstructor;
 | 
			
		||||
@Data
 | 
			
		||||
@RequiredArgsConstructor
 | 
			
		||||
@NoArgsConstructor
 | 
			
		||||
@Deprecated(since="1.0.90")
 | 
			
		||||
public class OllamaEmbeddingsRequestModel {
 | 
			
		||||
  @NonNull
 | 
			
		||||
  private String model;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user