genegraph-storage
A storage layer for graph-based vector databases.
Currently implements only the Lance file format (parquet and other formats can be implemented using the StorageBackend trait).
Provided functionalities:
save_metadata,load_metadata: gives a simple wrapper for all the data in the directorysave_*dense matrices, sparse matrices, vectors, lambdas, indicesload_*dense matrices, sparse matrices, vectors, lambdas, indices- some other useful stuff
A storage layer for:
javelin-tui: a graph-based vector database Text-Interface andarrowspace: the next iteration of vector search
Usage
Simple example:
use LanceStorage;
use ;
use StorageBackend;
use DenseMatrix;
// instantiate a storage
let storage = new;
// some 2D data
let dense: = vec!;
let = dense.len, dense.len;
let data =
from_iterator;
// Save metadata FIRST to initialize the storage directory
let md = seed_metadata
.await
.unwrap
.with_dimensions
.add_file;
// your data is saved in an efficient format
storage
.save_dense
.await
.unwrap;
// Loading back
let md_path = storage.save_metadata.await.unwrap;
let loaded = storage.load_dense.await.unwrap;
Contributing
See .github/ directory.