Class OllamaApi

java.lang.Object
org.springframework.ai.ollama.api.OllamaApi

public class OllamaApi extends Object
Java Client for the Ollama API. https://ollama.ai
Since:
0.8.0
Author:
Christian Tzolov, Thomas Vitale
  • Field Details

    • PROVIDER_NAME

      public static final String PROVIDER_NAME
    • REQUEST_BODY_NULL_ERROR

      public static final String REQUEST_BODY_NULL_ERROR
      See Also:
  • Constructor Details

    • OllamaApi

      public OllamaApi()
      Default constructor that uses the default localhost url.
    • OllamaApi

      public OllamaApi(String baseUrl)
      Crate a new OllamaApi instance with the given base url.
      Parameters:
      baseUrl - The base url of the Ollama server.
    • OllamaApi

      public OllamaApi(String baseUrl, org.springframework.web.client.RestClient.Builder restClientBuilder, org.springframework.web.reactive.function.client.WebClient.Builder webClientBuilder)
      Crate a new OllamaApi instance with the given base url and RestClient.Builder.
      Parameters:
      baseUrl - The base url of the Ollama server.
      restClientBuilder - The RestClient.Builder to use.
  • Method Details

    • generate

      @Deprecated(since="1.0.0-M2", forRemoval=true) public OllamaApi.GenerateResponse generate(OllamaApi.GenerateRequest completionRequest)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Use chat(ChatRequest) instead.
      Generate a completion for the given prompt.
      Parameters:
      completionRequest - Completion request.
      Returns:
      Completion response.
    • generateStreaming

      @Deprecated(since="1.0.0-M2", forRemoval=true) public reactor.core.publisher.Flux<OllamaApi.GenerateResponse> generateStreaming(OllamaApi.GenerateRequest completionRequest)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Generate a streaming completion for the given prompt.
      Parameters:
      completionRequest - Completion request. The request must set the stream property to true.
      Returns:
      Completion response as a Flux stream.
    • chat

      public OllamaApi.ChatResponse chat(OllamaApi.ChatRequest chatRequest)
      Generate the next message in a chat with a provided model. This is a streaming endpoint (controlled by the 'stream' request property), so there will be a series of responses. The final response object will include statistics and additional data from the request.
      Parameters:
      chatRequest - Chat request.
      Returns:
      Chat response.
    • streamingChat

      public reactor.core.publisher.Flux<OllamaApi.ChatResponse> streamingChat(OllamaApi.ChatRequest chatRequest)
      Streaming response for the chat completion request.
      Parameters:
      chatRequest - Chat request. The request must set the stream property to true.
      Returns:
      Chat response as a Flux stream.
    • embed

      Generate embeddings from a model.
      Parameters:
      embeddingsRequest - Embedding request.
      Returns:
      Embeddings response.
    • embeddings

      @Deprecated(since="1.0.0-M2", forRemoval=true) public OllamaApi.EmbeddingResponse embeddings(OllamaApi.EmbeddingRequest embeddingRequest)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Generate embeddings from a model.
      Parameters:
      embeddingRequest - Embedding request.
      Returns:
      Embedding response.