Vue d'ensemble
LanceDB est une base de données vectorielle serverless conviviale pour les développeurs, construite sur le format columnar Lance. Elle prend en charge la recherche multimodale (embeddings texte, image, audio), la recherche hybride et l'ingestion efficace en streaming sans processus serveur distinct.
Installation
uv pip install lancedb
Créer et interroger
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
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()