Search More, Manage Less
LanceDB is an open-source database for vector-search built with persistent storage, which greatly simplifies retrieval, filtering and management of embeddings.
The key features of LanceDB include:
Production-scale vector search with no servers to manage.
Store, query and filter vectors, metadata and multi-modal data (text, images, videos, point clouds, and more).
Support for vector similarity search, full-text search and SQL.
Native Python and Javascript/Typescript support.
Zero-copy, automatic versioning, manage versions of your data without needing extra infrastructure.
GPU support in building vector index(*).
Ecosystem integrations with LangChain 🦜️🔗, LlamaIndex 🦙, Apache-Arrow, Pandas, Polars, DuckDB and more on the way.
LanceDB's core is written in Rust 🦀 and is built using Lance, an open-source columnar format designed for performant ML workloads.
Javascript
npm install @lancedb/lancedb
import * as lancedb from "@lancedb/lancedb"; const db = await lancedb.connect("data/sample-lancedb"); const table = await db.createTable("vectors", [ { id: 1, vector: [0.1, 0.2], item: "foo", price: 10 }, { id: 2, vector: [1.1, 1.2], item: "bar", price: 50 }, ], {mode: 'overwrite'}); const query = table.vectorSearch([0.1, 0.3]).limit(2); const results = await query.toArray(); // You can also search for rows by specific criteria without involving a vector search. const rowsByCriteria = await table.query().where("price >= 10").toArray();
Python
import lancedb uri = "data/sample-lancedb" db = lancedb.connect(uri) table = db.create_table("my_table", data=[{"vector": [3.1, 4.1], "item": "foo", "price": 10.0}, {"vector": [5.9, 26.5], "item": "bar", "price": 20.0}]) result = table.search([100, 100]).limit(2).to_pandas()Blogs, Tutorials & Videos
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4