
2026 年最佳向量資料庫:9 款精選、真實價格,以及每款都附程式碼
2026 年有超過 30 款向量資料庫,但對大多數要上線 RAG、AI 代理或語意搜尋的團隊來說,真正重要的只有寥寥數款。正確的選擇與其取決於原始 QPS 數字,不如說更取決於你現有的技術架構;而針對同一種工作負載,最便宜與最昂貴選項之間的價差大約是 10 倍。以下是我們今天真正會拿來上線的九款,每一款都附真實價格與可執行的程式碼。
重點整理:
- 如果預算不是限制,Pinecone Serverless 仍然是將 RAG 推向生產環境最快的路徑。
- Qdrant 提供最佳的開源性價比;已於 2026 年 3 月完成 B 輪募資。
- 如果你已經在跑 PostgreSQL,而且向量數量維持在約 1,000 萬以下,pgvector 就「夠用」了。
- Weaviate、Milvus 與 Chroma 各自在特定領域勝出;請見下方的決策矩陣。
什麼是向量資料庫(以及它不是什麼)?
向量資料庫是一種儲存高維度嵌入向量、並以低於 100 毫秒的延遲處理近似最近鄰(ANN)查詢的系統,通常透過 HNSW 或 IVF 索引來達成。它驅動了 RAG、語意搜尋與 AI 代理的記憶。像 Faiss 這類向量函式庫並不是資料庫。它們缺乏持久化、複寫與多租戶能力。
有三個術語經常被混為一談,所以我們先把它們定義清楚。
- 嵌入向量(Embedding): 一個數值向量(通常為 384–3072 維),以可計算相似度的方式表示文字、圖片或音訊。
- ANN(近似最近鄰): 幾乎精確地找出與查詢最接近的 k 個向量,用一點召回率換取相較於精確搜尋的大幅加速。
- HNSW: 分層可導航小世界(Hierarchical Navigable Small World),一種基於圖的索引,大多數現代向量資料庫都採用它,因為它在召回率與延遲之間取得了良好的平衡。
函式庫、索引與資料庫之間的區別很重要。Faiss 給你的是一個記憶體內的 ANN 索引。它很快,但持久化、驗證與複寫都得你自己來。向量資料庫則把該索引包裹起來,加上儲存、交易、中繼資料過濾、RBAC 與查詢 API。如果你要上線一個真正的產品,你需要的是資料庫。如果你只是把相似性搜尋嵌入到單一一個 Python 服務裡,那麼函式庫可能就夠了。
有一個特例值得先提出來:pgvector 是一個 PostgreSQL 擴充功能,而不是獨立產品。對我們的目的而言,它仍然算是向量資料庫,因為它提供了持久化、交易與 SQL 介面,只不過是接在 Postgres 上。下文會再詳細說明。
我們如何挑選 2026 年的 9 款向量資料庫
在過去 18 個月裡,我們在生產環境部署了 Pinecone、Qdrant 與 pgvector,也經歷過選錯方案時凌晨兩點被呼叫器叫醒的慘痛教訓後,我們發現有三個篩選條件比效能測試更重要。
- 市場覆蓋度。 在「best vector database」搜尋結果前 10 名的比較文章中,至少有 8 篇提到它。如果沒人在寫它,那當它出問題時,你就找不到人可以請教。
- 2026 年已可上生產。 有真實客戶在大規模運行真實工作負載。我們跳過了那些還在隱身模式的初創公司,以及連一篇案例研究都沒發表過的 beta 產品。
- 持續維護。 在過去六個月內有提交或穩定版本釋出。一個從 2024 年之後就沒更新過的向量資料庫是負債,而不是資產。
誠實的偏見聲明:我們在自己的兩個客戶專案中使用 Qdrant。但這不代表它就是你的正確答案,我們會明確告訴你它在什麼情況下不適合。我們的向量資料庫內容不接受廠商贊助,這就是為什麼你在別處那些有贊助的「前 10 名」榜單上看到排名很高的某些名字,並不在我們的榜單上。
2026 年哪款向量資料庫最適合 RAG?
對於 2026 年的 RAG,Pinecone Serverless 是上生產最省力的路徑,Qdrant 提供最佳的自建性價比,而如果你已經在跑 PostgreSQL,那麼 pgvector 就是正確答案。「最適合 RAG 的向量資料庫」取決於你的規模、託管偏好與現有架構,而不是效能測試數字。
以下是我們針對典型 RAG 工作負載(100 萬–1,000 萬個 chunk、OpenAI 嵌入、每日 1 萬–10 萬次查詢)對前三名的排名:
- Pinecone Serverless。 一個下午就能上線,自動擴縮直接就能用,而且沒有基礎設施要顧。付那個溢價,然後繼續往前走。
- Qdrant。 只要你有任何維運能力,它的性價比就是最高的。對於中繼資料繁重的 RAG,它的過濾功能非常出色,而且混合搜尋是原生支援。
- pgvector。 無聊、可靠,而且如果你已經在為 Postgres 付費,它就是免費的。對於 1,000 萬向量以下、約 80% 的 RAG 專案來說,這是正確答案。
這份清單上的每一家主要廠商,都與 LangChain 和 LlamaIndex 整合為一級檢索器。這在 2026 年只是基本門檻,所以不要只根據框架支援來選擇。要根據成本、規模與你團隊的維運餘裕來選。
如果你還在摸索流程的其餘部分,請參考更廣泛的 RAG 技術棧,了解分塊、重新排序與評估工具。完全沒接觸過檢索?在確定資料庫之前,先走過一遍打造你的第一個 RAG 應用。一旦你親身體會到瓶頸實際在哪裡,選擇就會容易得多。
還有一件事:在你搞定分塊策略之前,不要選向量資料庫。糟糕的 chunk 會讓每一款資料庫都看起來很糟。
比較表——9 款向量資料庫一覽
八個欄位、九家廠商、真實數字。這是你唯一需要收藏的那張表。每一欄都是過去一年裡我們從真實客戶那裡至少聽過三次的问题的答案。價格是 2026 年 5 月的參考點;一切每季都在變動,所以在簽合約之前,請到廠商的定價頁面確認。
| 廠商 | 類型 | 最適合 | 定價模式(2026) | 可自建? | 混合搜尋 | 索引演算法 | 最大規模(宣稱) |
|---|---|---|---|---|---|---|---|
| Pinecone | 託管(serverless) | 上生產 RAG 最快的路徑 | 免費 $0 → Builder $20/月 → 用量計費 | 否 | 是(稀疏-密集) | 專有 | 數十億 |
| Qdrant | 開源 + 託管雲 | 最佳自建性價比 | 免費開源 / 免費雲方案 / 付費叢集 | 是 | 是 | HNSW | 數十億(已驗證 3.4 億+) |
| Weaviate | 開源 + 託管雲 | Schema 豐富的應用、開箱即用混合搜尋 | 免費開源 / Serverless 入門 $25/月 | 是 | 是(BM25 + 密集) | HNSW | 數十億 |
| Milvus | 開源 + Zilliz Cloud | 最大規模的生產部署 | 免費開源 / Zilliz Cloud 用量計費 | 是 | 是 | HNSW、IVF、DiskANN、GPU | 數百億 |
| Chroma | 開源(多為本地) | 原型開發、本地優先開發 | 免費開源 / Chroma Cloud beta | 是 | 有限 | HNSW | 約 1,000 萬游刃有餘 |
| pgvector | Postgres 擴充功能 | 已在用 Postgres 的團隊 | 免費(你的 Postgres 帳單) | 是 | 透過 pgvectorscale + 擴充功能 | HNSW(0.5.0+) | 實務上約 1,000 萬–5,000 萬 |
| MongoDB Atlas Vector Search | 託管(Atlas) | 已在用 MongoDB 的團隊 | Atlas 定價(搜尋節點) | 否 | 是 | HNSW | 數十億 |
| LanceDB | 開源(嵌入式) | 本地優先、多模態、邊緣 | 免費開源 / LanceDB Cloud | 是 | 是 | IVF-PQ | 數十億(宣稱) |
| Vertex AI Vector Search 2.0 | 託管(GCP) | 全力押注 Google Cloud 的團隊 | GCP 用量計費 | 否 | 是 | ScaNN | 數十億 |
9 款向量資料庫,排名與說明
1. Pinecone,最適合最快上生產 RAG
Pinecone 是那些想要零基礎設施、且預算充足的團隊在託管向量資料庫上的預設選擇。Serverless 於 2025 年正式 GA,現在已成為大多數新專案的推薦產品。
脫穎而出的原因:
- 零維運負擔。沒有叢集要規劃規模、沒有複本要管理,只要一支 API 金鑰。
- Serverless 自動擴縮能處理突發性工作負載,無需手動分片。
- 稀疏-密集混合搜尋原生提供,不用另外接第二個索引。
定價(2026 年 5 月): 免費 Starter 方案(約 10 萬向量),Builder 每月 $20,在此之上讀取/寫入/儲存採用量計費,再上去則是 Enterprise 合約。根據 Pinecone 文件,典型的 1,000 萬向量 RAG 工作負載落在每月 $700–$900 的區間。細項條款很重要。
from pinecone import Pinecone
pc = Pinecone(api_key="YOUR_KEY")
index = pc.Index("rag-index")
index.upsert([
{"id": "doc1", "values": [0.1, 0.2, 0.3], "metadata": {"source": "blog"}}
])
results = index.query(vector=[0.1, 0.2, 0.3], top_k=5, include_metadata=True)不適合: 有嚴格資料駐留要求的團隊、需要完全掌控資料的任何人,或在非小規模下預算低於每月 $20 的情況。
2. Qdrant,最適合自建性價比
Qdrant 是我們最常上線的開源向量資料庫。它的 Rust 核心很快,過濾功能確實出色,而 2026 年 3 月的 B 輪 5,000 萬美元募資更為其雲端產品注入了雄厚資金。
脫穎而出的原因:
- 過濾效能:payload 過濾是一等公民,而不是事後才補上的東西。
- 出色的文件,以及一個不會跟你作對、合情合理的 Python 客戶端。
- 免費開源、免費雲方案,以及當你規模超出時可預期的付費叢集。
定價(2026 年 5 月): 免費開源(Apache 2.0)、免費 Qdrant Cloud 方案(1GB 叢集),付費叢集從 4GB 入門約每月 $25 起,一直到具備複寫的專用叢集。在 Hetzner ax52 上自建,1,000 萬向量全部成本約每月 $60–$120。目前的 Python 客戶端 API 請見 Qdrant 文件。
from qdrant_client import QdrantClient
from qdrant_client.models import PointStruct, VectorParams, Distance
client = QdrantClient(url="http://localhost:6333")
client.create_collection("rag", vectors_config=VectorParams(size=3, distance=Distance.COSINE))
client.upsert("rag", points=[PointStruct(id=1, vector=[0.1, 0.2, 0.3], payload={"source": "blog"})])
hits = client.query_points("rag", query=[0.1, 0.2, 0.3], limit=5).points若要與那些明顯的開源替代方案做一場直接對決,我們另寫了一篇一對一深度評比。
不適合: 維運餘裕為零、想要真正零基礎設施的團隊(改用 Pinecone Serverless)。
3. Weaviate,最適合具備原生混合搜尋的 Schema 豐富應用
當你的 RAG 應用需要的不只是「一坨文字加中繼資料」時,Weaviate 就是你會伸手去拿的工具。Schema 優先的模式,加上開箱即用的 BM25 + 密集混合搜尋,讓它在結構化知識庫上表現強勁。
脫穎而出的原因:
- 真正的混合搜尋(BM25 + 密集向量並做融合),不需要第二套系統。
- Schema 與模組系統讓你能在流程內直接接上嵌入與重新排序。
- 多租戶是一等公民,如果你要為每個客戶提供嵌入服務就很方便。
定價(2026 年 5 月): 免費開源。雲端於 2025 年 10 月重組:Serverless 入門每月 $25 起,再上去是 Enterprise 方案。Weaviate 文件記錄了 v4 Python 客戶端。
import weaviate
client = weaviate.connect_to_local()
docs = client.collections.get("Docs")
docs.data.insert(properties={"text": "sample"}, vector=[0.1, 0.2, 0.3])
results = docs.query.near_vector(near_vector=[0.1, 0.2, 0.3], limit=5)不適合: 陽春專案,你會為用不到的 schema 功能付出代價(在心智負擔與金錢上)。
4. Milvus,最適合最大規模的生產部署
當你越過「十億向量」這條線、開始思考數百億時,Milvus 就是答案。在那種規模下,DiskANN 與 GPU 索引選項就很重要了,而 Zilliz Cloud 負責運行其託管產品。
脫穎而出的原因:
- 多種索引演算法(HNSW、IVF、DiskANN、GPU):依工作負載挑選。
- 維運上身經百戰。一篇透過 MarkTechPost 報導的 Reddit 案例研究指出,它在生產環境中達到 3.4 億以上的向量。
- 如果你不想自己跑 Milvus,Zilliz Cloud 能消除大部分維運上的痛點。
定價(2026 年 5 月): 免費開源。Zilliz Cloud 採用量計費,有免費開發叢集與隨用隨付的生產環境。Milvus 文件涵蓋 pymilvus 與 DiskANN 設定。
from pymilvus import MilvusClient
client = MilvusClient("milvus_demo.db")
client.create_collection(collection_name="rag", dimension=3)
client.insert("rag", [{"id": 1, "vector": [0.1, 0.2, 0.3], "source": "blog"}])
results = client.search("rag", data=[[0.1, 0.2, 0.3]], limit=5)不適合: 約 1,000 萬向量以下的小型專案。Milvus 是大材小用,維運成本會超過任何效能上的好處。
5. Chroma,最適合原型開發與本地優先開發
Chroma 是全世界最容易啟動的向量資料庫。pip install chromadb、兩行 Python,你就在查詢了。這是它的超能力,也是它的限制。
脫穎而出的原因:
- 預設本地優先。原型開發階段不用跑伺服器。
- Apache 2.0 開源,Chroma Cloud 目前處於 beta,提供託管主機。
- 非常適合教學、展示,以及「這個週末讓我試試 RAG」這類專案。
定價(2026 年 5 月): 免費開源。截至撰寫時,Chroma Cloud beta 的定價尚未定案。目前的客戶端 API 請見 Chroma 文件。
import chromadb
client = chromadb.PersistentClient(path="./chroma_db")
collection = client.get_or_create_collection("rag")
collection.add(ids=["doc1"], embeddings=[[0.1, 0.2, 0.3]], metadatas=[{"source": "blog"}])
results = collection.query(query_embeddings=[[0.1, 0.2, 0.3]], n_results=5)不適合: 超過 1,000 萬向量的生產環境、嚴格的多租戶隔離,或任何 p99 延遲是硬性要求的場景。
6. pgvector,最適合已在用 PostgreSQL 的團隊
pgvector 是絕大多數 RAG 專案那個無聊但正確的選擇。它是一個 Postgres 擴充功能,加入了 vector 欄位型別與 ANN 索引,而自 pgvector 0.5.0 起,它在 IVFFlat 之外也提供了 HNSW。搭配 pgvectorscale 做串流索引更新,你就能獲得專用向量資料庫所提供的大部分功能。
脫穎而出的原因:
- 凡是 Postgres 能跑的地方它都能跑:Supabase、Neon、AWS RDS、你的筆電。
- 一個資料庫同時放你的應用資料與嵌入:不用同步、沒有一致性煩惱。
- SQL 意味著 join、交易,以及現有的存取控制直接就能用。
定價(2026 年 5 月): 免費。你為所用平台上的 Postgres 運算付費。Supabase 免費方案可處理小型專案,Neon 在查詢之間可縮至零,RDS 則依執行個體計費。
CREATE EXTENSION vector;
CREATE TABLE docs (
id bigserial PRIMARY KEY,
embedding vector(1536),
content text
);
INSERT INTO docs (embedding, content) VALUES ('[0.1,0.2,0.3]', 'sample text');
SELECT content FROM docs ORDER BY embedding <=> '[0.1,0.2,0.3]' LIMIT 5;不適合: 超过约 5,000 萬向量、且硬性要求 p99 < 50 毫秒的工作負載。你會感到痛苦,到那個時候,專用向量引擎反而會更便宜好維運。
7. MongoDB Atlas Vector Search,最適合已在用 MongoDB 的團隊
MongoDB Atlas Vector Search 之於 MongoDB,就如同 pgvector 之於 Postgres:如果你的營運資料庫已經是 MongoDB,那它就是顯而易見的答案。專用搜尋節點代表向量查詢不會與你的交易工作負載爭搶資源。
脫穎而出的原因:
- 一個平台同時處理文件、搜尋與向量。不用維護同步。
- 專用搜尋節點將向量工作負載與主要 OLTP 隔離。
- Atlas 的維運工具(備份、監控、擴縮)也涵蓋向量索引。
定價(2026 年 5 月): 標準 Atlas 定價,加上搜尋節點的每小時費用。免費方案(M0)支援小型向量索引供原型開發。
from pymongo import MongoClient
client = MongoClient("YOUR_ATLAS_URI")
coll = client["rag"]["docs"]
coll.insert_one({"text": "sample", "embedding": [0.1, 0.2, 0.3]})
results = coll.aggregate([
{"$vectorSearch": {"index": "vec_idx", "path": "embedding", "queryVector": [0.1, 0.2, 0.3], "numCandidates": 100, "limit": 5}}
])不適合: 還沒在用 MongoDB 的團隊。沒有理由從這裡開始。
8. LanceDB,最適合本地優先、多模態與邊緣
LanceDB 是嵌入式向量資料庫。把它想成向量版的 SQLite:它在處理程序內運行,將資料以 Lance 檔案儲存在磁碟或 S3 上,並在單一 schema 中處理多模態資料(圖片、文字、音訊)。
脫穎而出的原因:
- 嵌入模式代表不用部署伺服器。非常適合桌面應用與邊緣。
- 從第一天起就是多模態;Lance 檔案格式能乾淨俐落地處理張量。
- 物件儲存後端可用於 S3、GCS、R2:按位元組付費,而非按執行個體。
定價(2026 年 5 月): 免費開源。LanceDB Cloud 是其託管方案,採用量計費。
import lancedb
db = lancedb.connect("./lance_db")
table = db.create_table("rag", data=[{"id": 1, "vector": [0.1, 0.2, 0.3], "text": "sample"}])
results = table.search([0.1, 0.2, 0.3]).limit(5).to_pandas()不適合: 現在就需要託管雲 SLA 的團隊。LanceDB Cloud 比 Pinecone 或 Qdrant Cloud 更年輕,維運上的往績紀錄也較短。
9. Vertex AI Vector Search 2.0——最適合全力押注 Google Cloud 的團隊
Vertex AI Vector Search 2.0 於 2026 年 5 月推出,是 Google 對舊有 Matching Engine 的翻新,完全託管並建立在 Google 內部使用的 ScaNN 演算法之上。如果你的技術棧都在 GCP 裡,這是最省力的路徑。
脫穎而出的原因:
- 底層是 ScaNN:與 Google 搜尋用於嵌入的演算法相同。
- 與 Vertex AI 嵌入、Cloud Storage 與 IAM 緊密整合。
- 完全託管、自動擴縮、透過 GCP 計費。不用另外建立廠商關係。
定價(2026 年 5 月): GCP 用量計費:索引儲存 + 查詢 QPS。1,000 萬向量的工作負載通常落在每月 $500–$800,與 Pinecone Serverless 相當。
from google.cloud import aiplatform
aiplatform.init(project="your-project", location="us-central1")
index = aiplatform.MatchingEngineIndex("projects/.../indexes/...")
endpoint = aiplatform.MatchingEngineIndexEndpoint("projects/.../indexEndpoints/...")
response = endpoint.match(deployed_index_id="rag", queries=[[0.1, 0.2, 0.3]], num_neighbors=5)不適合: 不在 Google Cloud 上的團隊。如果你是多雲或 AWS 優先,這種鎖定並不值得。
榮譽提名:Faiss
Faiss 是一個向量函式庫,而不是資料庫。它給你的是一個記憶體內的 ANN 索引:沒有持久化、沒有複寫、沒有驗證,除了你自己接上去的之外也沒有中繼資料過濾。當你要把搜尋索引嵌入到一個 Python 服務裡面、且資料量很小時,就用 Faiss。其他一切情況,請從上面的清單中選一款真正的向量資料庫。
為你的技術棧挑對向量資料庫(決策矩陣)
「我們該用哪款向量資料庫?」這個問題的真實答案是「以最少的摩擦契合你現有技術棧的那一款」。別管那些效能測試之爭了。從你的資料已經在哪裡開始,然後檢視你預期 18 個月後的規模,最後再去擔心功能。
| 如果你正在用/正在打造... | 首選 | 次選 | 原因 |
|---|---|---|---|
| 已在用 PostgreSQL | pgvector | Qdrant | 零新增基礎設施;只有撞到 pgvector 的規模上限時才換 |
| AWS、沒有 Postgres | Pinecone Serverless | OpenSearch + k-NN | 在 AWS 上託管方案勝出;想要混合搜尋就用 OpenSearch |
| Azure | Azure AI Search | Pinecone | 原生 Azure 整合減少驗證/計費的痛苦 |
| Google Cloud | Vertex AI Vector Search 2.0 | Pinecone | GCP 原生託管;底層是 ScaNN |
| 已在用 MongoDB | MongoDB Atlas Vector Search | pgvector(若要遷移) | 單一資料庫好維運 |
| LangChain / LlamaIndex 應用 | Qdrant | Pinecone | 一級整合、混合搜尋 |
| n8n / Open WebUI / 本地 | Chroma | Qdrant(自建) | 最容易的本地安裝;兩者都有一行安裝 |
| AI 代理(長期記憶) | Qdrant | Pinecone | 針對代理記憶工具最佳的過濾 + 規模 |
| 本地優先 / 多模態 | LanceDB | Chroma | 嵌入模式;圖片 + 文字放進同一個 schema |
怎麼讀這張表:挑出符合你目前技術棧的那一列,採用第一欄的建議,然後停止最佳化。如果你真的不確定,就在本地用 Chroma 做原型(一個下午就夠),等到你了解查詢的形態與真實規模後,再遷移到 Pinecone 或 Qdrant。在向量資料庫選擇上的過早最佳化,害到的團隊比選錯本身還多。
向量資料庫到底要花多少錢?
對於 1,000 萬筆 1536 維的 OpenAI 嵌入、每日 10 萬次查詢,在 Pinecone Serverless 上大約是每月 $700–$900,在 Qdrant Cloud 上是每月 $250–$400,在 Hetzner ax52 上自建 Qdrant 則是每月 $60–$120。你的真實帳單會隨著查詢量、複寫與中繼資料大小而大幅擺動。
以下是同一工作負載在三種配置下的情況:
| 配置 | 向量數 | 每日查詢數 | 預估每月成本(2026 年 5 月) | 備註 |
|---|---|---|---|---|
| Pinecone Serverless | 1,000 萬(1536 維) | 10 萬 | $700–$900 | 讀取 + 寫入 + 儲存用量計費 |
| Qdrant Cloud(託管) | 1,000 萬(1536 維) | 10 萬 | $250–$400 | 2 複本叢集,scale 方案 |
| 在 Hetzner ax52 上自建 Qdrant | 1,000 萬(1536 維) | 10 萬 | $60–$120 | 硬體 + 頻寬;由你維運 |
為什麼這個差距是真實的?因為你付錢買的是三樣不同的東西。在 Pinecone 上,你付的是 SLA 以及運行它的團隊;你不用去想容量或複本。在 Qdrant Cloud 上,你付得較少,因為 Qdrant 的基礎設施成本較低、你更接近底層硬體,但你仍然有備份、升級與狀態頁面。在自建上,你幾乎不用為硬體付錢,然後在凌晨兩點磁碟滿了的時候,你自己付出代價。
我們曾親眼看過一個客戶在沒改變查詢量的情況下加了第二個區域,結果 Pinecone 帳單在一個月內從 $80 暴漲到 $800。複寫不是免費的。那些沒人討論的隱藏成本:出口流量(尤其是跨區域)、複寫倍數、中繼資料大小(每個向量 5KB 的 JSON payload,在 1,000 萬行時會累積起來),以及嵌入 API 呼叫本身(你為 text-embedding-3-large 付的 OpenAI 帳單,往往會超過你的向量資料庫帳單)。
這些是根據已公開定價頁面得出的 2026 年 5 月估算值。在確定之前,請到各廠商的定價頁面確認,廠商定價每季都會變,我們的數字也會隨時間漂移。
混合搜尋,當關鍵字 + 向量勝過只用向量
混合搜尋將稀疏關鍵字索引(BM25 或 SPLADE)與密集向量索引結合,用倒數排名融合(Reciprocal Rank Fusion)或加權總和來融合分數。在大多數公開效能測試中,它在 RAG 準確率上比純向量檢索高出 5–15 個百分點,尤其是在精確匹配查詢上,例如產品代碼、名稱與錯誤字串。
純向量搜尋不擅長精確匹配。問「E1042 的錯誤代碼是什麼?」,密集檢索器會回傳語意相關的錯誤,而不是 E1042 本身。BM25 則會精確鎖定那個 token。把兩者結合,你就能魚與熊掌兼得。
2026 年具備原生混合搜尋的廠商:Qdrant、Weaviate、Milvus,以及 Vespa(雖然我們沒給它排名,但值得一提)。Pinecone 在 2024 年加入了稀疏-密集混合搜尋,API 也很扎實。pgvector 使用者通常會把它與 Postgres 全文搜尋結合,並在 SQL 中融合分數。
from qdrant_client import QdrantClient
from qdrant_client.models import Prefetch, FusionQuery, Fusion
client = QdrantClient(url="http://localhost:6333")
results = client.query_points(
collection_name="rag",
prefetch=[
Prefetch(query=[0.1, 0.2, 0.3], using="dense", limit=20),
Prefetch(query={"indices": [42, 73], "values": [0.8, 0.6]}, using="sparse", limit=20),
],
query=FusionQuery(fusion=Fusion.RRF),
limit=5,
)如果你的嵌入很好、但檢索品質感覺「有點不對勁」,混合搜尋就是最有用的修正手段,而且它與聰明的分塊策略相得益彰。兩者都不要省。
VectorDBBench 與 ann-benchmarks 到底告訴我們什麼
VectorDBBench 與 ann-benchmarks 在 MS-MARCO 與 LAION 等標準化資料集上,測量各向量資料庫的 QPS、recall@k 與 p99 延遲。Qdrant 與 Milvus 在自建吞吐量上領先;Pinecone Serverless 在託管的簡易性上領先。效能測試只是方向性的參考。你工作負載的過濾複雜度,比標題上的 QPS 更重要。
來自公開效能測試的一些具體數字。根據 Qdrant 公布的效能測試,Qdrant 在 100 萬向量的 deep-image-96 資料集上,於 recall@10 = 0.95 時達到約 600 QPS。使用 HNSW 的 Milvus 在同一資料集上達到相當的 QPS;差距會隨過濾選擇性而縮小或擴大。在 ann-benchmarks 上,較舊的 ScaNN 與 HNSWlib 函式庫依然表現不俗,提醒所有人:演算法品質比廠商行銷更重要。
效能測試只是方向性參考。你的過濾選擇性與中繼資料大小,對真實世界延遲的影響,會超過任何廠商標題上的 QPS。
重點不是效能測試沒用。它們是一種合理性檢查。在確定之前,用你實際的過濾模式、實際的向量維度與實際的召回目標,跑一遍你自己的測試。順帶一提,把如何衡量檢索品質也設定好。Recall@k 完全無法告訴你 RAG 的答案是否正確。
從 Pinecone 遷移(以及其他關於鎖定的對話)
對大多數團隊來說,從 Pinecone 遷移到 Qdrant 或 Weaviate 是一個 1–3 天的專案:重建嵌入索引(或透過現有 API 複製)、更新你的客戶端函式庫,然後重播流量。像 Weaviate 這類 schema 豐富的廠商,會增加一點前期的對應工作。困難的部分很少是程式碼。
團隊在 2026 年遷移的三個原因:定價(帳單成長超過了便利性)、資料駐留(歐盟客戶、受監管產業),以及混合搜尋需求(Pinecone 的混合搜尋能用,但使用體驗不如 Qdrant 或 Weaviate)。
劇本每次都是同一個樣子:從來源匯出你的嵌入、在目的地重建索引、對新向量做一週的雙寫、切換讀取,然後退役舊索引。雙寫是團隊會跳过、然後後悔的部分。如果召回率下降,它就是你的回滾按鈕。
誠實的反面意見:如果你的應用已經在 Pinecone 上運行、且預算不是阻礙,遷移很少值得。除非你每月花費超過 5,000 美元,否則一個 3 天遷移的機會成本,通常比省下的錢還高。
什麼時候不該用專用向量資料庫
你幾乎不會在任何地方看到這個建議,因為它賣不出向量資料庫,但很多團隊在不需要時就伸手去拿。
- 10 萬向量以下。 記憶體內的 NumPy 或 Faiss 真的就夠了。在 Python 中載入一個 Numpy 陣列並跑餘弦相似度,在筆電上是亞毫秒級。
- 已在用 Postgres、1,000 萬向量以下。 直接加上 pgvector 就好。你會省下一個資料庫、一個整合,以及一筆月帳單。
- 關鍵字搜尋就夠了。 如果使用者搜尋的是產品名稱或精確字串,Elasticsearch 或 Typesense 裡的 BM25 會打敗任何向量搜尋。先試試看。
- 本地做原型。 Chroma 或 SQLite + 一欄浮點數。等你有真正的生產資料時,再決定生產資料庫。
你需要的不是向量資料庫。你需要的是搜尋。挑能達成目標的最簡單方案。如果你想更深入了解周邊的技術棧,情境工程工具是相關的延伸閱讀。
Techsy 如何進行向量資料庫選型
當我們協助客戶挑選向量資料庫時,我們會先跑一個四題篩選,然後才去碰任何效能測試。
- 你目前的資料技術棧是什麼? 如果你在用 Postgres 或 MongoDB,答案通常就是它們原生的向量選項。除非一個資料庫能自己打平成本,否則別加。
- 18 個月後你會達到什麼規模? 不是今天的規模。是那個會觸發重建的規模。如果在 1,000 萬向量以下,pgvector 或 Chroma 大概就夠了。
- 託管彈性是硬性要求嗎? 資料駐留、氣隙部署,或嚴格的成本上限,會把你推向自建 Qdrant 或 Milvus,而不是 Pinecone。
- 你團隊的維運餘裕是多少? 零維運能力 + 有預算 = Pinecone。有一些維運能力 + 預算壓力 = Qdrant Cloud。維運能力充足 = 自建 Qdrant。
實務上,我們在兩個客戶專案中使用 Qdrant、在三個中使用 pgvector,還有一個客戶我們用 Pinecone 快速做出原型,之後在他們規模到位時遷移到了 Qdrant。第一個決定不見得是最後的決定。
如果你在兩者之間選擇、卡住了,來預約一次免費諮詢。我們會幫你跳過一次為期六個月的重建。
常見問題
2026 年最適合 RAG 的向量資料庫是哪款?
對大多數團隊而言:Pinecone Serverless(上線最快)或 Qdrant(最佳自建性價比)。如果你已經在跑 Postgres,pgvector 能游刃有餘地處理最多約 1,000 萬向量的 RAG。「最佳」取決於託管偏好、規模與你現有的技術棧,而不是原始效能測試數字或廠商的行銷說詞。
向量資料庫與向量搜尋引擎有什麼差別?
向量資料庫儲存嵌入,外加中繼資料、交易與存取控制。Pinecone、Qdrant 與 Weaviate 都是例子。像 Faiss 這類向量搜尋引擎(或函式庫)只提供 ANN 索引;持久化、驗證與複寫都得你自己來。生產系統需要資料庫;嵌入式使用場景有時只用搜尋引擎就能過關。
我需要專用向量資料庫,還是 pgvector 就足以應付生產環境?
在 p99 延遲要求較寬鬆(200 毫秒以下)的情況下,pgvector 足以應付最多約 1,000 萬向量的生產環境。超過這個量,或者你需要混合搜尋、多租戶或 50 毫秒以下的 p99,就換到 Qdrant、Pinecone 或 Weaviate。許多團隊先用 pgvector 上線,等實際規模到位再遷移。
2026 年最便宜的向量資料庫是哪款?
在單一 VPS 上自建 Qdrant(Hetzner ax52 約每月 $60–$120)能游刃有餘地處理 1,000 萬向量。Chroma 用於本地原型開發是免費的。如果你已經在為 Postgres 付費,pgvector 不增加任何成本。Pinecone 的免費方案涵蓋小型專案,而 Weaviate 每月 $25 的入門價,是託管工作負載中最便宜的託管雲選項。
最佳的免費向量資料庫是哪款?
Qdrant(開源、Apache 2.0,附免費雲方案)與 Chroma(開源、Apache 2.0)是 2026 年最強的兩個免費選擇。如果你已經在跑 Postgres,pgvector 也是免費的。Milvus 是免費開源,但維運上較重。在 Qdrant 或 Chroma 會更簡單的小型專案上,就跳過它吧。
Pinecone 和 Qdrant 哪個比較好?
Pinecone 在開發者體驗與零維運上手方面勝出。你一小時就能上線。Qdrant 在價格(大規模下通常便宜 3–5 倍)、自建與過濾效能方面勝出。如果上線速度比長期成本更重要,就選 Pinecone;如果預算控管或資料駐留是硬性要求,就選 Qdrant。
向量資料庫與傳統資料庫有什麼差別?
傳統資料庫(PostgreSQL、MongoDB)透過精確匹配或範圍來找列。向量資料庫透過相似性來找列:給定一個嵌入,回傳最接近的 k 個向量。底層索引(HNSW、IVF)有根本上的不同。有些傳統資料庫透過像 pgvector 這類擴充功能加入向量能力;其他的則提供專用向量引擎。
我該怎麼選向量資料庫?
從你現有的技術棧開始:在用 Postgres,就試 pgvector。在 AWS 上但沒有 Postgres,就試 Pinecone。在 Google Cloud 上,就試 Vertex AI Vector Search 2.0。然後依規模(1,000 萬向量以下,大多數選項都行)與託管(託管或自建)來篩選。如果你還在猶豫,就在本地用 Chroma 做原型。
2026 年最佳的開源向量資料庫是哪款?
Qdrant 以快速的 HNSW、出色的過濾,以及 2026 年 3 月完成的 B 輪募資,在大多數生產工作負載上領先。當你需要開箱即用的 schema 與混合搜尋時,Weaviate 是強勁的第二名。Milvus 在最大規模上勝出。Chroma 在本地開發上勝出。如果你已經在用 Postgres,pgvector 就勝出。
Techsy 編輯團隊在 2024–2026 年間,已於多個客戶專案中在 Pinecone、Qdrant 與 pgvector 上線過 RAG 系統。我們的向量資料庫內容不接受廠商贊助;上述每一個選擇,都是我們願意掛上自己名字、放進客戶路線圖的方案。