Zvec – 阿里开源的轻量级嵌入式向量数据库

AI项目 2026-02-25

Zvec是什么

Zvec是阿里巴巴开源的轻量级嵌入式向量数据库,基于内部Proxima引擎构建。与传统独立部署方案不同,Zvec直接嵌入应用进程运行,无需额外服务器或配置,安装即用。Zvec支持毫秒级十亿向量搜索、密集与稀疏向量混合查询,提供简洁Python API。Zvec适用于RAG、图像/代码搜索等AI场景。

Zvec

Zvec的主要功能

  • 进程内架构:作为嵌入式库直接运行在应用程序进程中,无需部署独立服务器或管理外部基础设施。
  • 高性能向量检索:基于阿里巴巴Proxima引擎,能在毫秒级时间内完成对数十亿规模向量的相似性搜索。
  • 多类型向量支持:同时支持密集向量和稀疏向量,支持在单次查询中执行混合搜索。
  • 过滤与分组查询:支持将语义搜索与属性过滤条件结合,以及按指定维度对搜索结果进行分组聚合。
  • 极简开发体验:提供直观的Python API,通过pip安装后即可在60秒内完成配置并开始使用。
  • 广泛部署能力:可在笔记本、服务器、CLI工具及边缘设备等多种环境中运行,适用RAG、图像搜索和代码检索等AI应用场景。

如何使用Zvec

  • 安装
pip install zvec  # Python 3.10-3.12 环境下执行 pip 命令安装 zvec 库。
  • 定义数据结构
import zvec
schema = zvec.CollectionSchema(name="my_db", vectors=zvec.VectorSchema("vec", zvec.DataType.VECTOR_FP32, 128))  # 创建名为 my_db 的集合结构,定义 128 维 32 位浮点向量字段 vec。
  • 创建/打开数据库
collection = zvec.create_and_open(path="./data", schema=schema)  # 在本地 ./data 目录创建并打开数据库,若已存在则直接打开。
  • 插入向量数据
collection.insert(zvec.Doc(id="1", vectors={"vec": [0.1, 0.2, ...]}))  # 将包含 ID 为 "1" 的 128 维向量数据插入到集合中。
  • 执行相似度搜索
results = collection.query(zvec.VectorQuery("vec", vector=[0.1, 0.2, ...]), topk=10)  # 用查询向量在集合中搜索最相似的 10 条结果并返回。

Zvec的项目地址

  • 项目官网:https://zvec.org/
  • GitHub仓库:https://github.com/alibaba/zvec

Zvec的应用场景

  • RAG 知识库问答:将文档切片生成向量存入 Zvec,用户提问时检索相关片段注入大模型上下文,实现精准的知识增强生成。
  • 电商商品搜索:把商品图片和描述转为多模态向量,用户上传参考图或输入关键词时,快速返回视觉或语义相似的商品。
  • 代码智能检索:将代码片段和注释编码为向量,开发者用自然语言描述需求可定位功能相似的代码实现。
  • 推荐系统召回:把用户行为和物品特征向量化,实时检索相似用户或物品作为候选集,支撑个性化推荐的首轮召回。
  • 生物信息学分析:将蛋白质序列或基因表达数据编码为向量,通过相似度搜索快速发现功能相近的生物分子或疾病靶点。
©️版权声明:若无特殊声明,本站所有文章版权均归AI工具集原创和所有,未经许可,任何个人、媒体、网站、团体不得转载、抄袭或以其他方式复制发表本站内容,或在非我站所属的服务器上建立镜像。否则,我站将依法保留追究相关法律责任的权利。

相关文章