Class WeaviateVectorStore

java.lang.Object
org.springframework.ai.vectorstore.WeaviateVectorStore
All Implemented Interfaces:
Consumer<List<Document>>, DocumentWriter, VectorStore, org.springframework.beans.factory.InitializingBean

public class WeaviateVectorStore extends Object implements VectorStore, org.springframework.beans.factory.InitializingBean
A VectorStore implementation backed by Weaviate vector database. Note: You can assign arbitrary metadata fields with your Documents. Later will be persisted and managed as Document fields. But only the metadata keys listed in filterMetadataFields can be used for similarity search expression filters.
Author:
Christian Tzolov
  • Field Details

  • Constructor Details

    • WeaviateVectorStore

      public WeaviateVectorStore(WeaviateVectorStore.WeaviateVectorStoreConfig vectorStoreConfig, EmbeddingClient embeddingClient)
      Constructs a new WeaviateVectorStore.
      Parameters:
      vectorStoreConfig - The configuration for the store.
      embeddingClient - The client for embedding operations.
  • Method Details

    • add

      public void add(List<Document> documents)
      Description copied from interface: VectorStore
      Adds list of Documents to the vector store.
      Specified by:
      add in interface VectorStore
      Parameters:
      documents - the list of documents to store. Throws an exception if the underlying provider checks for duplicate IDs.
    • delete

      public Optional<Boolean> delete(List<String> documentIds)
      Description copied from interface: VectorStore
      Deletes documents from the vector store.
      Specified by:
      delete in interface VectorStore
      Parameters:
      documentIds - list of document ids for which documents will be removed.
      Returns:
    • similaritySearch

      public List<Document> similaritySearch(SearchRequest request)
      Description copied from interface: VectorStore
      Retrieves documents by query embedding similarity and metadata filters to retrieve exactly the number of nearest-neighbor results that match the request criteria.
      Specified by:
      similaritySearch in interface VectorStore
      Parameters:
      request - Search request for set search parameters, such as the query text, topK, similarity threshold and metadata filter expressions.
      Returns:
      Returns documents th match the query request conditions.
    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
      Throws:
      Exception