Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR introduces a vector index feature using FreshVamana algorithm for approximate nearest neighbor (ANN) searches on .NET 9.0+. The implementation adds support for semantic/vector search capabilities with ReadOnlySpan embeddings.
Key changes:
- Implements FreshVamana algorithm for approximate nearest neighbor search
- Adds vector index support with NET9_0_OR_GREATER compiler directives
- Provides semantic search functionality for embedding-based queries
Reviewed Changes
Copilot reviewed 24 out of 28 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| Akade.IndexedSet/Indices/VectorIndex.cs | New vector index implementation using FreshVamana graph |
| Akade.IndexedSet/DataStructures/FreshVamana/*.cs | Core FreshVamana algorithm implementation with graph, settings, and node classes |
| Akade.IndexedSet/IndexedSetBuilder.cs | Added WithVectorIndex method and spelling corrections |
| Akade.IndexedSet/IndexedSet.cs | Added ApproximateNearestNeighbors method with NET9+ constraints |
| SourceGenerator/*/ConcurrentSetSourceGenerator.cs | Enhanced to handle NET version compiler directives |
| Akade.IndexedSet.Tests/Samples/Search/SemanticSearch.cs | Sample implementation using semantic search with embeddings |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaSettings.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaSettings.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.SearchList.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 27 out of 31 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
Akade.IndexedSet/DataStructures/FreshVamana/FreshVamanaGraph.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Pull Request Overview
Copilot reviewed 27 out of 31 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Adds support for approximate nearest neighbor search for high dimensional data based on FreshVamana