LanceDBServerless 向量数据库

联合创作 · 2023-10-01 02:34

LanceDB 是一个用于向量搜索的开源数据库,采用持久存储构建,极大地简化了嵌入的检索、过滤和管理。

LanceDB 的主要特性包括:

  • 生产规模的向量搜索,无需管理服务器。

  • 存储、查询和过滤向量、元数据和多模式数据(文本、图像、视频、点云等)。

  • 支持向量相似度搜索、全文搜索和SQL。

  • 原生 Python 和 Javascript/Typescript 支持。

  • 零拷贝、自动版本控制,无需额外的基础设施即可管理数据版本。

  • 与LangChain 的生态系统集成,LlamaIndex、Apache-Arrow、Pandas、Polars、DuckDB 等即将推出。

LanceDB的核心是用Rust编写的并使用Lance构建,Lance 是一种专为高性能 ML 工作负载而设计的开源 columnar 格式。

快速开始

Javascript

npm install vectordb
const lancedb = require('vectordb');
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 }])

const query = table.search([0.1, 0.3]);
query.limit = 20;
const results = await query.execute();

Python

pip install lancedb
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_df()
浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报