Class ChromaEmbeddingStore

java.lang.Object
dev.langchain4j.store.embedding.chroma.ChromaEmbeddingStore
All Implemented Interfaces:
dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>

public class ChromaEmbeddingStore extends Object implements dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
Represents a store for embeddings using the Chroma backend. Always uses cosine distance as the distance metric.
  • Constructor Details

    • ChromaEmbeddingStore

      public ChromaEmbeddingStore(ChromaEmbeddingStore.Builder builder)
      Initializes a new instance of ChromaEmbeddingStore with the specified parameters.
      Parameters:
      builder - The builder instance of ChromaEmbeddingStore.Builder.
    • ChromaEmbeddingStore

      @Deprecated(since="1.7.0-beta13", forRemoval=true) public ChromaEmbeddingStore(String baseUrl, String collectionName, Duration timeout, boolean logRequests, boolean logResponses)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Only works with the V1 API, use the ChromaEmbeddingStore(Builder) constructor instead.
      Initializes a new instance of ChromaEmbeddingStore (V1 API) with the specified parameters.
      Parameters:
      baseUrl - The base URL of the Chroma service.
      collectionName - The name of the collection in the Chroma service. If not specified, "default" will be used.
      timeout - The timeout duration for the Chroma client. If not specified, 5 seconds will be used.
      logRequests - If true, requests to the Chroma service are logged.
      logResponses - If true, responses from the Chroma service are logged.
  • Method Details

    • builder

      public static ChromaEmbeddingStore.Builder builder()
    • add

      public String add(dev.langchain4j.data.embedding.Embedding embedding)
      Specified by:
      add in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • add

      public void add(String id, dev.langchain4j.data.embedding.Embedding embedding)
      Specified by:
      add in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • add

      public String add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment)
      Specified by:
      add in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • addAll

      public List<String> addAll(List<dev.langchain4j.data.embedding.Embedding> embeddings)
      Specified by:
      addAll in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • addAll

      public void addAll(List<String> ids, List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegments)
      Specified by:
      addAll in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • search

      public dev.langchain4j.store.embedding.EmbeddingSearchResult<dev.langchain4j.data.segment.TextSegment> search(dev.langchain4j.store.embedding.EmbeddingSearchRequest request)
      Specified by:
      search in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • removeAll

      public void removeAll(Collection<String> ids)
      Specified by:
      removeAll in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • removeAll

      public void removeAll(dev.langchain4j.store.embedding.filter.Filter filter)
      Specified by:
      removeAll in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • removeAll

      public void removeAll()
      Specified by:
      removeAll in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>