ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Zvec快速开始:1分钟pip安装到首次向量搜索的完整教程

Zvec快速开始:1分钟pip安装到首次向量搜索的完整教程 Zvec快速开始1分钟pip安装到首次向量搜索的完整教程【免费下载链接】zvecA lightweight, lightning-fast, in-process vector database项目地址: https://gitcode.com/GitHub_Trending/zve/zvecZvec 是一款开源的进程内in-process向量数据库轻量、极速、纯本地运行无需部署任何服务器。本文带你用pip install一条命令完成 Zvec 安装并在 1 分钟内写通第一个向量搜索Vector Search查询——从创建集合、插入文档到 Top-K 相似度检索零基础也能快速上手。 为什么选择 Zvec 向量数据库与传统需要独立部署的向量数据库如 Milvus、Qdrant不同Zvec 以库的形式直接嵌入你的 Python 进程零配置、零运维对比维度独立服务式向量库Zvec进程内向量数据库部署方式需启动服务端、配置网络pip install zvec即可用运行位置远程服务你的进程内Notebook、CLI、服务器均可数据持久化依赖服务端存储本地文件 WAL 预写日志断电不丢数据并发能力依赖集群多进程并发读、单进程独占写它还内置了HNSW、IVF、DiskANN等多种 ANN 向量索引并支持稠密/稀疏向量、全文检索FTS与混合查询覆盖从原型验证到生产级的向量检索场景。 1分钟安装pip install zvec环境要求一键安装前的检查清单64 位Python3.10 ~ 3.14不支持 32 位解释器导入时会快速报错提示Linuxx86_64 / ARM64、macOSARM64、Windowsx86_64依赖自动处理仅需numpypip 会一并安装执行安装命令打开终端执行下面这条命令即可完成 Zvec Python SDK 安装pip install zvec验证是否安装成功python -c import zvec; print(zvec.__version__)能打印出版本号如0.7.x说明你的向量数据库环境已就绪 ✅。 如果你希望从源码构建如二次开发底层内核可先克隆仓库git clone https://gitcode.com/GitHub_Trending/zve/zvec再按源码构建文档操作。⚡ 首次向量搜索4步完整教程Zvec 的编程模型只有 4 个核心动作定义 Schema → 创建集合 → 插入文档 → 向量检索。下面用一个 4 维小向量走通全流程。第 1 步定义集合 SchemaSchema 描述集合的结构包含标量字段FieldSchema和向量字段VectorSchemaimport zvec # 定义 collection schema一个 4 维 FP32 向量字段 schema zvec.CollectionSchema( nameexample, vectorszvec.VectorSchema(embedding, zvec.DataType.VECTOR_FP32, 4), )第 2 步创建并打开集合# 数据持久化到本地目录 ./zvec_example collection zvec.create_and_open(path./zvec_example, schemaschema)之后再次运行时用zvec.open(./zvec_example)即可直接打开已有集合数据不会丢失。第 3 步插入文档Doc每条数据是一个Doc由唯一id和向量字段组成collection.insert([ zvec.Doc(iddoc_1, vectors{embedding: [0.1, 0.2, 0.3, 0.4]}), zvec.Doc(iddoc_2, vectors{embedding: [0.2, 0.3, 0.4, 0.1]}), ])第 4 步发起向量相似度搜索调用query()传入查询向量与topk即可按相关性得到 Top-K 结果results collection.query( zvec.Query(field_nameembedding, vector[0.4, 0.3, 0.3, 0.1]), topk10, ) # 结果按相似度得分排序例如[{id: doc_2, score: 0.98, ...}, ...] print(results) 至此从pip install zvec到拿到第一次向量搜索结果全程不超过 1 分钟。 读懂查询结果与常用操作速查query()返回DocList每个元素包含id与score相关性得分越靠前的结果越相似并支持filter标量过滤、output_fields指定返回字段、reranker重排序等参数。场景方法 / 参数重新打开集合zvec.open(path)按 ID 取文档collection.fetch(ids)删除文档collection.delete(ids)/delete_by_filter(age 30)全量流式遍历collection.iter_docs()创建 HNSW 向量索引collection.create_index(embedding, zvec.HnswIndexParam())全文检索FTScollection.create_index(title, zvec.FtsIndexParam())关闭集合、释放资源collection.close() 数据量大时建议先create_index()建立 HNSW / IVF 等 ANN 索引再查询可将检索延迟压到毫秒级。❓ 新手常见问题FAQQ1需要先调用zvec.init()吗不强制。上面的示例使用默认配置即可运行。zvec.init()用于全局配置日志控制台/文件、查询线程数、内存上限等适合生产环境按需调优且整个进程只能调用一次。Q2数据存在哪里会丢失吗所有数据以文件形式保存在create_and_open指定的本地目录中Zvec 通过 WAL预写日志保障持久性——即使进程崩溃或断电已提交数据也不会丢失。Q3和 Milvus、Qdrant 怎么选追求“零部署、嵌入应用”如桌面工具、Notebook、边缘设备、Sidecar 服务选 Zvec需要多节点水平扩展的超大集群再考虑独立服务式方案。Q4为什么import zvec报 32 位错误Zvec 的 C 内核仅编译了 64 位版本请切换到 64 位 Python 解释器后重新pip install zvec。 下一步探索项目源码结构想深入理解实现细节可以从以下模块路径入手路径均相对于项目根目录python/zvec/zvec.py—— Python 入口init/create_and_open/open三个生命周期函数python/zvec/model/collection.py——Collection类插入、查询、索引、列管理等全部 DDL/DML/DQL 方法python/zvec/model/schema/collection_schema.py—— Schema 定义与校验逻辑python/zvec/extension/—— 内置 Embedding 与 Reranker 扩展OpenAI、Qwen、SentenceTransformer 等src/core/algorithm/hnsw/—— HNSW 向量索引核心实现Cpython/tests/test_collection.py—— 一份可直接参照的集合操作测试用例按照“安装 → 建集合 → 插入 → 检索”的最小闭环你已经掌握了 Zvec 向量数据库的核心用法。下一步不妨把你的文档 Embedding 灌进来体验毫秒级的本地向量搜索吧 ⚡【免费下载链接】zvecA lightweight, lightning-fast, in-process vector database项目地址: https://gitcode.com/GitHub_Trending/zve/zvec创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进