Added generateEmbeddings API

This commit is contained in:
Amith Koujalgi 2023-11-12 21:14:54 +05:30
parent e78609727e
commit 7933154462
3 changed files with 21 additions and 5 deletions

View File

@ -175,6 +175,20 @@ public class Main {
}
```
#### Generate embeddings:
```java
public class Main {
public static void main(String[] args) throws Exception {
String host = "http://localhost:11434/";
OllamaAPI ollamaAPI = new OllamaAPI(host);
ollamaAPI.setVerbose(true);
List<Double> doubleList = ollamaAPI.generateEmbeddings(OllamaModelType.LLAMA2, "Here is an article about llamas...");
doubleList.forEach(System.out::println);
}
}
```
#### Ask a question to the model with ollama4j
##### Using sync API:

View File

@ -293,12 +293,12 @@ public class OllamaAPI {
*
* @param model name of model to generate embeddings from
* @param prompt text to generate embeddings for
* @return embeddings as double[]
* @return embeddings
* @throws IOException
* @throws ParseException
* @throws OllamaBaseException
*/
public double[] generateEmbeddings(String model, String prompt) throws IOException, ParseException, OllamaBaseException {
public List<Double> generateEmbeddings(String model, String prompt) throws IOException, ParseException, OllamaBaseException {
String url = this.host + "/api/embeddings";
String jsonData = String.format("{\"model\": \"%s\", \"prompt\": \"%s\"}", model, prompt);
final HttpPost httpPost = new HttpPost(url);

View File

@ -2,18 +2,20 @@ package io.github.amithkoujalgi.ollama4j.core.models;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
public class EmbeddingResponse {
@JsonProperty("embedding")
private double[] embedding;
private List<Double> embedding;
public EmbeddingResponse() {
}
public double[] getEmbedding() {
public List<Double> getEmbedding() {
return embedding;
}
public void setEmbedding(double[] embedding) {
public void setEmbedding(List<Double> embedding) {
this.embedding = embedding;
}
}