Capability · Framework — rag
LanceDB
LanceDB stores vectors and metadata in the Lance columnar format directly on disk or object storage. There is no server to run: you open a database path and get ANN search, filtering, versioning, and time-travel. It shines for edge, notebook, and serverless RAG deployments.
Framework facts
- Category
- rag
- Language
- Rust / Python / TypeScript
- License
- Apache-2.0
- Repository
- https://github.com/lancedb/lancedb
Install
pip install lancedb
# or
npm install @lancedb/lancedb Quickstart
import lancedb
db = lancedb.connect('./data/lance')
tbl = db.create_table('docs', data=[{'vector': [0.1]*1536, 'text': 'hi'}])
hits = tbl.search([0.1]*1536).limit(3).to_list() Alternatives
- Chroma — another embedded Python DB
- SQLite + sqlite-vss — lighter weight
- DuckDB + vss extension
- Milvus Lite — embedded flavour of Milvus
Frequently asked questions
When is LanceDB better than Qdrant or Milvus?
When you want zero ops, local-first development, or S3-backed storage without running a server. For high-QPS multi-tenant production, a dedicated service is usually better.
Does LanceDB support full-text search?
Yes. Tantivy-backed BM25 search lives alongside vector ANN, so you can do hybrid retrieval in a single query.
Sources
- LanceDB — GitHub — accessed 2026-04-20
- LanceDB — docs — accessed 2026-04-20