mirror of
https://github.com/lancedb/lancedb.git
synced 2026-11-13 22:26:53 +00:00
Labels early access features and hides features we aren't documenting yet. **Early access label:** Functions (4 pages, plus the GPU refresh, checkpointing and adaptive execution pages), Secrets (3 pages), Tiered Index Cache, Blob V2, and merge insert, which is labelled for Enterprise only. Two sidebar titles are shorter so the tag fits. **Hidden:** branching, JSON columns and geospatial. - The JSON functions page and the agent branch-experiments tutorial go in `.mintignore`. - `tables/branching` stays reachable but out of the nav, as #4859 left it, because SDK error messages link to it. - Other pages' mentions of these features become draft comments, so they're easy to restore. **Secrets page:** drops references to manual KMS setup, which the control plane handles. It keeps the encryption-at-rest facts, states the Azure value-size limit inline, and points a 501 error to support.
136 lines
7.7 KiB
Plaintext
136 lines
7.7 KiB
Plaintext
---
|
|
title: LanceDB
|
|
sidebarTitle: "LanceDB"
|
|
description: "Multimodal lakehouse for AI."
|
|
icon: "/static/assets/logo/lancedb-icon-gray.svg"
|
|
keywords: ["multimodal lakehouse", "training", "feature engineering", "search", "open source", "oss"]
|
|
---
|
|
|
|
**LanceDB** is a [multimodal lakehouse](https://lancedb.com/blog/multimodal-lakehouse/) for AI teams that need
|
|
one data layer for curation, feature engineering, search and retrieval, and model training.
|
|
It is built on top of [Lance](/basics/lance), an open-source lakehouse format designed for multimodal AI data.
|
|
|
|
Move from data exploration to model training on one unified platform without needing to manage a
|
|
fragmented stack of storage, feature, retrieval, and training systems.
|
|
|
|
## Train on the right data faster {#train-on-the-right-data-faster}
|
|
|
|
Search, curate, and train at petabyte scale, with all your multimodal data in one table.
|
|
|
|
Preparing training data and running experiments slow down when raw data, metadata, embeddings, features, and governance
|
|
artifacts live in separate systems. LanceDB keeps them together in one versioned multimodal table, so AI teams spend less
|
|
time stitching infrastructure together and more time improving datasets, testing features, and keeping GPUs fed.
|
|
|
|
## Accelerate the data flywheel for model research {#accelerate-the-data-flywheel-for-model-research}
|
|
|
|
Keep your AI data in one table.{/* Draft until branching reaches early access: restore ", and give each agent-driven experiment its own isolated branch" before the period. */}
|
|
Find the failure, fix the data, and retrain.
|
|
|
|
<Steps>
|
|
<Step title="Find a curated training subset for every failure case">
|
|
Start from one failed grasp or evaluation example. [Search](/search/) multimodal data, metadata, and embeddings
|
|
together, retrieve similar examples, and [curate](/curation) them into a targeted training subset.
|
|
</Step>
|
|
{/*
|
|
Draft until branching reaches early access.
|
|
|
|
<Step title="Data sandboxes for safe agentic experimentation">
|
|
Don't let an agent silently corrupt your data and ruin a training run. Give each agent its own
|
|
[branch](/tables/branching), a writable fork of the table, to experiment on, and review the changes before
|
|
they reach `main`. See [Run experiments on branches](/agent-branch-experiments).
|
|
</Step>
|
|
*/}
|
|
<Step title="A single dataset for every modality">
|
|
Keep episodes, frames, metadata, features, and embeddings together in one schema-enforced table, without
|
|
pipelines to keep them in sync. Table [versions](/management/table#versioning) let you trace each training
|
|
run back to the exact data it used.
|
|
</Step>
|
|
<Step title="More hillclimbing, less babysitting preprocessing jobs">
|
|
Define the [computed columns](/feature-engineering/add-computed-column) and
|
|
[materialized views](/feature-engineering/materialized-views) your experiment needs, such as extracted features
|
|
or embeddings, and refresh them as your data changes. On LanceDB Enterprise, column refreshes run as background
|
|
jobs on the cluster instead of in your code.
|
|
</Step>
|
|
<Step title="Higher GPU utilization, faster convergence">
|
|
Keep GPUs fed. [`StreamingDataset`](/training/data-loading) streams multimodal training data into PyTorch with
|
|
globally shuffled, deterministic batches, combining fast random access with high-throughput scans.
|
|
</Step>
|
|
</Steps>
|
|
|
|
Use the same table to curate training data, add derived features, retrieve examples, and feed training jobs that rely on expensive GPUs.
|
|
Training workloads can sample, shuffle, and scan projected columns from local storage or object storage, then assemble
|
|
GPU-ready batches from a tagged dataset version. Training pipelines need curation, derived features, reproducible
|
|
splits, fast random access, and a clean path into frameworks such as PyTorch -- LanceDB keeps all of it connected
|
|
through the same table model, whether a workflow uses one table or several related ones.
|
|
|
|
## Architecture: Embedded and Enterprise {#architecture}
|
|
|
|
LanceDB ships as two offerings on the same [Lance](/basics/lance) format and table model, which stores table data,
|
|
versions, and indexes in open, columnar files. What changes between them is how storage and compute are organized
|
|
around that format: start locally with Embedded, then move to Enterprise when your team needs distributed scale,
|
|
managed infrastructure, private deployment, or higher-throughput curation, feature engineering, search and
|
|
retrieval, and training workflows.
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="LanceDB Embedded" icon="cube" href="/basics/lancedb-embedded">
|
|
An open-source, embedded retrieval library that runs inside your application process, with no separate
|
|
database server to deploy.
|
|
</Card>
|
|
<Card title="LanceDB Enterprise" icon="server" href="/enterprise/index">
|
|
A distributed multimodal lakehouse service for production workloads that need managed infrastructure and
|
|
higher-throughput workflows.
|
|
</Card>
|
|
</CardGroup>
|
|
|
|
See [Embedded vs Enterprise](/basics/embedded-vs-enterprise) for a feature-by-feature comparison, including
|
|
architecture, latency, throughput, and day-to-day usage differences.
|
|
|
|
## Projects using LanceDB {#projects-using-lancedb}
|
|
|
|
### Training {#training}
|
|
|
|
- [stable-worldmodel](https://github.com/galilai-group/stable-worldmodel) -- a platform for reproducible world-model
|
|
research built on a LanceDB data layer, reporting 3-4x faster data loading on Push-T versus HDF5 / MP4 at a
|
|
fraction of the disk footprint.
|
|
- [le-wm](https://github.com/lucas-maes/le-wm) -- a joint-embedding predictive world model from pixels, trained on
|
|
the stable-worldmodel platform and its LanceDB data layer.
|
|
- [lerobot-lancedb](https://github.com/lancedb/lerobot-lancedb) -- a drop-in LanceDB backend for HuggingFace
|
|
LeRobot datasets with faster loading across robotics datasets.
|
|
|
|
### Agentic applications {#agentic-applications}
|
|
|
|
- [OpenClaw LanceDB Plugin](https://docs.openclaw.ai/plugins/memory-lancedb) -- stores an agent's long-term memory
|
|
in LanceDB, automatically recalling relevant memories before a model turn and capturing new facts afterward.
|
|
- [Cognee](https://github.com/topoteretes/cognee) -- an open-source AI memory platform that gives agents persistent
|
|
memory across sessions, using LanceDB as one of its vector store backends.
|
|
- [CrewAI](https://github.com/crewAIInc/crewAI) -- a multi-agent framework that
|
|
[rebuilt its agent memory on LanceDB](https://www.lancedb.com/blog/crewai-rebuilt-agent-memory-on-lancedb).
|
|
|
|
Across these projects, LanceDB and Lance provide the multimodal data layer that keeps raw observations, annotations,
|
|
features, and training or memory access patterns in one format instead of scattering them across task-specific
|
|
stores.
|
|
|
|
## Start with your workload {#start-with-your-workload}
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="Ingest your data" icon="inbox" href="/ingestion">
|
|
Create tables, append records, and update or delete rows as your data changes.
|
|
</Card>
|
|
<Card title="Build search and retrieval" icon="search" href="/search/">
|
|
Use vector search, full-text search, hybrid search, reranking, filtering, and SQL.
|
|
</Card>
|
|
<Card title="Curate training data" icon="filter" href="/curation">
|
|
Profile, sample, chunk, join, and deduplicate records before training on them.
|
|
</Card>
|
|
<Card title="Engineer features in place" icon="layer-group" href="/feature-engineering">
|
|
Derive computed columns and materialized views without moving data elsewhere.
|
|
</Card>
|
|
<Card title="Load data into PyTorch" icon="boxes-stacked" href="/training/data-loading">
|
|
Use LanceDB tables and permutations for projected, shuffled, random-access training reads.
|
|
</Card>
|
|
<Card title="Manage catalog objects" icon="folder-tree" href="/management">
|
|
Create, list, and drop tables, namespaces, and views from Python, TypeScript, or SQL.
|
|
</Card>
|
|
</CardGroup>
|
|
|