Class AlloyDBEmbeddingStore
java.lang.Object
dev.langchain4j.community.store.embedding.alloydb.AlloyDBEmbeddingStore
- All Implemented Interfaces:
dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
public class AlloyDBEmbeddingStore
extends Object
implements dev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
AlloyDB EmbeddingStore Implementation
Instances of this store are created by configuring a builder:
EmbeddingStore<TextSegment> store = new AlloyDBEmbeddingStore.Builder(alloyDBEngine, "TABLE_NAME")
.metadataColumns(metadataColumnNames)
.build();-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder which configures and creates instances ofAlloyDBEmbeddingStore. -
Constructor Summary
ConstructorsConstructorDescriptionConstructor for AlloyDBEmbeddingStore -
Method Summary
Modifier and TypeMethodDescriptionadd(dev.langchain4j.data.embedding.Embedding embedding) add(dev.langchain4j.data.embedding.Embedding embedding, dev.langchain4j.data.segment.TextSegment textSegment) voidaddAll(List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegment) voidaddAll(List<String> ids, List<dev.langchain4j.data.embedding.Embedding> embeddings, List<dev.langchain4j.data.segment.TextSegment> textSegments) voidapplyVectorIndex(BaseIndex index, String name, Boolean concurrently) Create index in the vector store tablebuilder(AlloyDBEngine engine, String tableName) Create a newAlloyDBEmbeddingStore.Builder.voiddropVectorIndex(String name) remove index from the vector store tablevoidre-index the vector store tablevoidremoveAll(Collection<String> ids) dev.langchain4j.store.embedding.EmbeddingSearchResult<dev.langchain4j.data.segment.TextSegment> search(dev.langchain4j.store.embedding.EmbeddingSearchRequest request) Searches for the most similar (closest in the embedding space)Embeddings.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface dev.langchain4j.store.embedding.EmbeddingStore
generateIds, remove, removeAll, removeAll
-
Constructor Details
-
AlloyDBEmbeddingStore
Constructor for AlloyDBEmbeddingStore- Parameters:
builder- builder.
-
-
Method Details
-
add
- Specified by:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
add
- Specified by:
addin interfacedev.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:
addin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
addAll
- Specified by:
addAllin interfacedev.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> textSegment) - Specified by:
addAllin interfacedev.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) Searches for the most similar (closest in the embedding space)Embeddings.
All search criteria are defined inside theEmbeddingSearchRequest.
EmbeddingSearchRequest.filter()can be used to filter by various metadata entries based on MetadataColumns in the EmbeddingStoreConfig.- Specified by:
searchin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>- Parameters:
request- A request to search in anEmbeddingStore. Contains all search criteria.- Returns:
- An
EmbeddingSearchResultcontaining all foundEmbeddings. IncludedEmbeddingMatchscores are derived from chosenDistanceStrategyset in theAlloyDBEmbeddingStore.
-
removeAll
- Specified by:
removeAllin interfacedev.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:
addAllin interfacedev.langchain4j.store.embedding.EmbeddingStore<dev.langchain4j.data.segment.TextSegment>
-
applyVectorIndex
Create index in the vector store table- Parameters:
index- , index to be appliedname- , name of the indexconcurrently- , CONCURRENTLY option
-
dropVectorIndex
remove index from the vector store table- Parameters:
name- , name of the index
-
reindex
re-index the vector store table- Parameters:
name- , name of the index
-
builder
Create a newAlloyDBEmbeddingStore.Builder.- Parameters:
engine- requiredAlloyDBEnginetableName- table to be used as embedding store- Returns:
- the new
AlloyDBEmbeddingStore.Builder.
-