veclite-db 1.0.9

SQLite for vectors — embedded AI memory engine
Documentation
use serde_json::json;
use veclite_db::VecLite;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let db_path = "example.vec";

    // Open database
    let mut db = VecLite::open(db_path)?;

    // Insert vectors
    db.insert(
        "doc_1",
        vec![0.1, 0.5, 0.8],
        Some(json!({"type": "note", "title": "Hello"})),
    )?;
    db.insert(
        "doc_2",
        vec![0.9, 0.1, 0.1],
        Some(json!({"type": "doc", "title": "World"})),
    )?;

    // Hybrid search
    let results = db
        .build_search(&[0.1, 0.5, 0.7])
        .filter("type", "note")
        .top_k(5)
        .execute()?;

    for r in results {
        println!("Match: {} (Score: {:.4})", r.id, r.score);
    }

    Ok(())
}