---
name: mkurman-lancedb
description: "LanceDB — serverless vector database for AI. Columnar storage on Lance format, zero-copy access, multimodal search (text + images + audio), and direct DataFrame integration. No separate server."
license: "MIT"
metadata:
  decimalai-skill-id: "66535909-8ff8-4cf2-86b9-009f6f635678"
  decimalai-version-id: "59c23de9-5595-49f1-b347-e4735deaaddf"
  decimalai-version: "1"
  decimalai-body-sha256: "6372ab30072ba4ace832dcbf1eae31092134ba105ba9b5f253e00d55b06692d9"
  decimalai-name: "mkurman/lancedb"
  decimalai-format: "1"
  decimalai-invocation: "model"
  decimalai-category: "ai-ml"
  decimalai-source: "https://app.decimal.ai/s/mkurman-lancedb@1/SKILL.md"
---
## Overview

LanceDB is a developer-friendly, serverless vector database built on the Lance columnar format. It supports multimodal search (text, image, audio embeddings), hybrid search, and efficient streaming ingestion without a separate server process.

## Installation

```bash
uv pip install lancedb
```

## Create and Query

```python
import lancedb
import numpy as np

db = lancedb.connect("./my_lancedb")
table = db.create_table("vectors", [
    {"vector": np.random.rand(128), "text": "hello world"},
    {"vector": np.random.rand(128), "text": "goodbye moon"},
])

results = table.search(np.random.rand(128)).limit(5).to_list()
print([r["text"] for r in results])
```

## Open-Clip Embeddings

```python
import lancedb
from lancedb.embeddings import with_open_clip

@with_open_clip
class Images:
    image: str
    vector: list

table = db.create_table("images", schema=Images)
table.add([{"image": "photo.jpg"}, {"image": "diagram.png"}])
results = table.search("sunset landscape").limit(3).to_pandas()
```

## References
- [LanceDB docs](https://lancedb.github.io/lancedb/)
- [Lance format](https://lancedb.github.io/lance/)
