MCP + RAG: ทำไมผมถึงเลิกสร้างระบบ RAG ที่ซับซ้อน

ผมใช้เวลาสี่ปีในการสร้างระบบ RAG ที่ซับซ้อน

ผมใช้ทั้งกลยุทธ์การทำ chunking, embedding models, vector databases และ rerankers ผมสร้างระบบสำหรับฐานความรู้ที่มีข้อมูลถึง 1,800 ชั่วโมง ทุกครั้งที่ทำ ผมคิดว่าผมกำลังทำให้มันสมบูรณ์แบบ

แต่มันไม่เคยทำงานได้ดีเลย

จนกระทั่งผมได้เพิ่มการรองรับ Model Context Protocol (MCP) เข้าไป มันเปลี่ยนทุกอย่าง MCP ทำให้ระบบ RAG แบบเดิมที่ซับซ้อนกลายเป็นเรื่องล้าสมัยสำหรับคนส่วนใหญ่

เมื่อก่อนผมต้องสู้กับปัญหาเหล่านี้:

  • การเลือกระหว่าง semantic หรือ recursive chunking
  • การเลือกระหว่าง OpenAI, Cohere หรือ Nomic embeddings
  • การตัดสินใจเลือกระหว่าง Pinecone, Weaviate หรือ Chroma
  • การจัดการ top-k retrieval และ reranking

ระบบ RAG ของผมมีโค้ดสูงถึง 2,000 บรรทัด มันดูน่าประทับใจแต่มันล้มเหลว ผมพยายามทำให้ข้อมูลของผมฉลาด ทั้งที่จริงๆ แล้ว AI มันฉลาดอยู่แล้ว

ผมเปลี่ยนมาใช้วิธีแบบ MCP แทน ผมสร้างเซิร์ฟเวอร์ด้วยโค้ดเพียง 150 บรรทัดเท่านั้น

ผมให้เครื่องมือแก่ AI เพียงสองอย่าง:

  • search_notes: ใช้การจับคู่ข้อความแบบง่ายเพื่อค้นหาโน้ต
  • get_note_content: ส่งคืนข้อความทั้งหมดของโน้ต

ไม่ต้องมี chunks ไม่ต้องมี embeddings ที่ซับซ้อน ไม่ต้องมี vector databases

วิธีการที่เรียบง่ายนี้เอาชนะระบบ RAG สุดล้ำของผมได้ถึง 9 ใน 10 ครั้ง และนี่คือเหตุผล:

  1. AI จัดการตรรกะเอง: AI ตัดสินใจได้ดีกว่าว่าอะไรคือสิ่งที่เกี่ยวข้อง เมื่อเทียบกับ chunker ที่ตั้งค่าไว้ล่วงหน้า
  2. บริบทที่ครบถ้วน: RAG แบบเดิมจะตัดโน้ตออกเป็นชิ้นเล็กๆ ซึ่งมักจะทำให้คำตอบสูญหายไป แต่ด้วย MCP ตัว AI จะได้อ่านโน้ตทั้งฉบับ ทำให้เห็นภาพรวมของความคิดทั้งหมด
  3. ความสามารถในการคาดเดาได้: การค้นหาด้วยข้อความเป็นเรื่องง่าย ถ้ามีคำสำคัญ (keyword) อยู่ มันก็ทำงานได้ คุณจะหลีกเลี่ยงปัญหา embedding drift และข้อผิดพลาดด้านมิติ (dimension errors) ได้

คุณยังควรใช้ RAG แบบเดิมอยู่ ถ้า:

  • คุณมีเอกสารขนาดใหญ่มากกว่า 100,000 ฉบับ
  • คุณต้องการระบบ Production ขนาดใหญ่ที่มีความหน่วง (latency) ต่ำ

แต่สำหรับฐานความรู้ส่วนตัว, โปรเจกต์เสริม (side projects) หรือเครื่องมือภายในองค์กร คุณไม่จำเป็นต้องใช้มันเลย

ประโยชน์ของ MCP:

  • ดูแลรักษาง่าย: ใช้โค้ดเพียง 150 บรรทัด แทนที่จะเป็น 2,000 บรรทัด
  • ไม่มีค่าใช้จ่ายด้าน embedding: คุณไม่จำเป็นต้องทำ re-embed ข้อมูลใหม่เมื่อมีการเปลี่ยนโมเดล
  • ความแม่นยำดีกว่า: AI ได้รับบริบทที่ครบถ้วน
  • ดีบั๊กง่าย: คุณสามารถเห็นได้ชัดเจนว่าทำไมการค้นหาถึงล้มเหลว

เลิกทำอะไรที่เกินความจำเป็น (over-engineering) ได้แล้ว ปล่อยให้ AI ทำงานหนักแทนเถอะ แค่ให้มันเข้าถึงข้อมูลของคุณแล้วปล่อยให้มันอ่านเอง

แหล่งที่มา: https://dev.to/kevinten10/mcp-rag-why-i-stopped-building-complex-rag-systems-after-mcp-changed-everything-4g86

ชุมชนแห่งการเรียนรู้เพิ่มเติม: https://t.me/GyaanSetuAi