All 96 Dependencies
Every package LanceDB depends on, ranked by repo health score.
LanceDB is an open-source, embedded vector database purpose-built for AI and multimodal search. Written in Rust with a shared core library exposed through native Python, Node.js/TypeScript, Rust, and Java SDKs, it lets you store, index, and query vectors alongside metadata, images, video, and other unstructured data in a single columnar table — no separate service to run, no cluster to babysit. Backed by Y Combinator (W23), LanceDB grew out of the need for a serverless, disk-based alternative to memory-hungry vector databases.
The database is built on the Lance columnar format instead of reusing existing formats like Parquet — a versioned, zero-copy storage layer designed specifically for random access at ML scale, with automatic versioning so every write creates a queryable snapshot without extra infrastructure. On top of that, LanceDB layers ANN vector indexes, full-text search, and native SQL filtering, so a single query can combine semantic similarity, keyword search, and structured predicates instead of stitching together separate systems.
Because the core lives in one Rust workspace shared by the Python, Node.js, and Java bindings via native language bridges, the query engine, storage layer, and indexing logic behave identically no matter which language you call it from. The library runs embedded in your application process for local or small-scale workloads, and the same on-disk format can be pointed at S3, GCS, or Azure Blob Storage for object-store-backed deployments — or handed off entirely to LanceDB Cloud, the managed multi-tenant service, without touching table schemas or query code.
Real-world integrations include LangChain and LlamaIndex vector store connectors, Apache Arrow, Pandas, Polars, and DuckDB interoperability out of the box, plus a growing rerankers and embedding-function registry for building retrieval-augmented generation and multimodal search pipelines directly against the stored data.