你有沒有試過,只想幫自己一個小專案加個「語意搜尋」,結果查教學查到一半,發現第一步竟然是叫你先用 Docker 起一台 Qdrant,或者跑一隻 Chroma server。功能還沒寫,先要養一隻背景程式。

阿里巴巴這次悄悄丟上 GitHub 的 zvec,就是來把這一步拆掉的。它不是又一個要你架伺服器的向量資料庫,而是一個「塞進你 app 裡面就能跑」的東西。上架半年多,星數已經破萬、往 1.3 萬衝,還在漲。

一句話結論:zvec 是阿里開源的「行程內(in-process)」向量資料庫,pip install 就能直接嵌進你的 app,不用開伺服器、不用設定連線,本地就能做 RAG 和語意搜尋,10 億筆向量也是毫秒級。

zvec 到底是什麼?

zvec 是一個「跑在你程式裡面」的向量資料庫,不是一台要另外開的伺服器。你 import 它、開一個 collection(其實就是硬碟上一個資料夾)、把向量塞進去、然後查詢。沒有 daemon 要顧、沒有 port 要設、沒有連線池要管。

如果你熟資料庫,最貼切的類比是:zvec 之於向量資料庫,就像 SQLite 之於一般關聯式資料庫。SQLite 當年讓開發者可以把一個正經的資料庫直接嵌進任何 app,不用另外裝一台 MySQL;zvec 想做的是同一件事,只是換成專門存「向量」這種 AI 時代的資料。連官方自己都用「向量資料庫界的 SQLite」來定位。

它不是週末玩具。阿里說 zvec 在集團內部多條產線已經跑了一段時間,才拿出來開源,底層包的是 Proxima——阿里自研、在生產環境跑了好幾年的向量搜尋引擎。換句話說,你接手的不是一個沒被驗證過的實驗,而是一套已經被大流量捶打過的東西。授權是 Apache 2.0,原始碼在 github.com/alibaba/zvec,核心 8 成是 C++,外面再包 Python、Node.js、Go、Rust、Flutter 的 SDK。

為什麼「行程內」這件事值得你停下來看?

差別在摩擦力。市面上多數紅的向量資料庫,像 Qdrant、Weaviate、Milvus、server 模式的 Chroma,都要你先跑一隻獨立程式。有專職維運的團隊無所謂,但對這幾種情況就很煩:

  • 本地開發:還沒寫第一行檢索的 code,就要先開 Docker 或起一隻 daemon。
  • 邊緣裝置和手機:要把一台 server 塞進 Android 或 iOS,基本上不切實際。
  • CLI 工具、Jupyter notebook:為了跑一個小 script 去架一整套基礎設施,太過頭。
  • Serverless 函式:環境用完即丟,每次去連外部服務又貴又慢。

zvec 把這些摩擦全部省掉。它就是一個函式庫,你的程式一啟動它就在,程式結束它就乾淨收工。這點對散戶級的開發者特別友善:你不用先變成半個維運工程師,才寫得出一個能用的 AI 檢索功能。

一分鐘上手長怎樣?

講那麼多,看 code 最快。以 Python 為例,先 pip install zvec(需要 Python 3.10 到 3.14),然後:

import zvec

# 定義 collection 的 schema(這裡放一個 4 維向量欄位)
schema = zvec.CollectionSchema(
    name="example",
    vectors=zvec.VectorSchema("embedding", zvec.DataType.VECTOR_FP32, 4),
)

# 開一個 collection(不存在就自動建,路徑就是硬碟上一個資料夾)
collection = zvec.create_and_open(path="./zvec_example", schema=schema)

# 塞資料
collection.insert([
    zvec.Doc(id="doc_1", vectors={"embedding": [0.1, 0.2, 0.3, 0.4]}),
    zvec.Doc(id="doc_2", vectors={"embedding": [0.2, 0.3, 0.4, 0.1]}),
])

# 用向量相似度查詢
results = collection.query(
    zvec.VectorQuery("embedding", vector=[0.4, 0.3, 0.3, 0.1]),
    topk=10,
)
print(results)  # 依相關度排好的清單

大概就這樣:定義 schema、開一個 collection、塞資料、查詢。整段沒有一行在連伺服器,因為根本沒有伺服器。Node.js 那邊 npm install @zvec/zvec,API 幾乎一樣;懶得寫 code 想先看資料,官方還有一個叫 Zvec Studio 的視覺化工具可以逛。

zvec 跟 FAISS、Chroma、Qdrant 差在哪?

差在它想同時要「快」又「像一個真的資料庫」。很多人本地做向量搜尋會用 FAISS,它夠快,但它純粹是記憶體裡的索引:程式一關、沒另外存檔就沒了,也不做混合搜尋、不吃稀疏向量。zvec 想補的就是這一塊。直接看表:

zvecFAISSChromaQdrant
行程內(嵌進 app)可選
WAL 持久化
混合搜尋有限
稀疏向量
手機支援是(Flutter)
多程序同時讀不適用
DiskANN 硬碟索引
要不要架 server不用不用可選

我覺得真正拉開差距的是這幾點:

  • WAL 持久化:每一筆寫入在回傳前就已經落地,當機、跳電都不會掉資料。這是它跟 FAISS 這種純記憶體庫最大的分界線。
  • 混合搜尋:一次查詢裡把向量相似度、關鍵字全文搜尋(FTS)、加上欄位過濾(例如「分類等於科技」)全部揉在一起。真實世界的檢索多數都是這種「又要語意相近、又要符合某個條件」的需求。
  • DiskANN:把大部分索引放硬碟,讓你用一台記憶體不多的普通機器,也搜得動十億級的資料。這本來是 Milvus 那種重型系統才有的能力,zvec 直接內建。
  • 多程序讀:好幾個程序可以同時開同一個 collection 來讀,只有寫入要獨佔。多 worker 的服務場景用得上。

