เชื่อมต่อ Vector Database กับ n8n: Pinecone, Qdrant, Supabase
เปรียบเทียบและวิธีเชื่อมต่อ Vector Database กับ n8n ครบทุกตัว ทั้ง Pinecone, Qdrant, Supabase pgvector และ Chroma
Vector Database คือหัวใจของระบบ RAG และ AI ที่ต้องค้นหาข้อมูลจาก knowledge base ขนาดใหญ่ n8n รองรับ Vector Database หลักทุกตัว แต่แต่ละตัวมีจุดเด่นต่างกัน บทความนี้จะช่วยให้เลือกได้ถูกตัวและตั้งค่าได้ถูกต้อง
Vector Database คืออะไรและทำไมถึงต้องใช้
Database ทั่วไป (MySQL, Postgres) ค้นหาแบบ exact match เช่น WHERE name = 'สินค้า A' แต่ถามว่า “สินค้าไหนที่คล้ายกับที่ฉันเพิ่งซื้อ” หรือ “เอกสารไหนเกี่ยวข้องกับคำถามนี้มากที่สุด” ทำไม่ได้
Vector Database แก้ปัญหานี้ด้วย Similarity Search ค้นหาจาก “ความหมาย” ไม่ใช่แค่ตัวอักษรที่ตรงกัน เหมาะกับ:
- RAG Chatbot
- Product Recommendation
- Image Search
- Semantic Document Search
เปรียบเทียบ Vector Database ที่ n8n รองรับ
| Database | Hosting | Free Tier | Ease of Setup | Performance | เหมาะกับ |
|---|---|---|---|---|---|
| Supabase pgvector | Cloud/Self-host | 500MB ฟรี | ง่ายมาก | ดี | เริ่มต้น, Production กลาง |
| Qdrant | Cloud/Self-host | 1GB ฟรี | ปานกลาง | ดีมาก | Production, Self-host |
| Pinecone | Cloud only | 2GB ฟรี | ง่ายมาก | ดีมาก | Enterprise, Managed |
| Chroma | Self-host | ฟรีทั้งหมด | ง่าย | ดี | Dev/Test, Local |
| Weaviate | Cloud/Self-host | มี | ซับซ้อน | ดีมาก | Enterprise |
| PGVector (standalone) | Self-host | ฟรี | ปานกลาง | ดี | ใช้ Postgres อยู่แล้ว |
Supabase pgvector: เริ่มต้นง่ายที่สุด
Supabase เหมาะที่สุดสำหรับคนที่เพิ่งเริ่ม เพราะตั้งค่าผ่าน Web UI ได้ และมี free tier ที่ใช้งานได้จริง
วิธีตั้งค่า:
- ไปที่ supabase.com สร้างโปรเจคใหม่
- ใน SQL Editor รัน
CREATE EXTENSION vector; - สร้าง table สำหรับเก็บ vector ตาม schema ที่ n8n ต้องการ
- Copy Project URL และ anon key จาก Settings → API
- ใน n8n สร้าง Supabase Credentials
ใน Workflow ลาก Supabase Vector Store Node เลือก Credentials ตั้งค่า Table Name และ Query Name
ข้อจำกัด: Supabase ไม่ได้ optimize มาสำหรับ Vector Search โดยเฉพาะ ถ้า dataset ใหญ่มากและต้องการ speed สูง ควรพิจารณา Qdrant หรือ Pinecone
Qdrant: Self-host ที่ดีที่สุด
Qdrant เป็น Vector Database ที่สร้างมาเพื่อ Vector Search โดยเฉพาะ performance ดีมาก และ self-host ได้บน Docker
ติดตั้ง Qdrant ด้วย Docker:
docker run -p 6333:6333 -p 6334:6334 \
-v $(pwd)/qdrant_storage:/qdrant/storage \
qdrant/qdrant
เข้าถึง dashboard ที่ http://localhost:6333/dashboard
ตั้งค่าใน n8n:
สร้าง Qdrant Credentials ใส่ URL (http://localhost:6333) และ API Key (ถ้าตั้งไว้)
ลาก Qdrant Vector Store Node ตั้งชื่อ Collection และ Vector Dimension (ต้องตรงกับ Embedding Model ที่ใช้ เช่น OpenAI ada-002 ใช้ 1536 dimensions)
จุดเด่น: Filtering ที่ทรงพลัง ค้นหาแบบ hybrid (vector + keyword) ได้ และ performance ดีที่สุดในกลุ่ม
Pinecone: Managed ที่ไม่ต้องดูแล Server
Pinecone เหมาะกับทีมที่ไม่ต้องการดูแล infrastructure เอง ตั้งค่าง่าย scale ได้อัตโนมัติ
ตั้งค่า Pinecone:
- ไปที่ pinecone.io สร้างบัญชี
- สร้าง Index ใหม่ กำหนด Dimensions และ Metric (cosine สำหรับ text)
- Copy API Key จาก dashboard
- ใน n8n สร้าง Pinecone Credentials
ใช้ใน Workflow: ลาก Pinecone Vector Store Node ตั้งค่า Index Name และ Namespace (ถ้าต้องการแยก collection)
ข้อจำกัด: ราคาสูงเมื่อ scale ขึ้น ข้อมูลอยู่บน Pinecone cloud ไม่เหมาะถ้าต้องการ data sovereignty
Chroma: สำหรับ Dev และ Local Testing
Chroma เหมาะกับการทดสอบในเครื่อง local ก่อน deploy จริง ติดตั้งง่ายมาก
pip install chromadb
chroma run --path ./chroma_data
ใน n8n ลาก Chroma Vector Store Node ใส่ URL http://localhost:8000
ข้อควรระวัง: Chroma ไม่เหมาะสำหรับ Production ที่ต้องการ high availability เนื่องจากยังไม่มี built-in replication
เลือก Embedding Model ให้เหมาะกับภาษาไทย
Vector ที่ดีต้องมาจาก Embedding Model ที่รู้จักภาษาไทย ตัวเลือกที่แนะนำ:
OpenAI text-embedding-3-small — ราคาถูก รองรับหลายภาษารวมถึงไทย เหมาะกับงานทั่วไป (1536 dimensions)
OpenAI text-embedding-3-large — แม่นกว่า large แต่ราคาสูงกว่า เหมาะกับงานที่ต้องการ accuracy สูง
Multilingual-e5-large — Open source รัน local ได้ ผ่าน Ollama รองรับภาษาไทยได้ดี
ใน n8n เพิ่ม Embeddings OpenAI Node หรือ Embeddings Ollama Node แล้วเชื่อมกับ Vector Store Node
Best Practices สำหรับ Production
Chunking Strategy — ทดสอบ chunk size ต่างๆ งาน Q&A มักทำงานได้ดีกับ chunk 300-500 characters งาน summarization อาจต้องการ chunk ใหญ่กว่า
Metadata Filtering — เก็บ metadata ไว้กับทุก vector เช่น source, date, category ทำให้ filter ก่อน search ได้ ลด noise ในผลลัพธ์
Re-ranking — หลัง retrieval ลองใช้ cross-encoder re-rank ผลลัพธ์ก่อนส่งให้ LLM ได้ผลแม่นขึ้นมาก
Regular Re-indexing — ถ้าข้อมูลอัปเดตบ่อย ต้องสร้าง Workflow สำหรับ incremental indexing ไม่ใช่ index ใหม่ทั้งหมดทุกครั้ง
สำหรับวิธีสร้าง RAG Workflow แบบ end-to-end ดูที่ สร้างระบบ RAG ด้วย n8n
อยากเรียน n8n แบบเป็นระบบ ตั้งแต่เริ่มต้นจนสร้าง Workflow ใช้งานจริงได้ ลองดู คอร์สสอน n8n ที่ aiunlock.co
Related posts
สร้างระบบ RAG ด้วย n8n: AI ตอบจากข้อมูลของคุณ
วิธีสร้างระบบ RAG (Retrieval-Augmented Generation) ด้วย n8n ให้ AI ตอบจากเอกสาร ฐานข้อมูล หรือ knowledge base ของคุณ
สร้าง AI Agent ด้วย n8n: ให้ AI ทำงานแทนคุณ
วิธีสร้าง AI Agent ใน n8n ที่วางแผนและใช้ Tools เองได้ ตั้งแต่ตั้งค่าจนถึง Agent หลายขั้นตอนขั้นสูง
n8n x Airtable: ใช้ Airtable เป็น Backend ง่ายๆ
เชื่อมต่อ n8n กับ Airtable เพื่ออ่าน เพิ่ม อัปเดต และลบข้อมูลอัตโนมัติ เหมาะสำหรับทีมที่ไม่มี Dev