−25%

Windows 年繳方案適用,至 10 月 31 日。 檢視方案

EQVPS
開始使用

在 VPS 上為 AI 代理記憶託管一個向量資料庫

2026年6月15日 · 1 分鐘閱讀 · EQVPS Team

一個沒有記憶的 AI 代理,被困在每次對話都要重新自我介紹。解法是一個向量資料庫——它儲存您文件、筆記或過往聊天的 embeddings,好讓代理隨選回憶起相關的片段(那就是 RAG 裡的那個「R」)。您能把它作為一個託管服務來租,或者您能在一台 VPS 上自己跑它、把您的資料——常常是您的私有資料——留在一台您掌控的機器上。這是怎麼做,以及它在 RAM 上實際花多少。

兩個好選擇

您不需要任何奇特的東西。兩條路覆蓋幾乎所有人:

pgvector —— 一個 Postgres 擴充。如果您已經在跑 Postgres(或樂意跑),這給您已有的資料庫加上向量搜尋。一個服務、一份備份、您會的 SQL。遠遠是最省事的起點。

Qdrant —— 一個專建的向量引擎。當您有很多向量(一到幾百萬+)、或想要快速的元資料過濾和一個專用 API 時上它。它是一個要跑的單獨服務,但它正是為這活而建。

對大多數剛站穩腳跟的代理,pgvector 是對的第一個答案。 長過它了再轉 Qdrant,別提前。

RAM 的現實(這是人們低估的部分)

向量搜尋快,因為索引住在記憶體裡——所以 RAM,而不是磁碟,才是您真正的約束。一個粗略指引:

  • 幾十萬個 embeddings —— 舒服地放進 2 GB。
  • 一到幾百萬 —— 規劃 4 GB+ 並調索引。
  • 磁碟是簡單的部分:一百萬個 embeddings 只有幾 GB,所以 25–45 GB 覆蓋一個正經的庫。

所以按索引設定,不是按檔案。(跟通用設定指南是同一套邏輯——重的東西您不量就看不出來。)

快速上手:pgvector

在一台有 Postgres 的機器上(Docker 最簡單——跟自託管 n8n 同一個套路):

CREATE EXTENSION IF NOT EXISTS vector;

CREATE TABLE memory (
  id bigserial PRIMARY KEY,
  content text,
  embedding vector(1536)        -- 匹配你 embedding 模型的維度
);

-- 有了資料之後,建一個索引以加快搜尋:
CREATE INDEX ON memory USING hnsw (embedding vector_cosine_ops);

您的代理插入 content + 它的 embedding,然後用 ORDER BY embedding <=> $query_embedding LIMIT 5 查詢,拉出最近的記憶。那就是整個迴圈。

更想用 Qdrant?它是一個暴露 HTTP/gRPC API 的單個 Docker 容器;您用您的向量大小建立一個 collection、upsert 點。同樣的想法、專用引擎。

它能跟代理共享一台機器嗎?

能——對中小型記憶庫,把向量資料庫跑在跟代理同一台 VPS 上。 它更簡單、延遲基本為零。只有當一個開始把另一個從 RAM 裡擠出去時才拆到單獨的伺服器上。那是一個以後的、值得擁有的好問題的決定,不是第一天的。

誠實的注意事項

  • RAM 是那堵牆,而且它很安靜。 搜尋一直快,直到索引不再裝進記憶體,然後它退化。盯著記憶體、在它咬人之前擴容——別等慢查詢來告訴您。
  • 建立 embeddings 要花 token。 您 embed 的每份文件都是對一個 embedding 模型的一次 API 呼叫。庫託管起來便宜;產生向量是那筆經常性成本——和跑一個代理實際花多少有關。
  • 備份它。 您代理的記憶和別的資料一樣是資料。如果它要緊,做備份。

在這之內,一個自託管的向量庫是給代理持久記憶、又不把您私有資料交給第三方的乾淨辦法。從一台 2 GB 機器上的 pgvector 起步、盯著 RAM,只有當數字讓您升時,才長進 Qdrant 或一個更大的方案。

常見問題

pgvector 還是 Qdrant——我該自託管哪個?

如果您已經在跑 Postgres(或想用一個資料庫同時裝應用資料和 embeddings),pgvector 是最省事的選擇——它只是一個擴充。如果您有數以百萬計的向量、或想要一個帶快速過濾的專建引擎,Qdrant 值得那個單獨的服務。對大多數剛起步的代理,Postgres 上的 pgvector 就綽綽有餘。

一個向量資料庫需要多少 RAM?

比您猜的多,因為好的搜尋想把索引放在記憶體裡。粗略規則:幾十萬個 embeddings 舒服地放進 2 GB;一到幾百萬時,規劃 4 GB+ 並調索引。從 2 GB 起步、盯著記憶體、搜尋變慢時擴容。

為什麼自託管一個向量庫,而不是託管的?

人們真去做的兩個理由:您的 embeddings 常常含有您的私有資料(筆記、文件、客戶內容),一個自託管庫把那個留在一台您掌控的伺服器上。而且它是固定成本——一個託管向量服務按向量和查詢計費,而 VPS 是一個月一個數、沒有按查詢的計價器。

一個向量資料庫和我的代理能跑在同一台 VPS 上嗎?

能,對中小型負載——把代理和一個 pgvector/Qdrant 執行個體放在一台機器上很簡單、也把延遲砍到接近零。只有當一個開始把另一個的 RAM 擠掉時才拆到單獨的伺服器上,那是個以後才有的好問題,不是第一天的擔憂。

embeddings 佔很多磁碟嗎?

單個 embedding 是幾 KB,所以一百萬個是幾 GB 加索引開銷——有意義但不巨大。25–45 GB 磁碟對大多數代理覆蓋一個可觀的記憶庫。通常您先撞上的第一個限制是 RAM,不是磁碟。

評論

目前還沒有評論。歡迎成為第一位。

發表評論

評論在顯示前會經過審核。