這對只想搞點副業的普通人有什麼用?

你可能會想:向量資料庫聽起來很工程,關我什麼事?其實這正是把「AI 工具」變成一門小生意的底層零件。幾個接得上的方向:

  • 幫小店或個人做一個「文件問答機器人」:把商品說明、FAQ、合約條款餵進 zvec,再接一個 LLM,就是一個會回答自家資料的客服。以前這種東西要嘛用雲端向量服務按月付費,要嘛自己架 server;現在一個 pip install 就能先做出能 demo 的版本。
  • 做「個人第二大腦」:把自己這幾年的筆記、剪報、PDF 全部向量化塞進去,用一句話就搜得到「我兩年前存過那篇講穩定幣的東西」。因為是本地、離線,資料不用上傳到別人伺服器,隱私這關天然過了。
  • 上架到手機 app:zvec 有 Flutter SDK,能在 Android、iOS 本機做語意搜尋。想做離線筆記或閱讀 app 的人,這是省成本的關鍵,不用替每個用戶養一台後端。

重點是門檻。以前這些點子卡在「我要先會架基礎設施」,現在那道牆矮了一大截。能不能做成生意還是看你的內容和執行,但至少技術這關,不再是藉口。

誰適合用 zvec?誰不適合?

適合的情況:想在本地做向量搜尋、又不想背一整套基礎設施的 Python 或 Node.js 專案;跑在 notebook、script、serverless 裡的 RAG 流程;要在手機上做離線語意搜尋的 app;想要 DiskANN 那種硬碟級十億搜尋、又不想去扛 Milvus 維運複雜度的團隊。

不太適合的情況:要給很多獨立租戶共用同一套向量基礎設施的多租戶 SaaS;需要跨很多台機器做水平寫入擴展的場景;已經深度綁在某個雲端託管向量服務、吃它一堆雲原生功能的團隊。一句話:zvec 是「嵌進去」的思路,不是「連過去」的思路。你的需求偏哪邊,答案就很清楚。

不想用 zvec,有什麼替代方案?

沒有哪個工具是唯一解。如果 zvec 不合你口味:只要最純粹的本地向量索引、不在乎持久化,FAISS 還是老牌可靠;想要一個對新手友善、Python 生態很熟的,選 Chroma;要正經的伺服器級、雲原生功能齊全的,看 Qdrant、Milvus、Weaviate;如果你其實想要的是「SQLite 但加上向量搜尋」,可以看看用 Rust 重寫 SQLite 的 Turso,它也把向量搜尋塞進去了。

新手想試,第一步該做什麼?

不用一開始就想著做產品。給你一條低風險的路:

  1. 開一個乾淨的 Python 環境,pip install zvec
  2. 照官方那段一分鐘範例,先塞三五筆假資料、查一次,確認整條路跑得通。
  3. 找一份你自己的真實資料(例如一個資料夾的筆記或 PDF),用任何一個 embedding 模型轉成向量,塞進 zvec。
  4. 接一個 LLM,讓它先從 zvec 撈相關片段再回答。這就是一個最小的 RAG。
  5. 跑順了,再想「這個能不能變成給別人用的東西」。

先把 demo 做出來,再談商業化。順序反過來,多數會卡死。

延伸閱讀:另一個最近爆紅的開源專案,用家裡的 WiFi 訊號就「看穿」整間屋——開源 RuView 實測,不用鏡頭也量得到呼吸心跳GitHub 熱門開源 AI 專案精選

關於 zvec 的常見問題

zvec 是免費的嗎?

是,Apache 2.0 開源授權,商用也可以,去 GitHub 就抓得到原始碼。

zvec 和 FAISS 該選哪個?

只要記憶體內快速索引、資料掉了無所謂,FAISS 就夠。要持久化、混合搜尋、稀疏向量、手機支援,選 zvec。

用 zvec 一定要會 C++ 嗎?

不用。核心是 C++ 寫的,但你用 Python(pip install zvec)、Node.js、Go、Rust 或 Flutter 的 SDK 就好,寫的是你熟的語言。

zvec 能跑多大的資料?

官方說搭 HNSW 索引可以在十億級向量做毫秒搜尋,搭 DiskANN 還能用有限記憶體撐更大規模。完整基準測試放在 zvec 官方文件。

zvec 適合放進手機 app 嗎?

適合。它有 Dart/Flutter SDK,支援 Android 和 iOS,能在裝置本機做離線語意搜尋,不用替每個用戶連一台後端。

本文為工具介紹與個人使用心得,非投資建議。AI 開源專案更新極快,功能、版本與星數截至 2026 年 7 月,實際請以 zvec 官方 GitHub 與文件為準。

關於Mr. Slash

「Mr. Slash 的系統性人生」,創立於 2024年,由 Mr. Slash 本人及專業編輯團隊經營的財經內容平台。

我們的宗旨是透過投資、財經、自動化與新興科技等領域的深入解說與應用,幫助讀者打造穩定的被動收入系統。內容涵蓋加密貨幣、股息資產、量化工具、平台分潤等實用策略,協助你用更聰明的方法配置資金、累積資產,走在財務自由的路上,少走冤枉路。

若為商業合作邀稿,將會清楚標註「不代表本站立場」。

商業合作

如果您有任何關於我們團隊或網站內容的疑問或建議,歡迎您前往IG 私訊 @slash.Capital聯繫我們,謝謝!

發表迴響

相關文章

最新文章

探索更多來自 Mr. Slash|系統流人生 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

繼續閱讀

خصم دائم على الرسوم سجّل في OKX مجاناً ←
Join Mr. Slash