当前位置: 首页 > wzjs >正文

网站建设成品潍坊seo培训

网站建设成品,潍坊seo培训,输入网站查看空间,我的南京网站LanceDB LanceDB 是一个开源的向量搜索数据库,具备持久化存储功能,极大地简化了嵌入向量的检索、过滤和管理。 LanceDB的主要特点 LanceDB 的主要特点包括: 生产级向量搜索:无需管理服务器。 存储、查询和过滤向量、元数据以…

LanceDB

LanceDB 是一个开源的向量搜索数据库,具备持久化存储功能,极大地简化了嵌入向量的检索、过滤和管理。
在这里插入图片描述

LanceDB的主要特点

LanceDB 的主要特点包括:

  • 生产级向量搜索:无需管理服务器。

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

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

  • 原生支持 Python 和 Javascript/Typescript

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

  • 支持 GPU 加速构建向量索引(*)。

  • 生态系统集成:与 LangChain 🦜️🔗、LlamaIndex 🦙、Apache-Arrow、Pandas、Polars、DuckDB 等工具集成,更多集成正在开发中。

LanceDB 的核心是用 Rust 🦀 编写的,并基于 Lance 构建。

Lance 是一种开源列式数据格式,专为高性能机器学习工作负载设计。

基于NodeJS 使用 LanceDB

需要先安装NodeJS,这里对 NodeJS的部分就不做过多的介绍。关于NodeJS的介绍和安装可以参考:

npm介绍及与Node.js关联

项目创建

  1. 创建一个项目目录, 这里是 lancedb
  2. 命令行切换到该目录,执行 npm init -y 初始化项目。
    这个命令就是创建 package.json 文件
  3. 创建src 目录用来存放源码
    (src目录非必要, 也有的项目是app目录,目的就是为了让项目结构更清晰)
  4. 安装lanceDB 的库
npm install @lancedb/lancedb

该命令的作用包括:

  1. 安装 LanceDB 客户端库

    • 该命令会从 npm 仓库下载并安装@lancedb/lancedb包。

    • 安装完成后,你可以在项目中引入 LanceDB 并使用其 API 进行向量存储、查询和管理。

  2. 更新package.json

    • 安装完成后,@lancedb/lancedb会被添加到package.json文件的dependenciesdevDependencies中(取决于你是否使用了--save-dev选项)。

    • 示例:

      json

      复制

      "dependencies": {"@lancedb/lancedb": "^1.0.0"
      }
      
  3. 生成node_modules文件夹

    • 安装的库及其依赖会被下载到项目的node_modules文件夹中。
  4. 生成package-lock.json

    • 安装过程中会更新或生成package-lock.json文件,确保依赖版本的一致性。

编写 Javascript 代码操作LanceDB

在src 下新建一个 quickstart.js 文件,内容如下:

import * as lancedb from "@lancedb/lancedb";const db = await lancedb.connect("data/my-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();const rowsByCriteria = await table.query().where("price >= 10").toArray();

以上代码的解释如下:

1. 导入 LanceDB 库

import * as lancedb from "@lancedb/lancedb";
  • 这行代码导入了 LanceDB 的 Node.js 客户端库。

  • import * as lancedb表示将整个库的内容导入为一个命名空间lancedb,方便后续调用其 API。


2. 连接数据库

const db = await lancedb.connect("data/my-lancedb");
  • 使用lancedb.connect()方法连接到 LanceDB 数据库。

  • "data/my-lancedb"是数据库的存储路径。如果路径不存在,LanceDB 会自动创建。

  • await表示这是一个异步操作,等待连接完成后再继续执行后续代码。


3. 创建表并插入数据

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' });
  • 使用db.createTable()方法创建一个名为"vectors"的表。

  • 第二个参数是一个数组,表示要插入的初始数据。每条数据是一个对象,包含以下字段:

    • id: 唯一标识符。

    • vector: 向量数据(例如[0.1, 0.2])。

    • item: 项目的名称(例如"foo")。

    • price: 项目的价格(例如10)。

  • 第三个参数{ mode: 'overwrite' }表示如果表已经存在,则覆盖它。如果表不存在,则创建新表。


4. 向量搜索

const query = table.vectorSearch([0.1, 0.3]).limit(2);
const results = await query.toArray();
  • 使用table.vectorSearch()方法进行向量搜索。

    • [0.1, 0.3]是查询向量,LanceDB 会查找与这个向量最相似的数据。
  • limit(2)表示只返回最相似的 2 条结果。

  • await query.toArray()将查询结果转换为数组并返回。

  • 结果会存储在results变量中,通常是一个包含相似向量数据的数组。


5. 条件查询

const rowsByCriteria = await table.query().where("price >= 10").toArray();
  • 使用table.query()方法创建一个查询对象。

  • where("price >= 10")是一个过滤条件,表示只返回price字段大于或等于 10 的数据。

  • await query.toArray()将查询结果转换为数组并返回。

  • 结果会存储在rowsByCriteria变量中,通常是一个符合条件的数据数组。

在VS Code的项目目录结构如下:

在这里插入图片描述

运行代码

使用node .\src\quickstart.js 命令运行代码, 运行后会在项目目录下创建 data 目录存放Db 的数据, 效果如下:

在这里插入图片描述



http://www.dtcms.com/wzjs/146282.html

相关文章:

  • 泰安新闻网今日头条链接优化方法
  • 怎么注册个人的网站市场推广计划书
  • 武汉做网站及logo的公司如何模板建站
  • 河北省建设厅网站网上建设大厅第一营销网
  • 建网站用什么发票网站策划方案范文
  • wordpress首页非常慢湖南关键词优化首选
  • 网站备案号申请流程网站关键词排名
  • 建设小说网站的系统有哪些绍兴seo网站推广
  • 网站综合营销方案搜索引擎营销的典型案例
  • 无锡网站建设报价电商培训内容有哪些
  • 小卖部做网站百度下载官方下载安装
  • 太原网络营销网站百度游戏中心app
  • 成都b2b网站制作海外推广营销系统
  • 设计网站会员河北网络推广技术
  • 甲级建筑设计公司淘宝seo排名优化
  • b2b网站推广宁波网站建设制作报价
  • 开通网站必须做域名空间百度指数大数据分享平台
  • 做网站具体流程网络营销工作内容是什么
  • 旅游网站分析杭州百度快照推广
  • 网站meta网页描述seo推广软件下载
  • 如何自己做摄影网站一键制作免费网站的app
  • 抽纸网站建设摘要长沙网站设计拓谋网络
  • 温岭建设规划局网站找客户的软件有哪些
  • 网站建设怎么做分录营销型网站建设多少钱
  • 古装摄影网站建设方案短视频代运营合作方案
  • 网站页面不更新如何提高关键词搜索排名
  • 在线教育网站建设方案免费推广工具
  • 培训网站系统建设方案seo页面优化公司
  • 自己做网站怎么别人怎么浏览营销策划方案内容
  • 郑州市做网站公司品牌全案营销策划