Class TablestoreEmbeddingStore

java.lang.Object
dev.langchain4j.store.embedding.tablestore.TablestoreEmbeddingStore
All Implemented Interfaces:
EmbeddingStore<TextSegment>

public class TablestoreEmbeddingStore extends Object implements EmbeddingStore<TextSegment>
  • Constructor Details

    • TablestoreEmbeddingStore

      public TablestoreEmbeddingStore(com.alicloud.openservices.tablestore.SyncClient client, int vectorDimension)
    • TablestoreEmbeddingStore

      public TablestoreEmbeddingStore(com.alicloud.openservices.tablestore.SyncClient client, int vectorDimension, List<com.alicloud.openservices.tablestore.model.search.FieldSchema> metadataSchemaList)
    • TablestoreEmbeddingStore

      public TablestoreEmbeddingStore(com.alicloud.openservices.tablestore.SyncClient client, String tableName, String searchIndexName, String pkName, String textField, String embeddingField, int vectorDimension, com.alicloud.openservices.tablestore.model.search.vector.VectorMetricType vectorMetricType, List<com.alicloud.openservices.tablestore.model.search.FieldSchema> metadataSchemaList)
  • Method Details

    • init

      public void init()
    • getClient

      public com.alicloud.openservices.tablestore.SyncClient getClient()
    • getTableName

      public String getTableName()
    • getSearchIndexName

      public String getSearchIndexName()
    • getPkName

      public String getPkName()
    • getTextField

      public String getTextField()
    • getEmbeddingField

      public String getEmbeddingField()
    • getVectorDimension

      public int getVectorDimension()
    • getVectorMetricType

      public com.alicloud.openservices.tablestore.model.search.vector.VectorMetricType getVectorMetricType()
    • getMetadataSchemaList

      public List<com.alicloud.openservices.tablestore.model.search.FieldSchema> getMetadataSchemaList()
    • add

      public String add(Embedding embedding)
      Description copied from interface: EmbeddingStore
      Adds a given embedding to the store.
      Specified by:
      add in interface EmbeddingStore<TextSegment>
      Parameters:
      embedding - The embedding to be added to the store.
      Returns:
      The auto-generated ID associated with the added embedding.
    • add

      public void add(String id, Embedding embedding)
      Description copied from interface: EmbeddingStore
      Adds a given embedding to the store.
      Specified by:
      add in interface EmbeddingStore<TextSegment>
      Parameters:
      id - The unique identifier for the embedding to be added.
      embedding - The embedding to be added to the store.
    • add

      public String add(Embedding embedding, TextSegment textSegment)
      Description copied from interface: EmbeddingStore
      Adds a given embedding and the corresponding content that has been embedded to the store.
      Specified by:
      add in interface EmbeddingStore<TextSegment>
      Parameters:
      embedding - The embedding to be added to the store.
      textSegment - Original content that was embedded.
      Returns:
      The auto-generated ID associated with the added embedding.
    • addAll

      public List<String> addAll(List<Embedding> embeddings)
      Description copied from interface: EmbeddingStore
      Adds multiple embeddings to the store.
      Specified by:
      addAll in interface EmbeddingStore<TextSegment>
      Parameters:
      embeddings - A list of embeddings to be added to the store.
      Returns:
      A list of auto-generated IDs associated with the added embeddings.
    • addAll

      public List<String> addAll(List<Embedding> embeddings, List<TextSegment> embedded)
      Description copied from interface: EmbeddingStore
      Adds multiple embeddings and their corresponding contents that have been embedded to the store.
      Specified by:
      addAll in interface EmbeddingStore<TextSegment>
      Parameters:
      embeddings - A list of embeddings to be added to the store.
      embedded - A list of original contents that were embedded.
      Returns:
      A list of auto-generated IDs associated with the added embeddings.
    • remove

      public void remove(String id)
      Description copied from interface: EmbeddingStore
      Removes a single embedding from the store by ID.
      Specified by:
      remove in interface EmbeddingStore<TextSegment>
      Parameters:
      id - The unique ID of the embedding to be removed.
    • removeAll

      public void removeAll(Collection<String> ids)
      Description copied from interface: EmbeddingStore
      Removes all embeddings that match the specified IDs from the store.
      Specified by:
      removeAll in interface EmbeddingStore<TextSegment>
      Parameters:
      ids - A collection of unique IDs of the embeddings to be removed.
    • removeAll

      public void removeAll(Filter filter)
      Description copied from interface: EmbeddingStore
      Removes all embeddings that match the specified Filter from the store.
      Specified by:
      removeAll in interface EmbeddingStore<TextSegment>
      Parameters:
      filter - The filter to be applied to the Metadata of the TextSegment during removal. Only embeddings whose TextSegment's Metadata match the Filter will be removed.
    • removeAll

      public void removeAll()
      Description copied from interface: EmbeddingStore
      Removes all embeddings from the store.
      Specified by:
      removeAll in interface EmbeddingStore<TextSegment>
    • search

      Description copied from interface: EmbeddingStore
      Searches for the most similar (closest in the embedding space) Embeddings.
      All search criteria are defined inside the EmbeddingSearchRequest.
      EmbeddingSearchRequest.filter() can be used to filter by user/memory ID. Please note that not all EmbeddingStore implementations support Filtering.
      Specified by:
      search in interface EmbeddingStore<TextSegment>
      Parameters:
      request - A request to search in an EmbeddingStore. Contains all search criteria.
      Returns:
      An EmbeddingSearchResult containing all found Embeddings.
    • mapFilterToQuery

      protected com.alicloud.openservices.tablestore.model.search.query.Query mapFilterToQuery(Filter filter)
    • deleteTableAndIndex

      protected void deleteTableAndIndex()
    • innerAdd

      protected void innerAdd(String id, Embedding embedding, TextSegment textSegment)
    • innerDelete

      protected void innerDelete(String id)