- 
                Notifications
    You must be signed in to change notification settings 
- Fork 34
WIP: Microsoft.Extensions.VectorData Implementation #515
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
WIP: Microsoft.Extensions.VectorData Implementation #515
Conversation
…Data abstractions for ArangoDB
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a Microsoft.Extensions.VectorData implementation for ArangoDB, enabling vector search capabilities and document operations. The implementation provides abstractions for working with ArangoDB as both a document database and vector store, supporting semantic search, LINQ filtering, and integration with AI embedding generators.
Key Changes
- Implementation of vector store and collection abstractions (ArangoVectorStore,ArangoCollection,ArangoDynamicCollection)
- Vector and hybrid search capabilities (ArangoVectorSearchable,ArangoHybridSearchable)
- LINQ expression to AQL query translation for filtering and sorting
- Comprehensive unit and integration test coverage using TestContainers
Reviewed Changes
Copilot reviewed 56 out of 56 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description | 
|---|---|
| arangodb-net-standard.sln | Updated Visual Studio version and added new projects to solution | 
| ArongoDB.KernelMemory/* | Placeholder implementation for Kernel Memory integration with stub methods | 
| ArongoDB.Extensions.VectorData/* | Core implementation of vector data abstractions, collections, and search functionality | 
| ArongoDB.Extensions.VectorData/Helpers/* | Helper classes for LINQ expression parsing, AQL generation, and query building | 
| ArongoDB.Extensions.VectorData.Tests/* | Comprehensive unit and integration tests for all components | 
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Closes #513
This is an initial initial implementation of Microsoft.Extensions.VectorData abstranctions to Support Vector Data.
This implementation allows users to use Microsoft provided abstractions to access (read/insert/update/upsert/delete records) ArangoDB.
This implementation also supports accessing/manipulating vector embeddings and search embeddings.
As a result, this implementation can be used to:
It supports LINQ for filtering and sorting.
A number of Unit tests and Integrations Tests are written for testing the functionalities. Used ArangoDB TestContainers to spin up containers for integration testing with real database.