Class QdrantEmbeddingStore

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

public class QdrantEmbeddingStore extends Object implements dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
Represents a Qdrant collection as an embedding store. With support for storing Metadata.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    QdrantEmbeddingStore(io.qdrant.client.QdrantClient client, String collectionName, String payloadTextKey)
     
    QdrantEmbeddingStore(String collectionName, String host, int port, boolean useTls, String payloadTextKey, String apiKey)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    add(dev.langchain4j.data.embedding.Embedding embedding)
     
    add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment)
     
    void
    add(String id, dev.langchain4j.data.embedding.Embedding embedding)
     
    addAll(List<dev.langchain4j.data.embedding.Embedding> embeddings)
     
    addAll(List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegments)
     
     
    void
    Deletes all points from the Qdrant collection.
    void
    Closes the underlying GRPC client.
    List<dev.langchain4j.store.embedding.EmbeddingMatch<dev.langchain4j.data.segment.TextSegment>>
    findRelevant(dev.langchain4j.data.embedding.Embedding referenceEmbedding, int maxResults, double minScore)
     
    dev.langchain4j.store.embedding.EmbeddingSearchResult<dev.langchain4j.data.segment.TextSegment>
    search(dev.langchain4j.store.embedding.EmbeddingSearchRequest request)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface dev.langchain4j.store.embedding.EmbeddingStore

    findRelevant, findRelevant, findRelevant, remove, removeAll, removeAll, removeAll
  • Constructor Details

    • QdrantEmbeddingStore

      public QdrantEmbeddingStore(String collectionName, String host, int port, boolean useTls, String payloadTextKey, @Nullable String apiKey)
      Parameters:
      collectionName - The name of the Qdrant collection.
      host - The host of the Qdrant instance.
      port - The GRPC port of the Qdrant instance.
      useTls - Whether to use TLS(HTTPS).
      payloadTextKey - The field name of the text segment in the Qdrant payload.
      apiKey - The Qdrant API key to authenticate with.
    • QdrantEmbeddingStore

      public QdrantEmbeddingStore(io.qdrant.client.QdrantClient client, String collectionName, String payloadTextKey)
      Parameters:
      client - A Qdrant client instance.
      collectionName - The name of the Qdrant collection.
      payloadTextKey - The field name of the text segment in the Qdrant payload.
  • Method Details

    • 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 List<String> addAll(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>
    • findRelevant

      public List<dev.langchain4j.store.embedding.EmbeddingMatch<dev.langchain4j.data.segment.TextSegment>> findRelevant(dev.langchain4j.data.embedding.Embedding referenceEmbedding, int maxResults, double minScore)
      Specified by:
      findRelevant in interface dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
    • clearStore

      public void clearStore()
      Deletes all points from the Qdrant collection.
    • close

      public void close()
      Closes the underlying GRPC client.
    • builder

      public static QdrantEmbeddingStore.Builder builder()