Skip to content

vector store database implementation from scratch using Rust.

Notifications You must be signed in to change notification settings

Raghvender1205/VectorDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VectorDB

A vector database implementation in Rust. A server and client based codebase. Just run the server and call the api endpoints to

  1. embed documents
  2. Search through.

Features

  • VectorDB Structure: The database is represented by a struct that maps an integer ID to a vector.
  • Add : Allows insertion of vectors into the database
  • Find Nearest: Computes Euclidean distance between a query vector and all vectors in the database returning the close one.
  • SQLite based persistence storage

Usage

  1. Run the server using the following command
cargo run
  1. Use the python client to add document and search. See here

TODO

  1. Implement more efficient distance calculations.
  2. Use advanced datastructures for fast nearest neighbor searches.
  3. Test embeddings and retrieved documents search functionality. here
  4. Batch import and Export of Documents: you might need to import or export large numbers of documents.
  5. Dynamic Indexing

About

vector store database implementation from scratch using Rust.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages