[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-build-production-vector-db-rag-pipeline-zh":3,"article-related-build-production-vector-db-rag-pipeline-zh":31,"series-ai-agent-b97b8932-56a9-431f-8270-3f892f8feb94":79},{"id":4,"slug":5,"title":6,"content":7,"summary":8,"source":9,"source_url":10,"author":11,"image_url":12,"cover_image":12,"category":13,"language":14,"translated_content":11,"related_article_id":15,"keywords":16,"key_takeaways":23,"views":27,"created_at":28,"published_at":29,"topic_cluster_id":30},"b97b8932-56a9-431f-8270-3f892f8feb94","build-production-vector-db-rag-pipeline-zh","用 n8n 建出可上線的向量資料庫","\u003Cp>如果你先用本機向量庫做 \u003Ca href=\"\u002Ftag\u002Frag\">RAG\u003C\u002Fa>，常會在真實流量下碰到延遲、篩選或維運瓶頸。這篇會帶你把資料庫選型、索引、寫入與查詢接成一條可交付的 n8n 流程。\u003C\u002Fp>\u003Cp data-speakable=\"summary\">這篇教你為 RAG 選擇\u003Ca href=\"\u002Fnews\u002F5-vector-databases-power-ai-search-zh\">向量資料\u003C\u002Fa>庫，並用 n8n 串起可上線的索引、寫入與檢索流程。\u003C\u002Fp>\u003Ch2>開始之前\u003C\u002Fh2>\u003Cul>\u003Cli>一個 \u003Ca href=\"https:\u002F\u002Fn8n.io\u002Fdocs\u002F\" target=\"_blank\" rel=\"noreferrer\">n8n 文件\u003C\u002Fa> 介紹的帳號，或自架 n8n 服務\u003C\u002Fli>\u003Cli>一個向量資料庫帳號或本機實例，例如 \u003Ca href=\"https:\u002F\u002Fwww.pinecone.io\u002Fdocs\u002F\" target=\"_blank\" rel=\"noreferrer\">Pinecone 文件\u003C\u002Fa> 與 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpinecone-io\u002Fpinecone-ts-client\" target=\"_blank\" rel=\"noreferrer\">Pinecone GitHub\u003C\u002Fa>，或 \u003Ca href=\"https:\u002F\u002Fqdrant.tech\u002Fdocumentation\u002F\" target=\"_blank\" rel=\"noreferrer\">Qdrant 文件\u003C\u002Fa> 與 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fqdrant\u002Fqdrant\" target=\"_blank\" rel=\"noreferrer\">Qdrant GitHub\u003C\u002Fa>\u003C\u002Fli>\u003Cli>一組 LLM 或 embedding 供應商 API key，例如 OpenAI 或相容模型服務\u003C\u002Fli>\u003Cli>Node 20+，如果你要跑本機腳本或自訂工具\u003C\u002Fli>\u003Cli>PostgreSQL 15+，如果你要用 pgvector\u003C\u002Fli>\u003Cli>一批範例文件、切塊規則與要搜尋的 metadata 欄位\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>Step 1: 定義檢索工作負載\u003C\u002Fh2>\u003Cp>先把需求寫清楚，才能避免選到只適合 demo 的資料庫。你要先判斷\u003Ca href=\"\u002Fnews\u002Fetched-full-stack-inference-chip-strategy-zh\">系統\u003C\u002Fa>是偏低延遲語意搜尋、混合關鍵字加向量檢索、強 metadata 篩選，還是超大規模儲存。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1783258377362-cg5x.png\" alt=\"用 n8n 建出可上線的向量資料庫\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>請整理三個產出：向量數量預估、篩選複雜度、以及新 embedding 的更新頻率。這份內容會直接決定你該偏向 pgvector、Qdrant、Weaviate、Milvus 或 Pinecone。\u003C\u002Fp>\u003Cp>你應該看到一份簡短需求筆記，裡面明確寫出規模、延遲目標與篩選需求。只要你能說出為什麼要託管服務或自架系統，這一步就\u003Ca href=\"\u002Fnews\u002F130-mgd-gwrs-full-build-out-ocwd-zh\">完成\u003C\u002Fa>了。\u003C\u002Fp>\u003Ch2>Step 2: 選定向量資料庫\u003C\u002Fh2>\u003Cp>第二個產出是一個主選方案與一個備援方案。把工具和你的技術棧對齊：Pinecone 適合零維運託管搜尋，pgvector 適合已經有 PostgreSQL 的系統，Qdrant 適合快速 payload 篩選，Weaviate 適合混合搜尋，Milvus 適合超大規模部署，Chroma 適合本機開發，Redis 適合記憶體速度，Elasticsearch 適合企業混合搜尋，SingleStore 適合 SQL 與向量統一，Faiss 適合研究與離線批次作業。\u003C\u002Fp>\n\u003Cfigure class=\"my-6\">\u003Cimg src=\"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1783258381715-vz8x.png\" alt=\"用 n8n 建出可上線的向量資料庫\" class=\"rounded-xl w-full\" loading=\"lazy\" \u002F>\u003C\u002Ffigure>\n\u003Cp>原則很簡單，選能滿足規模上限與篩選需求的最小工具。若團隊已經有 Postgres，pgvector 能減少元件數；若你需要獨立向量引擎與強篩選，Qdrant 是很實用的預設值。\u003C\u002Fp>\u003Cp>你應該看到一個被選中的資料庫，以及一段淘汰其他選項的理由。理由若提到維運成本、記憶體用量或混合搜尋，就表示方向正確。\u003C\u002Fp>\u003Ch2>Step 3: 建立索引與 schema\u003C\u002Fh2>\u003Cp>第三個產出是可存 embeddings 與 metadata 的資料結構。先建立 collection 或 table，再定義向量維度、索引型別與可篩選欄位，之後才開始灌正式資料。\u003C\u002Fp>\u003Cpre>\u003Ccode>-- PostgreSQL 15+ 搭配 pgvector 與 HNSW 的範例\nCREATE EXTENSION IF NOT EXISTS vector;\n\nCREATE TABLE documents (\n  id BIGSERIAL PRIMARY KEY,\n  content TEXT NOT NULL,\n  metadata JSONB NOT NULL,\n  embedding vector(1536) NOT NULL\n);\n\nCREATE INDEX documents_embedding_hnsw\nON documents\nUSING hnsw (embedding vector_cosine_ops);\n\nCREATE INDEX documents_metadata_gin\nON documents\nUSING gin (metadata);\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cp>你應該看到 table 或 collection 成功建立，並且有一個符合查詢模式的索引。也要確認 embedding 維度和模型輸出一致，不然後面的寫入會直接失敗。\u003C\u002Fp>\u003Ch2>Step 4: 組出 n8n 匯入流程\u003C\u002Fh2>\u003Cp>第四個產出是從原始文件到向量寫入的自動化路徑。把 trigger、文件載入、切塊、embedding 節點，以及你選的向量資料庫節點接起來，讓每份新文件都走同一條流程。\u003C\u002Fp>\u003Cp>切塊大小要固定，metadata 也要保留來源、標題、時間戳與存取權限標籤。n8n 可以同時負責 ingest、chunking、embedding 與 retrieval，這樣就不必再維護一堆分散腳本。\u003C\u002Fp>\u003Cp>你應該看到第一輪測試後，向量庫中出現新紀錄。若資料庫裡能看到帶有 metadata 與 embeddings 的 chunk，表示匯入流程已經可用。\u003C\u002Fp>\u003Ch2>Step 5: 驗證檢索並調整延遲\u003C\u002Fh2>\u003Cp>第五個產出是一條可預期的查詢路徑。把幾個真實問題送進工作流，對照回傳 chunk 與原始文件，檢查 filters、排序與新鮮度是否符合預期。\u003C\u002Fp>\u003Cp>調整時一次只改一個變數，例如索引設定、chunk 大小、top-k 或篩選策略。HNSW 可以提升搜尋速度，但記憶體也可能增加；pgvector 的 SQL 篩選很方便，但超大工作負載可能更適合專用向量引擎。\u003C\u002Fp>\u003Cp>你應該看到相關答案、可接受的回應時間，以及被 metadata 篩掉的錯誤文件。若結果過舊、太慢或太雜，就回頭檢查索引與匯入順序。\u003C\u002Fp>\u003Ch2>常見錯誤\u003C\u002Fh2>\u003Cul>\u003Cli>為了不需要的規模選了太重的資料庫。修法：先以目前工作負載為準，再選能滿足延遲與篩選需求的最小系統。\u003C\u002Fli>\u003Cli>一開始沒設計 metadata。修法：從第一天就存 source、tenant、permission、document type，避免之後重寫。\u003C\u002Fli>\u003Cli>embedding 維度設錯。修法：先確認模型輸出大小，再建立 schema，並讓匯入與查詢工作都保持一致。\u003C\u002Fli>\u003C\u002Ful>\u003Ch2>接下來可以看什麼\u003C\u002Fh2>\u003Cp>當這條流程跑通後，可以再加上 reranking、hybrid search、access control 與評估任務，持續量化檢索品質。之後你也能在 n8n 裡替換向量後端，跟著規模或維運需求一起演進。\u003C\u002Fp>","這篇教你為 RAG 選擇向量資料庫，並用 n8n 串起可上線的索引、寫入與檢索流程。","blog.n8n.io","https:\u002F\u002Fblog.n8n.io\u002Fbest-vector-database\u002F",null,"https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1783258377362-cg5x.png","ai-agent","zh","ef1e437c-081d-4a40-bfdb-6370936f9442",[17,18,19,20,21,22],"n8n","vector database","pgvector","Qdrant","RAG","PostgreSQL",[24,25,26],"先定義檢索工作負載，再決定向量資料庫，不要先選工具才補需求。","schema、embedding 維度與 metadata 欄位要在匯入前一次設好。","n8n 適合把文件載入、切塊、embedding 與寫入串成可重複的生產流程。",0,"2026-07-05T13:32:23.466634+00:00","2026-07-05T13:32:23.441+00:00","62aabe70-f3eb-45a8-89af-ab8e35044063",{"tags":32,"relatedLang":38,"relatedPosts":42},[33,34,36],{"name":17,"slug":17},{"name":21,"slug":35},"rag",{"name":18,"slug":37},"vector-database",{"id":15,"slug":39,"title":40,"language":41},"build-production-vector-db-rag-pipeline-en","Build a production vector DB for RAG","en",[43,49,55,61,67,73],{"id":44,"slug":45,"title":46,"cover_image":47,"image_url":47,"created_at":48,"category":13},"72b05d2a-7461-4885-a57f-506fd42d714d","ornith-1-agent-coding-server-template-zh","Ornith-1 把代理寫碼變成伺服器","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1783085625241-1df8.png","2026-07-03T13:33:20.199747+00:00",{"id":50,"slug":51,"title":52,"cover_image":53,"image_url":53,"created_at":54,"category":13},"662e2729-67d4-4d3c-b42d-ba01e77d5486","crypto-ai-agents-useful-narrow-workflows-zh","Crypto AI 代理有用，但只適合窄流程","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1782951466790-q1yp.png","2026-07-02T00:17:19.890956+00:00",{"id":56,"slug":57,"title":58,"cover_image":59,"image_url":59,"created_at":60,"category":13},"04c2d88a-ed27-48ae-8b3c-8cf3bdbc3a5e","ai-agents-in-crypto-2026-protocol-guide-zh","AI 代理幣實作指南","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1782950576769-dkjd.png","2026-07-02T00:02:24.596639+00:00",{"id":62,"slug":63,"title":64,"cover_image":65,"image_url":65,"created_at":66,"category":13},"91252bc0-405a-49ad-af8c-9e16aa7f4a22","agent-network-pentagon-ai-human-control-zh","Agent Network 證明五角大廈把 AI 放進 kill chain …","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1782904668754-iiyh.png","2026-07-01T11:17:20.654001+00:00",{"id":68,"slug":69,"title":70,"cover_image":71,"image_url":71,"created_at":72,"category":13},"924df2d6-ded9-4b0d-853d-90858b911201","dow-agent-network-military-ai-right-move-zh","DOW 的 Agent Network 走對了：軍事 AI 需要的是協作網路，…","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1782901965016-i5pk.png","2026-07-01T10:32:19.48778+00:00",{"id":74,"slug":75,"title":76,"cover_image":77,"image_url":77,"created_at":78,"category":13},"34e01712-e1ab-492a-bb9f-c2987b301c55","opencode-2026-setup-guide-open-source-ai-coding-zh","OpenCode 2026 安裝與實戰指南","https:\u002F\u002Fxxdpdyhzhpamafnrdkyq.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Fcovers\u002Finline-1782866878205-5vk5.png","2026-07-01T00:47:33.751841+00:00",[80,85,90,95,100,105,110,115,120,125],{"id":81,"slug":82,"title":83,"created_at":84},"4ae1e197-1d3d-4233-8733-eafe9cb6438b","claude-now-uses-your-pc-to-finish-tasks-zh","Claude 開始幫你操作電腦","2026-03-26T07:20:48.457387+00:00",{"id":86,"slug":87,"title":88,"created_at":89},"5bede67f-e21c-413d-9ab8-54a3c3d26227","googles-2026-ai-agent-report-decoded-zh","Google 2026 AI Agent 報告解讀","2026-03-26T11:15:22.651956+00:00",{"id":91,"slug":92,"title":93,"created_at":94},"2987d097-563f-46c7-b76f-b558d8ef7c2b","kimi-k25-review-stronger-still-not-legend-zh","Kimi K2.5 評測：更強，但還不是神作","2026-03-27T07:15:55.277513+00:00",{"id":96,"slug":97,"title":98,"created_at":99},"95c9053b-e3f4-4cb5-aace-5c54f4c9e044","claude-code-controls-mac-desktop-zh","Claude Code 也能操控 Mac 了","2026-03-28T03:01:58.58121+00:00",{"id":101,"slug":102,"title":103,"created_at":104},"dc58e153-e3a8-4c06-9b96-1aa64eabbf5f","cloudflare-100x-faster-ai-agent-sandbox-zh","Cloudflare 的 AI 沙箱跑超快","2026-03-28T03:09:44.142236+00:00",{"id":106,"slug":107,"title":108,"created_at":109},"1c8afc56-253f-47a2-979f-1065ff072f2a","openai-backs-isara-agent-swarm-bet-zh","OpenAI 挺 Isara 的 agent swarm …","2026-03-28T03:15:27.513155+00:00",{"id":111,"slug":112,"title":113,"created_at":114},"7379b422-576e-45df-ad5a-d57a0d9dd467","openai-plan-automated-ai-researcher-zh","OpenAI 想做自動化 AI 研究員","2026-03-28T03:17:42.090548+00:00",{"id":116,"slug":117,"title":118,"created_at":119},"48c9889e-86df-450b-a356-e4a4b7c83c5b","harness-engineering-ai-agent-reliability-2026-zh","駕馭工程：從「馬具」到「作業系統」，AI Agent 可靠性的終極密碼","2026-03-31T06:42:53.556721+00:00",{"id":121,"slug":122,"title":123,"created_at":124},"96d8e8c8-1edd-475d-9145-b1e7a1b02b65","mcp-explained-from-prompts-to-production-zh","MCP 怎麼把提示詞變工作流","2026-04-01T09:24:39.321274+00:00",{"id":126,"slug":127,"title":128,"created_at":129},"f2ca7720-b471-4ce5-9336-2a9ac2a876fd","amazon-bedrock-agents-multi-agent-workflows-zh","Amazon Bedrock Agents 進入多代理工作流","2026-04-01T09:30:29.945429+00:00"]