Class CouchbaseSearchVectorStore
java.lang.Object
org.springframework.ai.vectorstore.observation.AbstractObservationVectorStore
org.springframework.ai.vectorstore.CouchbaseSearchVectorStore
- All Implemented Interfaces:
AutoCloseable
,Consumer<List<Document>>
,DocumentWriter
,VectorStore
,org.springframework.beans.factory.InitializingBean
public class CouchbaseSearchVectorStore
extends AbstractObservationVectorStore
implements org.springframework.beans.factory.InitializingBean, AutoCloseable
- Since:
- 1.0.0
- Author:
- Laurent Doguin
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
static final record
-
Field Summary
Fields inherited from class org.springframework.ai.vectorstore.observation.AbstractObservationVectorStore
batchingStrategy
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
-
Method Summary
Modifier and TypeMethodDescriptionvoid
builder
(com.couchbase.client.java.Cluster cluster, EmbeddingModel embeddingModel) void
close()
createObservationContextBuilder
(String operationName) Create a newVectorStoreObservationContext.Builder
instance.void
Perform the actual add operation.void
Perform the actual delete operation.void
doDelete
(Filter.Expression filterExpression) Template method for concrete implementations to provide filter-based deletion logic.doSimilaritySearch
(SearchRequest springAiRequest) Perform the actual similarity search operation.<T> Optional<T>
Returns the native client if available in this vector store implementation.void
Methods inherited from class org.springframework.ai.vectorstore.observation.AbstractObservationVectorStore
add, delete, delete, similaritySearch
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.ai.document.DocumentWriter
write
Methods inherited from interface org.springframework.ai.vectorstore.VectorStore
accept, delete, getName, similaritySearch
-
Constructor Details
-
CouchbaseSearchVectorStore
-
-
Method Details
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
-
doAdd
Description copied from class:AbstractObservationVectorStore
Perform the actual add operation.- Specified by:
doAdd
in classAbstractObservationVectorStore
- Parameters:
documents
- the documents to add
-
doDelete
Description copied from class:AbstractObservationVectorStore
Perform the actual delete operation.- Specified by:
doDelete
in classAbstractObservationVectorStore
- Parameters:
idList
- the list of document IDs to delete
-
doDelete
Description copied from class:AbstractObservationVectorStore
Template method for concrete implementations to provide filter-based deletion logic.- Overrides:
doDelete
in classAbstractObservationVectorStore
- Parameters:
filterExpression
- Filter expression to identify documents to delete
-
doSimilaritySearch
Description copied from class:AbstractObservationVectorStore
Perform the actual similarity search operation.- Specified by:
doSimilaritySearch
in classAbstractObservationVectorStore
- Parameters:
springAiRequest
- the search request- Returns:
- the list of documents that match the query request conditions
-
getNativeClient
Description copied from interface:VectorStore
Returns the native client if available in this vector store implementation. Note on usage: 1. Returns empty Optional when no native client is available 2. Due to Java type erasure, runtime type checking is not possible Example usage: When working with implementation with known native client: Optionalclient = vectorStore.getNativeClient(); Note: Using Optional<?> will return the native client if one exists, rather than an empty Optional. For type safety, prefer using the specific client type. - Specified by:
getNativeClient
in interfaceVectorStore
- Type Parameters:
T
- The type of the native client- Returns:
- Optional containing native client if available, empty Optional otherwise
-
createObservationContextBuilder
Description copied from class:AbstractObservationVectorStore
Create a newVectorStoreObservationContext.Builder
instance.- Specified by:
createObservationContextBuilder
in classAbstractObservationVectorStore
- Parameters:
operationName
- the operation name- Returns:
- the observation context builder
-
builder
public static CouchbaseSearchVectorStore.Builder builder(com.couchbase.client.java.Cluster cluster, EmbeddingModel embeddingModel) -
initCluster
- Throws:
InterruptedException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Throws:
Exception
-