Skip to content

.Net: Convert IVectorStore and IVectorStoreCollection from interfaces to base classes - #11860

Merged
Shay Rojansky (roji) merged 1 commit into
microsoft:feature-vector-data-preb3from
roji:AbstractBaseClasses
May 2, 2025
Merged

Shay Rojansky (roji) merged 1 commit into
microsoft:feature-vector-data-preb3from
roji:AbstractBaseClasses

Conversation

@roji

Copy link
Copy Markdown
Member

Closes #11775

@roji
Shay Rojansky (roji) requested a review from a team as a code owner May 2, 2025 12:34
@markwallace-microsoft Mark Wallace (markwallace-microsoft) added .NET Issue or Pull requests regarding .NET code kernel Issues or pull requests impacting the core kernel memory labels May 2, 2025
@github-actions github-actions Bot changed the title Convert IVectorStore and IVectorStoreCollection from interfaces to base classes .Net: Convert IVectorStore and IVectorStoreCollection from interfaces to base classes May 2, 2025
#pragma warning disable CA1711 // Identifiers should not have incorrect suffix (Collection)
#pragma warning disable CS0618 // IVectorizedSearch is obsolete
public interface IVectorStoreCollection<TKey, TRecord> : IVectorSearch<TRecord>, IVectorizedSearch<TRecord>
public abstract class VectorStoreCollection<TKey, TRecord> : IVectorSearch<TRecord>, IVectorizedSearch<TRecord>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember to update the xml docs for this type too. I see some references to interface above.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch, thanks.

where TVector : notnull;

/// <inheritdoc />
[Obsolete("Use either SearchEmbeddingAsync to search directly on embeddings, or SearchAsync to handle embedding generation internally as part of the call.")]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe not for this PR, but I suppose we can remove this now anyway, since we obsoleted it in the last release.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, absolutely. This - and some other obsoleted APIs - indeed need to be removed.

@roji
Shay Rojansky (roji) merged commit 8273da3 into microsoft:feature-vector-data-preb3 May 2, 2025
@roji
Shay Rojansky (roji) deleted the AbstractBaseClasses branch May 2, 2025 13:13

This branch was previously deployed

1 inactive deployment
integration — 823c1c53 Deployed May 2, 2025 by roji
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kernel Issues or pull requests impacting the core kernel memory .NET Issue or Pull requests regarding .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants