SuperAPI AI 工具集

vector-database-ops

部署与运维

查看项目

更新于 10-15 09:24

技能介绍

用途

本技能面向生产环境的向量数据库运维,用于支撑 AI 驱动的搜索、RAG(检索增强生成)和推荐系统。适用场景包括:为 RAG 或语义搜索应用搭建向量数据库;在 Qdrant、Weaviate、pgvector、Pinecone 之间做选型;管理集合、索引与数据迁移;针对生产负载优化查询性能与索引;实现带命名空间隔离的多租户向量搜索。

向量数据库对比

资料给出的对比维度如下:

  • Qdrant:适合高性能、丰富过滤、自托管场景;托管方式为自托管/云;过滤能力优秀;扩展性非常高。
  • Weaviate:适合 schema 优先、混合搜索、多模态场景;托管方式为自托管/云;过滤能力良好;扩展性高。
  • pgvector:适合已使用 Postgres、简单用例;托管方式为自托管;过滤能力良好;扩展性中等。
  • Pinecone:适合零运维托管、无服务器场景;仅托管;过滤能力良好;扩展性非常高。
  • Chroma:适合本地开发与原型验证;仅自托管;过滤能力基础;扩展性低到中等。

主要能力

Qdrant 生产部署

提供 Docker 单节点部署命令,支持挂载数据卷与自定义配置文件。配置示例涵盖存储路径、磁盘 payload、请求大小上限、HNSW 索引参数(m、ef_construct、full_scan_threshold)、标量量化(int8、quantile、always_ram)以及关闭遥测。

Qdrant 集合管理

通过 Python 客户端创建优化集合,可配置向量维度、距离度量、向量是否落盘、HNSW 参数与量化配置;可为 tenant_id、created_at 等字段创建 payload 索引以加速过滤;可查询集合信息(向量数量、状态)。

Qdrant 过滤检索

支持带过滤条件的查询,示例展示多租户隔离检索:must 条件匹配 tenant_id 与 doc_type,should 条件按 created_at 范围过滤,并返回 payload。

pgvector

提供启用扩展、创建带向量列的表、创建 HNSW 索引(m、ef_construction)或 IVFFlat 索引(lists)、带元数据过滤的语义搜索 SQL,以及通过 Docker 部署 pgvector 的命令。

Weaviate 部署

提供 docker-compose 配置,包含端口、查询默认上限、API Key 认证、持久化路径、启用 text2vec-openai 与 generative-openai 模块、OpenAI API Key、集群主机名与数据卷。

备份与恢复

Qdrant 支持快照备份、下载快照与恢复;pgvector 使用标准 pg_dump 与 pg_restore 进行备份恢复。

性能调优

Qdrant 可在批量导入后通过 optimizer_config 强制立即索引,并轮询集合状态直至 green。

常见问题

资料列出常见问题及修复:查询慢(HNSW 索引未建好,等待索引完成并检查状态为 green);内存占用高(向量在内存中,启用 on_disk=True);召回差(ef 搜索参数偏低,查询时提高 ef);pgvector 慢(IVFFlat 未 vacuum,执行 VACUUM ANALYZE);Weaviate OOM(对象过多,启用异步索引并增加堆内存)。

使用方式

按资料提供的 Docker 命令、配置文件、Python 客户端代码与 SQL 语句进行部署、建集合、建索引、检索、备份与调优。所有代码与命令保持原样,未做改动。

最佳实践

  • 归一化嵌入使用余弦距离,未归一化使用点积。
  • 始终在过滤字段(tenant_id、doc_type)上创建 payload 索引。
  • 数据集超过 1000 万向量时,使用向量落盘加 always_ram 量化。
  • 在选择 IVFFlat 与 HNSW 前,用实际查询模式做基准测试。
  • 任何批量删除或迁移操作前先做快照。

相关技能

  • rag-infrastructure:完整 RAG 流水线
  • databases:通用数据库管理
  • postgresql:pgvector 宿主数据库运维

限制

资料未提供具体收费、价格、平台支持范围、性能基准数值或效果承诺,相关内容暂未提供。