Appearance
向量数据库与 RAG 工具
RAG(检索增强生成)是 LLM 应用的标配架构。本页汇总向量数据库、嵌入模型、文档切分与 RAG 框架等核心组件,帮助你构建高效的知识检索系统。
向量数据库
托管服务
| 数据库 | 开发者 | 特点 | 最佳场景 | 链接 |
|---|---|---|---|---|
| Pinecone | Pinecone | 全托管、自动扩缩、混合搜索 | 快速上线、无运维负担 | pinecone.io |
| Zilliz Cloud | Zilliz | 基于 Milvus、企业级、高可用 | 大规模企业部署 | zilliz.com |
| Weaviate Cloud | Weaviate | GraphQL 接口、模块化 AI 集成 | 需要灵活查询能力 | weaviate.io |
| Chroma Cloud | Chroma | 轻量、开源、开发者友好 | 原型开发、小团队 | trychroma.com |
自托管/开源
| 数据库 | 语言 | 特点 | 最佳场景 | 链接 |
|---|---|---|---|---|
| Milvus | Go | 企业级、分布式、十亿级向量 | 大规模生产环境 | milvus.io |
| Weaviate | Go | 向量+对象混合存储、模块化 | 复杂查询、多模态 | weaviate.io |
| Qdrant | Rust | 性能优越、过滤器强大、云原生 | 高性能、过滤查询 | qdrant.tech |
| Chroma | Python | 轻量、嵌入式、开发者体验好 | 快速原型、本地开发 | trychroma.com |
| pgvector | C | PostgreSQL 扩展、ACID 事务 | 已有 PG 基础架构 | GitHub |
| Vald | Go | 基于 NGT、Kubernetes 原生 | K8s 环境、云原生 | vald.vdaas.io |
向量数据库选型对比
| 维度 | Pinecone | Milvus | Weaviate | Qdrant | Chroma | pgvector |
|---|---|---|---|---|---|---|
| 部署复杂度 | 低 | 中 | 中 | 低 | 极低 | 低 |
| 扩展性 | 自动 | 优秀 | 良好 | 良好 | 中等 | 依赖 PG |
| 查询能力 | 中等 | 强 | 强 | 强 | 简单 | 中等 |
| 过滤器支持 | 基础 | 强 | 强 | 强 | 基础 | 中等 |
| 多模态 | 部分 | 部分 | 强 | 部分 | 无 | 无 |
| 自托管 | 不可 | 可 | 可 | 可 | 可 | 可 |
| 定价 | 按用量 | 免费/企业 | 免费/企业 | 免费/企业 | 免费/企业 | 免费 |
嵌入模型 (Embedding Models)
通用文本嵌入
| 模型 | 维度 | 上下文长度 | 特点 | 链接 |
|---|---|---|---|---|
| text-embedding-3-large | 3072 | 8192 | OpenAI 最强、多语言 | OpenAI |
| text-embedding-3-small | 1536 | 8192 | 性价比高 | OpenAI |
| BGE-M3 | 1024 | 8192 | 多语言、密集+稀疏、开源 | HuggingFace |
| E5-Mistral | 4096 | 32768 | 长文档、高质量 | HuggingFace |
| GTE-Qwen2 | 3584 | 131072 | 极长上下文、中文优化 | HuggingFace |
| Jina-Embeddings-v3 | 1024 | 8192 | 多任务、轻量 | HuggingFace |
| Nomic-Embed | 768 | 8192 | 开源、高性能、全视觉 | HuggingFace |
多模态嵌入
| 模型 | 模态 | 特点 | 链接 |
|---|---|---|---|
| CLIP | 图像+文本 | 开源标准、通用 | HuggingFace |
| OpenAI text-embedding-3 | 文本 | API 便捷 | OpenAI |
| BGE-VL | 图像+文本 | 中文优化 | HuggingFace |
文档切分策略
切分方法对比
| 方法 | 原理 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| 固定长度 | 按 token/chunk 数切分 | 简单、可控 | 语义裂解 | 结构化文档 |
| 递归分割 | 按标点/段落分割 | 保持语义完整 | 块大小不均 | 文章、报告 |
| 语义分割 | 基于相似度聚类 | 语义连贯 | 计算成本高 | 复杂文档 |
| Agentic 分割 | LLM 决定切分点 | 智能、上下文感知 | 慢、成本高 | 高价值文档 |
切分工具
| 工具 | 功能 | 链接 |
|---|---|---|
| LangChain Text Splitters | 多种策略切分 | Docs |
| LlamaIndex Node Parser | 智能分割、多级解析 | Docs |
| Semantic Chunker | 基于嵌入相似度分割 | GitHub |
RAG 框架与工具
综合 RAG 框架
| 框架 | 特点 | 最佳场景 | 链接 |
|---|---|---|---|
| LlamaIndex | 数据载入、检索、Agent 一体化 | 复杂 RAG 、企业级应用 | llamaindex.ai |
| LangChain | 模块化、生态丰富、灵活 | 快速原型、自定义流程 | langchain.com |
| RAGFlow | 深度文档理解、可视化 | 复杂文档处理 | GitHub |
| Dify | 可视化编排、快速上线 | 产品团队、低代码 | dify.ai |
| Flowise | 拖拽式、开源 | 无代码/低代码 | flowiseai.com |
高级 RAG 技术
| 技术 | 原理 | 效果 | 实现工具 |
|---|---|---|---|
| Hybrid Search | 向量搜索 + 关键词搜索 | 提高准确率 | 大多数数据库 |
| Re-ranking | 初检 + 精排 | 显著提升相关性 | Cohere Rerank, BGE-Reranker |
| Query Expansion | 扩展查询词 | 提高召回率 | LangChain, LlamaIndex |
| Hypothetical Document | 生成假设文档再检索 | 解决词汇错配 | LangChain HyDE |
| Self-RAG | 模型自检检索质量 | 减少幻觉 | 自实现或框架 |
| GraphRAG | 知识图谱增强 | 全局上下文理解 | Microsoft GraphRAG |
相关页面
- Retrieval Augmented Generation — RAG 概念
- Embedding Models / Vector Representations — 嵌入模型概念
- Semantic Search — 语义搜索
- 向量数据库对比 — 向量数据库对比
- AI 开发工具箱 — AI 开发工具
- AI 数据集资源大全 — AI 数据集
参考来源
- Pinecone 学习中心
- Milvus 官方文档
- Weaviate 文档
- Qdrant 文档
- LangChain RAG 指南
- LlamaIndex 文档