Repository navigation
Description
Currently, each connector has an optional I*VectorStoreRecordCollectionFactory on its *VectorStoreOptions, where the user can provide a factory for collections, for customizing how collections get created when IVectorStore.CreateCollection() gets invoked.
Without this API, users can already instantiate implementations IVectorStoreRecordCollection themselves, passing whatever makes sense to the constructor; this means doing provider-specific, but so does I*VectorStoreRecordCollectionFactory.
I'm assuming the intent here is to allow users to still use the IVectorStore as an abstraction, and still control provider-specific details on how collections are configured when that abstraction is used. If that's indeed the idea, then can people do the same by extending the IVectorStore implementation of their provider (e.g. MyModifiedQdrantVectorStore), and override the GetCollection() method to do whatever they want?
(I'm basically looking to distill the public APIs to the necessary minimum, and see whether advanced user needs can be met simply by composing on top rather than introducing more public APIs. westey (@westey-m) this is a bit similar to our discussion on custom mapper, where it should be possible to layer on top rather than introduce a new concept into the provider itself, etc.)
Metadata
Metadata
Labels
Type
Projects
- StatusShow more project fieldsBacklog: Planned
Activity
westey-m commentedon Feb 17, 2025
Shay Rojansky (@roji), that's a good idea. The intention with I*VectorStoreRecordCollectionFactory is indeed to allow passing custom options when creating a collection. I think that overriding CreateCollection via a decorator should allow for the same, if not more flexibility to what we have today.
[-].Net MEVD: Discuss I*VectorStoreRecordCollectionFactory[/-][+].Net MEVD: Remove I*VectorStoreRecordCollectionFactory[/+]Obsolete MEVD connectors collection factories
Obsolete MEVD connectors collection factories
Obsolete MEVD connectors collection factories
.Net: Obsolete MEVD connectors collection factories (#10590)