Appearance
向量数据库专题
版本:
v1.8最后更新:
2026-07-09适用对象:正在做 RAG、知识检索、企业搜索、File Search 对照方案、多租户知识平台,以及需要决定“什么时候该上专门向量数据库、怎么设计索引、怎么做权限和成本权衡”的工程团队
很多人学习 RAG 时,会把“embedding + 向量库”看成一个固定配方。
但真实工程里更重要的问题其实是:
- 向量到底存在哪里
- 检索时除了相似度还要不要做过滤
- 什么时候该用专门向量数据库,什么时候不需要
- 向量库和文档流水线、权限、版本、缓存是什么关系
- 多租户、混合检索、重排、回滚、删除这些问题,应该在什么层解决
这篇专题不是把向量数据库写成算法入门,而是从生产工程视角解释:
- 向量数据库究竟在 RAG 系统里承担什么职责
1. 先摆正位置:向量数据库不是 RAG 本身,只是检索底座之一
一个完整的 RAG 链路通常更接近:
text
Source Documents
-> Parsing / Structuring
-> Chunking
-> Embeddings
-> Index / Vector Store
-> Filtering / Hybrid Search / Rerank
-> Prompt Assembly
-> Generation
-> Citation / Evaluation / Feedback向量数据库主要负责的是:
- 存储向量表示
- 组织检索索引
- 支持相似度查询
- 结合 metadata 过滤
- 承载更新、删除、多租户和性能优化
它非常重要,但它绝不是:
- 文档治理本身
- 权限模型本身
- 回答质量本身
2. 什么情况下需要专门向量数据库
如果只是下面这些场景,你未必需要单独上向量数据库:
- 小规模 Demo
- 单租户内部试验
- 文档量很小
- 离线分析
- 批处理脚本
这类场景先用:
- OpenAI 托管
vector stores - 带向量能力的现有数据库
- 本地索引
通常更简单。
2.1 什么时候“明显需要”
一旦出现这些特征,专门向量数据库的价值就会迅速放大:
- chunk 总量很大
- 查询量和并发上升
- 需要 metadata filtering
- 需要租户隔离
- 需要增量更新、批量删除、回滚
- 需要 hybrid search
- 需要成本、延迟、召回率的细致调优
3. 向量数据库最核心的四个职责
3.1 相似度检索
根据查询向量找最相近的候选结果。
3.2 元数据过滤
在向量检索前后结合业务字段做过滤,例如:
- 只查某租户
- 只查某部门
- 只查生效中的文档
- 只查某种文档类型
3.3 更新与删除
支持:
- upsert
- delete
- metadata 更新
- 重建索引
3.4 多租户与资源隔离
支持:
- namespace / collection / tenant 级隔离
- 资源和成本可控
- 按租户治理生命周期
4. 向量数据库里真正需要建模的不是“向量”,而是“记录”
一个生产级向量记录通常不只是向量本身,而是:
idvectormetadatanamespace/tenantversion_iddocument_idchunk_id
Pinecone 当前官方文档在 2026-07-08 反复强调:
- 记录至少包含 ID 和向量
- metadata 用于存储附加上下文
- 查询时可以通过 metadata filter 缩小搜索范围
这意味着工程上真正要设计的是:
- “一条可检索记录如何映射到知识对象”
而不是只想“向量怎么存”。
5. 为什么 metadata 往往比算法名更值得先设计
很多团队刚接触向量库时会先问:
- HNSW 还是别的
- ANN 还是精确检索
但在企业知识系统里,更早应该回答的问题通常是:
document_id怎么定义chunk_id怎么定义version_id怎么定义- 哪些字段参与过滤
- 哪些字段用于追踪
- 哪些字段用于权限和租户隔离
如果 metadata 没设计好,后续会非常难做:
- 权限继承
- 精细过滤
- 版本清理
- 删除传播
- 回答回溯
6. 记录 ID 应该怎么设计
Pinecone 当前 production checklist 与 data modeling 文档都明确强调:
- 使用结构化 ID 更利于高效运维,例如
document_id#chunk_number
这条建议非常实用,因为它会直接影响:
- 批量 upsert
- 批量删除
- 版本清理
- 问题排查
一个常见的可用模式:
text
tenant_id/document_id/version_id/chunk_id或者:
text
document_id#version_id#chunk_000123核心不是格式统一好看,而是要支持:
- 能快速定位一批兄弟块
- 能按文档或版本批量处理
- 出事时人能读懂
7. 向量库选型时最容易忽视的,是“过滤”和“租户”不是附属能力
很多 Demo 只验证:
- query 向量进去,top-k 出来
但企业环境里更关键的是:
- 先过滤,再检索还是检索后过滤
- namespace 和 metadata filter 怎么配合
- 不同租户数据是否天然隔离
- 复杂权限是不是会把查询成本拖垮
7.1 Pinecone 给出的启发
Pinecone 当前官方文档在 2026-07-08 的要点非常明确:
- 多租户最有效的方式通常是用
namespaces - 如果只是把所有数据塞进一个空间,再靠 metadata 过滤租户,会带来性能和成本权衡
这说明对多租户知识平台来说,租户建模不能拖到后面再补。
7.2 Azure AI Search 给出的启发
Azure AI Search 当前官方文档强调:
- hybrid search 是在单个请求里并行跑全文和向量查询
- 可同时使用过滤、排序、facet、语义重排
这对工程的启发是:
- 企业检索往往不是“只做向量最近邻”就结束,而是和文本、过滤、重排一起组成完整查询计划
8. 为什么纯向量检索往往不够
根据 OpenAI 当前 File search 文档以及 Azure AI Search 当前 hybrid search 文档的说明:
- OpenAI File Search 会同时用
semantic + keyword search - Azure hybrid search 会并行跑全文检索和向量检索,再用
RRF合并
这说明一件很重要的事:
- 生产检索并不迷信“纯向量”
原因很现实:
- 产品型号
- 人名
- 编号
- 规则编号
- 错误码
- 日期
这些内容常常需要关键词精确匹配。
更实用的结论通常是:
- 语义负责“概念相近”
- 关键词负责“字面精确”
- 过滤负责“范围正确”
- rerank 负责“排序更稳”
9. 向量索引类型到底怎么理解
很多人第一次接触会被各种索引名吓住。
更实用的理解是把它们看成一组权衡:
- 召回率
- 查询延迟
- 写入成本
- 内存占用
- 更新便利性
9.1 Weaviate 当前文档给出的一个非常实用的视角
Weaviate 当前官方文档说明:
- 支持
hnsw、flat、dynamic等索引类型 dynamic会从 flat 起步,在达到阈值后切换到 HNSW- 多租户场景常适合动态索引,因为不同租户规模差异很大
这说明选型时不要只问:
- “哪个算法最好”
更应该问:
- “我们的数据规模和租户形态,更适合什么资源模型”
9.2 一个实用的经验判断
- 小集合、小租户:简单索引可能已经够用
- 中大规模:更需要 ANN 索引
- 多租户差异极大:更要考虑动态索引或分层策略
10. 命名向量、多向量和多索引什么时候有价值
Weaviate 当前文档还提到:
- 一个对象可以有多个
named vectors - 每个向量空间可以使用不同配置、不同向量器、不同距离度量
这对复杂知识系统很有价值,因为很多对象天然有多种表示:
- 标题语义向量
- 正文语义向量
- 表格语义向量
- 图片描述向量
- 多语言向量
多向量不是必须,但当你遇到这些问题时通常值得考虑:
- 标题和正文检索意图差异很大
- 文本和结构化字段要分别建模
- 多语言、多模态检索需求明显
11. 多租户该用 namespace、metadata 还是独立索引
这是企业最常问的问题之一。
11.1 namespace 方案
更适合:
- 强租户隔离
- 每次查询只查单租户或少量租户
- 希望更低查询噪音和更清晰生命周期边界
Pinecone 当前文档明确推荐多租户优先考虑 namespace。
11.2 metadata 过滤方案
更适合:
- 需要跨租户分析
- 隔离要求没那么严格
- 租户只是查询条件的一部分
但要认识到它的代价:
- 查询开销可能更高
- 大过滤条件会带来复杂度
- 生命周期和成本边界不如 namespace 清晰
11.3 独立索引方案
适合:
- 超大客户单独隔离
- 合规要求极强
- 资源和容量模型完全不同
但运维复杂度也明显更高。
12. 删除、更新、回滚为什么是向量库设计的关键部分
很多团队在选型时只测查询,不测:
- 批量 upsert
- 批量 metadata 更新
- 批量删除
- 旧版本清理
- 索引重建窗口
但这些才是生产系统最常见的真实操作。
12.1 你至少要确认这些问题
- 更新是整文重建还是 chunk 增量
- 删除是按 ID、按文档、按 metadata 还是按 namespace
- 旧版本怎样快速退出检索
- 回滚时能否恢复上一版本索引
12.2 Pinecone 的一个重要工程提醒
Pinecone 当前文档说明:
- 可以按 metadata 更新记录
- metadata filter 的能力很强,但超大过滤条件也会有明确限制和成本边界
这意味着:
- 不要把“权限控制”和“大规模运营动作”完全寄托在超重 metadata 过滤表达式上
13. 向量数据库如何和文档流水线配合
更稳的职责切分通常是:
文档流水线负责
- 来源同步
- 结构解析
- chunking
- metadata 生产
- 权限继承
- 生命周期状态
向量数据库负责
- 向量 / 索引存储
- 检索执行
- 过滤能力
- 更新 / 删除执行面
- 性能与成本优化
如果让向量库承担“整个知识治理”,通常会越来越乱。
14. 选型时除了召回率,还应该比较什么
建议至少比较下面这些维度:
14.1 数据模型
- 是否支持结构化 metadata
- metadata 过滤能力是否够用
- 是否方便表示文档版本、租户、状态
14.2 检索能力
- 纯向量
- hybrid
- rerank 集成
- 多向量 / named vectors
14.3 多租户与权限
- namespace / tenant 模型是否清晰
- 是否支持按租户建索引边界
- 跨租户查询如何处理
14.4 运维能力
- 备份
- 恢复
- 迁移
- 重建
- 监控
- 扩缩容
14.5 成本模型
- 存储成本
- 写入成本
- 查询成本
- 冷热分层能力
如果只比 top-k 样例,看不出生产差异。
14.6 架构形态与生态位
“向量数据库”这个词很容易把不同东西混在一起讲,但从当前官方资料看,至少要区分十几种形态:
- 托管型向量数据库,例如 Pinecone
- 托管 Milvus 路线,例如 Zilliz Cloud
- 向量 + 搜索一体化引擎,例如 Azure AI Search、Weaviate
- 云厂商托管向量检索服务,例如 Gemini Enterprise Agent Platform Vector Search
- 搜索平台内置向量能力,例如 Elasticsearch、OpenSearch、Vespa、Apache Solr
- 分布式向量基础设施,例如 Milvus、Qdrant
- 宽列数据库内置向量能力,例如 ScyllaDB
- 云原生 / Kubernetes 原生向量引擎,例如 Vald
- 开发者友好 / local-first 向量存储,例如 Chroma
- 开发者友好搜索 API / 轻量搜索引擎,例如 Meilisearch、Typesense
- API 原生 / 宽列系 serverless 向量数据库,例如 Astra DB
- 文档数据库内置向量能力,例如 MongoDB Atlas Vector Search
- JSON 文档数据库内置向量能力,例如 Azure Cosmos DB
- 文档数据库 + 搜索服务一体,例如 Couchbase
- 内存型实时向量能力,例如 Redis
- 图数据库内置向量能力,例如 Neo4j
- 关系数据库扩展,例如 pgvector
- 托管 PostgreSQL / 兼容 Postgres AI 数据库,例如 AlloyDB AI、Azure Database for PostgreSQL、Neon
- 托管 Postgres AI 平台,例如 Supabase(底层仍是 pgvector)
- SQLite / edge 原生向量数据库,例如 Turso / libSQL
- Postgres + 实时分析 + 向量一体化路线,例如 Tiger Data
- 分析型 / HTAP SQL 引擎,例如 ClickHouse、SingleStore、TiDB
- 湖仓 / 数据平台内检索,例如 Databricks AI Search
- 数据云 / 云数仓内搜索服务,例如 Snowflake Cortex Search
- 实时 / 时序向量数据库,例如 KDB.AI
- 边缘向量数据库,例如 Cloudflare Vectorize
- 对象存储原生 serverless 检索,例如 Turbopuffer
- 企业数据库内置向量能力,例如 Oracle AI Vector Search
- 搜索 API / 产品化检索引擎,例如 Typesense
- 本地 / 湖仓型嵌入式检索,例如 LanceDB
- 本地 ANN 库,例如 FAISS
如果只把这些名字平铺出来,还是很难选。更实用的办法是先按“系统边界”分层:
14.6.1 Postgres 路线:优先复用事务边界和现有数据模型
这一路最典型的是:
pgvector- Supabase
- Neon
- AlloyDB AI
- Azure Database for PostgreSQL 上的
pgvector/DiskANN - Tiger Data
这条路线更适合:
- 业务主数据本来就在
Postgres - 你希望向量和业务记录共用同一套表、事务、迁移和备份体系
- 初期更重视工程一致性,而不是独立检索集群能力
pgvector 当前官方 README 仍把 HNSW 和 IVFFlat 作为核心索引类型来讲,这类方案的优势不是“功能最花”,而是:
- 开发团队学习成本低
- 权限、审计、备份、运维链路复用现有数据库体系
- 适合中小规模、强业务一致性、少一层基础设施的团队
但这条路线也要提前接受它的边界:
- 大规模 ANN 调优通常没有专用检索底座那么细
- 混合检索、重排、多租户隔离往往要靠你自己补更多工程设计
14.6.2 搜索引擎路线:把全文、过滤、聚合、向量放进同一个查询平面
这一类更像:
- Azure AI Search
- Elasticsearch
- OpenSearch
- Vespa
- Apache Solr
- Meilisearch
- Typesense
这类系统的价值,不只是“也能存向量”,而是天然把下面这些能力放在一起:
- 倒排全文检索
- 过滤、facet、聚合
- hybrid search
- rerank / rank fusion
- 更成熟的企业搜索查询平面
Azure AI Search 当前官方文档明确把 hybrid search 定义成:
- 在单个请求里并行执行全文与向量查询
- 通过
RRF合并结果
Elasticsearch、OpenSearch、Vespa 的当前官方资料也都强调:
- 向量检索应和原生 query/filter/aggregation 一起设计
所以如果你的核心问题是:
- 企业搜索
- 电商 / 内容搜索
- 需要 facet、过滤、运营检索配置
- 需要把关键词精确命中和语义召回同时做好
那“搜索引擎路线”通常会比“只找一个专用向量库”更自然。
14.6.3 专用向量基础设施路线:优先考虑检索底座能力和独立扩展
这一类更接近:
- Pinecone
- Qdrant
- Milvus
- Weaviate
- Vald
这些系统更强调:
- ANN 检索本身
- collection / namespace / shard / replica 等检索底座能力
- 向量字段、多向量、压缩、索引类型
- 独立于事务数据库之外扩容
Pinecone 当前官方文档持续强调:
- namespace 对多租户的性能和成本意义很大
Qdrant 当前官方文档则把多租户拆得更细:
- 单 collection + payload 分区
- tiered multitenancy
- 大租户独立 shard,小租户共享 shard
Milvus 当前官方文档则更突出:
- 多向量字段
- hybrid search
- 面向更大规模检索基础设施的能力
如果你的团队是在做:
- 独立知识平台
- AI 检索中台
- 多业务线共享的向量底座
- 明显需要单独扩缩容的高吞吐检索集群
这条路线会更合适。
14.6.4 本地 / 嵌入式 / data-lake 路线:优先开发体验、可移植性和数据就近
这类典型代表包括:
- Chroma
- LanceDB
- FAISS
它们并不一定适合直接承担大型生产多租户平台,但非常适合:
- 本地原型
- 单机评测
- notebook / pipeline 场景
- 数据科学和多模态实验
LanceDB 当前官方资料强调 hybrid search 与多模态检索,说明它更像:
- 面向开发者和数据工作流的“检索构件”
而不是所有团队都该拿来替代完整企业搜索平台。
14.6.5 数据平台 / 实时系统路线:当检索必须贴着现有数据基础设施
还有一类经常被漏掉,但在企业里非常常见:
- MongoDB Atlas Vector Search
- Couchbase Vector Search
- Redis Vector Search
- ClickHouse
- SingleStore
- TiDB
- Databricks AI Search
- Snowflake Cortex Search
- Cloudflare Vectorize
- Turbopuffer
- Oracle AI Vector Search
- KDB.AI
这些方案的共同点不是“都一样”,而是:
- 你本来就已经站在某个数据或实时平台上
- 你更在意数据就近、运维复用、现有团队技能和治理边界
例如:
- MongoDB / Couchbase 适合文档数据和业务对象本来就在那里
- Redis 更适合高实时、低延迟、缓存和在线特征贴近的场景
- ClickHouse / SingleStore / TiDB 更像把向量能力带进分析型或 HTAP 引擎
- Snowflake / Databricks 更适合把检索接进现有数据云与治理体系
这几类方案并不在同一层竞争。更实用的做法通常不是问“谁最好”,而是先问:
- 你需要的是独立检索底座,还是企业搜索引擎。
- 你要不要把向量和业务记录放在同一个事务边界里。
- 团队是否有能力长期承接集群、快照、恢复和容量治理。
这也是为什么现在很多团队第一步并不是新建一个“独立向量库品牌池”,而是先看自己究竟更适合沿 Postgres、数据云、搜索平台,还是 独立检索底座 这条路继续演进。
如果你正在做具体产品选型,可以直接配合阅读:
15. 企业最值得观察的向量检索指标
15.1 质量类
- 检索命中率
- 引用可用率
- 混合检索胜率
- rerank 提升幅度
15.2 稳定性类
- P95 / P99 查询延迟
- 查询超时率
- 批量 upsert 失败率
- 删除完成时长
15.3 治理类
- 旧版本残留召回率
- 权限误召回率
- 无 metadata 记录比例
- namespace / tenant 配置异常数
16. 最常见的误区
- 把所有问题都归因于向量库
- 没有 metadata 设计就开始堆向量
- 只做语义检索,不做关键词、过滤、重排
- embedding 模型换了却不重建索引
- 所有租户混放,再用复杂过滤兜底
- 不测试删除、更新、回滚
- 不记录版本和文档映射
- 用单次 Demo 查询代替生产评测
17. 建议的学习与落地顺序
- 先理解 RAG 详解 和 Embeddings 详解。
- 再理解文档流水线、chunking、metadata 和生命周期。
- 然后再看向量数据库的数据模型、过滤、租户和索引类型。
- 最后再做 hybrid、rerank、多向量和成本优化。
这个顺序很重要,因为:
- 大量所谓“向量库问题”,本质上其实是前置数据建模问题
18. 推荐搭配阅读
- 企业知识库与文档流水线专题
- 数据生命周期专题
- 混合检索优化专题
- 检索查询改写专题
- 知识权限继承专题
- 向量数据库专题索引
- 02-ANN 索引与召回权衡
- 03-多租户、过滤与版本治理
- 04-混合检索、重排与评测
- 05-主流方案、架构形态与选型清单
- 06-部署形态、容量规划与成本治理
19. 重点官方资源
以下资源已按 2026-07-09 复核可访问:
- OpenAI Retrieval guide:https://developers.openai.com/api/docs/guides/retrieval
- OpenAI File search guide:https://developers.openai.com/api/docs/guides/tools-file-search
- OpenAI Embeddings guide:https://developers.openai.com/api/docs/guides/embeddings
- Azure AI Search hybrid search overview:https://learn.microsoft.com/en-us/azure/search/hybrid-search-overview
- Azure AI Search relevance overview:https://learn.microsoft.com/en-us/azure/search/search-relevance-overview
- Azure AI Search vector relevance and ranking:https://learn.microsoft.com/en-us/azure/search/vector-search-ranking
- Pinecone data modeling:https://docs.pinecone.io/guides/index-data/data-modeling
- Pinecone implement multitenancy:https://docs.pinecone.io/guides/index-data/implement-multitenancy
- Pinecone filter by metadata:https://docs.pinecone.io/guides/search/filter-by-metadata
- Pinecone production checklist:https://docs.pinecone.io/guides/production/production-checklist
- Weaviate data structure:https://docs.weaviate.io/weaviate/concepts/data
- Weaviate vector search concepts:https://docs.weaviate.io/weaviate/concepts/search/vector-search
- Weaviate best practices:https://docs.weaviate.io/weaviate/best-practices
- Qdrant filtering:https://qdrant.tech/documentation/search/filtering/
- Qdrant multitenancy:https://qdrant.tech/documentation/manage-data/multitenancy/
- Qdrant hybrid queries:https://qdrant.tech/documentation/search/hybrid-queries/
- Qdrant snapshots:https://qdrant.tech/documentation/operations/snapshots/
- Milvus filtered search:https://milvus.io/docs/filtered-search.md
- Milvus partition key:https://milvus.io/docs/use-partition-key.md
- Milvus consistency:https://milvus.io/docs/consistency.md
- Milvus multi-vector hybrid search:https://milvus.io/docs/multi-vector-search.md
- Chroma introduction:https://docs.trychroma.com/docs/overview/introduction
- Chroma query and get:https://docs.trychroma.com/docs/querying-collections/query-and-get
- LanceDB hybrid search:https://docs.lancedb.com/search/hybrid-search
- Astra DB vector search:https://docs.datastax.com/en/astra-db-serverless/databases/vector-search.html
- Astra DB hybrid search:https://docs.datastax.com/en/astra-db-serverless/databases/hybrid-search.html
- ClickHouse exact and approximate vector search:https://clickhouse.com/docs/engines/table-engines/mergetree-family/annindexes
- ClickHouse full-text text indexes:https://clickhouse.com/docs/engines/table-engines/mergetree-family/textindexes
- SingleStore working with vector data:https://docs.singlestore.com/cloud/developer-resources/functional-extensions/working-with-vector-data/
- SingleStore vector indexing:https://docs.singlestore.com/cloud/reference/sql-reference/vector-functions/vector-indexing/
- TiDB vector search index:https://docs.pingcap.com/tidb/stable/vector-search-index/
- Couchbase vector search:https://docs.couchbase.com/server/current/vector-search/vector-search.html
- Couchbase SDK vector search:https://docs.couchbase.com/java-sdk/current/howtos/vector-searching-with-sdk.html
- Databricks AI Search:https://docs.databricks.com/aws/en/ai-search/ai-search
- AlloyDB AI vector search overview:https://docs.cloud.google.com/alloydb/docs/ai/vector-search-overview
- AlloyDB choose index strategy:https://docs.cloud.google.com/alloydb/docs/ai/choose-index-strategy
- Azure Database for PostgreSQL DiskANN:https://learn.microsoft.com/en-us/azure/postgresql/extensions/how-to-use-pgdiskann
- Azure Database for PostgreSQL pgvector optimization:https://learn.microsoft.com/en-us/azure/postgresql/extensions/how-to-optimize-performance-pgvector
- Neon pgvector:https://neon.tech/docs/extensions/pgvector
- Neon optimize pgvector search:https://neon.tech/docs/ai/ai-vector-search-optimization
- MongoDB Vector Search:https://www.mongodb.com/docs/vector-search/
- MongoDB vector search stage:https://www.mongodb.com/docs/vector-search/query/aggregation-stages/vector-search-stage/
- Redis vector search concepts:https://redis.io/docs/latest/develop/ai/search-and-query/vectors/
- Redis as a vector database:https://redis.io/docs/latest/develop/get-started/vector-database/
- Snowflake Cortex Search overview:https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-search/cortex-search-overview
- Snowflake query Cortex Search Service:https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-search/query-cortex-search-service
- Cloudflare Vectorize:https://developers.cloudflare.com/vectorize/
- Cloudflare Vectorize introduction:https://developers.cloudflare.com/vectorize/get-started/intro/
- Turbopuffer docs:https://turbopuffer.com/docs
- Turbopuffer vector search:https://turbopuffer.com/docs/vector
- Oracle AI Vector Search overview:https://docs.oracle.com/en/database/oracle/oracle-database/23/vecse/overview-ai-vector-search.html
- Meilisearch overview:https://meilisearch.com/docs/getting_started/overview
- Meilisearch hybrid search overview:https://meilisearch.com/docs/capabilities/hybrid_search/overview
- Meilisearch multitenancy and tenant tokens:https://meilisearch.com/docs/capabilities/security/getting_started
- Elasticsearch kNN search:https://www.elastic.co/docs/solutions/search/vector/knn
- Elasticsearch hybrid search:https://www.elastic.co/elasticsearch/hybrid-search
- OpenSearch vector search:https://docs.opensearch.org/latest/vector-search/
- OpenSearch hybrid search:https://docs.opensearch.org/latest/vector-search/ai-search/hybrid-search/index/
- Vespa vector search intro:https://docs.vespa.ai/en/querying/vector-search-intro.html
- Vespa nearest neighbor search:https://docs.vespa.ai/en/querying/nearest-neighbor-search.html
- Vespa hybrid search tutorial:https://docs.vespa.ai/en/learn/tutorials/hybrid-search.html
- Apache Solr dense vector search:https://solr.apache.org/guide/solr/latest/query-guide/dense-vector-search.html
- Apache Solr text to vector:https://solr.apache.org/guide/solr/latest/query-guide/text-to-vector.html
- Vald about:https://vald.vdaas.org/docs/overview/about-vald/
- Vald architecture:https://vald.vdaas.org/docs/overview/architecture/
- Vald backup configuration:https://vald.vdaas.org/docs/user-guides/backup-configuration/
- KDB.AI similarity search:https://code.kx.com/kdbai/latest/use/search.html
- KDB.AI filters:https://code.kx.com/kdbai/latest/reference/filters.html
- KDB.AI indexes:https://code.kx.com/kdbai/latest/reference/index.html
- pgvector:https://github.com/pgvector/pgvector
- Supabase pgvector:https://supabase.com/docs/guides/database/extensions/pgvector
- Supabase RAG with permissions:https://supabase.com/docs/guides/ai/rag-with-permissions
- Typesense vector search:https://typesense.org/docs/30.2/api/vector-search.html
- FAISS documentation:https://faiss.ai/